From 7faf545197334fa0f7e180e5e1ce413bffc84db0 Mon Sep 17 00:00:00 2001 From: Matthias Baumgartner Date: Tue, 25 Jul 2023 18:52:30 +0200 Subject: directory name extractor --- test/extractor/generic/test_path.py | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) (limited to 'test/extractor') diff --git a/test/extractor/generic/test_path.py b/test/extractor/generic/test_path.py index 0beb37e..569703d 100644 --- a/test/extractor/generic/test_path.py +++ b/test/extractor/generic/test_path.py @@ -1,5 +1,6 @@ # standard imports +import os import unittest # bsie imports @@ -29,6 +30,12 @@ class TestPath(unittest.TestCase): rdfs:domain bsn:Entity ; rdfs:range xsd:string ; bsfs:unique "true"^^xsd:boolean . + + bse:dirname rdfs:subClassOf bsfs:Predicate ; + rdfs:domain bsn:Entity ; + rdfs:range xsd:string ; + bsfs:unique "true"^^xsd:boolean . + ''')) def test_extract(self): @@ -36,12 +43,13 @@ class TestPath(unittest.TestCase): node = _node.Node(ns.bsn.Entity, '') # Blank node content = '/tmp/foo/bar' p_filename = ext.schema.predicate(ns.bse.filename) + p_dirname = ext.schema.predicate(ns.bse.dirname) entity = ext.schema.node(ns.bsfs.Node).child(ns.bsn.Entity) string = ext.schema.literal(ns.bsfs.Literal).child(ns.xsd.string) # baseline - self.assertSetEqual(set(ext.extract(node, content, (p_filename, ))), - {(node, p_filename, 'bar')}) + self.assertSetEqual(set(ext.extract(node, content, (p_filename, p_dirname))), + {(node, p_filename, 'bar'), (node, p_dirname, '/tmp/foo')}) # predicates parameter is respected p_foo = ext.schema.predicate(ns.bsfs.Predicate).child(ns.bse.foo, domain=entity, range=string) # unsupported predicate self.assertSetEqual(set(ext.extract(node, content, (p_filename, p_foo))), @@ -53,10 +61,12 @@ class TestPath(unittest.TestCase): {(node, p_filename, 'bar')}) self.assertSetEqual(set(ext.extract(node, content, (p_bar, ))), set()) # path variations - self.assertSetEqual(set(ext.extract(node, 'bar', (p_filename, ))), - {(node, p_filename, 'bar')}) - self.assertSetEqual(set(ext.extract(node, '', (p_filename, ))), - {(node, p_filename, '')}) + self.assertSetEqual(set(ext.extract(node, 'bar', (p_filename, p_dirname))), + {(node, p_filename, 'bar'), (node, p_dirname, os.getcwd())}) + self.assertSetEqual(set(ext.extract(node, '/bar', (p_filename, p_dirname))), + {(node, p_filename, 'bar'), (node, p_dirname, '/')}) + self.assertSetEqual(set(ext.extract(node, '', (p_filename, p_dirname))), + {(node, p_filename, ''), (node, p_dirname, os.path.dirname(os.getcwd()))}) # errors are suppressed self.assertSetEqual(set(ext.extract(node, None, (p_filename, ))), set()) -- cgit v1.2.3