@Test
public void findField() {
MappedClass mappedClass = getMorphia().getMapper().getMappedClass(IndexedClass.class);
assertEquals("indexName", indexHelper.findField(mappedClass, new IndexOptionsBuilder(), singletonList("indexName")));
assertEquals("nest.name", indexHelper.findField(mappedClass, new IndexOptionsBuilder(), asList("nested", "name")));
assertEquals("nest.name", indexHelper.findField(mappedClass, new IndexOptionsBuilder(), asList("nest", "name")));
try {
assertEquals("nest.whatsit", indexHelper.findField(mappedClass, new IndexOptionsBuilder(), asList("nest", "whatsit")));
fail("Should have failed on the bad index path");
} catch (MappingException e) {
}
assertEquals("nest.whatsit.nested.more.deeply.than.the.object.model",
indexHelper.findField(mappedClass, new IndexOptionsBuilder().disableValidation(true),
asList("nest", "whatsit", "nested", "more", "deeply", "than", "the", "object", "model")));
}