@Test public void testRemoveExpenseReport() throws Exception { ExpenseReport report = new ExpenseReport("Trip somewhere"); binder.addExpenseReport(report); binder.removeExpenseReport(report); /* Skip the first one */ CollectionPropertyChangeEvent propertyChangeEvent = (CollectionPropertyChangeEvent) observerQueue.remove(); /* The second event contains the remove */ propertyChangeEvent = (CollectionPropertyChangeEvent) observerQueue.remove(); assertSame(binder, propertyChangeEvent.getSource()); assertEquals(report, propertyChangeEvent.removed[0]); }
@Test public void testRemoveMissingExpenseReport() throws Exception { ExpenseReport report = new ExpenseReport("Trip somewhere"); binder.removeExpenseReport(report); assertTrue(observerQueue.isEmpty()); }
@Test public void testAddExpenseReport() throws Exception { ExpenseReport report = new ExpenseReport("Trip somewhere"); binder.addExpenseReport(report); CollectionPropertyChangeEvent propertyChangeEvent = (CollectionPropertyChangeEvent) observerQueue.remove(); assertSame(binder, propertyChangeEvent.getSource()); assertEquals(report, propertyChangeEvent.added[0]); }