github.com/asifdxtreme/cli@v6.1.3-0.20150123051144-9ead8700b4ae+incompatible/cf/api/fakes/fake_user_repo.go (about) 1 package fakes 2 3 import ( 4 "github.com/cloudfoundry/cli/cf/errors" 5 "github.com/cloudfoundry/cli/cf/models" 6 ) 7 8 type FakeUserRepository struct { 9 FindByUsernameUsername string 10 FindByUsernameUserFields models.UserFields 11 FindByUsernameNotFound bool 12 13 ListUsersOrganizationGuid string 14 ListUsersSpaceGuid string 15 ListUsersByRole map[string][]models.UserFields 16 17 CreateUserUsername string 18 CreateUserPassword string 19 CreateUserExists bool 20 CreateUserReturnsHttpError bool 21 22 DeleteUserGuid string 23 24 SetOrgRoleUserGuid string 25 SetOrgRoleOrganizationGuid string 26 SetOrgRoleRole string 27 28 UnsetOrgRoleUserGuid string 29 UnsetOrgRoleOrganizationGuid string 30 UnsetOrgRoleRole string 31 32 SetSpaceRoleUserGuid string 33 SetSpaceRoleOrgGuid string 34 SetSpaceRoleSpaceGuid string 35 SetSpaceRoleRole string 36 37 UnsetSpaceRoleUserGuid string 38 UnsetSpaceRoleSpaceGuid string 39 UnsetSpaceRoleRole string 40 } 41 42 func (repo *FakeUserRepository) FindByUsername(username string) (user models.UserFields, apiErr error) { 43 repo.FindByUsernameUsername = username 44 user = repo.FindByUsernameUserFields 45 46 if repo.FindByUsernameNotFound { 47 apiErr = errors.NewModelNotFoundError("User", "") 48 } 49 50 return 51 } 52 53 func (repo *FakeUserRepository) ListUsersInOrgForRole(orgGuid string, roleName string) ([]models.UserFields, error) { 54 repo.ListUsersOrganizationGuid = orgGuid 55 return repo.ListUsersByRole[roleName], nil 56 } 57 58 func (repo *FakeUserRepository) ListUsersInSpaceForRole(spaceGuid string, roleName string) ([]models.UserFields, error) { 59 repo.ListUsersSpaceGuid = spaceGuid 60 return repo.ListUsersByRole[roleName], nil 61 } 62 63 func (repo *FakeUserRepository) Create(username, password string) (apiErr error) { 64 repo.CreateUserUsername = username 65 repo.CreateUserPassword = password 66 67 if repo.CreateUserReturnsHttpError { 68 apiErr = errors.NewHttpError(403, "403", "Forbidden") 69 } 70 if repo.CreateUserExists { 71 apiErr = errors.NewModelAlreadyExistsError("User", username) 72 } 73 74 return 75 } 76 77 func (repo *FakeUserRepository) Delete(userGuid string) (apiErr error) { 78 repo.DeleteUserGuid = userGuid 79 return 80 } 81 82 func (repo *FakeUserRepository) SetOrgRole(userGuid, orgGuid, role string) (apiErr error) { 83 repo.SetOrgRoleUserGuid = userGuid 84 repo.SetOrgRoleOrganizationGuid = orgGuid 85 repo.SetOrgRoleRole = role 86 return 87 } 88 89 func (repo *FakeUserRepository) UnsetOrgRole(userGuid, orgGuid, role string) (apiErr error) { 90 repo.UnsetOrgRoleUserGuid = userGuid 91 repo.UnsetOrgRoleOrganizationGuid = orgGuid 92 repo.UnsetOrgRoleRole = role 93 return 94 } 95 96 func (repo *FakeUserRepository) SetSpaceRole(userGuid, spaceGuid, orgGuid, role string) (apiErr error) { 97 repo.SetSpaceRoleUserGuid = userGuid 98 repo.SetSpaceRoleOrgGuid = orgGuid 99 repo.SetSpaceRoleSpaceGuid = spaceGuid 100 repo.SetSpaceRoleRole = role 101 return 102 } 103 104 func (repo *FakeUserRepository) UnsetSpaceRole(userGuid, spaceGuid, role string) (apiErr error) { 105 repo.UnsetSpaceRoleUserGuid = userGuid 106 repo.UnsetSpaceRoleSpaceGuid = spaceGuid 107 repo.UnsetSpaceRoleRole = role 108 return 109 }