Skip to content
This repository was archived by the owner on Aug 5, 2024. It is now read-only.

Commit b750d26

Browse files
committed
Copy 160kb string test from C# to other languages
1 parent d9b6d33 commit b750d26

File tree

7 files changed

+83
-0
lines changed

7 files changed

+83
-0
lines changed

dart/tests/DiffMatchPatchTest.dart

+12
Original file line numberDiff line numberDiff line change
@@ -462,6 +462,18 @@ void testDiffDelta() {
462462

463463
// Convert delta string into a diff.
464464
Expect.listEquals(diffs, dmp.diff_fromDelta('', delta), 'diff_fromDelta: Unchanged characters.');
465+
466+
// 160 kb string.
467+
var a = 'abcdefghij';
468+
for (var i = 0; i < 14; i++) {
469+
a += a;
470+
}
471+
diffs = [new Diff(Operation.insert, a)];
472+
delta = dmp.diff_toDelta(diffs);
473+
Expect.equals('+' + a, delta, 'diff_toDelta: 160kb string.');
474+
475+
// Convert delta string into a diff.
476+
Expect.listEquals(diffs, dmp.diff_fromDelta('', delta), 'diff_fromDelta: 160kb string.');
465477
}
466478

467479
void testDiffXIndex() {

java/tests/name/fraser/neil/plaintext/diff_match_patch_test.java

+12
Original file line numberDiff line numberDiff line change
@@ -434,6 +434,18 @@ public static void testDiffDelta() {
434434

435435
// Convert delta string into a diff.
436436
assertEquals("diff_fromDelta: Unchanged characters.", diffs, dmp.diff_fromDelta("", delta));
437+
438+
// 160 kb string.
439+
String a = "abcdefghij";
440+
for (int i = 0; i < 14; i++) {
441+
a += a;
442+
}
443+
diffs = diffList(new Diff(INSERT, a));
444+
delta = dmp.diff_toDelta(diffs);
445+
assertEquals("diff_toDelta: 160kb string.", "+" + a, delta);
446+
447+
// Convert delta string into a diff.
448+
assertEquals("diff_fromDelta: 160kb string.", diffs, dmp.diff_fromDelta("", delta));
437449
}
438450

439451
public static void testDiffXIndex() {

javascript/tests/diff_match_patch_test.js

+12
Original file line numberDiff line numberDiff line change
@@ -502,6 +502,18 @@ function testDiffDelta() {
502502

503503
// Convert delta string into a diff.
504504
assertEquivalent(diffs, dmp.diff_fromDelta('', delta));
505+
506+
// 160 kb string.
507+
var a = 'abcdefghij';
508+
for (var i = 0; i < 14; i++) {
509+
a += a;
510+
}
511+
diffs = [[DIFF_INSERT, a]];
512+
delta = dmp.diff_toDelta(diffs);
513+
assertEquals('+' + a, delta);
514+
515+
// Convert delta string into a diff.
516+
assertEquivalent(diffs, dmp.diff_fromDelta('', delta));
505517
}
506518

507519
function testDiffXIndex() {

lua/tests/diff_match_patch_test.lua

+9
Original file line numberDiff line numberDiff line change
@@ -550,6 +550,15 @@ function testDiffDelta()
550550

551551
-- Convert delta string into a diff.
552552
assertEquivalent(diffs, dmp.diff_fromDelta('', delta))
553+
554+
-- 160 kb string.
555+
local a = string.rep('abcdefghij', 16384)
556+
diffs = {{DIFF_INSERT, a}};
557+
delta = dmp.diff_toDelta(diffs);
558+
assertEquals('+' .. a, delta);
559+
560+
-- Convert delta string into a diff.
561+
assertEquivalent(diffs, dmp.diff_fromDelta('', delta));
553562
end
554563

555564
function testDiffXIndex()

objectivec/Tests/DiffMatchPatchTest.m

+16
Original file line numberDiff line numberDiff line change
@@ -765,6 +765,22 @@ - (void)test_diff_deltaTest {
765765
expectedResult = [dmp diff_fromDeltaWithText:@"" andDelta:delta error:NULL];
766766
XCTAssertEqualObjects(diffs, expectedResult, @"diff_fromDelta: Unchanged characters. Convert delta string into a diff.");
767767

768+
// 160 kb string.
769+
NSString *a = @"abcdefghij";
770+
NSMutableString *aMutable = [NSMutableString stringWithString:a];
771+
for (int i = 0; i < 14; i++) {
772+
[aMutable appendString:aMutable];
773+
}
774+
a = aMutable;
775+
diffs = [NSMutableArray arrayWithObject:
776+
[Diff diffWithOperation:DIFF_INSERT andText:a]];
777+
delta = [dmp diff_toDelta:diffs];
778+
XCTAssertEqualObjects([@"+" stringByAppendingString:a], delta, @"diff_toDelta: 160kb string.");
779+
780+
// Convert delta string into a diff.
781+
expectedResult = [dmp diff_fromDeltaWithText:@"" andDelta:delta error:NULL];
782+
XCTAssertEqualObjects(diffs, expectedResult, @"diff_fromDelta: 160kb string. Convert delta string into a diff.");
783+
768784
[dmp release];
769785
}
770786

python2/tests/diff_match_patch_test.py

+11
Original file line numberDiff line numberDiff line change
@@ -452,6 +452,17 @@ def testDiffDelta(self):
452452
# Convert delta string into a diff.
453453
self.assertEquals(diffs, self.dmp.diff_fromDelta("", delta))
454454

455+
# 160 kb string.
456+
a = "abcdefghij"
457+
for i in range(14):
458+
a += a
459+
diffs = [(self.dmp.DIFF_INSERT, a)]
460+
delta = self.dmp.diff_toDelta(diffs);
461+
self.assertEquals('+' + a, delta);
462+
463+
# Convert delta string into a diff.
464+
self.assertEquals(diffs, self.dmp.diff_fromDelta("", delta));
465+
455466
def testDiffXIndex(self):
456467
# Translate a location in text1 to text2.
457468
self.assertEquals(5, self.dmp.diff_xIndex([(self.dmp.DIFF_DELETE, "a"), (self.dmp.DIFF_INSERT, "1234"), (self.dmp.DIFF_EQUAL, "xyz")], 2))

python3/tests/diff_match_patch_test.py

+11
Original file line numberDiff line numberDiff line change
@@ -455,6 +455,17 @@ def testDiffDelta(self):
455455
# Convert delta string into a diff.
456456
self.assertEqual(diffs, self.dmp.diff_fromDelta("", delta))
457457

458+
# 160 kb string.
459+
a = "abcdefghij"
460+
for i in range(14):
461+
a += a
462+
diffs = [(self.dmp.DIFF_INSERT, a)]
463+
delta = self.dmp.diff_toDelta(diffs);
464+
self.assertEqual('+' + a, delta);
465+
466+
# Convert delta string into a diff.
467+
self.assertEqual(diffs, self.dmp.diff_fromDelta("", delta));
468+
458469
def testDiffXIndex(self):
459470
# Translate a location in text1 to text2.
460471
self.assertEqual(5, self.dmp.diff_xIndex([(self.dmp.DIFF_DELETE, "a"), (self.dmp.DIFF_INSERT, "1234"), (self.dmp.DIFF_EQUAL, "xyz")], 2))

0 commit comments

Comments
 (0)