-
Notifications
You must be signed in to change notification settings - Fork 66
Open
Labels
Milestone
Description
With the following unit test (AlignedStringTest.java)
@Test
public void testHtmlDelete() {
ArrayList<ImmutableInterval> list = new ArrayList<>();
list.add(new ImmutableInterval(0, 3));
list.add(new ImmutableInterval(8, 11));
list.add(new ImmutableInterval(16, 20));
list.add(new ImmutableInterval(20, 24));
Collections.reverse(list);
String short_html = "<p>Hello<p>World</p></p>";
AlignedString base = new AlignedString(short_html);
for (ImmutableInterval i : list) {
base.delete(i.getStart(), i.getEnd());
}
System.out.println("Base : " + base.get() + " - " + base.dataSegmentsToString());
Collections.reverse(list);
assertEquals(new ImmutableInterval(0, 0), base.inverseResolve(list.get(0)));
assertEquals(new ImmutableInterval(5, 5), base.inverseResolve(list.get(1)));
assertEquals(new ImmutableInterval(10, 10), base.inverseResolve(list.get(2)));
assertEquals(new ImmutableInterval(10, 10), base.inverseResolve(list.get(3)));
}
We get the following output:
Base : HelloWorld - >>[][Hello][World][][]<< (A:0)(O:0[]0)(O:0[Hello]5)(O:5[World]10)(O:10[]10)(O:10[]10)(A:10)
java.lang.AssertionError:
Expected :[5-5]
Actual :[10-10]
Assuming that the empty brackets represent the html tags, we've noticed that the "p" tag between Hello and World in the output is missing.