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

Side by Side Diff: tests/gclient_scm_test.py

Issue 12301002: Make safesync w/ git hash work when lkgr is ahead of clone. (Closed) Base URL: https://chromium.googlesource.com/chromium/tools/depot_tools.git@fix_user
Patch Set: Created 7 years, 10 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 unified diff | Download patch
« gclient_scm.py ('K') | « gclient_scm.py ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 """Unit tests for gclient_scm.py.""" 6 """Unit tests for gclient_scm.py."""
7 7
8 # pylint: disable=E1103 8 # pylint: disable=E1103
9 9
10 # Import before super_mox to keep valid references. 10 # Import before super_mox to keep valid references.
(...skipping 1059 matching lines...) Expand 10 before | Expand all | Expand 10 after
1070 1070
1071 self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsValidRevision', True) 1071 self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsValidRevision', True)
1072 gclient_scm.scm.GIT.IsValidRevision(cwd=self.base_path, rev=self.fake_hash_1 1072 gclient_scm.scm.GIT.IsValidRevision(cwd=self.base_path, rev=self.fake_hash_1
1073 ).AndReturn(True) 1073 ).AndReturn(True)
1074 1074
1075 self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True) 1075 self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
1076 gclient_scm.scm.GIT.IsGitSvn(cwd=self.base_path).MultipleTimes( 1076 gclient_scm.scm.GIT.IsGitSvn(cwd=self.base_path).MultipleTimes(
1077 ).AndReturn(False) 1077 ).AndReturn(False)
1078 1078
1079 gclient_scm.scm.os.path.isdir(self.base_path).AndReturn(True) 1079 gclient_scm.scm.os.path.isdir(self.base_path).AndReturn(True)
1080 gclient_scm.os.path.isdir(self.base_path).AndReturn(True)
1080 1081
1081 self.mox.ReplayAll() 1082 self.mox.ReplayAll()
1082 1083
1083 git_scm = gclient_scm.CreateSCM(url=self.url, root_dir=self.root_dir, 1084 git_scm = gclient_scm.CreateSCM(url=self.url, root_dir=self.root_dir,
1084 relpath=self.relpath) 1085 relpath=self.relpath)
1085 # A [fake] git sha1 with a git repo should work (this is in the case that 1086 # A [fake] git sha1 with a git repo should work (this is in the case that
1086 # the LKGR gets flipped to git sha1's some day). 1087 # the LKGR gets flipped to git sha1's some day).
1087 self.assertEquals(git_scm.GetUsableRev(self.fake_hash_1, options), 1088 self.assertEquals(git_scm.GetUsableRev(self.fake_hash_1, options),
1088 self.fake_hash_1) 1089 self.fake_hash_1)
1089 # An SVN rev with an existing purely git repo should raise an exception. 1090 # An SVN rev with an existing purely git repo should raise an exception.
(...skipping 21 matching lines...) Expand all
1111 # Ensure that we call git svn fetch if our LKGR is > the git-svn HEAD rev. 1112 # Ensure that we call git svn fetch if our LKGR is > the git-svn HEAD rev.
1112 self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'Capture', True) 1113 self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'Capture', True)
1113 gclient_scm.scm.GIT.Capture(['config', '--get', 'svn-remote.svn.fetch'], 1114 gclient_scm.scm.GIT.Capture(['config', '--get', 'svn-remote.svn.fetch'],
1114 cwd=self.base_path).AndReturn('blah') 1115 cwd=self.base_path).AndReturn('blah')
1115 gclient_scm.scm.GIT.Capture(['fetch'], cwd=self.base_path) 1116 gclient_scm.scm.GIT.Capture(['fetch'], cwd=self.base_path)
1116 gclient_scm.scm.GIT.Capture(['svn', 'fetch'], cwd=self.base_path) 1117 gclient_scm.scm.GIT.Capture(['svn', 'fetch'], cwd=self.base_path)
1117 error = subprocess2.CalledProcessError(1, 'cmd', '/cwd', 'stdout', 'stderr') 1118 error = subprocess2.CalledProcessError(1, 'cmd', '/cwd', 'stdout', 'stderr')
1118 gclient_scm.scm.GIT.Capture(['config', '--get', 'svn-remote.svn.fetch'], 1119 gclient_scm.scm.GIT.Capture(['config', '--get', 'svn-remote.svn.fetch'],
1119 cwd=self.base_path).AndRaise(error) 1120 cwd=self.base_path).AndRaise(error)
1120 gclient_scm.scm.GIT.Capture(['svn', 'fetch'], cwd=self.base_path) 1121 gclient_scm.scm.GIT.Capture(['svn', 'fetch'], cwd=self.base_path)
1122 gclient_scm.scm.GIT.Capture(['fetch', 'origin'], cwd=self.base_path)
1121 1123
1122 self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True) 1124 self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
1123 gclient_scm.scm.GIT.IsGitSvn(cwd=self.base_path).MultipleTimes( 1125 gclient_scm.scm.GIT.IsGitSvn(cwd=self.base_path).MultipleTimes(
1124 ).AndReturn(True) 1126 ).AndReturn(True)
1125 1127
1126 self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsValidRevision', True) 1128 self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsValidRevision', True)
1127 gclient_scm.scm.GIT.IsValidRevision(cwd=self.base_path, rev=self.fake_hash_1 1129 gclient_scm.scm.GIT.IsValidRevision(cwd=self.base_path, rev=self.fake_hash_1
1128 ).AndReturn(True) 1130 ).AndReturn(True)
1129 gclient_scm.scm.GIT.IsValidRevision(cwd=self.base_path, rev=too_big 1131 gclient_scm.scm.GIT.IsValidRevision(cwd=self.base_path, rev=too_big
1130 ).AndReturn(False) 1132 ).MultipleTimes(2).AndReturn(False)
1131 1133
1132 gclient_scm.os.path.isdir(self.base_path).AndReturn(False) 1134 gclient_scm.os.path.isdir(self.base_path).AndReturn(False)
1133 gclient_scm.os.path.isdir(self.base_path).MultipleTimes().AndReturn(True) 1135 gclient_scm.os.path.isdir(self.base_path).MultipleTimes().AndReturn(True)
1134 1136
1135 self.mox.ReplayAll() 1137 self.mox.ReplayAll()
1136 1138
1137 git_svn_scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir, 1139 git_svn_scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
1138 relpath=self.relpath) 1140 relpath=self.relpath)
1139 # Without an existing checkout, this should fail. 1141 # Without an existing checkout, this should fail.
1140 # TODO(dbeam) Fix this. http://crbug.com/109184 1142 # TODO(dbeam) Fix this. http://crbug.com/109184
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
1180 1182
1181 if __name__ == '__main__': 1183 if __name__ == '__main__':
1182 if '-v' in sys.argv: 1184 if '-v' in sys.argv:
1183 logging.basicConfig( 1185 logging.basicConfig(
1184 level=logging.DEBUG, 1186 level=logging.DEBUG,
1185 format='%(asctime).19s %(levelname)s %(filename)s:' 1187 format='%(asctime).19s %(levelname)s %(filename)s:'
1186 '%(lineno)s %(message)s') 1188 '%(lineno)s %(message)s')
1187 unittest.main() 1189 unittest.main()
1188 1190
1189 # vim: ts=2:sw=2:tw=80:et: 1191 # vim: ts=2:sw=2:tw=80:et:
OLDNEW
« gclient_scm.py ('K') | « gclient_scm.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698