public void testAdd() {
super.testAdd();
final EventList el = EventLists.eventList();
prefillWithIntegers(el, 5);
final EventList rel = createBackedEventList(el);
ListEventListener lel = new ListEventListener() {
private int count = 0;
public void listChanged(final ListEvent listEvent) {
switch (count++) {
case 0:
assertEquals(ListEvent.createAdded(el, 0), listEvent);
break;
case 1:
assertNull(listEvent);
break;
default:
fail("Unexpected: " + listEvent);
}
}
};
ListEventListener rlel = new ListEventListener() {
private int count = 0;
public void listChanged(final ListEvent listEvent) {
switch (count++) {
case 0:
assertEquals(ListEvent.createAdded(rel, 5), listEvent);
break;
case 1:
assertNull(listEvent);
break;
default:
fail("Unexpected: " + listEvent);
}
}
};
el.addListEventListener(lel);
rel.addListEventListener(rlel);
rel.add("one");
lel.listChanged(null);
rlel.listChanged(null);
el.removeListEventListener(lel);
rel.removeListEventListener(rlel);
lel = new ListEventListener() {
private int count = 0;
public void listChanged(final ListEvent listEvent) {
switch (count++) {
case 0:
assertEquals(ListEvent.createAdded(el, 5), listEvent);
break;
case 1:
assertNull(listEvent);
break;
default:
fail("Unexpected: " + listEvent);
}
}
};
rlel = new ListEventListener() {
private int count = 0;
public void listChanged(final ListEvent listEvent) {
switch (count++) {
case 0:
assertEquals(ListEvent.createAdded(rel, 1), listEvent);
break;
case 1:
assertNull(listEvent);
break;
default:
fail("Unexpected: " + listEvent);
}
}
};
el.addListEventListener(lel);
rel.addListEventListener(rlel);
rel.add(1, "two");
lel.listChanged(null);
rlel.listChanged(null);
el.removeListEventListener(lel);
rel.removeListEventListener(rlel);
}