summaryrefslogtreecommitdiff
path: root/test/sql/test_join_rewriting.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/sql/test_join_rewriting.py')
-rw-r--r--test/sql/test_join_rewriting.py25
1 files changed, 24 insertions, 1 deletions
diff --git a/test/sql/test_join_rewriting.py b/test/sql/test_join_rewriting.py
index c8b24e2f2..ced65d7f1 100644
--- a/test/sql/test_join_rewriting.py
+++ b/test/sql/test_join_rewriting.py
@@ -251,6 +251,16 @@ class _JoinRewriteTestBase(AssertsCompiledSQL):
self._f_b1a_where_in_b2a
)
+ def test_anon_scalar_subqueries(self):
+ s1 = select([1]).as_scalar()
+ s2 = select([2]).as_scalar()
+
+ s = select([s1, s2]).apply_labels()
+ self._test(
+ s,
+ self._anon_scalar_subqueries
+ )
+
class JoinRewriteTest(_JoinRewriteTestBase, fixtures.TestBase):
@@ -389,6 +399,10 @@ class JoinRewriteTest(_JoinRewriteTestBase, fixtures.TestBase):
"FROM a JOIN b2 ON a.id = b2.a_id)"
)
+ _anon_scalar_subqueries = (
+ "SELECT (SELECT 1) AS anon_1, (SELECT 2) AS anon_2"
+ )
+
class JoinPlainTest(_JoinRewriteTestBase, fixtures.TestBase):
@@ -497,6 +511,10 @@ class JoinPlainTest(_JoinRewriteTestBase, fixtures.TestBase):
"FROM a JOIN b2 ON a.id = b2.a_id)"
)
+ _anon_scalar_subqueries = (
+ "SELECT (SELECT 1) AS anon_1, (SELECT 2) AS anon_2"
+ )
+
class JoinNoUseLabelsTest(_JoinRewriteTestBase, fixtures.TestBase):
@@ -605,6 +623,10 @@ class JoinNoUseLabelsTest(_JoinRewriteTestBase, fixtures.TestBase):
"FROM a JOIN b2 ON a.id = b2.a_id)"
)
+ _anon_scalar_subqueries = (
+ "SELECT (SELECT 1) AS anon_1, (SELECT 2) AS anon_2"
+ )
+
class JoinExecTest(_JoinRewriteTestBase, fixtures.TestBase):
@@ -615,7 +637,8 @@ class JoinExecTest(_JoinRewriteTestBase, fixtures.TestBase):
_a_bc = _a_bc_comma_a1_selbc = _a__b_dc = _a_bkeyassoc = \
_a_bkeyassoc_aliased = _a_atobalias_balias_c_w_exists = \
_a_atobalias_balias = _b_ab1_union_c_ab2 = \
- _b_a_id_double_overlap_annotated = _f_b1a_where_in_b2a = None
+ _b_a_id_double_overlap_annotated = _f_b1a_where_in_b2a = \
+ _anon_scalar_subqueries = None
@classmethod
def setup_class(cls):