@Test public void replace_map_2x2() { Map<String,String> map = new HashMap<String, String>(); map.put("AAA", "X"); map.put("BBB", "YYYYY"); String original = "AAAAAABBBBBB"; String expected = "XXYYYYYYYYYY"; assertThat(Rewriters.replace(map).apply(original)).isEqualTo(expected); }
@Test public void replace_map_same() { String original = "1234567890"; assertThat(Rewriters.replace(Collections.singletonMap("YYY", "TTT")).apply(original)) .isSameAs(original); }
@Test public void replace_map_1() { assertThat(Rewriters.replace(Collections.singletonMap("YYY", "TTT")).apply("XXX YYY ZZZ")) .isEqualTo("XXX TTT ZZZ"); }
@Test public void replace_1_same() { String str = "ABCDE"; assertThat(Rewriters.replace("YYY","TTT").apply(str)).isSameAs(str); }
@Test public void replace_1_basic() { assertThat(Rewriters.replace("YYY","TTT").apply("XXX YYY ZZZ")).isEqualTo("XXX TTT ZZZ"); }
@Test public void rewrite_basic() { SqlCommand cmd1 = new SqlCommand("AAA BBB CCC", 33, "name"); SqlCommand cmd2 = cmd1.rewrite(Rewriters.replace("BBB", "XXX")); assertThat(cmd2.getSourceText()).isEqualTo("AAA XXX CCC"); assertThat(cmd2.getRow()).isEqualTo(33); assertThat(cmd2.getName()).isEqualTo("name"); }
@Test public void query_calendar_values_now() { String queryText = "select NOW as javaDate, NOW as sqlDate, NOW as sqlTimestamp, NOW as sqlTime"; if (isOracle) queryText += " from dual"; SqlQuery<CalendarValues> query = new SqlQuery<CalendarValues>(queryText, rowOf(structOf(CalendarValues.class))) .rewrite(Rewriters.replace("NOW", sqlNow())); CalendarValues cv = query(query); assertThat(cv.javaDate) .isExactlyInstanceOf(java.util.Date.class); assertThat(cv.sqlDate) .isExactlyInstanceOf(java.sql.Date.class); assertThat(cv.sqlTimestamp).isExactlyInstanceOf(java.sql.Timestamp.class); assertThat(cv.sqlTime) .isExactlyInstanceOf(java.sql.Time.class); }