It("fails with usage when invoked without an org name", func() { requirementsFactory.LoginSuccess = true runCommand() Expect(ui.Outputs).To(ContainSubstrings( []string{"Incorrect Usage", "Requires an argument"}, )) }) It("fails when not logged in", func() { Expect(runCommand("say-hello-to-my-little-org")).To(BeFalse()) }) }) Context("when logged in and given an org with no users in a particular role", func() { var ( user1, user2 models.UserFields ) BeforeEach(func() { org := models.Organization{} org.Name = "the-org" org.Guid = "the-org-guid" user1 = models.UserFields{} user1.Username = "******" user2 = models.UserFields{} user2.Username = "******" requirementsFactory.LoginSuccess = true requirementsFactory.Organization = org })
It("succeeds when logged in", func() { requirementsFactory.LoginSuccess = true runCommand("username", "org", "role") Expect(testcmd.CommandDidPassRequirements).To(BeTrue()) Expect(requirementsFactory.UserUsername).To(Equal("username")) Expect(requirementsFactory.OrganizationName).To(Equal("org")) }) }) Context("when logged in", func() { BeforeEach(func() { requirementsFactory.LoginSuccess = true user := models.UserFields{} user.Username = "******" user.Guid = "some-user-guid" org := models.Organization{} org.Name = "some-org" org.Guid = "some-org-guid" requirementsFactory.UserFields = user requirementsFactory.Organization = org }) It("unsets a user's org role", func() { runCommand("my-username", "my-org", "OrgManager") Expect(ui.Outputs).To(ContainSubstrings( []string{"Removing role", "OrgManager", "my-username", "my-org", "my-user"},
Context("when logged in and given some users in the org and space", func() { BeforeEach(func() { requirementsFactory.LoginSuccess = true org := models.Organization{} org.Name = "Org1" org.Guid = "org1-guid" space := models.Space{} space.Name = "Space1" space.Guid = "space1-guid" requirementsFactory.Organization = org spaceRepo.FindByNameInOrgReturns(space, nil) user := models.UserFields{} user.Username = "******" user2 := models.UserFields{} user2.Username = "******" user3 := models.UserFields{} user3.Username = "******" user4 := models.UserFields{} user4.Username = "******" userRepo.ListUsersInSpaceForRoleStub = func(_ string, roleName string) ([]models.UserFields, error) { userFields := map[string][]models.UserFields{ models.SPACE_MANAGER: []models.UserFields{user, user2}, models.SPACE_DEVELOPER: []models.UserFields{user4}, models.SPACE_AUDITOR: []models.UserFields{user3}, }[roleName] return userFields, nil }
Context("when logged in and given some users in the org and space", func() { BeforeEach(func() { requirementsFactory.LoginSuccess = true org := models.Organization{} org.Name = "Org1" org.Guid = "org1-guid" space := models.Space{} space.Name = "Space1" space.Guid = "space1-guid" requirementsFactory.Organization = org spaceRepo.FindByNameInOrgSpace = space user := models.UserFields{} user.Username = "******" user2 := models.UserFields{} user2.Username = "******" user3 := models.UserFields{} user3.Username = "******" user4 := models.UserFields{} user4.Username = "******" userRepo.ListUsersByRole = map[string][]models.UserFields{ models.SPACE_MANAGER: []models.UserFields{user, user2}, models.SPACE_DEVELOPER: []models.UserFields{user4}, models.SPACE_AUDITOR: []models.UserFields{user3}, } }) It("tells you about the space users in the given space", func() {
import ( "github.com/cloudfoundry/cli/cf/models" . "github.com/cloudfoundry/cli/cf/requirements" testapi "github.com/cloudfoundry/cli/testhelpers/api" testassert "github.com/cloudfoundry/cli/testhelpers/assert" testterm "github.com/cloudfoundry/cli/testhelpers/terminal" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" . "github.com/cloudfoundry/cli/testhelpers/matchers" ) var _ = Describe("Testing with ginkgo", func() { It("TestUserReqExecute", func() { user := models.UserFields{} user.Username = "******" user.Guid = "my-user-guid" userRepo := &testapi.FakeUserRepository{FindByUsernameUserFields: user} ui := new(testterm.FakeUI) userReq := NewUserRequirement("foo", ui, userRepo) success := userReq.Execute() Expect(success).To(BeTrue()) Expect(userRepo.FindByUsernameUsername).To(Equal("foo")) Expect(userReq.GetUser()).To(Equal(user)) }) It("TestUserReqWhenUserDoesNotExist", func() {