github.com/cloudfoundry-attic/cli-with-i18n@v6.32.1-0.20171002233121-7401370d3b85+incompatible/integration/isolated/delete_user_command_test.go (about) 1 package isolated 2 3 import ( 4 "fmt" 5 6 "code.cloudfoundry.org/cli/integration/helpers" 7 . "github.com/onsi/ginkgo" 8 . "github.com/onsi/gomega" 9 . "github.com/onsi/gomega/gbytes" 10 . "github.com/onsi/gomega/gexec" 11 ) 12 13 var _ = Describe("delete-user command", func() { 14 Context("when the logged in user is authorized to delete-users", func() { 15 BeforeEach(func() { 16 helpers.LoginCF() 17 }) 18 19 Context("when deleting a user that exists in multiple origins", func() { 20 var newUser string 21 22 BeforeEach(func() { 23 newUser = helpers.NewUsername() 24 25 Eventually(helpers.CF("create-user", newUser, "--origin", "ldap")).Should(Exit(0)) 26 Eventually(helpers.CF("create-user", newUser, helpers.NewPassword())).Should(Exit(0)) 27 }) 28 29 AfterEach(func() { 30 // Doing the cleanup here because it can't easily be done in 31 // bin/cleanup-integration. 32 users := helpers.GetUsers() 33 34 var usersDeleted int 35 for _, user := range users { 36 if user.Username == newUser { 37 fmt.Println("deleting : ", newUser) 38 Eventually(helpers.CF("curl", "-X", "DELETE", fmt.Sprintf("/v2/users/%s", user.GUID))).Should(Exit(0)) 39 usersDeleted++ 40 } 41 } 42 43 Expect(usersDeleted).To(Equal(2), "some users were not deleted") 44 }) 45 46 It("errors with DuplicateUsernameError", func() { 47 session := helpers.CF("delete-user", "-f", newUser) 48 Eventually(session.Out).Should(Say("FAILED")) 49 Eventually(session.Out).Should(Say("Error deleting user %s", newUser)) 50 Eventually(session.Out).Should(Say("Multiple users with that username found. Please use 'cf curl' to delete the user by guid instead.")) 51 Eventually(session).Should(Exit(1)) 52 }) 53 }) 54 }) 55 })