@ -170,20 +170,10 @@ class PatchTest(unittest.TestCase):
def testFilePatchDelete ( self ) :
p = patch . FilePatchDelete ( ' foo ' , False )
self . _check_patch ( p , ' foo ' , None , is_delete = True )
try :
p . get ( )
self . fail ( )
except NotImplementedError :
pass
def testFilePatchDeleteBin ( self ) :
p = patch . FilePatchDelete ( ' foo ' , True )
self . _check_patch ( p , ' foo ' , None , is_delete = True , is_binary = True )
try :
p . get ( )
self . fail ( )
except NotImplementedError :
pass
def testFilePatchBinary ( self ) :
p = patch . FilePatchBinary ( ' foo ' , ' data ' , [ ] , is_new = False )
@ -229,124 +219,6 @@ class PatchTest(unittest.TestCase):
self . _check_patch (
p , ' foo ' , GIT_NEW , is_new = True , is_git_diff = True , patchlevel = 1 )
def testFilePatchDiffBad ( self ) :
try :
patch . FilePatchDiff ( ' foo ' , ' data ' , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchDiffEmpty ( self ) :
try :
patch . FilePatchDiff ( ' foo ' , ' ' , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchDiffNone ( self ) :
try :
patch . FilePatchDiff ( ' foo ' , None , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchBadDiffName ( self ) :
try :
patch . FilePatchDiff ( ' foo ' , SVN_PATCH , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat , e :
self . assertEquals (
" Can ' t process patch for file foo. \n Unexpected diff: chrome/file.cc. " ,
str ( e ) )
def testFilePatchDiffBadHeader ( self ) :
try :
diff = (
' +++ b/foo \n '
' @@ -0,0 +1 @@ \n '
' +bar \n ' )
patch . FilePatchDiff ( ' foo ' , diff , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchDiffBadGitHeader ( self ) :
try :
diff = (
' diff --git a/foo b/foo \n '
' +++ b/foo \n '
' @@ -0,0 +1 @@ \n '
' +bar \n ' )
patch . FilePatchDiff ( ' foo ' , diff , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchDiffBadHeaderReversed ( self ) :
try :
diff = (
' +++ b/foo \n '
' --- b/foo \n '
' @@ -0,0 +1 @@ \n '
' +bar \n ' )
patch . FilePatchDiff ( ' foo ' , diff , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchDiffGitBadHeaderReversed ( self ) :
try :
diff = (
' diff --git a/foo b/foo \n '
' +++ b/foo \n '
' --- b/foo \n '
' @@ -0,0 +1 @@ \n '
' +bar \n ' )
patch . FilePatchDiff ( ' foo ' , diff , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchDiffInvalidGit ( self ) :
try :
patch . FilePatchDiff ( ' svn_utils_test.txt ' , (
' diff --git a/tests/svn_utils_test_data/svn_utils_test.txt '
' b/tests/svn_utils_test_data/svn_utils_test.txt \n '
' index 0e4de76..8320059 100644 \n '
' --- a/svn_utils_test.txt \n '
' +++ b/svn_utils_test.txt \n '
' @@ -3,6 +3,7 @@ bb \n '
' ccc \n '
' dd \n '
' e \n '
' +FOO! \n '
' ff \n '
' ggg \n '
' hh \n ' ) ,
[ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
try :
patch . FilePatchDiff ( ' svn_utils_test2.txt ' , (
' diff --git a/svn_utils_test_data/svn_utils_test.txt '
' b/svn_utils_test.txt \n '
' index 0e4de76..8320059 100644 \n '
' --- a/svn_utils_test.txt \n '
' +++ b/svn_utils_test.txt \n '
' @@ -3,6 +3,7 @@ bb \n '
' ccc \n '
' dd \n '
' e \n '
' +FOO! \n '
' ff \n '
' ggg \n '
' hh \n ' ) ,
[ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testValidSvn ( self ) :
# pylint: disable=R0201
# Method could be a function
@ -412,17 +284,6 @@ class PatchTest(unittest.TestCase):
header = ' ' . join ( header )
self . assertEquals ( header , patches . patches [ 0 ] . diff_header )
def testRelPathBad ( self ) :
patches = patch . PatchSet ( [
patch . FilePatchDiff ( ' chrome \\ file.cc ' , SVN_PATCH , [ ] ) ,
patch . FilePatchDelete ( ' other \\ place \\ foo ' , True ) ,
] )
try :
patches . set_relpath ( ' .. ' )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testRelPathEmpty ( self ) :
patches = patch . PatchSet ( [
patch . FilePatchDiff ( ' chrome \\ file.cc ' , SVN_PATCH , [ ] ) ,
@ -484,21 +345,6 @@ class PatchTest(unittest.TestCase):
p = patch . FilePatchDiff ( ' file_a ' , diff , [ ] )
self . _check_patch ( p , ' file_a ' , diff )
def testInverted ( self ) :
try :
patch . FilePatchDiff (
' file_a ' , ' +++ file_a \n --- file_a \n @@ -0,0 +1 @@ \n +foo \n ' , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testInvertedOnlyHeader ( self ) :
try :
patch . FilePatchDiff ( ' file_a ' , ' +++ file_a \n --- file_a \n ' , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testRenameOnlyHeader ( self ) :
diff = ' --- file_a \n +++ file_b \n '
p = patch . FilePatchDiff ( ' file_b ' , diff , [ ] )
@ -552,6 +398,169 @@ class PatchTest(unittest.TestCase):
p , ' natsort_test.py ' , diff , is_new = True , is_git_diff = True , patchlevel = 1 )
class PatchTestFail ( unittest . TestCase ) :
# All patches that should throw.
def testFilePatchDelete ( self ) :
p = patch . FilePatchDelete ( ' foo ' , False )
try :
p . get ( )
self . fail ( )
except NotImplementedError :
pass
def testFilePatchDeleteBin ( self ) :
p = patch . FilePatchDelete ( ' foo ' , True )
try :
p . get ( )
self . fail ( )
except NotImplementedError :
pass
def testFilePatchDiffBad ( self ) :
try :
patch . FilePatchDiff ( ' foo ' , ' data ' , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchDiffEmpty ( self ) :
try :
patch . FilePatchDiff ( ' foo ' , ' ' , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchDiffNone ( self ) :
try :
patch . FilePatchDiff ( ' foo ' , None , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchBadDiffName ( self ) :
try :
patch . FilePatchDiff ( ' foo ' , SVN_PATCH , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat , e :
self . assertEquals (
" Can ' t process patch for file foo. \n Unexpected diff: chrome/file.cc. " ,
str ( e ) )
def testFilePatchDiffBadHeader ( self ) :
try :
diff = (
' +++ b/foo \n '
' @@ -0,0 +1 @@ \n '
' +bar \n ' )
patch . FilePatchDiff ( ' foo ' , diff , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchDiffBadGitHeader ( self ) :
try :
diff = (
' diff --git a/foo b/foo \n '
' +++ b/foo \n '
' @@ -0,0 +1 @@ \n '
' +bar \n ' )
patch . FilePatchDiff ( ' foo ' , diff , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchDiffBadHeaderReversed ( self ) :
try :
diff = (
' +++ b/foo \n '
' --- b/foo \n '
' @@ -0,0 +1 @@ \n '
' +bar \n ' )
patch . FilePatchDiff ( ' foo ' , diff , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchDiffGitBadHeaderReversed ( self ) :
try :
diff = (
' diff --git a/foo b/foo \n '
' +++ b/foo \n '
' --- b/foo \n '
' @@ -0,0 +1 @@ \n '
' +bar \n ' )
patch . FilePatchDiff ( ' foo ' , diff , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testFilePatchDiffInvalidGit ( self ) :
try :
patch . FilePatchDiff ( ' svn_utils_test.txt ' , (
' diff --git a/tests/svn_utils_test_data/svn_utils_test.txt '
' b/tests/svn_utils_test_data/svn_utils_test.txt \n '
' index 0e4de76..8320059 100644 \n '
' --- a/svn_utils_test.txt \n '
' +++ b/svn_utils_test.txt \n '
' @@ -3,6 +3,7 @@ bb \n '
' ccc \n '
' dd \n '
' e \n '
' +FOO! \n '
' ff \n '
' ggg \n '
' hh \n ' ) ,
[ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
try :
patch . FilePatchDiff ( ' svn_utils_test2.txt ' , (
' diff --git a/svn_utils_test_data/svn_utils_test.txt '
' b/svn_utils_test.txt \n '
' index 0e4de76..8320059 100644 \n '
' --- a/svn_utils_test.txt \n '
' +++ b/svn_utils_test.txt \n '
' @@ -3,6 +3,7 @@ bb \n '
' ccc \n '
' dd \n '
' e \n '
' +FOO! \n '
' ff \n '
' ggg \n '
' hh \n ' ) ,
[ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testRelPathBad ( self ) :
patches = patch . PatchSet ( [
patch . FilePatchDiff ( ' chrome \\ file.cc ' , SVN_PATCH , [ ] ) ,
patch . FilePatchDelete ( ' other \\ place \\ foo ' , True ) ,
] )
try :
patches . set_relpath ( ' .. ' )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testInverted ( self ) :
try :
patch . FilePatchDiff (
' file_a ' , ' +++ file_a \n --- file_a \n @@ -0,0 +1 @@ \n +foo \n ' , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
def testInvertedOnlyHeader ( self ) :
try :
patch . FilePatchDiff ( ' file_a ' , ' +++ file_a \n --- file_a \n ' , [ ] )
self . fail ( )
except patch . UnsupportedPatchFormat :
pass
if __name__ == ' __main__ ' :
logging . basicConfig ( level =
[ logging . WARNING , logging . INFO , logging . DEBUG ] [