equal
deleted
inserted
replaced
92 'f\n']), |
92 'f\n']), |
93 ] |
93 ] |
94 for old, new, want in cases: |
94 for old, new, want in cases: |
95 self.assertEqual(self.showdiff(old, new), want) |
95 self.assertEqual(self.showdiff(old, new), want) |
96 |
96 |
|
97 def test_fixws(self): |
|
98 cases = [ |
|
99 (" \ta\r b\t\n", "ab\n", 1), |
|
100 (" \ta\r b\t\n", " a b\n", 0), |
|
101 ("", "", 1), |
|
102 ("", "", 0), |
|
103 ] |
|
104 for a, b, allws in cases: |
|
105 c = bdiff.fixws(a, allws) |
|
106 self.assertEqual( |
|
107 c, b, 'fixws(%r) want %r got %r (allws=%r)' % (a, b, c, allws)) |
|
108 |
97 def showdiff(a, b): |
109 def showdiff(a, b): |
98 print('showdiff(\n %r,\n %r):' % (a, b)) |
110 print('showdiff(\n %r,\n %r):' % (a, b)) |
99 bin = bdiff.bdiff(a, b) |
111 bin = bdiff.bdiff(a, b) |
100 pos = 0 |
112 pos = 0 |
101 q = 0 |
113 q = 0 |
107 print('', p1, p2, repr(a[p1:p2]), '->', repr(bin[pos:pos + l])) |
119 print('', p1, p2, repr(a[p1:p2]), '->', repr(bin[pos:pos + l])) |
108 pos += l |
120 pos += l |
109 q = p2 |
121 q = p2 |
110 if q < len(a): |
122 if q < len(a): |
111 print('', repr(a[q:])) |
123 print('', repr(a[q:])) |
112 |
|
113 def testfixws(a, b, allws): |
|
114 c = bdiff.fixws(a, allws) |
|
115 if c != b: |
|
116 print("*** fixws", repr(a), repr(b), allws) |
|
117 print("got:") |
|
118 print(repr(c)) |
|
119 |
|
120 testfixws(" \ta\r b\t\n", "ab\n", 1) |
|
121 testfixws(" \ta\r b\t\n", " a b\n", 0) |
|
122 testfixws("", "", 1) |
|
123 testfixws("", "", 0) |
|
124 |
|
125 print("done") |
|
126 |
124 |
127 print("Nice diff for a trivial change:") |
125 print("Nice diff for a trivial change:") |
128 showdiff( |
126 showdiff( |
129 ''.join('<%s\n-\n' % i for i in range(5)), |
127 ''.join('<%s\n-\n' % i for i in range(5)), |
130 ''.join('>%s\n-\n' % i for i in range(5))) |
128 ''.join('>%s\n-\n' % i for i in range(5))) |