public static List<HollowSchema> dependencyOrderedSchemaList(HollowDataset dataset) {
        return dependencyOrderedSchemaList(dataset.getSchemas());
    }
@Test
    public void schemasAreSortedBasedOnDependencies() throws IOException {
        String schemasText = "TypeB {"
                           + "    ListOfString str;"
                           + "}"
                           + ""
                           + "String {"
                           + "    string value;"
                           + "}"
                           + ""
                           + "ListOfString List<String>;"
                           + ""
                           + "TypeA {"
                           + "    TypeB b;"
                           + "    String str;"
                           + "}";
        
        List<HollowSchema> schemas = HollowSchemaParser.parseCollectionOfSchemas(schemasText);
        
        List<HollowSchema> sortedSchemas = HollowSchemaSorter.dependencyOrderedSchemaList(schemas);
        
        Assert.assertEquals(4, sortedSchemas.size());
        Assert.assertEquals("String", sortedSchemas.get(0).getName());
        Assert.assertEquals("ListOfString", sortedSchemas.get(1).getName());
        Assert.assertEquals("TypeB", sortedSchemas.get(2).getName());
        Assert.assertEquals("TypeA", sortedSchemas.get(3).getName());
    }