summaryrefslogtreecommitdiff
path: root/test/sql/test_compiler.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/sql/test_compiler.py')
-rw-r--r--test/sql/test_compiler.py30
1 files changed, 18 insertions, 12 deletions
diff --git a/test/sql/test_compiler.py b/test/sql/test_compiler.py
index 05893d748..053619f46 100644
--- a/test/sql/test_compiler.py
+++ b/test/sql/test_compiler.py
@@ -2426,31 +2426,37 @@ class SelectTest(fixtures.TestBase, AssertsCompiledSQL):
"(ORDER BY mytable.myid RANGE BETWEEN "
":param_1 PRECEDING AND :param_2 FOLLOWING)"
" AS anon_1 FROM mytable",
- {'param_1': 5, 'param_2': 10}
+ checkparams={'param_1': 5, 'param_2': 10}
)
- def test_over_invalid_framespecs(self):
- assert_raises_message(
- exc.ArgumentError,
- "Preceding value must be a negative integer, zero, or None",
- func.row_number().over, range_=(5, 10)
+ self.assert_compile(
+ select([func.row_number().over(order_by=expr, range_=(1, 10))]),
+ "SELECT row_number() OVER "
+ "(ORDER BY mytable.myid RANGE BETWEEN "
+ ":param_1 FOLLOWING AND :param_2 FOLLOWING)"
+ " AS anon_1 FROM mytable",
+ checkparams={'param_1': 1, 'param_2': 10}
)
- assert_raises_message(
- exc.ArgumentError,
- "Following value must be a positive integer, zero, or None",
- func.row_number().over, range_=(-5, -8)
+ self.assert_compile(
+ select([func.row_number().over(order_by=expr, range_=(-10, -1))]),
+ "SELECT row_number() OVER "
+ "(ORDER BY mytable.myid RANGE BETWEEN "
+ ":param_1 PRECEDING AND :param_2 PRECEDING)"
+ " AS anon_1 FROM mytable",
+ checkparams={'param_1': 10, 'param_2': 1}
)
+ def test_over_invalid_framespecs(self):
assert_raises_message(
exc.ArgumentError,
- "Integer or None expected for preceding value",
+ "Integer or None expected for range value",
func.row_number().over, range_=("foo", 8)
)
assert_raises_message(
exc.ArgumentError,
- "Integer or None expected for following value",
+ "Integer or None expected for range value",
func.row_number().over, range_=(-5, "foo")
)