| Index: tests/gclient_scm_test.py
|
| diff --git a/tests/gclient_scm_test.py b/tests/gclient_scm_test.py
|
| index 6f5cc04117934d7826fac84e1223b87920a8c9cd..761c3b1ebcedfa14ea0e0fc9459fa332ce737308 100644
|
| --- a/tests/gclient_scm_test.py
|
| +++ b/tests/gclient_scm_test.py
|
| @@ -49,7 +49,7 @@ class SVNWrapperTestCase(gclient_test.GClientBaseTestCase):
|
| def testDir(self):
|
| members = [
|
| 'FullUrlForRelativeUrl', 'RunCommand', 'cleanup', 'diff', 'export',
|
| - 'pack', 'relpath', 'revert', 'runhooks', 'scm_name', 'status',
|
| + 'pack', 'relpath', 'revert', 'revinfo', 'runhooks', 'scm_name', 'status',
|
| 'update', 'url',
|
| ]
|
|
|
| @@ -323,6 +323,39 @@ class SVNWrapperTestCase(gclient_test.GClientBaseTestCase):
|
| }
|
| self.assertEqual(file_info, expected)
|
|
|
| + def testRevinfo(self):
|
| + options = self.Options(verbose=False)
|
| + xml_text = """<?xml version="1.0"?>
|
| +<info>
|
| +<entry
|
| + kind="dir"
|
| + path="."
|
| + revision="35">
|
| +<url>%s</url>
|
| +<repository>
|
| +<root>%s</root>
|
| +<uuid>7b9385f5-0452-0410-af26-ad4892b7a1fb</uuid>
|
| +</repository>
|
| +<wc-info>
|
| +<schedule>normal</schedule>
|
| +<depth>infinity</depth>
|
| +</wc-info>
|
| +<commit
|
| + revision="35">
|
| +<author>maruel</author>
|
| +<date>2008-12-04T20:12:19.685120Z</date>
|
| +</commit>
|
| +</entry>
|
| +</info>
|
| +""" % (self.url, self.root_dir)
|
| + gclient_scm.CaptureSVN(['info', '--xml',
|
| + self.url], os.getcwd()).AndReturn(xml_text)
|
| + self.mox.ReplayAll()
|
| + scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
|
| + relpath=self.relpath)
|
| + rev_info = scm.revinfo(options, self.args, None)
|
| + self.assertEqual(rev_info, '35')
|
| +
|
|
|
| class GitWrapperTestCase(gclient_test.GClientBaseTestCase):
|
| class OptionsObject(object):
|
| @@ -396,12 +429,6 @@ from :3
|
| stderr=subprocess.STDOUT, cwd=path).communicate()
|
| return True
|
|
|
| - def GetGitRev(self, path):
|
| - return subprocess.Popen(['git', 'rev-parse', 'HEAD'],
|
| - stdout=subprocess.PIPE,
|
| - stderr=subprocess.STDOUT,
|
| - cwd=path).communicate()[0].strip()
|
| -
|
| def setUp(self):
|
| gclient_test.BaseTestCase.setUp(self)
|
| self.args = self.Args()
|
| @@ -418,7 +445,8 @@ from :3
|
| def testDir(self):
|
| members = [
|
| 'FullUrlForRelativeUrl', 'RunCommand', 'cleanup', 'diff', 'export',
|
| - 'relpath', 'revert', 'runhooks', 'scm_name', 'status', 'update', 'url',
|
| + 'relpath', 'revert', 'revinfo', 'runhooks', 'scm_name', 'status',
|
| + 'update', 'url',
|
| ]
|
|
|
| # If you add a member, be sure to add the relevant test!
|
| @@ -448,7 +476,7 @@ from :3
|
| file_list = []
|
| scm.revert(options, self.args, file_list)
|
| self.assertEquals(file_list, [])
|
| - self.assertEquals(self.GetGitRev(self.base_path),
|
| + self.assertEquals(scm.revinfo(options, self.args, None),
|
| '069c602044c5388d2d15c3f875b057c852003458')
|
|
|
|
|
| @@ -466,7 +494,7 @@ from :3
|
| file_list = []
|
| scm.diff(options, self.args, file_list)
|
| self.assertEquals(file_list, [])
|
| - self.assertEquals(self.GetGitRev(self.base_path),
|
| + self.assertEquals(scm.revinfo(options, self.args, None),
|
| '069c602044c5388d2d15c3f875b057c852003458')
|
|
|
| def testRevertNew(self):
|
| @@ -487,7 +515,7 @@ from :3
|
| file_list = []
|
| scm.diff(options, self.args, file_list)
|
| self.assertEquals(file_list, [])
|
| - self.assertEquals(self.GetGitRev(self.base_path),
|
| + self.assertEquals(scm.revinfo(options, self.args, None),
|
| '069c602044c5388d2d15c3f875b057c852003458')
|
|
|
| def testStatusNew(self):
|
| @@ -533,7 +561,7 @@ from :3
|
| scm.update(options, (), file_list)
|
| self.assertEquals(len(file_list), 2)
|
| self.assert_(os.path.isfile(os.path.join(base_path, 'a')))
|
| - self.assertEquals(self.GetGitRev(base_path),
|
| + self.assertEquals(scm.revinfo(options, (), None),
|
| '069c602044c5388d2d15c3f875b057c852003458')
|
| finally:
|
| shutil.rmtree(root_dir)
|
| @@ -547,9 +575,19 @@ from :3
|
| relpath=self.relpath)
|
| file_list = []
|
| scm.update(options, (), file_list)
|
| - self.assertEquals(self.GetGitRev(self.base_path),
|
| + self.assertEquals(file_list, expected_file_list)
|
| + self.assertEquals(scm.revinfo(options, (), None),
|
| 'a7142dc9f0009350b96a11f372b6ea658592aa95')
|
|
|
| + def testRevinfo(self):
|
| + if not self.enabled:
|
| + return
|
| + options = self.Options()
|
| + scm = gclient_scm.CreateSCM(url=self.url, root_dir=self.root_dir,
|
| + relpath=self.relpath)
|
| + rev_info = scm.revinfo(options, (), None)
|
| + self.assertEquals(rev_info, '069c602044c5388d2d15c3f875b057c852003458')
|
| +
|
|
|
| class RunSVNTestCase(gclient_test.BaseTestCase):
|
| def testRunSVN(self):
|
|
|