| Index: tests/gclient_scm_test.py
|
| diff --git a/tests/gclient_scm_test.py b/tests/gclient_scm_test.py
|
| index b8399df2ef407f4895993b3793a8128059c1e304..4e90a21e039264a1fb3ce873bf3bb604b963061b 100755
|
| --- a/tests/gclient_scm_test.py
|
| +++ b/tests/gclient_scm_test.py
|
| @@ -33,6 +33,8 @@ class BaseTestCase(GCBaseTestCase):
|
| def setUp(self):
|
| GCBaseTestCase.setUp(self)
|
| self.mox.StubOutWithMock(gclient_scm.gclient_utils, 'CheckCallAndFilter')
|
| + self.mox.StubOutWithMock(gclient_scm.gclient_utils,
|
| + 'CheckCallAndFilterAndHeader')
|
| self.mox.StubOutWithMock(gclient_scm.gclient_utils, 'FileRead')
|
| self.mox.StubOutWithMock(gclient_scm.gclient_utils, 'FileWrite')
|
| self.mox.StubOutWithMock(gclient_scm.gclient_utils, 'RemoveDirectory')
|
| @@ -40,10 +42,10 @@ class BaseTestCase(GCBaseTestCase):
|
| self.mox.StubOutWithMock(gclient_scm.scm.SVN, 'Capture')
|
| self.mox.StubOutWithMock(gclient_scm.scm.SVN, 'CaptureInfo')
|
| self.mox.StubOutWithMock(gclient_scm.scm.SVN, 'CaptureStatus')
|
| - self.mox.StubOutWithMock(gclient_scm.scm.SVN, 'Run')
|
| self.mox.StubOutWithMock(gclient_scm.scm.SVN, 'RunAndGetFileList')
|
| self._scm_wrapper = gclient_scm.CreateSCM
|
| gclient_scm.sys.stdout.flush = lambda: None
|
| + gclient_scm.scm.SVN.current_version = None
|
|
|
|
|
| class SVNWrapperTestCase(BaseTestCase):
|
| @@ -56,6 +58,7 @@ class SVNWrapperTestCase(BaseTestCase):
|
| self.force = False
|
| self.reset = False
|
| self.nohooks = False
|
| + self.stdout = gclient_scm.sys.stdout
|
|
|
| def Options(self, *args, **kwargs):
|
| return self.OptionsObject(self, *args, **kwargs)
|
| @@ -131,7 +134,9 @@ class SVNWrapperTestCase(BaseTestCase):
|
| gclient_scm.scm.SVN.RunAndGetFileList(options.verbose,
|
| ['checkout', self.url, base_path,
|
| '--force'],
|
| - self.root_dir, files_list)
|
| + cwd=self.root_dir,
|
| + file_list=files_list,
|
| + stdout=options.stdout)
|
|
|
| self.mox.ReplayAll()
|
| scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
|
| @@ -145,7 +150,9 @@ class SVNWrapperTestCase(BaseTestCase):
|
| gclient_scm.scm.SVN.CaptureStatus(base_path).AndReturn([])
|
| gclient_scm.scm.SVN.RunAndGetFileList(options.verbose,
|
| ['update', '--revision', 'BASE'],
|
| - base_path, mox.IgnoreArg())
|
| + cwd=base_path,
|
| + file_list=mox.IgnoreArg(),
|
| + stdout=options.stdout)
|
|
|
| self.mox.ReplayAll()
|
| scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
|
| @@ -172,7 +179,9 @@ class SVNWrapperTestCase(BaseTestCase):
|
| gclient_scm.os.remove(file_path2)
|
| gclient_scm.scm.SVN.RunAndGetFileList(options.verbose,
|
| ['update', '--revision', 'BASE'],
|
| - base_path, mox.IgnoreArg())
|
| + cwd=base_path,
|
| + file_list=mox.IgnoreArg(),
|
| + stdout=options.stdout)
|
| print(gclient_scm.os.path.join(base_path, 'a'))
|
| print(gclient_scm.os.path.join(base_path, 'b'))
|
|
|
| @@ -200,7 +209,9 @@ class SVNWrapperTestCase(BaseTestCase):
|
| file_list1 = []
|
| gclient_scm.scm.SVN.RunAndGetFileList(options.verbose,
|
| ['update', '--revision', 'BASE'],
|
| - base_path, mox.IgnoreArg())
|
| + cwd=base_path,
|
| + file_list=mox.IgnoreArg(),
|
| + stdout=options.stdout)
|
|
|
| self.mox.ReplayAll()
|
| scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
|
| @@ -214,7 +225,8 @@ class SVNWrapperTestCase(BaseTestCase):
|
| gclient_scm.os.path.isdir(base_path).AndReturn(True)
|
| gclient_scm.scm.SVN.RunAndGetFileList(options.verbose,
|
| ['status'] + self.args,
|
| - base_path, []).AndReturn(None)
|
| + cwd=base_path, file_list=[],
|
| + stdout=options.stdout).AndReturn(None)
|
|
|
| self.mox.ReplayAll()
|
| scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
|
| @@ -238,10 +250,14 @@ class SVNWrapperTestCase(BaseTestCase):
|
| # Checkout.
|
| gclient_scm.os.path.exists(base_path).AndReturn(False)
|
| files_list = self.mox.CreateMockAnything()
|
| + gclient_scm.scm.SVN.Capture(['--version']
|
| + ).AndReturn('svn, version 1.5.1 (r32289)')
|
| gclient_scm.scm.SVN.RunAndGetFileList(options.verbose,
|
| ['checkout', self.url, base_path,
|
| '--force'],
|
| - self.root_dir, files_list)
|
| + cwd=self.root_dir,
|
| + file_list=files_list,
|
| + stdout=options.stdout)
|
| self.mox.ReplayAll()
|
| scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
|
| relpath=self.relpath)
|
| @@ -275,13 +291,14 @@ class SVNWrapperTestCase(BaseTestCase):
|
| additional_args = []
|
| if options.manually_grab_svn_rev:
|
| additional_args = ['--revision', str(file_info['Revision'])]
|
| - if options.force and gclient_scm.scm.SVN.AssertVersion("1.5")[0]:
|
| - additional_args.append('--force')
|
| + gclient_scm.scm.SVN.Capture(['--version']
|
| + ).AndReturn('svn, version 1.5.1 (r32289)')
|
| + additional_args.append('--force')
|
| files_list = []
|
| gclient_scm.scm.SVN.RunAndGetFileList(
|
| options.verbose,
|
| ['update', base_path] + additional_args,
|
| - self.root_dir, files_list)
|
| + cwd=self.root_dir, file_list=files_list, stdout=options.stdout)
|
|
|
| self.mox.ReplayAll()
|
| scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
|
| @@ -311,11 +328,11 @@ class SVNWrapperTestCase(BaseTestCase):
|
|
|
| # When checking out a single file, we issue an svn checkout and svn update.
|
| files_list = self.mox.CreateMockAnything()
|
| - gclient_scm.scm.SVN.Run(
|
| - ['checkout', '--depth', 'empty', self.url, base_path],
|
| - cwd=self.root_dir)
|
| + gclient_scm.gclient_utils.CheckCallAndFilterAndHeader(
|
| + ['svn', 'checkout', '--depth', 'empty', self.url, base_path],
|
| + always=True, cwd=self.root_dir, stdout=options.stdout)
|
| gclient_scm.scm.SVN.RunAndGetFileList(options.verbose, ['update', 'DEPS'],
|
| - gclient_scm.os.path.join(self.root_dir, self.relpath), files_list)
|
| + cwd=base_path, file_list=files_list, stdout=options.stdout)
|
|
|
| # Now we fall back on scm.update().
|
| gclient_scm.os.path.exists(gclient_scm.os.path.join(base_path, '.git')
|
| @@ -325,7 +342,8 @@ class SVNWrapperTestCase(BaseTestCase):
|
| gclient_scm.os.path.join(base_path, "."), '.'
|
| ).AndReturn(file_info)
|
| gclient_scm.scm.SVN.CaptureInfo(file_info['URL'], '.').AndReturn(file_info)
|
| - print("\n_____ %s at 42" % self.relpath)
|
| + options.stdout.write("\n_____ %s at 42" % self.relpath)
|
| + options.stdout.write('\n')
|
|
|
| self.mox.ReplayAll()
|
| scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
|
| @@ -349,10 +367,10 @@ class SVNWrapperTestCase(BaseTestCase):
|
|
|
| # When checking out a single file with svn 1.4, we use svn export
|
| files_list = self.mox.CreateMockAnything()
|
| - gclient_scm.scm.SVN.Run(
|
| - ['export', gclient_scm.os.path.join(self.url, 'DEPS'),
|
| + gclient_scm.gclient_utils.CheckCallAndFilterAndHeader(
|
| + ['svn', 'export', gclient_scm.os.path.join(self.url, 'DEPS'),
|
| gclient_scm.os.path.join(base_path, 'DEPS')],
|
| - cwd=self.root_dir)
|
| + always=True, cwd=self.root_dir, stdout=options.stdout)
|
|
|
| self.mox.ReplayAll()
|
| scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
|
| @@ -385,11 +403,11 @@ class SVNWrapperTestCase(BaseTestCase):
|
|
|
| # When checking out a single file, we issue an svn checkout and svn update.
|
| files_list = self.mox.CreateMockAnything()
|
| - gclient_scm.scm.SVN.Run(
|
| - ['checkout', '--depth', 'empty', self.url, base_path],
|
| - cwd=self.root_dir)
|
| + gclient_scm.gclient_utils.CheckCallAndFilterAndHeader(
|
| + ['svn', 'checkout', '--depth', 'empty', self.url, base_path],
|
| + always=True, cwd=self.root_dir, stdout=options.stdout)
|
| gclient_scm.scm.SVN.RunAndGetFileList(options.verbose, ['update', 'DEPS'],
|
| - gclient_scm.os.path.join(self.root_dir, self.relpath), files_list)
|
| + cwd=base_path, file_list=files_list, stdout=options.stdout)
|
|
|
| # Now we fall back on scm.update().
|
| gclient_scm.os.path.exists(gclient_scm.os.path.join(base_path, '.git')
|
|
|