SQLRouteResultresult=engine.route("select * from order3 where date = ?",Lists.newArrayList((Object)newSimpleDateFormat("yyyyMMdd").parse("20151015")));
assertThat(result.getExecutionUnits().get(0).getSql(),is("SELECT * FROM t_order_0 WHERE date = ?"));
assertThat(result.getExecutionUnits().iterator().next().getSql(),is("SELECT * FROM t_order_0 WHERE date = ?"));
result=engine.route("select * from order3 where date = ?",Lists.newArrayList((Object)"20151115"));
assertThat(result.getExecutionUnits().get(0).getSql(),is("SELECT * FROM t_order_1 WHERE date = ?"));
assertThat(result.getExecutionUnits().iterator().next().getSql(),is("SELECT * FROM t_order_1 WHERE date = ?"));
result=engine.route("select * from order3 where date = ?",Lists.newArrayList((Object)newSimpleDateFormat("yyyyMMdd").parse("20151015").getTime()));
assertThat(result.getExecutionUnits().get(0).getSql(),is("SELECT * FROM t_order_0 WHERE date = ?"));
assertThat(result.getExecutionUnits().iterator().next().getSql(),is("SELECT * FROM t_order_0 WHERE date = ?"));
}
@@ -118,13 +119,13 @@ public class TableRuleTest extends AbstractConfigTest {
SQLRouteResultresult=engine.route("select * from order4 where date = ?",Lists.newArrayList((Object)newSimpleDateFormat("yyyyMMdd").parse("20151015")));
assertThat(result.getExecutionUnits().get(0).getSql(),is("SELECT * FROM t_order_201510 WHERE date = ?"));
assertThat(result.getExecutionUnits().iterator().next().getSql(),is("SELECT * FROM t_order_201510 WHERE date = ?"));
result=engine.route("select * from order4 where date = ?",Lists.newArrayList((Object)newSimpleDateFormat("yyyyMMdd").parse("20151015").getTime()));
assertThat(result.getExecutionUnits().get(0).getSql(),is("SELECT * FROM t_order_201510 WHERE date = ?"));
assertThat(result.getExecutionUnits().iterator().next().getSql(),is("SELECT * FROM t_order_201510 WHERE date = ?"));
result=engine.route("select * from order4 where date = ?",Lists.newArrayList((Object)"201511"));
assertThat(result.getExecutionUnits().get(0).getSql(),is("SELECT * FROM t_order_201511 WHERE date = ?"));
assertThat(result.getExecutionUnits().iterator().next().getSql(),is("SELECT * FROM t_order_201511 WHERE date = ?"));
}
@Test
@@ -132,10 +133,10 @@ public class TableRuleTest extends AbstractConfigTest {
SQLRouteResultresult=engine.route("select * from order5 where date = ?",Lists.newArrayList((Object)newSimpleDateFormat("yyyyMMdd").parse("20151015")));
assertThat(result.getExecutionUnits().get(0).getSql(),is("SELECT * FROM t_order_0 WHERE date = ?"));
assertThat(result.getExecutionUnits().iterator().next().getSql(),is("SELECT * FROM t_order_0 WHERE date = ?"));
result=engine.route("select * from order5 where date = ?",Lists.newArrayList((Object)newSimpleDateFormat("yyyyMMdd").parse("20151015").getTime()));
assertThat(result.getExecutionUnits().get(0).getSql(),is("SELECT * FROM t_order_0 WHERE date = ?"));
assertThat(result.getExecutionUnits().iterator().next().getSql(),is("SELECT * FROM t_order_0 WHERE date = ?"));
}
@@ -144,7 +145,7 @@ public class TableRuleTest extends AbstractConfigTest {
SQLRouteResultresult=engine.route("select * from t_order o ,t_order_item i where o.order_id = i.order_id and o.order_id = 11",null);
assertThat(result.getExecutionUnits().get(0).getSql(),is("SELECT * FROM t_order_1 o, t_order_item_1 i WHERE o.order_id = i.order_id AND o.order_id = 11"));
assertThat(result.getExecutionUnits().iterator().next().getSql(),is("SELECT * FROM t_order_1 o, t_order_item_1 i WHERE o.order_id = i.order_id AND o.order_id = 11"));
SQLRouteResultresult=engine.route("select * from order7 o where o.order_id = 1",null);
assertThat(result.getExecutionUnits().get(0).getSql(),is("SELECT * FROM t_order_0 o WHERE o.order_id = 1"));
assertThat(result.getExecutionUnits().get(1).getSql(),is("SELECT * FROM t_order_1 o WHERE o.order_id = 1"));
assertThat(result.getExecutionUnits(),hasItems(newSQLExecutionUnit("db0","SELECT * FROM t_order_0 o WHERE o.order_id = 1"),newSQLExecutionUnit("db0","SELECT * FROM t_order_1 o WHERE o.order_id = 1")));