summaryrefslogtreecommitdiff
path: root/test/sql/test_selectable.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2017-03-16 17:28:41 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2017-04-03 12:14:33 -0400
commit7bb4923391f98db517dde59d813322a948d10bfe (patch)
tree7221ab187fa4307a116d1a6fc3100ad4122515c7 /test/sql/test_selectable.py
parentb32a0fd286de3cd4cbfd248d74e200985d7e214a (diff)
downloadsqlalchemy-7bb4923391f98db517dde59d813322a948d10bfe.tar.gz
Use consistent method signature for Alias.self_group()
Fixed bug where the use of an :class:`.Alias` object in a column context would raise an argument error when it tried to group itself into a parenthesized expression. Using :class:`.Alias` in this way is not yet a fully supported API, however it applies to some end-user recipes and may have a more prominent role in support of some future Postgresql features. Change-Id: I81717e30416e0350f08d1e022c3d84656e0a9735 Fixes: #3939
Diffstat (limited to 'test/sql/test_selectable.py')
-rw-r--r--test/sql/test_selectable.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/sql/test_selectable.py b/test/sql/test_selectable.py
index d38ee0e8a..0cbaf33ea 100644
--- a/test/sql/test_selectable.py
+++ b/test/sql/test_selectable.py
@@ -333,6 +333,20 @@ class SelectableTest(
criterion = a.c.col1 == table2.c.col2
self.assert_(criterion.compare(j.onclause))
+ def test_alias_handles_column_context(self):
+ # not quite a use case yet but this is expected to become
+ # prominent w/ Postgresql's tuple functions
+
+ stmt = select([table1.c.col1, table1.c.col2])
+ a = stmt.alias('a')
+ self.assert_compile(
+ select([func.foo(a)]),
+ "SELECT foo(SELECT table1.col1, table1.col2 FROM table1) "
+ "AS foo_1 FROM "
+ "(SELECT table1.col1 AS col1, table1.col2 AS col2 FROM table1) "
+ "AS a"
+ )
+
def test_union(self):
# tests that we can correspond a column in a Select statement