@Test
public void createTopLevelFactModelTreeCompositeCollection() {

    // Single property collection retrieve
    ClientDMNType compositePerson = getCompositeCollection();
    TreeMap<String, FactModelTree> hiddenFactSimpleCollection = new TreeMap<>();
    FactModelTree retrieved = abstractKogitoDMNServiceSpy.createTopLevelFactModelTree("testPath", compositePerson, hiddenFactSimpleCollection, FactModelTree.Type.INPUT);
    Assert.assertNotNull(retrieved);
    assertEquals("testPath", retrieved.getFactName());
    assertEquals(1, retrieved.getSimpleProperties().size());
    assertTrue(retrieved.getSimpleProperties().containsKey(VALUE));
    assertEquals("java.util.List", retrieved.getSimpleProperties().get(VALUE).getTypeName());
    assertFalse(retrieved.getSimpleProperties().get(VALUE).getBaseTypeName().isPresent());
    assertEquals("java.util.List", retrieved.getSimpleProperties().get(VALUE).getPropertyTypeNameToVisualize());        assertTrue(retrieved.getExpandableProperties().isEmpty());
    assertEquals(1, retrieved.getGenericTypesMap().size());
    assertTrue(retrieved.getGenericTypesMap().containsKey(VALUE));
    Assert.assertNotNull(retrieved.getGenericTypesMap().get(VALUE));
    assertEquals(1, retrieved.getGenericTypesMap().get(VALUE).size());
    assertEquals(compositePerson.getName(), retrieved.getGenericTypesMap().get(VALUE).get(0));
}