From 32ed2383462edd4affe79f7ee321e471429ac964 Mon Sep 17 00:00:00 2001 From: Timm Fitschen <t.fitschen@indiscale.com> Date: Thu, 6 Feb 2020 20:07:37 +0100 Subject: [PATCH] TST: wildcards in stored-at queries --- tests/test_query.py | 61 +++++++++++++++++++++++++++++++++++++++------ 1 file changed, 54 insertions(+), 7 deletions(-) diff --git a/tests/test_query.py b/tests/test_query.py index 68817f9..15dad79 100644 --- a/tests/test_query.py +++ b/tests/test_query.py @@ -682,6 +682,13 @@ def test_stored_at_wildcards(): file8 = store_file("rootdir/subdir1/test%8.dat") + # Currently, this is implemented differently. See issue: #27 in + # caosdb-server + c = h.execute_query("FIND FILE WHICH IS STORED AT /*.dat") + assert_equal(len(c), 2) + assert_is_not_none(c.get_entity_by_id(file1.id)) + assert_is_not_none(c.get_entity_by_id(file5.id)) + c = h.execute_query("FIND FILE WHICH IS STORED AT /**/subdir*/*.dat") assert_equal(len(c), 4) assert_is_not_none(c.get_entity_by_id(file3.id)) @@ -689,13 +696,6 @@ def test_stored_at_wildcards(): assert_is_not_none(c.get_entity_by_id(file7.id)) assert_is_not_none(c.get_entity_by_id(file8.id)) - # Currently, this is implemented differently. See issue: #27 in - # caosdb-server - #c = h.execute_query("FIND FILE WHICH IS STORED AT /*.dat") - #assert_equal(len(c), 2) - # assert_is_not_none(c.get_entity_by_id(file1.id)) - # assert_is_not_none(c.get_entity_by_id(file5.id)) - c = h.execute_query("FIND FILE WHICH IS STORED AT *subdir**.dat") assert_equal(len(c), 4) assert_is_not_none(c.get_entity_by_id(file3.id)) @@ -815,6 +815,53 @@ def test_stored_at_wildcards(): unique=True) assert_equal(f.id, file6.id) + f = h.execute_query( + r"FIND FILE WHICH IS STORED AT /rootdir/subdir1/subdir2/**", + unique=True) + assert_equal(f.id, file4.id) + + f = h.execute_query( + r"FIND FILE WHICH IS STORED AT '/rootdir/subdir1/subdir2/**'", + unique=True) + assert_equal(f.id, file4.id) + + c = h.execute_query( + r"FIND FILE WHICH IS STORED AT /rootdir/subdir1/**") + assert len(c) == 4 + assert c.get_entity_by_id(file3.id) is not None + assert c.get_entity_by_id(file4.id) is not None + assert c.get_entity_by_id(file7.id) is not None + assert c.get_entity_by_id(file8.id) is not None + + c = h.execute_query( + r"FIND FILE WHICH IS STORED AT '/rootdir/subdir1/**'") + assert len(c) == 4 + assert c.get_entity_by_id(file3.id) is not None + assert c.get_entity_by_id(file4.id) is not None + assert c.get_entity_by_id(file7.id) is not None + assert c.get_entity_by_id(file8.id) is not None + + c = h.execute_query( + r"FIND FILE WHICH IS STORED AT /rootdir/**") + assert len(c) == 6 + assert c.get_entity_by_id(file2.id) is not None + assert c.get_entity_by_id(file3.id) is not None + assert c.get_entity_by_id(file4.id) is not None + assert c.get_entity_by_id(file6.id) is not None + assert c.get_entity_by_id(file7.id) is not None + assert c.get_entity_by_id(file8.id) is not None + + c = h.execute_query( + r"FIND FILE WHICH IS STORED AT '/rootdir/**'") + assert len(c) == 6 + assert c.get_entity_by_id(file2.id) is not None + assert c.get_entity_by_id(file3.id) is not None + assert c.get_entity_by_id(file4.id) is not None + assert c.get_entity_by_id(file6.id) is not None + assert c.get_entity_by_id(file7.id) is not None + assert c.get_entity_by_id(file8.id) is not None + + @with_setup(setup, teardown) def test_int(): -- GitLab