@Test
public void testBrokenStatement() {

	List<Statement> brokenSg1Statements = new ArrayList<>();
	brokenSg1Statements.add(getTestStatement(2,
			5, 1, EntityIdValue.ET_ITEM));
	brokenSg1Statements.add(getBrokenStatement());
	brokenSg1Statements.add(getTestStatement(2,
			5, 2, EntityIdValue.ET_ITEM));
	StatementGroup brokenSg1 = Datamodel
			.makeStatementGroup(brokenSg1Statements);
	List<Statement> fixedSg1Statements = new ArrayList<>();
	fixedSg1Statements.add(getTestStatement(2, 5,
			1, EntityIdValue.ET_ITEM));
	fixedSg1Statements.add(getTestStatement(2, 5,
			2, EntityIdValue.ET_ITEM));
	StatementGroup fixedSg1 = Datamodel
			.makeStatementGroup(fixedSg1Statements);
	StatementGroup sg2 = getTestStatementGroup(2,
			5, 1, EntityIdValue.ET_ITEM);
	List<StatementGroup> brokenSgs = new ArrayList<>();
	brokenSgs.add(brokenSg1);
	brokenSgs.add(sg2);
	List<StatementGroup> fixedSgs = new ArrayList<>();
	fixedSgs.add(fixedSg1);
	fixedSgs.add(sg2);
	ItemDocument brokenId = Datamodel.makeItemDocument(
			getTestItemIdValue(2),
			Collections.emptyList(),
			Collections.emptyList(),
			Collections.emptyList(), brokenSgs,
			Collections.emptyMap());
	ItemDocument fixedId = Datamodel.makeItemDocument(
			getTestItemIdValue(2),
			Collections.emptyList(),
			Collections.emptyList(),
			Collections.emptyList(), fixedSgs,
			Collections.emptyMap());
	DatamodelConverter dmc = new DatamodelConverter(
			new DataObjectFactoryImpl());
	assertEquals(fixedId, dmc.copy(brokenId));
}