### Question:
ObjectTemplate implements Template { @Override public boolean equals(Object obj) { return value.equals(obj); } ObjectTemplate(Object key, Object value); Object getKey(); @Override boolean equals(Object obj); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void testNotEqualsItSelfOrAnother() { String value = "someValue"; ObjectTemplate objectTemplateA = new ObjectTemplate("key", value); ObjectTemplate objectTemplateB = new ObjectTemplate("key", value); assertFalse(objectTemplateA.equals(objectTemplateA), "should only equals on the template value"); assertFalse(objectTemplateA.equals(objectTemplateB), "should only equals on the template value"); }