package io.vertx.ext.jdbc.impl.actions; import io.vertx.core.json.JsonObject; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import java.util.Arrays; import java.util.Collection; import static org.junit.Assert.*; @RunWith(Parameterized.class) public class OptimisticCastTest { private JDBCStatementHelper helper = new JDBCStatementHelper(new JsonObject().put("castUUID", true)); @Parameterized.Parameters public static Collection<Object[]> generateData() { return Arrays.asList(new Object[][]{ // simple types {"16:00:00", "java.sql.Time"}, {"2016-03-16", "java.sql.Date"}, {"2016-03-16T16:00:00Z", "java.sql.Timestamp"}, {"f47ac10b-58cc-4372-a567-0e02b2c3d479", "java.util.UUID"}, // bad variations {"2016-03-16T16:00:00", "java.lang.String"}, {"24:00:00", "java.lang.String"}, {"2016-00-00", "java.lang.String"}, }); } // Fields private String value; private String expectedType; public OptimisticCastTest(String value, String expectedType) { this.value = value; this.expectedType = expectedType; } @Test public void testOptimisticCast() { assertEquals(value, expectedType, helper.optimisticCast(value).getClass().getName()); } }