### Question:
IndexEntryConflictException extends Exception { public String evidenceMessage( TokenNameLookup tokenNameLookup, SchemaDescriptor schema ) { assert schema.getPropertyIds().length == propertyValues.size(); String labelName = tokenNameLookup.labelGetName( schema.keyId() ); if ( addedNodeId == NO_SUCH_NODE ) { return format( "Node(%d) already exists with label `%s` and %s", existingNodeId, labelName, propertyString( tokenNameLookup, schema.getPropertyIds() ) ); } else { return format( "Both Node(%d) and Node(%d) have the label `%s` and %s", existingNodeId, addedNodeId, labelName, propertyString( tokenNameLookup, schema.getPropertyIds() ) ); } } IndexEntryConflictException( String message, Throwable cause );  IndexEntryConflictException( long existingNodeId, long addedNodeId, Value... propertyValue );  IndexEntryConflictException( long existingNodeId, long addedNodeId, ValueTuple propertyValues ); RuntimeException notAllowed( IndexDescriptor descriptor ); String evidenceMessage( TokenNameLookup tokenNameLookup, SchemaDescriptor schema ); ValueTuple getPropertyValues(); Value getSinglePropertyValue(); long getAddedNodeId(); long getExistingNodeId(); @Override boolean equals( Object o ); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void shouldMakeEntryConflicts() { LabelSchemaDescriptor schema = SchemaDescriptorFactory.forLabel( labelId, 2 ); IndexEntryConflictException e = new IndexEntryConflictException( 0L, 1L, value ); assertThat( e.evidenceMessage( SchemaUtil.idTokenNameLookup, schema ), equalTo( "Both Node(0) and Node(1) have the label `label[1]` and property `property[2]` = 'hi'" ) ); }
@Test public void shouldMakeEntryConflictsForOneNode() { LabelSchemaDescriptor schema = SchemaDescriptorFactory.forLabel( labelId, 2 ); IndexEntryConflictException e = new IndexEntryConflictException( 0L, StatementConstants.NO_SUCH_NODE, value ); assertThat( e.evidenceMessage( SchemaUtil.idTokenNameLookup, schema ), equalTo( "Node(0) already exists with label `label[1]` and property `property[2]` = 'hi'" ) ); }
@Test public void shouldMakeCompositeEntryConflicts() { LabelSchemaDescriptor schema = SchemaDescriptorFactory.forLabel( labelId, 2, 3, 4 ); ValueTuple values = ValueTuple.of( true, "hi", new long[]{6L, 4L} ); IndexEntryConflictException e = new IndexEntryConflictException( 0L, 1L, values ); assertThat( e.evidenceMessage( SchemaUtil.idTokenNameLookup, schema ), equalTo( "Both Node(0) and Node(1) have the label `label[1]` " + "and properties `property[2]` = true, `property[3]` = 'hi', `property[4]` = [6, 4]" ) ); }