| Index: appengine/findit/common/chromium_deps.py
|
| diff --git a/appengine/findit/common/chromium_deps.py b/appengine/findit/common/chromium_deps.py
|
| index 39c63472fa5e4b9e3d052d27103ea0f746e9eb9d..794b32738414ec06ad8ffb93f0e343e2b4162e45 100644
|
| --- a/appengine/findit/common/chromium_deps.py
|
| +++ b/appengine/findit/common/chromium_deps.py
|
| @@ -4,9 +4,17 @@
|
|
|
| import re
|
|
|
| +# N.B., in order for our mocking framework to work correctly, we *must not*
|
| +# import the GitRepository class directly; instead, we must only import
|
| +# the git_repository module and then rely on dynamic dispatch to resolve
|
| +# the module's GitRepository attribute. Otherwise the DEPSDownloader.Load
|
| +# method will hold a reference directly to the real GitRepository class,
|
| +# which means we can't swap it out for the DummyGitRepository class, which
|
| +# in turn will cause some unit tests to fail (since we can't mock the
|
| +# responses of doing SSL stuff).
|
| +from lib.gitiles import git_repository
|
| from common import dependency
|
| from common import deps_parser
|
| -from common import git_repository
|
| from common import http_client_appengine
|
|
|
|
|
| @@ -30,6 +38,9 @@ def IsChromeVersion(revision):
|
| class DEPSDownloader(deps_parser.DEPSLoader):
|
| """Downloads DEPS from remote Git repo."""
|
|
|
| + # TODO(wrengr): why do we allocate a new GitRepository every time
|
| + # we call Load, rather than just doing it once and saving it in the
|
| + # DEPSDownloader class (via RAII)?
|
| def Load(self, repo_url, revision, deps_file):
|
| http_client = http_client_appengine.HttpClientAppengine()
|
| repo = git_repository.GitRepository(repo_url, http_client)
|
|
|