From b36ee6a6534db46873d08dd8a9a888c4182e3349 Mon Sep 17 00:00:00 2001 From: eliott <eliott.sammier@tetras-libre.fr> Date: Mon, 5 Aug 2024 14:51:37 +0200 Subject: [PATCH] Check for empty or None variables as well --- tetras_extraction/script/src/test.py | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/tetras_extraction/script/src/test.py b/tetras_extraction/script/src/test.py index 04982a5e..97fc4e97 100644 --- a/tetras_extraction/script/src/test.py +++ b/tetras_extraction/script/src/test.py @@ -21,20 +21,20 @@ class TestObjectCount(unittest.TestCase): def runTest(self): # Modules self.assertCount( - """SELECT DISTINCT ?mod WHERE { - ?mod a :Module . + """SELECT * WHERE { + ?subj a :Module . - ?mod :id ?id . - ?mod :index ?index . - ?mod :titre ?titre . + ?subj :id ?id . + ?subj :index ?index . + ?subj :titre ?titre . - MINUS { ?mod a :SousPartie } + MINUS { ?subj a :SousPartie } }""", (9, 6, 9 + 6), ) # SousParties self.assertCount( - """SELECT DISTINCT ?subj WHERE { + """SELECT * WHERE { ?subj a :SousPartie . ?subj :id ?id . @@ -45,7 +45,7 @@ class TestObjectCount(unittest.TestCase): ) # Activités self.assertCount( - """SELECT DISTINCT ?subj WHERE { + """SELECT * WHERE { ?subj a :Activite . ?subj :id ?id . @@ -64,6 +64,16 @@ class TestObjectCount(unittest.TestCase): """ res = self.graph.query(query) count = len(res) + # Check that variables bound to Literals are not empty or None + for binding in res.bindings: + for var, val in binding.items(): + if isinstance(val, Literal): + self.assertFalse( + val.eq(Literal("")), f"Empty value: ?{var} = '{val}'" + ) + self.assertFalse( + val.eq(Literal("None")), f"None value: ?{var} = '{val}'" + ) versions = ("macao_12", "macao_3", "full") try: -- GitLab