@Override
  public List<String> mapRow(Row element) {
    List<String> res = new ArrayList<>();

    Schema s = element.getSchema();
    for (int i = 0; i < s.getFieldCount(); i++) {
      res.add(convertFieldToString(s.getField(i).getType(), element.getValue(i)));
    }

    return res;
  }
@Test
  public void testBigNegativeNumbers() {
    Schema.Builder schemaBuilder = new Schema.Builder();
    schemaBuilder.addField("byte", Schema.FieldType.BYTE);
    schemaBuilder.addField("int16", Schema.FieldType.INT16);
    schemaBuilder.addField("int32", Schema.FieldType.INT32);
    schemaBuilder.addField("int64", Schema.FieldType.INT64);
    schemaBuilder.addField("float", Schema.FieldType.FLOAT);
    schemaBuilder.addField("double", Schema.FieldType.DOUBLE);
    schemaBuilder.addField("decimal", Schema.FieldType.DECIMAL);
    Schema schema = schemaBuilder.build();

    Row.Builder rowBuilder = Row.withSchema(schema);
    rowBuilder.addValue(Byte.MIN_VALUE);
    rowBuilder.addValue(Short.MIN_VALUE);
    rowBuilder.addValue(Integer.MIN_VALUE);
    rowBuilder.addValue(Long.MIN_VALUE);
    rowBuilder.addValue(-Float.MAX_VALUE);
    rowBuilder.addValue(-Double.MAX_VALUE);
    rowBuilder.addValue(new BigDecimal("-10000000000000.1000000000000000000000"));
    Row row = rowBuilder.build();

    SingleStoreDefaultUserDataMapper mapper = new SingleStoreDefaultUserDataMapper();
    List<String> res = mapper.mapRow(row);

    assertEquals(7, res.size());
    assertEquals("-128", res.get(0));
    assertEquals("-32768", res.get(1));
    assertEquals("-2147483648", res.get(2));
    assertEquals("-9223372036854775808", res.get(3));
    assertEquals("-3.4028235E38", res.get(4));
    assertEquals("-1.7976931348623157E308", res.get(5));
    assertEquals("-10000000000000.1000000000000000000000", res.get(6));
  }