From ccabcbbb07e7197189f8565fe25ce0dbe464d572 Mon Sep 17 00:00:00 2001 From: Alexander Schlemmer <a.schlemmer@indiscale.com> Date: Thu, 16 Jan 2025 11:55:08 +0100 Subject: [PATCH] TST: adapted tests for eln files --- unittests/eln_files/PASTA.eln | Bin 27801 -> 0 bytes unittests/eln_files/records-example.eln | Bin 11922 -> 12761 bytes unittests/test_rocrate_converter.py | 25 +++++++++++++++++++++--- 3 files changed, 22 insertions(+), 3 deletions(-) delete mode 100644 unittests/eln_files/PASTA.eln diff --git a/unittests/eln_files/PASTA.eln b/unittests/eln_files/PASTA.eln deleted file mode 100644 index 61866e7d5f57cb32191af6663be230153092e712..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27801 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 diff --git a/unittests/eln_files/records-example.eln b/unittests/eln_files/records-example.eln index 09ed53fc179e80a240ab773247d6f9adee71b429..4907bcc4e88e2152fdf2675a50ca661b666c947d 100644 GIT binary patch delta 1246 zcmbOfdo!6gz?+#xgn@&Bfnj24@kZW6Mo~jUT|>(dLt`rw6Dwm=Jri>?3k!?M&5Y^H zhI&Sm6ZqvPb1?}`7Go8XPDw0D4Jb{@$t=!DO;NH^P%<(wGSLO=pZtJH#yiMg*SRRM zBvm1`q9DJhBsE1LttdZN!8<V})5JHiL?JCdCnvu=GcR4CBqLS9)yGdEEi)%oAuYcs zH?c&axF9t-Gc7YYu_QA;Z!!;?>*OjX;mL9AoRe3vbA>6n<rgXBWG1KP6{jj>=0Wsi z=I7}s6y&5P7N;r{rKY78DU{@c&CbkA$t=rEDNW2#NJ%V7EKV&^$jeVjE!I)UOjAfK zD9Fi7PE5*4)tmgES8;LzzwG3dOo65f>8W|CMVZM8iFqjs`30$Y3dQ-QMaiiOWtl}K zAft*>i&GPek~0)i^U5-d^7C?2^GYUbGnY@6SLWhTPDw3JF3KzbyZ#`PFjq)wMTvh> zR%&v|<cR``V!4S$*(v$uc}hB53SgjAl3GzR`6H|B<V1d%%{|O%jFWqq#UN&-R+JPa z7VDN&7Nkx-$Rs@3mP>5%R1TTRY9iW`TbX4+ia3;^iY7a9N=!b*#06Ev59VJI5uTjJ zFAg&iq4*)EB#L4X{~xCmvSKlq$szgqImN0*2BF2NDS8G-4&k4y&n-H6pO_|LZH8#t zxF^5m=9>JQTLoDw!g<~rawr-m@+eN;#sjiPb21C-hsj&m#U@W+76Ju;C~}A^K?AjR zGas81)8sa08ITelm`}g~`A|#=7I@+?iNxfR{35;d%(B!xzr@_s$w+D>P}QU*=4R$p zqAS7`R!HVxS7L~46^j2El_u+psZX}%)10iu8-|`eO)U)!O)V#P3n)!~&%27*z(i?s zAfqf6RYu0fle-1fH=FX$WR_IcD%WQfV_*PbloDX`bD{S<%o9tCH{X<B#I$+3k^s}> z=}MxTZ>R{eNoFt?1We#!U;tqhU6X%k+fR1X-U8A%`G@vyzKNy9kqA2`AJlOJOL6H+ zGewF`7SvXnynsz$a-^<+0!SsYxyB3#(7@=e3{@;Vd7m!WU6ar1N;BE$O%~KPo-C^e Z5z^6<W-`*BEU0ZTxl&J<?VUcz2mmued)WX0 delta 965 zcmcbaJSmnpz?+#xgn@&Bf#F+$=tkZ|Mo|L`T_eK~LnA8#b1M^5JwroNOG|^v&5Y@c z29xg#$xr5C5|WPQQh)*_m&B69;?xo)s7UPOJRaxC-<gCbACMHCyn&5-@^(hi$)}ht z4D%H73sUnGit|g0l2a9m^V3So6N^$6((;QGauf3s(=+qZ6^c@eQxl7lGZa!1OA;rW zvy@LZQ03U1&+5TAc|MQOWOMEhlU>E-HW%^OF-<<nDJKAOgi>NkN@huBeqLfu$m9hQ z5|dwW@=caz=bdaR#W#7qxZvb;0a^TtPqIsZ6-P^`PCmgYkK5F04oR@Wc^m=+O%+Q_ zF3B&_OH514%*jjyxlb=IF*kLxft1+f36i{%v!o>OStdEzj+1M$rIaT=Map2;h;m86 zT%&{@Ae9BFN>&O=DTyViN;=>un*5Mcbn+1{MX=WQT=J8z2`rRBi*q9b3rlljZ36=< z0|TYWf^rh_Ucvr;3aJ$Z`9&oP`DqG8smb|8DaE>}6^Xe8IjMS+AF{|yUMIMU*~~y` zav-BDrh%3QMg~X*st38aDQJY07M0|rYT`Foaq||Tnaq+k${%Ffgcuk=7$wneP7{02 z!~Cs4baRCABBn{Yyo^el->Aw#S%1_`*d$Mjs|TOpVqgGa6upz}_3bBj=xqUMpKPzc zo9|nJXe7d>$s7i5V5vX@X{K93lMM}(Ch-bPUSJ@g08)r-tT6)uG%%i#ho}|S3GilQ z5@Cktu*io_q9W577#Kj<5TS*kf$^)>WJ5!Hu)zimJ-)FF3=ANQs_3=$WJ5!P$p;LD K*_P{ov;zPutrYP9 diff --git a/unittests/test_rocrate_converter.py b/unittests/test_rocrate_converter.py index dc7cef9f..ebf585fb 100644 --- a/unittests/test_rocrate_converter.py +++ b/unittests/test_rocrate_converter.py @@ -76,6 +76,12 @@ def eln_entities(basic_eln_converter): return entities +@pytest.mark.xfail( + reason="The example files for PASTA have not yet been updated in:" + "https://github.com/TheELNConsortium/TheELNFileFormat/tree/master/examples/PASTA" + "However, there was the announcement that these files are going to follow the" + "flattened structure soon: https://github.com/TheELNConsortium/TheELNFileFormat/issues/98" +) def test_load_pasta(basic_eln_converter): """ Test for loading the .eln example export from PASTA. @@ -99,7 +105,7 @@ def test_load_kadi4mat(basic_eln_converter): match = basic_eln_converter.match(f_k4mat) assert match is not None entities = basic_eln_converter.create_children(GeneralStore(), f_k4mat) - assert len(entities) == 10 + assert len(entities) == 17 assert isinstance(entities[0], ROCrateEntity) assert isinstance(entities[0].folder, str) assert isinstance(entities[0].entity, Entity) @@ -131,7 +137,7 @@ match_properties: match = ds2.match(eln_entities[1]) assert match is not None - assert match["dateCreated"] == "2024-08-21T12:07:45.115990+00:00" + assert match["dateCreated"] == "2024-11-19T13:44:35.476888+00:00" children = ds2.create_children(GeneralStore(), eln_entities[1]) assert len(children) == 8 @@ -193,7 +199,20 @@ def test_scanner(): assert len(rlist) == 1 assert isinstance(rlist[0], db.Record) assert rlist[0].name == "records-example" - assert rlist[0].description == "This is a sample record." + # This assertion was moved to a different test, see below: + # assert rlist[0].description == "This is a sample record." assert rlist[0].parents[0].name == "Dataset" assert rlist[0].get_property("keywords").value == "sample" assert rlist[0].get_property("dateModified").value == "2024-08-21T11:43:17.626965+00:00" + + +@pytest.mark.xfail( + reason="The description is no longer a simple string, but a reference to another record." + "The rocrate converter will be able to dereference this as soon as this feature is implemented:" + "https://gitlab.indiscale.com/caosdb/src/caosdb-crawler/-/issues/191" + "This test might need changes in the yaml definition." +) +def test_description_reference(): + rlist = scanner.scan_directory(os.path.join(UNITTESTDIR, "eln_files/"), + os.path.join(UNITTESTDIR, "eln_cfood.yaml")) + assert rlist[0].description == "This is a sample record." -- GitLab