refactor(sync): double precision类型映射改为double

This commit is contained in:
v-zhangjc9
2024-03-26 11:16:02 +08:00
parent c4e4b8b3f1
commit a002e2b796
2 changed files with 25 additions and 25 deletions

View File

@@ -54,6 +54,7 @@ public class TypeConvertTest {
// double
assertEquals(NULLABLE_DOUBLE_SCHEMA, convertType.exec("test", "test", "double", 0L, null));
assertEquals(NULLABLE_DOUBLE_SCHEMA, convertType.exec("test", "test", "Double", 0L, null));
assertEquals(NULLABLE_DOUBLE_SCHEMA, convertType.exec("test", "test", "double precision", 6L, null));
// date
assertEquals(NULLABLE_STRING_SCHEMA, convertType.exec("test", "test", "date", 0L, null));
@@ -80,51 +81,50 @@ public class TypeConvertTest {
assertEquals(NULLABLE_DECIMAL_SCHEMA("test", 6, 3), convertType.exec("test", "test", "decimal(6,3)", 6L, 3));
assertEquals(NULLABLE_DECIMAL_SCHEMA("test", 6, 6), convertType.exec("test", "test", "decimal(6)", 6L, null));
assertEquals(NULLABLE_DECIMAL_SCHEMA("test", 6, 6), convertType.exec("test", "test", "decimal", 6L, null));
assertEquals(NULLABLE_DECIMAL_SCHEMA("test", 6, 6), convertType.exec("test", "test", "double precision", 6L, null));
assertEquals(NULLABLE_DECIMAL_SCHEMA("test", 2, 1), convertType.exec("test", "test", "numeric(2,1)", 2L, 1));
assertEquals(NULLABLE_DECIMAL_SCHEMA("test", 2, 1), convertType.exec("test", "test", "numeric", 2L, 1));
}
@Test
public void testConvertValue() throws NoSuchMethodException, InvocationTargetException, IllegalAccessException {
Executor convertValue = new Executor("covertValue", Schema.class, Object.class);
Executor convertValue = new Executor("covertValue", Schema.class, String.class, Object.class);
// null
assertNull(convertValue.exec(NULLABLE_BOOLEAN_SCHEMA, null));
assertNull(convertValue.exec(NULLABLE_BOOLEAN_SCHEMA, "test", null));
// boolean
assertEquals(true, convertValue.exec(NULLABLE_BOOLEAN_SCHEMA, "true"));
assertEquals(false, convertValue.exec(NULLABLE_BOOLEAN_SCHEMA, "false"));
assertEquals(false, convertValue.exec(NULLABLE_BOOLEAN_SCHEMA, "1"));
assertEquals(false, convertValue.exec(NULLABLE_BOOLEAN_SCHEMA, "hello"));
assertEquals(true, convertValue.exec(NULLABLE_BOOLEAN_SCHEMA, "test", "true"));
assertEquals(false, convertValue.exec(NULLABLE_BOOLEAN_SCHEMA, "test", "false"));
assertEquals(false, convertValue.exec(NULLABLE_BOOLEAN_SCHEMA, "test", "1"));
assertEquals(false, convertValue.exec(NULLABLE_BOOLEAN_SCHEMA, "test", "hello"));
// int
assertEquals(1, convertValue.exec(NULLABLE_INT_SCHEMA, "1"));
assertEquals(10, convertValue.exec(NULLABLE_INT_SCHEMA, "10"));
Assertions.assertThrows(InvocationTargetException.class, () -> convertValue.exec(NULLABLE_INT_SCHEMA, "10.0"));
assertEquals(1, convertValue.exec(NULLABLE_INT_SCHEMA, "test", "1"));
assertEquals(10, convertValue.exec(NULLABLE_INT_SCHEMA, "test", "10"));
Assertions.assertThrows(Exception.class, () -> convertValue.exec(NULLABLE_INT_SCHEMA, "test", "10.0"));
// long
assertEquals(1L, convertValue.exec(NULLABLE_LONG_SCHEMA, "1"));
assertEquals(10L, convertValue.exec(NULLABLE_LONG_SCHEMA, "10"));
Assertions.assertThrows(InvocationTargetException.class, () -> convertValue.exec(NULLABLE_LONG_SCHEMA, "10.0"));
assertEquals(1L, convertValue.exec(NULLABLE_LONG_SCHEMA, "test", "1"));
assertEquals(10L, convertValue.exec(NULLABLE_LONG_SCHEMA, "test", "10"));
Assertions.assertThrows(Exception.class, () -> convertValue.exec(NULLABLE_LONG_SCHEMA, "test", "10.0"));
// float
assertEquals(1.0f, convertValue.exec(NULLABLE_FLOAT_SCHEMA, "1.0"));
assertEquals(10.0f, convertValue.exec(NULLABLE_FLOAT_SCHEMA, "10.0"));
assertEquals(100f, convertValue.exec(NULLABLE_FLOAT_SCHEMA, "100"));
assertEquals(1.0f, convertValue.exec(NULLABLE_FLOAT_SCHEMA, "test", "1.0"));
assertEquals(10.0f, convertValue.exec(NULLABLE_FLOAT_SCHEMA, "test", "10.0"));
assertEquals(100f, convertValue.exec(NULLABLE_FLOAT_SCHEMA, "test", "100"));
// double
assertEquals(1.0, convertValue.exec(NULLABLE_DOUBLE_SCHEMA, "1.0"));
assertEquals(100d, convertValue.exec(NULLABLE_DOUBLE_SCHEMA, "100"));
assertEquals(1.0, convertValue.exec(NULLABLE_DOUBLE_SCHEMA, "test", "1.0"));
assertEquals(100d, convertValue.exec(NULLABLE_DOUBLE_SCHEMA, "test", "100"));
// string
assertEquals(StringData.fromString("2020-10-10 01:01:01"), convertValue.exec(NULLABLE_STRING_SCHEMA, "2020-10-10 01:01:01"));
assertEquals(StringData.fromString("123"), convertValue.exec(NULLABLE_STRING_SCHEMA, "123"));
assertEquals(StringData.fromString("123.456"), convertValue.exec(NULLABLE_STRING_SCHEMA, "123.456"));
assertEquals(StringData.fromString("2020-10-10 01:01:01"), convertValue.exec(NULLABLE_STRING_SCHEMA, "test", "2020-10-10 01:01:01"));
assertEquals(StringData.fromString("123"), convertValue.exec(NULLABLE_STRING_SCHEMA, "test", "123"));
assertEquals(StringData.fromString("123.456"), convertValue.exec(NULLABLE_STRING_SCHEMA, "test", "123.456"));
// decimal
assertEquals(DecimalData.fromBigDecimal(new BigDecimal("123.0"), 10, 0), convertValue.exec(NULLABLE_DECIMAL_SCHEMA("test", 10, 0), "123.0"));
assertEquals(DecimalData.fromBigDecimal(new BigDecimal("123456789987654321.123456789987654321"), 37, 18), convertValue.exec(NULLABLE_DECIMAL_SCHEMA("test", 37, 18), "123456789987654321.123456789987654321"));
assertEquals(DecimalData.fromBigDecimal(new BigDecimal("123.0"), 10, 0), convertValue.exec(NULLABLE_DECIMAL_SCHEMA("test", 10, 0), "test", "123.0"));
assertEquals(DecimalData.fromBigDecimal(new BigDecimal("123456789987654321.123456789987654321"), 37, 18), convertValue.exec(NULLABLE_DECIMAL_SCHEMA("test", 37, 18), "test", "123456789987654321.123456789987654321"));
}
private static final class Executor {