requirementsFactory = &testreq.FakeReqFactory{LoginSuccess: true, TargetedOrgSuccess: true} configOrg = models.OrganizationFields{ Name: "my-org", Guid: "my-org-guid", } configSpace = models.SpaceFields{ Name: "config-space", Guid: "config-space-guid", } //save original command and restore later OriginalCommand = command_registry.Commands.FindCommand("set-space-role") spaceRepo = &testapi.FakeSpaceRepository{ CreateSpaceSpace: maker.NewSpace(maker.Overrides{"name": "my-space", "guid": "my-space-guid", "organization": configOrg}), } Expect(spaceRepo.CreateSpaceSpace.Name).To(Equal("my-space")) }) AfterEach(func() { command_registry.Register(OriginalCommand) }) Describe("Requirements", func() { It("fails with usage when not provided exactly one argument", func() { runCommand() Expect(ui.Outputs).To(ContainSubstrings( []string{"Incorrect Usage", "Requires", "argument"}, )) })
deps.RepoLocator = deps.RepoLocator.SetSpaceRepository(spaceRepo) deps.Config = config command_registry.Commands.SetCommand(command_registry.Commands.FindCommand("delete-space").SetDependency(deps, pluginCall)) } runCommand := func(args ...string) bool { return testcmd.RunCliCommand("delete-space", args, requirementsFactory, updateCommandDependency, false) } BeforeEach(func() { ui = &testterm.FakeUI{} spaceRepo = &testapi.FakeSpaceRepository{} config = testconfig.NewRepositoryWithDefaults() space = maker.NewSpace(maker.Overrides{ "name": "space-to-delete", "guid": "space-to-delete-guid", }) requirementsFactory = &testreq.FakeReqFactory{ LoginSuccess: true, TargetedOrgSuccess: true, Space: space, } }) Describe("requirements", func() { BeforeEach(func() { ui.Inputs = []string{"y"} }) It("fails when not logged in", func() { requirementsFactory.LoginSuccess = false