### Question:
AbstractLocation implements Location { @Override public final boolean commonName(Location other) { Validate.notNull(other, "other must not be null"); Set<String> names1 = this.collectAlternativeNames(); Set<String> names2 = other.collectAlternativeNames(); names1.retainAll(names2); return names1.size() > 0; }  @Override final boolean descendantOf(Location other); @Override final boolean childOf(Location other); @Override final boolean commonName(Location other); @Override final Set<String> collectAlternativeNames(); @Override @Deprecated final Double getLatitude(); @Override @Deprecated final Double getLongitude(); @Override String toString(); @Override boolean hasName(String name, Set<Language> languages); @Override int hashCode(); @Override boolean equals(Object obj);  }### Answer:
@Test public void testCommonNames() { assertFalse(l1.commonName(l2)); assertTrue(l3.commonName(l4)); }