summaryrefslogtreecommitdiffstats
path: root/tests/test_lineage.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_lineage.py')
-rw-r--r--tests/test_lineage.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/test_lineage.py b/tests/test_lineage.py
index f33a2c2..0fd9da8 100644
--- a/tests/test_lineage.py
+++ b/tests/test_lineage.py
@@ -186,3 +186,16 @@ class TestLineage(unittest.TestCase):
self.assertEqual(downstream.alias, "")
self.assertEqual(downstream.downstream, [])
+
+ def test_lineage_union(self) -> None:
+ node = lineage(
+ "x",
+ "SELECT ax AS x FROM a UNION SELECT bx FROM b UNION SELECT cx FROM c",
+ )
+ assert len(node.downstream) == 3
+
+ node = lineage(
+ "x",
+ "SELECT x FROM (SELECT ax AS x FROM a UNION SELECT bx FROM b UNION SELECT cx FROM c)",
+ )
+ assert len(node.downstream) == 3