From e76506f807ef458f1e4652a85fa9eccf953944f8 Mon Sep 17 00:00:00 2001 From: "dm.naumenko@gmail.com" Date: Fri, 10 Jun 2011 13:24:06 +0000 Subject: [PATCH] unit tests missed --- .../diffutils/DiffRowGeneratorTest.java | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 test/testcase/diffutils/DiffRowGeneratorTest.java diff --git a/test/testcase/diffutils/DiffRowGeneratorTest.java b/test/testcase/diffutils/DiffRowGeneratorTest.java new file mode 100644 index 0000000..e89d0d6 --- /dev/null +++ b/test/testcase/diffutils/DiffRowGeneratorTest.java @@ -0,0 +1,68 @@ +package diffutils; + +import java.util.Arrays; +import java.util.List; + +import difflib.DiffRow; +import difflib.DiffRowGenerator; + +import junit.framework.TestCase; + +public class DiffRowGeneratorTest extends TestCase { + + public void testGenerator_Default() { + String first = "anything \n \nother"; + String second ="anything\n\nother"; + + DiffRowGenerator generator = new DiffRowGenerator.Builder() + .columnWidth(Integer.MAX_VALUE) // do not wrap + .build(); + List rows = generator.generateDiffRows(split(first), split(second)); + print(rows); + + assertEquals(3, rows.size()); + } + + public void testGenerator_InlineDiff() { + String first = "anything \n \nother"; + String second ="anything\n\nother"; + + DiffRowGenerator generator = new DiffRowGenerator.Builder() + .showInlineDiffs(true) + .columnWidth(Integer.MAX_VALUE) // do not wrap + .build(); + List rows = generator.generateDiffRows(split(first), split(second)); + print(rows); + + assertEquals(3, rows.size()); + assertTrue(rows.get(0).getOldLine().indexOf(" 0); + } + + public void testGenerator_IgnoreWhitespaces() { + String first = "anything \n \nother\nmore lines"; + String second ="anything\n\nother\nsome more lines"; + + DiffRowGenerator generator = new DiffRowGenerator.Builder() + .ignoreWhiteSpaces(true) + .columnWidth(Integer.MAX_VALUE) // do not wrap + .build(); + List rows = generator.generateDiffRows(split(first), split(second)); + print(rows); + + assertEquals(4, rows.size()); + assertEquals(rows.get(0).getTag(), DiffRow.Tag.EQUAL); + assertEquals(rows.get(1).getTag(), DiffRow.Tag.EQUAL); + assertEquals(rows.get(2).getTag(), DiffRow.Tag.EQUAL); + assertEquals(rows.get(3).getTag(), DiffRow.Tag.CHANGE); + } + + private List split(String content) { + return Arrays.asList(content.split("\n")); + } + + private void print(List diffRows) { + for (DiffRow row: diffRows) { + System.out.println(row); + } + } +}