### Question:
EntityKey { @Override public boolean equals(Object o) { if (this == o) return true; if (!(o instanceof EntityKey)) return false; EntityKey entityKey = (EntityKey) o; return entityMetamodel.equals(entityKey.entityMetamodel) && items.equals(entityKey.items); } EntityKey(EntityMetamodel<?> entityMetamodel, List<?> items); EntityMetamodel<?> getEntityMetamodel(); @Override boolean equals(Object o); @Override int hashCode();  }### Answer:
@Test void testEquals() { EntityKey key1 = new EntityKey(entityDef, Arrays.asList("a", 1)); EntityKey key2 = new EntityKey(entityDef, Arrays.asList("a", 1)); assertEquals(key1, key2); assertEquals(key2, key1); }