### Question:
GraphEntityMapper { public Object fromNeo4JObject(Object source, Field field) { Class<?> targetClass = field.getType(); if (targetClass.isAssignableFrom(BigDecimal.class) || targetClass.isAssignableFrom(BigInteger.class)) { return PropertyAccessorHelper.fromSourceToTargetClass(field.getType(), source.getClass(), source); } else if (targetClass.isAssignableFrom(Calendar.class) || targetClass.isAssignableFrom(GregorianCalendar.class)) { Date d = (Date) PropertyAccessorHelper.fromSourceToTargetClass(Date.class, source.getClass(), source); Calendar cal = Calendar.getInstance(); cal.setTime(d); return cal; } else if (targetClass.isAssignableFrom(Date.class)) { return PropertyAccessorHelper.fromSourceToTargetClass(field.getType(), source.getClass(), source); } else { return source; } } GraphEntityMapper(Neo4JIndexManager indexer, final KunderaMetadata kunderaMetadata); Node getNodeFromEntity(Object entity, Object key, GraphDatabaseService graphDb, EntityMetadata m,
            boolean isUpdate); Node createProxyNode(Object sourceNodeId, Object targetNodeId, GraphDatabaseService graphDb,
            EntityMetadata sourceEntityMetadata, EntityMetadata targetEntityMetadata); Object getEntityFromNode(Node node, EntityMetadata m); Object getEntityFromRelationship(Relationship relationship, EntityMetadata topLevelEntityMetadata,
            Relation relation); Map<String, Object> createNodeProperties(Object entity, EntityMetadata m); void populateRelationshipProperties(EntityMetadata entityMetadata, EntityMetadata targetNodeMetadata,
            Relationship relationship, Object relationshipObj); Map<String, Object> createRelationshipProperties(EntityMetadata entityMetadata,
            EntityMetadata targetEntityMetadata, Object relationshipEntity); Object toNeo4JProperty(Object source); Object fromNeo4JObject(Object source, Field field); Node searchNode(Object key, EntityMetadata m, GraphDatabaseService graphDb, boolean skipProxy);  }### Answer:
@Test public void testFromNeo4JObject() { }