### Question:
BackendDefinitionAdapter extends AbstractReflectAdapter<T> implements DefinitionAdapter<T>,
                   HasInheritance { @Override public DefinitionId getId(final T definition) { final String definitionId = getDefinitionId(definition.getClass()); final Id idAnn = getClassAnnotation(definition.getClass(), Id.class); if (null != idAnn) { try { final String value = BindableAdapterUtils.getDynamicDefinitionId(definitionId, getAnnotatedFieldValue(definition, Id.class)); return DefinitionId.build(value, definitionId.length()); } catch (Exception e) { LOG.error("Error obtaining annotated id for Definition " + definition.getClass().getName()); } } return DefinitionId.build(definitionId); } @Inject  BackendDefinitionAdapter(); @Override boolean accepts(Class<?> pojo); @Override DefinitionId getId(final T definition); @Override String[] getPropertyFields(final T pojo); @Override String getMetaPropertyField(final T pojo,
                                       final PropertyMetaTypes metaType); @Override String getCategory(final T definition); @Override String getTitle(final T definition); @Override String getDescription(final T definition); @Override @SuppressWarnings("all") String[] getLabels(final T definition); @Override Class<? extends ElementFactory> getGraphFactoryType(final T definition); static Class<? extends ElementFactory> getGraphFactory(final Class<?> type); @Override String getBaseType(final Class<?> type); @Override String[] getTypes(final String baseType);  }### Answer:
@Test public void testGetId() { final String id = tested.getId(instance).value(); assertEquals(FooTestBean.class.getName(), id); }