### Question:
CatalogSchemaParquetFieldConverter implements ParquetFieldConverter<List<SchemaField>> { private ParquetIOField createMapField(SchemaField schemaField) throws ConnectorSDKException { final ParquetIOField key = new ParquetIOField( SDKConstants.CATALOG_MAP_KEY, FieldConverterFunction.catalogToParquetFieldFunction.apply(schemaField.getSubFields().get(0).getType()), ParquetIORepetitionType.REQUIRED, null ); return new ParquetIOField( schemaField.getName(), ParquetIODataType.Map, ParquetIORepetitionType.OPTIONAL, Arrays.asList( key, getParquetIOField(schemaField.getSubFields().get(1)) ) ); }  @Override List<ParquetIOField> convert(List<SchemaField> data);  }### Answer:
@Test public void TestCreateMapField() throws ConnectorSDKException { List<SchemaField> subFields = new ArrayList<>(); SchemaField keyField = new SchemaField("key", DataType.StringType, null); List<SchemaField> valueSubFields = new ArrayList<>(); SchemaField valueSubField1 = new SchemaField("valueSubField1", DataType.StringType, null); SchemaField valueSubField2 = new SchemaField("valueSubField2", DataType.StringType, null); valueSubFields.add(valueSubField1); valueSubFields.add(valueSubField2); SchemaField valueField = new SchemaField("value", DataType.Field_ObjectType, valueSubFields); subFields.add(keyField); subFields.add(valueField); SchemaField mapField = new SchemaField("mapField", DataType.Field_MapType, subFields); List<SchemaField> data = new ArrayList<>(); data.add(mapField); List<ParquetIOField> parquetIOFields = fieldConverter.convert(data); assertEquals(parquetIOFields.get(0).getSubFields().size(), 2); assertEquals(parquetIOFields.get(0).getSubFields().get(0).getName(), "key"); assertEquals(parquetIOFields.get(0).getSubFields().get(1).getName(), "value"); assertEquals(parquetIOFields.get(0).getSubFields().get(1).getSubFields().size(), 2); assertEquals(parquetIOFields.get(0).getSubFields().get(1).getSubFields().get(0).getName(), "valueSubField1"); assertEquals(parquetIOFields.get(0).getSubFields().get(1).getSubFields().get(0).getType(), ParquetIODataType.STRING); }