### Question:
DataTypeUtils { public List<DataType> defaultDataTypes() { return Stream .of(BuiltInType.values()) .filter(builtInType -> !builtInType.equals(BuiltInType.UNDEFINED)) .map(bit -> dataTypeManager.from(bit).get()) .sorted(Comparator.comparing(DataType::getType)) .collect(toList()); } @Inject  DataTypeUtils(final DataTypeStore dataTypeStore,
                         final DataTypeManager dataTypeManager); DataType getTopLevelParent(final DataType dataType); List<DataType> defaultDataTypes(); List<DataType> customDataTypes();  }### Answer:
@Test public void testDefaultDataTypes() { final List<DataType> dataTypes = utils.defaultDataTypes(); assertEquals(10, dataTypes.size()); assertEquals("Any", dataTypes.get(0).getType()); assertEquals("boolean", dataTypes.get(1).getType()); assertEquals("context", dataTypes.get(2).getType()); assertEquals("date", dataTypes.get(3).getType()); assertEquals("date and time", dataTypes.get(4).getType()); assertEquals("days and time duration", dataTypes.get(5).getType()); assertEquals("number", dataTypes.get(6).getType()); assertEquals("string", dataTypes.get(7).getType()); assertEquals("time", dataTypes.get(8).getType()); assertEquals("years and months duration", dataTypes.get(9).getType()); }