@Test
	public void testInsertingOnTheSameItemIsPermittedWithoutSideEffects() {
		UnitOfWork<UnitItem> unit = new UnitOfWork<>();
		
		UnitItem item = new UnitItem();
		item.setValue("Foo");
		
		Assert.assertTrue(unit.isEmpty());
		Assert.assertFalse(unit.isUpdatingExistingState());
		unit.insert(item);
		unit.insert(item);
		Assert.assertFalse(unit.isEmpty());
		Assert.assertFalse(unit.isUpdatingExistingState());
		
		Set<UnitItem> insertedItems = unit.getInsertedRecords();
		Assert.assertEquals(1, insertedItems.size());
		Assert.assertTrue(insertedItems.contains(item));
	}