summaryrefslogtreecommitdiff
path: root/test/sql/test_external_traversal.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/sql/test_external_traversal.py')
-rw-r--r--test/sql/test_external_traversal.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/sql/test_external_traversal.py b/test/sql/test_external_traversal.py
index 3469dcb37..c7e51c807 100644
--- a/test/sql/test_external_traversal.py
+++ b/test/sql/test_external_traversal.py
@@ -1747,6 +1747,29 @@ class ClauseAdapterTest(fixtures.TestBase, AssertsCompiledSQL):
"addresses.user_id",
)
+ def test_prev_entities_adapt(self):
+ """test #6503"""
+
+ m = MetaData()
+ users = Table("users", m, Column("id", Integer, primary_key=True))
+ addresses = Table(
+ "addresses",
+ m,
+ Column("id", Integer, primary_key=True),
+ Column("user_id", ForeignKey("users.id")),
+ )
+
+ ualias = users.alias()
+
+ s = select(users).join(addresses).with_only_columns(addresses.c.id)
+ s = sql_util.ClauseAdapter(ualias).traverse(s)
+
+ self.assert_compile(
+ s,
+ "SELECT addresses.id FROM users AS users_1 "
+ "JOIN addresses ON users_1.id = addresses.user_id",
+ )
+
@testing.combinations((True,), (False,), argnames="use_adapt_from")
def test_table_to_alias_1(self, use_adapt_from):
t1alias = t1.alias("t1alias")