diff options
| author | Marcos Magueta <maguetamarcos@gmail.com> | 2025-11-24 22:40:22 -0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-11-24 22:40:22 -0300 |
| commit | 62a017ce95ad2f6d9445b5b96f7aeba3f7c0d42f (patch) | |
| tree | d67f93407ad049e4dc39fae1002146a8d03e4505 /test/infinite_relations_test.erl | |
| parent | 09be36e5f5e2c5714b9542df8ccc363ab86ac6da (diff) | |
| download | Sakura-62a017ce95ad2f6d9445b5b96f7aeba3f7c0d42f.tar.gz Sakura-62a017ce95ad2f6d9445b5b96f7aeba3f7c0d42f.zip | |
Joins with provenance and lineage (#11)
Diffstat (limited to 'test/infinite_relations_test.erl')
| -rw-r--r-- | test/infinite_relations_test.erl | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/test/infinite_relations_test.erl b/test/infinite_relations_test.erl index cafd325..39fe29a 100644 --- a/test/infinite_relations_test.erl +++ b/test/infinite_relations_test.erl @@ -26,6 +26,14 @@ setup() -> cleanup(_DB) -> ok. +%%% Helper Functions + +%% Strip metadata from tuples for comparison +strip_meta(Tuple) when is_map(Tuple) -> + maps:remove(meta, Tuple); +strip_meta(Tuples) when is_list(Tuples) -> + [strip_meta(T) || T <- Tuples]. + %%% Tests test_create_naturals(DB) -> @@ -59,13 +67,14 @@ test_naturals_with_constraints(DB) -> %% Query with range constraint [0, 9] Iterator = operations:get_tuples_iterator(DB1, naturals, #{value => {range, 0, 9}}), Tuples = operations:collect_all(Iterator), + DataOnly = strip_meta(Tuples), %% Should get exactly 10 tuples: {0, 1, 2, ..., 9} [ ?_assertEqual(10, length(Tuples)), - ?_assert(lists:member(#{value => 0}, Tuples)), - ?_assert(lists:member(#{value => 5}, Tuples)), - ?_assert(lists:member(#{value => 9}, Tuples)) + ?_assert(lists:member(#{value => 0}, DataOnly)), + ?_assert(lists:member(#{value => 5}, DataOnly)), + ?_assert(lists:member(#{value => 9}, DataOnly)) ]. test_integers_generator(DB) -> @@ -80,14 +89,15 @@ test_integers_generator(DB) -> %% Query with range constraint [-5, 5] Iterator = operations:get_tuples_iterator(DB1, integers, #{value => {range, -5, 5}}), Tuples = operations:collect_all(Iterator), + DataOnly = strip_meta(Tuples), %% Should get 11 tuples: {-5, -4, ..., 0, ..., 4, 5} [ ?_assertEqual(aleph_zero, Integers#relation.cardinality), ?_assertEqual(11, length(Tuples)), - ?_assert(lists:member(#{value => 0}, Tuples)), - ?_assert(lists:member(#{value => -5}, Tuples)), - ?_assert(lists:member(#{value => 5}, Tuples)) + ?_assert(lists:member(#{value => 0}, DataOnly)), + ?_assert(lists:member(#{value => -5}, DataOnly)), + ?_assert(lists:member(#{value => 5}, DataOnly)) ]. test_rationals_generator(DB) -> |
