### Question:
AbstractQualifiedName { @Override public boolean equals(Object object) { if (this == object) { return true; } if (object == null) { return false; } if (getClass() != object.getClass()) { return false; } final AbstractQualifiedName other = (AbstractQualifiedName)object; if (!Objects.equals(this.getName(), other.getName())) { return false; } return true; } protected  AbstractQualifiedName(String name); final String getName(); @Override String toString(); @Override int hashCode(); @Override boolean equals(Object object);  }### Answer:
@Test public void testAbstractQualifiedNameEquality(){ String name1 = "test-name-1"; AbstractQualifiedName aqn1 = new QualifiedName(name1); AbstractQualifiedName aqn2 = new QualifiedName(name1); String name2 = "test-name-2"; AbstractQualifiedName aqn3 = new QualifiedName(name2); assertTrue(aqn1.equals(aqn1)); assertTrue(aqn1.equals(aqn2)); assertFalse(aqn1.equals(aqn3)); assertFalse(aqn1.equals(null)); assertFalse(aqn1.equals(name1)); }