@ -25,6 +25,7 @@ import (
func TestPackageAPI ( t * testing . T ) {
func TestPackageAPI ( t * testing . T ) {
defer tests . PrepareTestEnv ( t ) ( )
defer tests . PrepareTestEnv ( t ) ( )
user := unittest . AssertExistsAndLoadBean ( t , & user_model . User { ID : 4 } )
user := unittest . AssertExistsAndLoadBean ( t , & user_model . User { ID : 4 } )
session := loginUser ( t , user . Name )
session := loginUser ( t , user . Name )
token := getTokenForLoggedInUser ( t , session )
token := getTokenForLoggedInUser ( t , session )
@ -144,6 +145,27 @@ func TestPackageAPI(t *testing.T) {
} )
} )
}
}
func TestPackageAccess ( t * testing . T ) {
defer tests . PrepareTestEnv ( t ) ( )
admin := unittest . AssertExistsAndLoadBean ( t , & user_model . User { ID : 1 } )
user := unittest . AssertExistsAndLoadBean ( t , & user_model . User { ID : 5 } )
inactive := unittest . AssertExistsAndLoadBean ( t , & user_model . User { ID : 9 } )
uploadPackage := func ( doer , owner * user_model . User , expectedStatus int ) {
url := fmt . Sprintf ( "/api/packages/%s/generic/test-package/1.0/file.bin" , owner . Name )
req := NewRequestWithBody ( t , "PUT" , url , bytes . NewReader ( [ ] byte { 1 } ) )
AddBasicAuthHeader ( req , doer . Name )
MakeRequest ( t , req , expectedStatus )
}
uploadPackage ( user , inactive , http . StatusUnauthorized )
uploadPackage ( inactive , inactive , http . StatusUnauthorized )
uploadPackage ( inactive , user , http . StatusUnauthorized )
uploadPackage ( admin , inactive , http . StatusCreated )
uploadPackage ( admin , user , http . StatusCreated )
}
func TestPackageCleanup ( t * testing . T ) {
func TestPackageCleanup ( t * testing . T ) {
defer tests . PrepareTestEnv ( t ) ( )
defer tests . PrepareTestEnv ( t ) ( )