func (s *URLsSuite) TestToolsSourcesWithRetry(c *gc.C) { env := s.env(c, "") sources, err := tools.GetMetadataSourcesWithRetries(env, true) c.Assert(err, gc.IsNil) haveExpectedSources := false for _, source := range sources { if allowRetry, ok := storage.TestingGetAllowRetry(source); ok { haveExpectedSources = true c.Assert(allowRetry, jc.IsTrue) } } c.Assert(haveExpectedSources, jc.IsTrue) c.Assert(haveExpectedSources, jc.IsTrue) }
func (s *URLsSuite) TestToolsSources(c *gc.C) { env := s.env(c, "config-tools-metadata-url") sources, err := tools.GetMetadataSources(env) c.Assert(err, gc.IsNil) // Put a file in tools since the dummy storage provider requires a // file to exist before the URL can be found. This is to ensure it behaves // the same way as MAAS. err = env.Storage().Put("tools/dummy", strings.NewReader("dummy"), 5) c.Assert(err, gc.IsNil) privateStorageURL, err := env.Storage().URL("tools") c.Assert(err, gc.IsNil) sstesting.AssertExpectedSources(c, sources, []string{ "config-tools-metadata-url/", privateStorageURL, "https://streams.canonical.com/juju/tools/"}) haveExpectedSources := false for _, source := range sources { if allowRetry, ok := storage.TestingGetAllowRetry(source); ok { haveExpectedSources = true c.Assert(allowRetry, jc.IsFalse) } } c.Assert(haveExpectedSources, jc.IsTrue) }