diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2020-04-09 11:15:03 -0400 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2020-04-09 12:55:23 -0400 |
commit | 0aa38a973778114b9b63c74f89a47adcb1cbab82 (patch) | |
tree | 14475000b447b435cf8b813965f62df61245da15 /test/sql/test_utils.py | |
parent | ae26007d52caab1575a9aef4fecb90785f7e118d (diff) | |
download | sqlalchemy-0aa38a973778114b9b63c74f89a47adcb1cbab82.tar.gz |
Repair find tables
The recipe given out on the ML for improving ABC
fails in 1.4 due to find_tables() missing out on subqueries,
which is due to the refactor of Alias into multiple sub-types.
Change-Id: Idd2803b26a84b28db28e0b8c328b8f24550577e4
Diffstat (limited to 'test/sql/test_utils.py')
-rw-r--r-- | test/sql/test_utils.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/test/sql/test_utils.py b/test/sql/test_utils.py index 1ccd1e123..a63e55c4e 100644 --- a/test/sql/test_utils.py +++ b/test/sql/test_utils.py @@ -30,3 +30,21 @@ class MiscTest(fixtures.TestBase): subset_select = select([common.c.id, common.c.data]).alias() eq_(sql_util.find_tables(subset_select), [common]) + + def test_find_tables_aliases(self): + metadata = MetaData() + common = Table( + "common", + metadata, + Column("id", Integer, primary_key=True), + Column("data", Integer), + Column("extra", String(45)), + ) + + calias = common.alias() + subset_select = select([common.c.id, calias.c.data]).subquery() + + eq_( + set(sql_util.find_tables(subset_select, include_aliases=True)), + {common, calias, subset_select}, + ) |