diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2021-07-16 10:14:56 -0400 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2021-07-16 10:14:56 -0400 |
| commit | b932b04b65f0851cbd63e89ee6067fd0a8d30a1b (patch) | |
| tree | 6ca68294288256c6040628e0a4eb734dfafdd8f3 /test/sql/test_external_traversal.py | |
| parent | 03794d40f31cd1c8501c528eda6c351559c1f739 (diff) | |
| download | sqlalchemy-b932b04b65f0851cbd63e89ee6067fd0a8d30a1b.tar.gz | |
reset key/name when TableValuedColumn is adapted
Fixed issue in new :meth:`_schema.Table.table_valued` method where the
resulting :class:`_sql.TableValuedColumn` construct would not respond
correctly to alias adaptation as is used throughout the ORM, such as for
eager loading, polymorphic loading, etc.
Fixes: #6775
Change-Id: I77cec4b6e1b1003f2b6be242b54ada8e4a435250
Diffstat (limited to 'test/sql/test_external_traversal.py')
| -rw-r--r-- | test/sql/test_external_traversal.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/test/sql/test_external_traversal.py b/test/sql/test_external_traversal.py index b0241da59..764bcd6d4 100644 --- a/test/sql/test_external_traversal.py +++ b/test/sql/test_external_traversal.py @@ -2231,6 +2231,21 @@ class ClauseAdapterTest(fixtures.TestBase, AssertsCompiledSQL): "FROM table1 AS table1_1", ) + def test_table_valued_column(self): + """test #6775""" + stmt = select(func.some_json_func(t1.table_valued())) + + self.assert_compile( + stmt, + "SELECT some_json_func(table1) AS some_json_func_1 FROM table1", + ) + + self.assert_compile( + sql_util.ClauseAdapter(t1.alias()).traverse(stmt), + "SELECT some_json_func(table1_1) AS some_json_func_1 " + "FROM table1 AS table1_1", + ) + def test_recursive(self): metadata = MetaData() a = Table("a", metadata, Column("id", Integer, primary_key=True)) |
