Bug 252117 [DataBinding] ListBinding does not update from model to target in some cases
tests/org.eclipse.jface.tests.databinding/src/org/eclipse/core/tests/internal/databinding/beans/JavaBeanObservableArrayBasedListTest.java
assertEquals(list, event.getObservableList());
		assertEntry(event.diff.getDifferences()[0], false, 0, oldElement);
		assertEntry(event.diff.getDifferences()[1], true, 0, newElement);
	}
	public void testSetPropertyChangeEvent() throws Exception {
		list.add("0");
		assertPropertyChangeEvent(bean, new Runnable() {
			public void run() {
				list.set(0, "1");
			}
		});
	}
	public void testListChangeEventFiresWhenNewListIsSet() throws Exception {
		Bean[] elements = new Bean[] { new Bean(), new Bean() };
		ListChangeEventTracker listener = new ListChangeEventTracker();
		list.addListChangeListener(listener);
		assertEquals(0, listener.count);
		bean.setArray(elements);
		assertEquals(1, listener.count);
	}
	private static void assertEntry(ListDiffEntry entry, boolean addition,
			int position, Object element) {
		assertEquals("addition", addition, entry.isAddition());
		assertEquals("position", position, entry.getPosition());
		assertEquals("element", element, entry.getElement());
	}
	private static void assertPropertyChangeEvent(Bean bean, Runnable runnable) {
		PropertyChangeTracker listener = new PropertyChangeTracker();
		bean.addPropertyChangeListener(listener);
		Object[] old = bean.getArray();