minCLIVersion = "1.0.0" minRecommendedCLIVersion = "1.0.0" org = models.Organization{} org.Name = "my-new-org" org.GUID = "my-new-org-guid" orgRepo = &organizationsfakes.FakeOrganizationRepository{} orgRepo.ListOrgsReturns([]models.Organization{org}, nil) space := models.Space{} space.GUID = "my-space-guid" space.Name = "my-space" spaceRepo = new(apifakes.FakeSpaceRepository) spaceRepo.ListSpacesStub = listSpacesStub([]models.Space{space}) authRepo.GetLoginPromptsAndSaveUAAServerURLReturns(map[string]coreconfig.AuthPrompt{ "username": { DisplayName: "Username", Type: coreconfig.AuthPromptTypeText, }, "password": { DisplayName: "Password", Type: coreconfig.AuthPromptTypePassword, }, }, nil) }) Context("interactive usage", func() { JustBeforeEach(func() {
Describe("when invoked by a plugin", func() { var ( pluginModels []plugin_models.GetSpaces_Model ) BeforeEach(func() { pluginModels = []plugin_models.GetSpaces_Model{} deps.PluginModels.Spaces = &pluginModels space := models.Space{} space.Name = "space1" space.GUID = "123" space2 := models.Space{} space2.Name = "space2" space2.GUID = "456" spaceRepo.ListSpacesStub = listSpacesStub([]models.Space{space, space2}) requirementsFactory.TargetedOrgSuccess = true requirementsFactory.LoginSuccess = true }) It("populates the plugin models upon execution", func() { testcmd.RunCLICommand("spaces", []string{}, requirementsFactory, updateCommandDependency, true) runCommand() Expect(pluginModels[0].Name).To(Equal("space1")) Expect(pluginModels[0].Guid).To(Equal("123")) Expect(pluginModels[1].Name).To(Equal("space2")) Expect(pluginModels[1].Guid).To(Equal("456")) }) })