### Question:
Edge { @Override public String toString() { return ReflectionToStringBuilder.toString(this); } Edge(DomainObject source, DomainObject target, EdgeType type, Direction direction);  Edge(DomainObject source, DomainObject target, EdgeType type); @Override final int hashCode(); @Override final boolean equals(Object obj); @Override String toString(); final DomainObject source; final DomainObject target; final EdgeType type; final Direction direction; }### Answer:
@Test public void toStringWorks() { String toString = new Edge(new DomainObject(Person.class), new DomainObject(Manager.class), EdgeType.ONE_TO_ONE, Direction.BI_DIRECTIONAL).toString(); assertThat(toString, containsString("source")); assertThat(toString, containsString("target")); }