| OLD | NEW |
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 import base64 | 5 import base64 |
| 6 import collections | 6 import collections |
| 7 | 7 |
| 8 from testing_utils import testing | 8 from testing_utils import testing |
| 9 | 9 |
| 10 from lib.gitiles import git_repository |
| 10 from common import chromium_deps | 11 from common import chromium_deps |
| 11 from common import deps_parser | 12 from common import deps_parser |
| 12 from common import git_repository | |
| 13 from common import repository | |
| 14 from common import retry_http_client | 13 from common import retry_http_client |
| 15 from common import http_client_appengine | 14 from common import http_client_appengine |
| 16 from common.dependency import Dependency, DependencyRoll | 15 from common.dependency import Dependency, DependencyRoll |
| 17 | 16 |
| 18 | 17 |
| 19 class DummyGitRepository(repository.Repository): | 18 class DummyGitRepository(object): |
| 19 """A class for mocking GitRepository. |
| 20 |
| 21 N.B., in order to use this class for mocking, every module we want to |
| 22 test with a mock GitRepository must not import that class directly. |
| 23 Instead they must import the git_repository module and rely on dynamic |
| 24 dispatch to resolve the GitRepository attribute. Otherwise those |
| 25 modules will hold direct links to the real GitRepository class, and |
| 26 so won't dispatch into this mock class for our unit tests.""" |
| 27 |
| 20 RESPONSES = {} | 28 RESPONSES = {} |
| 21 | 29 |
| 22 def __init__(self, *_): | 30 def __init__(self, *_): |
| 23 pass | 31 pass |
| 24 | 32 |
| 25 def GetSource(self, path, revision): | 33 def GetSource(self, path, revision): |
| 26 return self.RESPONSES.get(path, {}).get(revision, None) | 34 return self.RESPONSES.get(path, {}).get(revision, None) |
| 27 | 35 |
| 28 | 36 |
| 29 class ChromiumDEPSTest(testing.AppengineTestCase): | 37 class ChromiumDEPSTest(testing.AppengineTestCase): |
| (...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 278 'src/', | 286 'src/', |
| 279 'https://chromium.googlesource.com/chromium/src.git', '4', '5'), | 287 'https://chromium.googlesource.com/chromium/src.git', '4', '5'), |
| 280 } | 288 } |
| 281 self.assertEqual(chromium_deps.GetDEPSRollsDict('4', '5', 'all'), | 289 self.assertEqual(chromium_deps.GetDEPSRollsDict('4', '5', 'all'), |
| 282 expected_deps_rolls_dict) | 290 expected_deps_rolls_dict) |
| 283 | 291 |
| 284 def testIsChromeVersion(self): | 292 def testIsChromeVersion(self): |
| 285 self.assertTrue(chromium_deps.IsChromeVersion('50.0.1234.1')) | 293 self.assertTrue(chromium_deps.IsChromeVersion('50.0.1234.1')) |
| 286 self.assertFalse(chromium_deps.IsChromeVersion('a.b.c.e')) | 294 self.assertFalse(chromium_deps.IsChromeVersion('a.b.c.e')) |
| 287 self.assertFalse(chromium_deps.IsChromeVersion('502.021.2.0.123')) | 295 self.assertFalse(chromium_deps.IsChromeVersion('502.021.2.0.123')) |
| OLD | NEW |