### Question:
ObjectTemplate implements Template { public Object getKey() { return key; } ObjectTemplate(Object key, Object value); Object getKey(); @Override boolean equals(Object obj); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void testGetKey() throws Throwable { Integer key = Integer.valueOf(0); Integer result = (Integer) new ObjectTemplate(key, Integer.valueOf(0)).getKey(); assertSame(key, result, "result"); }
@Test public void testGetKey1() throws Throwable { Integer key = Integer.valueOf(100); Integer result = (Integer) new ObjectTemplate(key, "2").getKey(); assertSame(key, result, "result"); }
@Test public void testGetKey2() throws Throwable { String result = (String) new ObjectTemplate("testString", "").getKey(); assertEquals("testString", result, "result"); }