### Question:
LegacyNamingStrategy implements NamingStrategy { @Override public String getReferenceTableName(Facet facet) { Table table = facet.getAnnotation(Table.class); return table == null ? getTableName(facet.getType().getElementType().getRawType()) : table.value(); }  @Override String getColumnName(Facet facet); @Override String getReferenceTableName(Facet facet); @Override String getTableName(Class<?> pojoClass);  }### Answer:
@Test public void testGetAnnotatedReferenceTableName() throws Exception { assertEquals("children", strategy.getReferenceTableName(getFacet(Referer.class, "withAnnotation"))); }
@Test public void testGetDefaultReferenceTableName() throws Exception { assertEquals("Child", strategy.getReferenceTableName(getFacet(Referer.class, "noAnnotation"))); }