本文整理汇总了Golang中github.com/cloudfoundry/cli/cf/configuration/core_config.ReadWriter.SetPluginRepo方法的典型用法代码示例。如果您正苦于以下问题:Golang ReadWriter.SetPluginRepo方法的具体用法?Golang ReadWriter.SetPluginRepo怎么用?Golang ReadWriter.SetPluginRepo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/cloudfoundry/cli/cf/configuration/core_config.ReadWriter
的用法示例。
在下文中一共展示了ReadWriter.SetPluginRepo方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1:
BeforeEach(func() {
ui = &testterm.FakeUI{}
requirementsFactory = &testreq.FakeReqFactory{}
config = testconfig.NewRepositoryWithDefaults()
})
var callRemovePluginRepo = func(args ...string) bool {
cmd := NewRemovePluginRepo(ui, config)
return testcmd.RunCommand(cmd, args, requirementsFactory)
}
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")
Ω(len(config.PluginRepos())).To(Equal(1))
Ω(config.PluginRepos()[0].Name).To(Equal("repo2"))
Ω(config.PluginRepos()[0].Url).To(Equal("http://server2.org:8080"))
})
})
示例2:
AfterEach(func() {
testServer.Close()
})
It("saves the repo url into config", func() {
callAddPluginRepo([]string{"repo", testServer.URL})
Ω(config.PluginRepos()[0].Name).To(Equal("repo"))
Ω(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"})
Ω(ui.Outputs).To(ContainSubstrings(
[]string{"Plugin repo named \"repo\"", " already exists"},
))
})
})
Context("repo address already existing", func() {
BeforeEach(func() {
config.SetPluginRepo(models.PluginRepo{Name: "repo1", Url: "http://repo.com"})
示例3:
Describe("Locating binary file", func() {
Describe("install from plugin repository when '-r' provided", func() {
Context("gets metadata of the plugin from repo", func() {
Context("when repo is not found in config", func() {
It("informs user repo is not found", func() {
runCommand("plugin1", "-r", "repo1")
Ω(ui.Outputs).To(ContainSubstrings([]string{"Looking up 'plugin1' from repository 'repo1'"}))
Ω(ui.Outputs).To(ContainSubstrings([]string{"repo1 not found"}))
})
})
Context("when repo is found in config", func() {
Context("when repo endpoint returns an error", func() {
It("informs user about the error", func() {
config.SetPluginRepo(models.PluginRepo{Name: "repo1", Url: ""})
fakePluginRepo.GetPluginsReturns(nil, []string{"repo error1"})
runCommand("plugin1", "-r", "repo1")
Ω(ui.Outputs).To(ContainSubstrings([]string{"Error getting plugin metadata from repo"}))
Ω(ui.Outputs).To(ContainSubstrings([]string{"repo error1"}))
})
})
Context("when plugin metadata is available and desired plugin is not found", func() {
It("informs user about the error", func() {
config.SetPluginRepo(models.PluginRepo{Name: "repo1", Url: ""})
fakePluginRepo.GetPluginsReturns(nil, nil)
runCommand("plugin1", "-r", "repo1")
Ω(ui.Outputs).To(ContainSubstrings([]string{"plugin1 is not available in repo 'repo1'"}))
示例4:
)
BeforeEach(func() {
ui = &testterm.FakeUI{}
requirementsFactory = &testreq.FakeReqFactory{}
config = testconfig.NewRepositoryWithDefaults()
})
var callListPluginRepos = func(args ...string) bool {
cmd := NewListPluginRepos(ui, config)
return testcmd.RunCommand(cmd, args, requirementsFactory)
}
It("lists all added plugin repo in a table", func() {
config.SetPluginRepo(models.PluginRepo{
Name: "repo1",
Url: "http://url1.com",
})
config.SetPluginRepo(models.PluginRepo{
Name: "repo2",
Url: "http://url2.com",
})
callListPluginRepos()
Ω(ui.Outputs).To(ContainSubstrings(
[]string{"repo1", "http://url1.com"},
[]string{"repo2", "http://url2.com"},
))
})
})