summaryrefslogtreecommitdiffstats
path: root/tests/dialects/test_prql.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/dialects/test_prql.py')
-rw-r--r--tests/dialects/test_prql.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/dialects/test_prql.py b/tests/dialects/test_prql.py
new file mode 100644
index 0000000..9a42d0c
--- /dev/null
+++ b/tests/dialects/test_prql.py
@@ -0,0 +1,17 @@
+from tests.dialects.test_dialect import Validator
+
+
+class TestPRQL(Validator):
+ dialect = "prql"
+
+ def test_prql(self):
+ self.validate_identity("FROM x", "SELECT * FROM x")
+ self.validate_identity("FROM x DERIVE a + 1", "SELECT *, a + 1 FROM x")
+ self.validate_identity("FROM x DERIVE x = a + 1", "SELECT *, a + 1 AS x FROM x")
+ self.validate_identity("FROM x DERIVE {a + 1}", "SELECT *, a + 1 FROM x")
+ self.validate_identity("FROM x DERIVE {x = a + 1, b}", "SELECT *, a + 1 AS x, b FROM x")
+ self.validate_identity("FROM x TAKE 10", "SELECT * FROM x LIMIT 10")
+ self.validate_identity("FROM x TAKE 10 TAKE 5", "SELECT * FROM x LIMIT 5")
+ self.validate_identity(
+ "FROM x DERIVE {x = a + 1, b} SELECT {y = x, 2}", "SELECT a + 1 AS y, 2 FROM x"
+ )