| Index: appengine/findit/common/chrome_dependency_fetcher.py
|
| diff --git a/appengine/findit/common/chrome_dependency_fetcher.py b/appengine/findit/common/chrome_dependency_fetcher.py
|
| index 80ec79dc10cffe140fdd7a7083a899b46ecd9967..2d9e2f76800c77a13a98e852c549668e045bff61 100644
|
| --- a/appengine/findit/common/chrome_dependency_fetcher.py
|
| +++ b/appengine/findit/common/chrome_dependency_fetcher.py
|
| @@ -18,31 +18,30 @@ _BUILDSPEC_REPO = ('https://chrome-internal.googlesource.com/chrome/tools/'
|
|
|
| def IsChromeVersion(revision):
|
| """Determines if a revision is a chrome version."""
|
| - if _CHROME_VERSION_PATTERN.match(revision):
|
| - return True
|
| -
|
| - return False
|
| + return bool(_CHROME_VERSION_PATTERN.match(revision))
|
|
|
|
|
| class DEPSDownloader(deps_parser.DEPSLoader):
|
| """Downloads DEPS from remote Git repo."""
|
|
|
| - def __init__(self, repository):
|
| - self.repository = repository
|
| + def __init__(self, get_repository):
|
| + assert callable(get_repository), (
|
| + 'The ``get_repository`` argument must be callable.')
|
| + self._get_repository = get_repository
|
|
|
| def Load(self, repo_url, revision, deps_file):
|
| - self.repository.repo_url = repo_url
|
| + repository = self._get_repository(repo_url)
|
| content = None
|
| if deps_file == 'DEPS' and repo_url == _CHROMIUM_REPO_MASTER:
|
| # Try .DEPS.git instead of DEPS first, for commits during the Git chaos.
|
| - content = self.repository.GetSource('.DEPS.git', revision)
|
| + content = repository.GetSource('.DEPS.git', revision)
|
|
|
| if content is None:
|
| - content = self.repository.GetSource(deps_file, revision)
|
| + content = repository.GetSource(deps_file, revision)
|
|
|
| if content is None and deps_file != 'DEPS':
|
| # Like gclient, fall back to raw 'DEPS' when all else fails.
|
| - content = self.repository.GetSource('DEPS', revision)
|
| + content = repository.GetSource('DEPS', revision)
|
|
|
| if content is None:
|
| raise Exception(
|
| @@ -54,8 +53,10 @@ class DEPSDownloader(deps_parser.DEPSLoader):
|
|
|
| class ChromeDependencyFetcher(object):
|
|
|
| - def __init__(self, repository):
|
| - self.repository = repository
|
| + def __init__(self, get_repository):
|
| + assert callable(get_repository), (
|
| + 'The ``get_repository`` argument must be callable.')
|
| + self._get_repository = get_repository
|
|
|
| def GetDependency(self, revision, platform):
|
| """Returns all dependencies of Chrome as a dict for given revision and OS.
|
| @@ -82,7 +83,7 @@ class ChromeDependencyFetcher(object):
|
| _CHROMIUM_ROOT_DIR, _CHROMIUM_REPO_MASTER, revision, **deps_repo_info)
|
|
|
| deps_parser.UpdateDependencyTree(
|
| - root_dep, [platform], DEPSDownloader(self.repository))
|
| + root_dep, [platform], DEPSDownloader(self._get_repository))
|
|
|
| dependencies = {}
|
|
|
|
|