@Test
  public void testShouldExtractDeepDataElements() throws Exception {

    DataPredicate namePredicate = new NamePredicate("firstname");
    PredicateExtractor extractor = new PredicateExtractor(namePredicate);

    final Data extracted = extractor.extract(uberMock);

    Assert.assertEquals("Max", extracted.getValue());
  }
  @Test
  public void testShouldExtractFlatDataElements() throws Exception {

    RelPredicate relPredicate = new RelPredicate("person");
    PredicateExtractor extractor = new PredicateExtractor(relPredicate);

    final Data extracted = extractor.extract(uberMock);

    Assert.assertEquals(2, extracted.getData().size());
  }