| 
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -101,6 +101,7 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'BinaryExists',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'FullUrlForRelativeUrl',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'GetCheckoutRoot',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'GetRemoteURL',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'GetRevisionDate',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'GetUsableRev',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'Svnversion',
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -161,9 +162,9 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				  def testRunCommandException(self):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    options = self.Options(verbose=False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.git')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.hg')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(self.base_path).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(self.base_path).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.ReplayAll()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				                            relpath=self.relpath)
 | 
			
		
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
			
			 | 
			 | 
			
				@ -182,8 +183,6 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.SVN.Capture(['--version', '--quiet'], None
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        ).AndReturn('1.5.1')
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    # It'll to a checkout instead.
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.git')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.hg')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    # Checkout.
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(self.base_path).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    parent = gclient_scm.os.path.dirname(self.base_path)
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -211,16 +210,14 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    options = self.Options(verbose=True, force=True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.isdir(self.base_path).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.isdir(join(self.base_path, '.svn')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.isdir(join(self.base_path, '.git')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.isdir(join(self.base_path, '.hg')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    # Checkout.
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.git')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.hg')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(self.base_path).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    parent = gclient_scm.os.path.dirname(self.base_path)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(parent).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.makedirs(parent)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(parent).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(self.base_path).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    files_list = self.mox.CreateMockAnything()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.SVN.Capture(['--version', '--quiet'], None
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        ).AndReturn('1.6')
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -340,8 +337,6 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    file_info.url = self.url
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    file_info.uuid = 'ABC'
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    file_info.revision = 42
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.git')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.hg')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    # Checkout.
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(self.base_path).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    parent = gclient_scm.os.path.dirname(self.base_path)
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -373,8 +368,8 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				      'UUID': 'ABC',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				      'Revision': 42,
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    }
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.git')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.hg')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(self.base_path).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(self.base_path).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    # Checkout or update.
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -419,8 +414,8 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				      'UUID': 'ABC',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				      'Revision': 42,
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    }
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.git')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.hg')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(self.base_path).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(self.base_path).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    # Checkout or update.
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -455,8 +450,8 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				      'UUID': 'ABC',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				      'Revision': 42,
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    }
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.git')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.hg')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(self.base_path).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(self.base_path).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    # Checkout or update.
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -521,8 +516,8 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        file_list=files_list)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    # Now we fall back on scm.update().
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.git')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.hg')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(self.base_path).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(self.base_path).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.SVN._CaptureInfo([], dotted_path).AndReturn(file_info)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.SVN._CaptureInfo([file_info['URL']], None
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -591,8 +586,8 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        file_list=files_list)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    # Now we fall back on scm.update().
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.git')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.hg')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(self.base_path).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(self.base_path).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.SVN._CaptureInfo(
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        [], join(self.base_path, ".")).AndReturn(file_info)
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -627,8 +622,8 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    # Now we fall back on scm.update().
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    files_list = self.mox.CreateMockAnything()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.git')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.hg')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(self.base_path).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(self.base_path).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.SVN._CaptureInfo(
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        [], join(self.base_path, '.')).AndReturn(file_info)
 | 
			
		
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
			
			 | 
			 | 
			
				@ -644,23 +639,11 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    scm.updatesingle(options, ['DEPS'], files_list)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.checkstdout('\n_____ %s at 42\n' % self.relpath)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				  def testUpdateGit(self):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				  def testUpdateGitSvn(self):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    options = self.Options(verbose=True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    file_path = gclient_scm.os.path.join(self.root_dir, self.relpath, '.git')
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(file_path).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.ReplayAll()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				                            relpath=self.relpath)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    file_list = []
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    scm.update(options, self.args, file_list)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.checkstdout(
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        ('________ found .git directory; skipping %s\n' % self.relpath))
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				  def testUpdateHg(self):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    options = self.Options(verbose=True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.git')).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(join(self.base_path, '.hg')).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.os.path.exists(self.base_path).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(self.base_path).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.ReplayAll()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
 | 
			
		
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
			
			 | 
			 | 
			
				@ -668,7 +651,7 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    file_list = []
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    scm.update(options, self.args, file_list)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.checkstdout(
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        ('________ found .hg directory; skipping %s\n' % self.relpath))
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        ('________ %s looks like git-svn; skipping.\n' % self.relpath))
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				  def testGetUsableRevSVN(self):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    # pylint: disable=E1101
 | 
			
		
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
			
			 | 
			 | 
			
				@ -691,6 +674,48 @@ class SVNWrapperTestCase(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.assertRaises(gclient_scm.gclient_utils.Error,
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				                      svn_scm.GetUsableRev, 'fake', options)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				  def testGetRemoteURL(self):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.UnsetStubs()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    options = self.Options(verbose=True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.SVN, 'Capture', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    svn_scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				                                relpath=self.relpath)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    if svn_scm.relpath:
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				      cwd = os.path.join(svn_scm._root_dir, svn_scm.relpath)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    else:
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				      cwd = svn_scm._root_dir
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.SVN.Capture(['info', '--xml', os.curdir], cwd).AndReturn(
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				"""<?xml version="1.0"?>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				<info>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				<entry
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				   path="."
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				   revision="1234"
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				   kind="dir">
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				<url>%s</url>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				<repository>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				<root>https://dummy.repo.com/svn</root>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				<uuid>FAKE</uuid>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				</repository>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				<wc-info>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				<schedule>normal</schedule>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				<depth>infinity</depth>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				</wc-info>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				<commit
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				   revision="1234">
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				<author>fakedev@chromium.org</author>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				<date>2013-11-14T15:08:21.757885Z</date>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				</commit>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				</entry>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				</info>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				""" % svn_scm.url)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.ReplayAll()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.assertEquals(svn_scm.GetRemoteURL(options), self.url)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				class BaseGitWrapperTestCase(GCBaseTestCase, StdoutCheck, TestCaseUtils,
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				                             unittest.TestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				  """This class doesn't use pymox."""
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -836,6 +861,7 @@ class ManagedGitWrapperTestCase(BaseGitWrapperTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'BinaryExists',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'FullUrlForRelativeUrl',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'GetCheckoutRoot',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'GetRemoteURL',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'GetRevisionDate',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'GetUsableRev',
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        'RunCommand',
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -1162,7 +1188,7 @@ class ManagedGitWrapperTestCaseMox(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        ).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(cwd=self.base_path).MultipleTimes(
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(self.base_path).MultipleTimes(
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        ).AndReturn(False)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.os.path.isdir(self.base_path).AndReturn(True)
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -1211,7 +1237,7 @@ class ManagedGitWrapperTestCaseMox(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.Capture(['fetch', 'origin'], cwd=self.base_path)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsGitSvn', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(cwd=self.base_path).MultipleTimes(
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    gclient_scm.scm.GIT.IsGitSvn(self.base_path).MultipleTimes(
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        ).AndReturn(True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.scm.GIT, 'IsValidRevision', True)
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -1251,6 +1277,18 @@ class ManagedGitWrapperTestCaseMox(BaseTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.assertRaises(gclient_scm.gclient_utils.Error,
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				                      git_svn_scm.GetUsableRev, too_big, options)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				  def testGetRemoteURL(self):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    options = self.Options(verbose=True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.StubOutWithMock(gclient_scm.GitWrapper, '_Capture', True)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    git_scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir,
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				                                relpath=self.relpath)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    git_scm._Capture(['config', 'remote.origin.url'], cwd='/tmp/fake'
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				                     ).AndReturn('%s\n' % git_scm.url)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.mox.ReplayAll()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    self.assertEquals(git_scm.GetRemoteURL(options), self.url)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				class UnmanagedGitWrapperTestCase(BaseGitWrapperTestCase):
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				  def testUpdateUpdate(self):
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
			
			 | 
			 | 
			
				
 
 |