summaryrefslogtreecommitdiffstats
path: root/tests/test_expressions.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_expressions.py')
-rw-r--r--tests/test_expressions.py40
1 files changed, 21 insertions, 19 deletions
diff --git a/tests/test_expressions.py b/tests/test_expressions.py
index c22f13e..b09b2ab 100644
--- a/tests/test_expressions.py
+++ b/tests/test_expressions.py
@@ -194,30 +194,31 @@ class TestExpressions(unittest.TestCase):
def test_replace_placeholders(self):
self.assertEqual(
exp.replace_placeholders(
- parse_one("select * from :tbl1 JOIN :tbl2 ON :col1 = :col2 WHERE :col3 > 100"),
- tbl1="foo",
- tbl2="bar",
- col1="a",
- col2="b",
- col3="c",
+ parse_one("select * from :tbl1 JOIN :tbl2 ON :col1 = :str1 WHERE :col2 > :int1"),
+ tbl1=exp.to_identifier("foo"),
+ tbl2=exp.to_identifier("bar"),
+ col1=exp.to_identifier("a"),
+ col2=exp.to_identifier("c"),
+ str1="b",
+ int1=100,
).sql(),
- "SELECT * FROM foo JOIN bar ON a = b WHERE c > 100",
+ "SELECT * FROM foo JOIN bar ON a = 'b' WHERE c > 100",
)
self.assertEqual(
exp.replace_placeholders(
- parse_one("select * from ? JOIN ? ON ? = ? WHERE ? > 100"),
- "foo",
- "bar",
- "a",
+ parse_one("select * from ? JOIN ? ON ? = ? WHERE ? = 'bla'"),
+ exp.to_identifier("foo"),
+ exp.to_identifier("bar"),
+ exp.to_identifier("a"),
"b",
- "c",
+ "bla",
).sql(),
- "SELECT * FROM foo JOIN bar ON a = b WHERE c > 100",
+ "SELECT * FROM foo JOIN bar ON a = 'b' WHERE 'bla' = 'bla'",
)
self.assertEqual(
exp.replace_placeholders(
parse_one("select * from ? WHERE ? > 100"),
- "foo",
+ exp.to_identifier("foo"),
).sql(),
"SELECT * FROM foo WHERE ? > 100",
)
@@ -229,12 +230,12 @@ class TestExpressions(unittest.TestCase):
)
self.assertEqual(
exp.replace_placeholders(
- parse_one("select * from (SELECT :col1 FROM ?) WHERE :col2 > 100"),
- "tbl1",
- "tbl2",
+ parse_one("select * from (SELECT :col1 FROM ?) WHERE :col2 > ?"),
+ exp.to_identifier("tbl1"),
+ 100,
"tbl3",
- col1="a",
- col2="b",
+ col1=exp.to_identifier("a"),
+ col2=exp.to_identifier("b"),
col3="c",
).sql(),
"SELECT * FROM (SELECT a FROM tbl1) WHERE b > 100",
@@ -526,6 +527,7 @@ class TestExpressions(unittest.TestCase):
self.assertIsInstance(parse_one("VARIANCE(a)"), exp.Variance)
self.assertIsInstance(parse_one("VARIANCE_POP(a)"), exp.VariancePop)
self.assertIsInstance(parse_one("YEAR(a)"), exp.Year)
+ self.assertIsInstance(parse_one("HLL(a)"), exp.Hll)
def test_column(self):
column = parse_one("a.b.c.d")