Explicit sqlbuilder cast.

This commit is contained in:
zer0sub 2019-06-07 14:23:14 +02:00
parent 4d7fbf8f49
commit 3c5553b3dc
21 changed files with 293 additions and 104 deletions

View file

@ -25,40 +25,57 @@ func TestExpressionIS_NOT_DISTINCT_FROM(t *testing.T) {
}
func TestExpressionCAST_TO_BOOL(t *testing.T) {
assertClauseSerialize(t, table2Col3.CAST_TO_BOOL(), "table2.col3::boolean")
assertClauseSerialize(t, table2Col3.ADD(table2Col3).CAST_TO_BOOL(), "(table2.col3 + table2.col3)::boolean")
assertClauseSerialize(t, table2Col3.TO_BOOL(), "table2.col3::boolean")
assertClauseSerialize(t, table2Col3.ADD(table2Col3).TO_BOOL(), "(table2.col3 + table2.col3)::boolean")
}
func TestExpressionCAST_TO_SMALLINT(t *testing.T) {
assertClauseSerialize(t, table2Col3.TO_SMALLINT(), "table2.col3::smallint")
}
func TestExpressionCAST_TO_INTEGER(t *testing.T) {
assertClauseSerialize(t, table2Col3.CAST_TO_INTEGER(), "table2.col3::integer")
assertClauseSerialize(t, table2Col3.TO_INTEGER(), "table2.col3::integer")
}
func TestExpressionCAST_TO_BIGINT(t *testing.T) {
assertClauseSerialize(t, table2Col3.TO_BIGINT(), "table2.col3::bigint")
}
func TestExpressionCAST_TO_NUMERIC(t *testing.T) {
assertClauseSerialize(t, table2Col3.TO_NUMERIC(11, 11), "table2.col3::numeric(11, 11)")
assertClauseSerialize(t, table2Col3.TO_NUMERIC(11), "table2.col3::numeric(11)")
}
func TestExpressionCAST_TO_REAL(t *testing.T) {
assertClauseSerialize(t, table2Col3.TO_REAL(), "table2.col3::real")
}
func TestExpressionCAST_TO_DOUBLE(t *testing.T) {
assertClauseSerialize(t, table2Col3.CAST_TO_DOUBLE(), "table2.col3::double precision")
assertClauseSerialize(t, table2Col3.TO_DOUBLE(), "table2.col3::double precision")
}
func TestExpressionCAST_TO_TEXT(t *testing.T) {
assertClauseSerialize(t, table2Col3.CAST_TO_TEXT(), "table2.col3::text")
assertClauseSerialize(t, table2Col3.TO_TEXT(), "table2.col3::text")
}
func TestExpressionCAST_TO_DATE(t *testing.T) {
assertClauseSerialize(t, table2Col3.CAST_TO_DATE(), "table2.col3::date")
assertClauseSerialize(t, table2Col3.TO_DATE(), "table2.col3::date")
}
func TestExpressionCAST_TO_TIME(t *testing.T) {
assertClauseSerialize(t, table2Col3.CAST_TO_TIME(), "table2.col3::time without time zone")
assertClauseSerialize(t, table2Col3.TO_TIME(), "table2.col3::time without time zone")
}
func TestExpressionCAST_TO_TIMEZ(t *testing.T) {
assertClauseSerialize(t, table2Col3.CAST_TO_TIMEZ(), "table2.col3::time with time zone")
assertClauseSerialize(t, table2Col3.TO_TIMEZ(), "table2.col3::time with time zone")
}
func TestExpressionCAST_TO_TIMESTAMP(t *testing.T) {
assertClauseSerialize(t, table2Col3.CAST_TO_TIMESTAMP(), "table2.col3::timestamp without time zone")
assertClauseSerialize(t, table2Col3.TO_TIMESTAMP(), "table2.col3::timestamp without time zone")
}
func TestExpressionCAST_TO_TIMESTAMPZ(t *testing.T) {
assertClauseSerialize(t, table2Col3.CAST_TO_TIMESTAMPZ(), "table2.col3::timestamp with time zone")
assertClauseSerialize(t, table2Col3.TO_TIMESTAMPZ(), "table2.col3::timestamp with time zone")
}
func TestIN(t *testing.T) {