MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / test_wrecur_dupe_col_names

Method test_wrecur_dupe_col_names

test/sql/test_cte.py:584–616  ·  view source on GitHub ↗

test #6710

(self)

Source from the content-addressed store, hash-verified

582 )
583
584 def test_wrecur_dupe_col_names(self):
585 """test #6710"""
586
587 manager = table("manager", column("id"))
588 employee = table("employee", column("id"), column("manager_id"))
589
590 top_q = select(employee, manager).join_from(
591 employee, manager, employee.c.manager_id == manager.c.id
592 )
593
594 top_q = top_q.cte("cte", recursive=True)
595
596 bottom_q = (
597 select(employee, manager)
598 .join_from(
599 employee, manager, employee.c.manager_id == manager.c.id
600 )
601 .join(top_q, top_q.c.id == employee.c.id)
602 )
603
604 rec_cte = select(top_q.union_all(bottom_q))
605 self.assert_compile(
606 rec_cte,
607 "WITH RECURSIVE cte(id, manager_id, id_1) AS "
608 "(SELECT employee.id AS id, employee.manager_id AS manager_id, "
609 "manager.id AS id_1 FROM employee JOIN manager "
610 "ON employee.manager_id = manager.id UNION ALL "
611 "SELECT employee.id AS id, employee.manager_id AS manager_id, "
612 "manager.id AS id_1 FROM employee JOIN manager ON "
613 "employee.manager_id = manager.id "
614 "JOIN cte ON cte.id = employee.id) "
615 "SELECT cte.id, cte.manager_id, cte.id_1 FROM cte",
616 )
617
618 @testing.combinations(True, False, argnames="use_object")
619 @testing.combinations("order_by", "group_by", argnames="order_by")

Callers

nothing calls this directly

Calls 8

tableFunction · 0.90
columnFunction · 0.90
selectFunction · 0.90
join_fromMethod · 0.80
assert_compileMethod · 0.80
cteMethod · 0.45
joinMethod · 0.45
union_allMethod · 0.45

Tested by

no test coverage detected