static List<MappingField> resolveFields(Set<String> header) {
        Map<String, MappingField> fields = new LinkedHashMap<>();
        for (String name : header) {
            MappingField field = new MappingField(name, QueryDataType.VARCHAR);
            fields.putIfAbsent(field.name(), field);
        }
        return new ArrayList<>(fields.values());
    }
@Test
    public void test_resolveFields() {
        // given
        Set<String> headers = Set.of("field1", "field2");

        // when
        List<MappingField> fields = CsvResolver.resolveFields(headers);

        // then
        assertThat(fields)
                .hasSize(2)
                .contains(new MappingField("field1", QueryDataType.VARCHAR))
                .contains(new MappingField("field2", QueryDataType.VARCHAR));
    }