Context("When repo name is valid", func() { BeforeEach(func() { config.SetPluginRepo(models.PluginRepo{ Name: "repo1", URL: "http://someserver1.com:1234", }) config.SetPluginRepo(models.PluginRepo{ Name: "repo2", URL: "http://server2.org:8080", }) }) It("deletes the repo from the config", func() { callRemovePluginRepo("repo1") Expect(len(config.PluginRepos())).To(Equal(1)) Expect(config.PluginRepos()[0].Name).To(Equal("repo2")) Expect(config.PluginRepos()[0].URL).To(Equal("http://server2.org:8080")) }) }) Context("When named repo doesn't exist", func() { BeforeEach(func() { config.SetPluginRepo(models.PluginRepo{ Name: "repo1", URL: "http://someserver1.com:1234", }) config.SetPluginRepo(models.PluginRepo{ Name: "repo2", URL: "http://server2.org:8080",
} ] }] }`) }) testServer = httptest.NewServer(h) }) AfterEach(func() { testServer.Close() }) It("saves the repo url into config", func() { callAddPluginRepo([]string{"repo", testServer.URL}) Expect(config.PluginRepos()[0].Name).To(Equal("repo")) Expect(config.PluginRepos()[0].URL).To(Equal(testServer.URL)) }) }) Context("repo name already existing", func() { BeforeEach(func() { config.SetPluginRepo(models.PluginRepo{Name: "repo", URL: "http://repo.com"}) }) It("informs user of the already existing repo", func() { callAddPluginRepo([]string{"repo", "http://repo2.com"}) Expect(ui.Outputs).To(ContainSubstrings( []string{"Plugin repo named \"repo\"", " already exists"},