func callSetSpaceRole(args []string, requirementsFactory *testreq.FakeReqFactory, spaceRepo *testapi.FakeSpaceRepository, userRepo *testapi.FakeUserRepository) (ui *testterm.FakeUI) { ui = new(testterm.FakeUI) configRepo := testconfig.NewRepositoryWithDefaults() accessToken, err := testconfig.EncodeAccessToken(configuration.TokenInfo{ Username: "******", }) Expect(err).NotTo(HaveOccurred()) configRepo.SetAccessToken(accessToken) cmd := NewSetSpaceRole(ui, configRepo, spaceRepo, userRepo) testcmd.RunCommand(cmd, args, requirementsFactory) return }
updateCommandDependency := func(pluginCall bool) { deps.Ui = ui deps.Config = configRepo deps.RepoLocator = deps.RepoLocator.SetUserRepository(userRepo) command_registry.Commands.SetCommand(command_registry.Commands.FindCommand("delete-user").SetDependency(deps, pluginCall)) } BeforeEach(func() { ui = &testterm.FakeUI{Inputs: []string{"y"}} userRepo = &testapi.FakeUserRepository{} requirementsFactory = &testreq.FakeReqFactory{LoginSuccess: true} configRepo = testconfig.NewRepositoryWithDefaults() token, err := testconfig.EncodeAccessToken(core_config.TokenInfo{ UserGuid: "admin-user-guid", Username: "******", }) Expect(err).ToNot(HaveOccurred()) configRepo.SetAccessToken(token) }) runCommand := func(args ...string) bool { return testcmd.RunCliCommand("delete-user", args, requirementsFactory, updateCommandDependency, false) } Describe("requirements", func() { It("fails when not logged in", func() { requirementsFactory.LoginSuccess = false Expect(runCommand("my-user")).To(BeFalse()) })
var _ = Describe("Create user command", func() { var ( requirementsFactory *testreq.FakeReqFactory ui *testterm.FakeUI userRepo *testapi.FakeUserRepository configRepo configuration.ReadWriter ) BeforeEach(func() { requirementsFactory = &testreq.FakeReqFactory{LoginSuccess: true} ui = new(testterm.FakeUI) userRepo = &testapi.FakeUserRepository{} configRepo = testconfig.NewRepositoryWithDefaults() accessToken, _ := testconfig.EncodeAccessToken(configuration.TokenInfo{ Username: "******", }) configRepo.SetAccessToken(accessToken) }) runCommand := func(args ...string) { cmd := NewCreateUser(ui, configRepo, userRepo) testcmd.RunCommand(cmd, args, requirementsFactory) return } It("creates a user", func() { runCommand("my-user", "my-password") Expect(ui.Outputs).To(ContainSubstrings( []string{"Creating user", "my-user", "current-user"},
flagRepo *fakeflag.FakeFeatureFlagRepository deps command_registry.Dependency ) updateCommandDependency := func(pluginCall bool) { deps.Ui = ui deps.RepoLocator = deps.RepoLocator.SetSpaceRepository(spaceRepo) deps.RepoLocator = deps.RepoLocator.SetUserRepository(userRepo) deps.RepoLocator = deps.RepoLocator.SetFeatureFlagRepository(flagRepo) deps.Config = configRepo command_registry.Commands.SetCommand(command_registry.Commands.FindCommand("set-space-role").SetDependency(deps, pluginCall)) } BeforeEach(func() { configRepo = testconfig.NewRepositoryWithDefaults() accessToken, err := testconfig.EncodeAccessToken(core_config.TokenInfo{Username: "******"}) Expect(err).NotTo(HaveOccurred()) configRepo.SetAccessToken(accessToken) ui = &testterm.FakeUI{} requirementsFactory = &testreq.FakeReqFactory{} spaceRepo = &testapi.FakeSpaceRepository{} userRepo = &testapi.FakeUserRepository{} flagRepo = &fakeflag.FakeFeatureFlagRepository{} }) runCommand := func(args ...string) bool { return testcmd.RunCliCommand("set-space-role", args, requirementsFactory, updateCommandDependency, false) } Describe("requirements", func() {