Index: tests/gclient_scm_test.py |
diff --git a/tests/gclient_scm_test.py b/tests/gclient_scm_test.py |
index 44d23aa30b8042f8497182208f96477ac7b93cf7..908b322b2d896e9f6a6cae066391e1b75c6dd650 100755 |
--- a/tests/gclient_scm_test.py |
+++ b/tests/gclient_scm_test.py |
@@ -196,6 +196,7 @@ class SVNWrapperTestCase(BaseTestCase): |
gclient_scm.os.path.isdir(self.base_path).AndReturn(True) |
gclient_scm.os.path.isdir(join(self.base_path, '.svn')).AndReturn(True) |
gclient_scm.scm.SVN.CaptureStatus(self.base_path).AndReturn([]) |
+ gclient_scm.os.path.isdir(self.base_path).AndReturn(True) |
gclient_scm.scm.SVN.RunAndGetFileList( |
options.verbose, |
['update', '--revision', 'BASE', '--ignore-externals'], |
@@ -222,6 +223,7 @@ class SVNWrapperTestCase(BaseTestCase): |
gclient_scm.os.path.islink(file_path).AndReturn(False) |
gclient_scm.os.path.isdir(file_path).AndReturn(True) |
gclient_scm.gclient_utils.RemoveDirectory(file_path) |
+ gclient_scm.os.path.isdir(self.base_path).AndReturn(True) |
gclient_scm.scm.SVN.RunAndGetFileList( |
options.verbose, |
['update', '--revision', 'BASE', '--ignore-externals'], |
@@ -235,6 +237,33 @@ class SVNWrapperTestCase(BaseTestCase): |
scm.revert(options, self.args, file_list2) |
self.checkstdout(('%s\n' % file_path)) |
+ def testRevertDot(self): |
+ self.mox.StubOutWithMock(gclient_scm.SVNWrapper, 'update') |
+ options = self.Options(verbose=True) |
+ gclient_scm.os.path.isdir(self.base_path).AndReturn(True) |
+ gclient_scm.os.path.isdir(join(self.base_path, '.svn')).AndReturn(True) |
+ items = [ |
+ ('~ ', '.'), |
+ ] |
+ gclient_scm.scm.SVN.CaptureStatus(self.base_path).AndReturn(items) |
+ file_path = join(self.base_path, '.') |
+ gclient_scm.os.path.exists(file_path).AndReturn(True) |
+ gclient_scm.os.path.isfile(file_path).AndReturn(False) |
+ gclient_scm.os.path.islink(file_path).AndReturn(False) |
+ gclient_scm.os.path.isdir(file_path).AndReturn(True) |
+ gclient_scm.gclient_utils.RemoveDirectory(file_path) |
+ gclient_scm.os.path.isdir(self.base_path).AndReturn(False) |
+ # The mock is unbound so self is not necessary. |
+ # pylint: disable=E1120 |
+ gclient_scm.SVNWrapper.update(options, [], ['.']) |
+ |
+ self.mox.ReplayAll() |
+ scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir, |
+ relpath=self.relpath) |
+ file_list2 = [] |
+ scm.revert(options, self.args, file_list2) |
+ self.checkstdout(('%s\n' % file_path)) |
+ |
def testStatus(self): |
options = self.Options(verbose=True) |
gclient_scm.os.path.isdir(self.base_path).AndReturn(True) |