Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(199)

Unified Diff: testing_support/fake_repos.py

Issue 189913020: gclient: print a warning if a dep would get deleted or moved in the future (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/depot_tools
Patch Set: rebase+fix Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « scm.py ('k') | tests/gclient_scm_test.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: testing_support/fake_repos.py
diff --git a/testing_support/fake_repos.py b/testing_support/fake_repos.py
index 8a5cf6be0736289896f79efe8c81f8d56ac636c1..25e3a9be1c1be6b4ec8415a23f56214e15e979d5 100755
--- a/testing_support/fake_repos.py
+++ b/testing_support/fake_repos.py
@@ -752,6 +752,82 @@ class FakeRepoTransitive(FakeReposBase):
pass
+class FakeRepoSkiaDEPS(FakeReposBase):
+ """Simulates the Skia DEPS transition in Chrome."""
+
+ NB_GIT_REPOS = 5
+
+ DEPS_svn_pre = """deps = {
+ 'src/third_party/skia/gyp': '%(svn_base)sskia/gyp',
+ 'src/third_party/skia/include': '%(svn_base)sskia/include',
+ 'src/third_party/skia/src': '%(svn_base)sskia/src',
+}"""
+
+ DEPS_git_pre = """deps = {
+ 'src/third_party/skia/gyp': '%(git_base)srepo_3',
+ 'src/third_party/skia/include': '%(git_base)srepo_4',
+ 'src/third_party/skia/src': '%(git_base)srepo_5',
+}"""
+
+ DEPS_post = """deps = {
+ 'src/third_party/skia': '%(git_base)srepo_1',
+}"""
+
+ def populateSvn(self):
+ """Create revisions which simulate the Skia DEPS transition in Chrome."""
+ subprocess2.check_call(
+ ['svn', 'checkout', self.svn_base, self.svn_checkout,
+ '-q', '--non-interactive', '--no-auth-cache',
+ '--username', self.USERS[0][0], '--password', self.USERS[0][1]])
+ assert os.path.isdir(join(self.svn_checkout, '.svn'))
+
+ # Skia repo.
+ self._commit_svn({
+ 'skia/skia_base_file': 'root-level file.',
+ 'skia/gyp/gyp_file': 'file in the gyp directory',
+ 'skia/include/include_file': 'file in the include directory',
+ 'skia/src/src_file': 'file in the src directory',
+ })
+
+ # Chrome repo.
+ self._commit_svn({
+ 'trunk/src/DEPS': self.DEPS_svn_pre % {'svn_base': self.svn_base},
+ 'trunk/src/myfile': 'svn/trunk/src@1'
+ })
+ self._commit_svn({
+ 'trunk/src/DEPS': self.DEPS_post % {'git_base': self.git_base},
+ 'trunk/src/myfile': 'svn/trunk/src@2'
+ })
+
+ def populateGit(self):
+ # Skia repo.
+ self._commit_git('repo_1', {
+ 'skia_base_file': 'root-level file.',
+ 'gyp/gyp_file': 'file in the gyp directory',
+ 'include/include_file': 'file in the include directory',
+ 'src/src_file': 'file in the src directory',
+ })
+ self._commit_git('repo_3', { # skia/gyp
+ 'gyp_file': 'file in the gyp directory',
+ })
+ self._commit_git('repo_4', { # skia/include
+ 'include_file': 'file in the include directory',
+ })
+ self._commit_git('repo_5', { # skia/src
+ 'src_file': 'file in the src directory',
+ })
+
+ # Chrome repo.
+ self._commit_git('repo_2', {
+ 'DEPS': self.DEPS_git_pre % {'git_base': self.git_base},
+ 'myfile': 'svn/trunk/src@1'
+ })
+ self._commit_git('repo_2', {
+ 'DEPS': self.DEPS_post % {'git_base': self.git_base},
+ 'myfile': 'svn/trunk/src@2'
+ })
+
+
class FakeReposTestBase(trial_dir.TestCase):
"""This is vaguely inspired by twisted."""
# Static FakeRepos instances. Lazy loaded.
« no previous file with comments | « scm.py ('k') | tests/gclient_scm_test.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698