|
@@ -41,7 +41,7 @@ class Sequential(object):
|
41
|
41
|
return item
|
42
|
42
|
|
43
|
43
|
|
44
|
|
-class TestPatchStream(unittest.TestCase):
|
|
44
|
+class PatchStreamTest(unittest.TestCase):
|
45
|
45
|
|
46
|
46
|
def test_is_empty(self):
|
47
|
47
|
stream = cdiff.PatchStream(Sequential([]))
|
|
@@ -71,7 +71,7 @@ class TestPatchStream(unittest.TestCase):
|
71
|
71
|
self.assertEqual(out, items)
|
72
|
72
|
|
73
|
73
|
|
74
|
|
-class TestHunk(unittest.TestCase):
|
|
74
|
+class HunkTest(unittest.TestCase):
|
75
|
75
|
|
76
|
76
|
def test_get_old_text(self):
|
77
|
77
|
hunk = cdiff.Hunk([], '@@ -1,2 +1,2 @@', (1, 2), (1, 2))
|
|
@@ -88,7 +88,7 @@ class TestHunk(unittest.TestCase):
|
88
|
88
|
self.assertEqual(hunk._get_new_text(), ['bar\n', 'common\n'])
|
89
|
89
|
|
90
|
90
|
|
91
|
|
-class TestDiff(unittest.TestCase):
|
|
91
|
+class DiffTest(unittest.TestCase):
|
92
|
92
|
|
93
|
93
|
def _init_diff(self):
|
94
|
94
|
"""Return a minimal diff contains all required samples
|
|
@@ -367,9 +367,9 @@ class TestDiff(unittest.TestCase):
|
367
|
367
|
'\x1b[32m\x1b[4m\x1b[32ma\x1b[0m\x1b[32mgain\x1b[0m\n')
|
368
|
368
|
|
369
|
369
|
|
370
|
|
-class TestUdiff(unittest.TestCase):
|
|
370
|
+class UnifiedDiffTest(unittest.TestCase):
|
371
|
371
|
|
372
|
|
- diff = cdiff.Udiff(None, None, None, None)
|
|
372
|
+ diff = cdiff.UnifiedDiff(None, None, None, None)
|
373
|
373
|
|
374
|
374
|
def test_is_hunk_meta_normal(self):
|
375
|
375
|
self.assertTrue(self.diff.is_hunk_meta('@@ -1 +1 @@'))
|
|
@@ -421,10 +421,10 @@ class TestUdiff(unittest.TestCase):
|
421
|
421
|
self.assertFalse(self.diff.is_new('+++ considered as new path'))
|
422
|
422
|
|
423
|
423
|
|
424
|
|
-class TestDiffParser(unittest.TestCase):
|
|
424
|
+class DiffParserTest(unittest.TestCase):
|
425
|
425
|
|
426
|
426
|
def test_type_detect(self):
|
427
|
|
- patch = r"""\
|
|
427
|
+ patch = """\
|
428
|
428
|
spam
|
429
|
429
|
--- a
|
430
|
430
|
+++ b
|
|
@@ -433,10 +433,10 @@ spam
|
433
|
433
|
items = patch.splitlines(True)
|
434
|
434
|
stream = cdiff.PatchStream(Sequential(items))
|
435
|
435
|
parser = cdiff.DiffParser(stream)
|
436
|
|
- self.assertEqual(parser._type, 'udiff')
|
|
436
|
+ self.assertEqual(parser._type, 'unified')
|
437
|
437
|
|
438
|
438
|
def test_type_detect_neg(self):
|
439
|
|
- patch = r"""\
|
|
439
|
+ patch = """\
|
440
|
440
|
spam
|
441
|
441
|
--- a
|
442
|
442
|
spam
|
|
@@ -447,7 +447,7 @@ spam
|
447
|
447
|
self.assertRaises(RuntimeError, cdiff.DiffParser, stream)
|
448
|
448
|
|
449
|
449
|
def test_parse_invalid_hunk_meta(self):
|
450
|
|
- patch = r"""\
|
|
450
|
+ patch = """\
|
451
|
451
|
spam
|
452
|
452
|
--- a
|
453
|
453
|
+++ b
|
|
@@ -460,7 +460,7 @@ spam
|
460
|
460
|
self.assertRaises(RuntimeError, list, parser.get_diff_generator())
|
461
|
461
|
|
462
|
462
|
def test_parse_dangling_header(self):
|
463
|
|
- patch = r"""\
|
|
463
|
+ patch = """\
|
464
|
464
|
--- a
|
465
|
465
|
+++ b
|
466
|
466
|
@@ -1,2 +1,2 @@
|
|
@@ -482,7 +482,7 @@ spam
|
482
|
482
|
self.assertEqual(len(out[1]._hunks), 0)
|
483
|
483
|
|
484
|
484
|
def test_parse_missing_new_path(self):
|
485
|
|
- patch = r"""\
|
|
485
|
+ patch = """\
|
486
|
486
|
--- a
|
487
|
487
|
+++ b
|
488
|
488
|
@@ -1,2 +1,2 @@
|
|
@@ -497,7 +497,7 @@ spam
|
497
|
497
|
self.assertRaises(AssertionError, list, parser.get_diff_generator())
|
498
|
498
|
|
499
|
499
|
def test_parse_missing_hunk_meta(self):
|
500
|
|
- patch = r"""\
|
|
500
|
+ patch = """\
|
501
|
501
|
--- a
|
502
|
502
|
+++ b
|
503
|
503
|
@@ -1,2 +1,2 @@
|
|
@@ -519,7 +519,7 @@ spam
|
519
|
519
|
self.assertEqual(len(out[1]._hunks), 0)
|
520
|
520
|
|
521
|
521
|
def test_parse_missing_hunk_list(self):
|
522
|
|
- patch = r"""\
|
|
522
|
+ patch = """\
|
523
|
523
|
--- a
|
524
|
524
|
+++ b
|
525
|
525
|
@@ -1,2 +1,2 @@
|
|
@@ -536,7 +536,7 @@ spam
|
536
|
536
|
self.assertRaises(AssertionError, list, parser.get_diff_generator())
|
537
|
537
|
|
538
|
538
|
def test_parse_only_in_dir(self):
|
539
|
|
- patch = r"""\
|
|
539
|
+ patch = """\
|
540
|
540
|
--- a
|
541
|
541
|
+++ b
|
542
|
542
|
@@ -1,2 +1,2 @@
|
|
@@ -563,7 +563,7 @@ Only in foo: foo
|
563
|
563
|
self.assertEqual(len(out[2]._hunks[0]._hunk_list), 3)
|
564
|
564
|
|
565
|
565
|
def test_parse_only_in_dir_at_last(self):
|
566
|
|
- patch = r"""\
|
|
566
|
+ patch = """\
|
567
|
567
|
--- a
|
568
|
568
|
+++ b
|
569
|
569
|
@@ -1,2 +1,2 @@
|
|
@@ -582,7 +582,7 @@ Only in foo: foo
|
582
|
582
|
self.assertEqual(out[1]._headers, ['Only in foo: foo\n'])
|
583
|
583
|
|
584
|
584
|
def test_parse_binary_differ_diff_ru(self):
|
585
|
|
- patch = r"""\
|
|
585
|
+ patch = """\
|
586
|
586
|
--- a
|
587
|
587
|
+++ b
|
588
|
588
|
@@ -1,2 +1,2 @@
|
|
@@ -612,7 +612,7 @@ Binary files a/1.pdf and b/1.pdf differ
|
612
|
612
|
self.assertEqual(len(out[2]._hunks[0]._hunk_list), 3)
|
613
|
613
|
|
614
|
614
|
def test_parse_binary_differ_git(self):
|
615
|
|
- patch = r"""\
|
|
615
|
+ patch = """\
|
616
|
616
|
diff --git a/foo b/foo
|
617
|
617
|
index 529d8a3..ad71911 100755
|
618
|
618
|
--- a/foo
|
|
@@ -648,13 +648,13 @@ index 529e8a3..ad71921 100755
|
648
|
648
|
self.assertEqual(len(out[2]._hunks[0]._hunk_list), 3)
|
649
|
649
|
|
650
|
650
|
def test_parse_svn_prop(self):
|
651
|
|
- patch = r"""\
|
|
651
|
+ patch = """\
|
652
|
652
|
--- a
|
653
|
653
|
+++ b
|
654
|
654
|
Added: svn:executable
|
655
|
655
|
## -0,0 +1 ##
|
656
|
656
|
+*
|
657
|
|
-\ No newline at end of property
|
|
657
|
+\\ No newline at end of property
|
658
|
658
|
Added: svn:keywords
|
659
|
659
|
## -0,0 +1 ##
|
660
|
660
|
+Id
|
|
@@ -671,7 +671,7 @@ Added: svn:keywords
|
671
|
671
|
self.assertEqual(hunk._hunk_list, [('+', 'Id\n')])
|
672
|
672
|
|
673
|
673
|
|
674
|
|
-class TestMain(unittest.TestCase):
|
|
674
|
+class MainTest(unittest.TestCase):
|
675
|
675
|
|
676
|
676
|
def setUp(self):
|
677
|
677
|
self._cwd = os.getcwd()
|