From 2da348c638ac5058d5acf09ab5df323ee04503d5 Mon Sep 17 00:00:00 2001 From: Matthias Baumgartner Date: Mon, 31 Oct 2022 14:14:42 +0100 Subject: constant, filesize, and filename extractors --- test/extractor/generic/test_path.py | 45 +++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 test/extractor/generic/test_path.py (limited to 'test/extractor/generic/test_path.py') diff --git a/test/extractor/generic/test_path.py b/test/extractor/generic/test_path.py new file mode 100644 index 0000000..8623490 --- /dev/null +++ b/test/extractor/generic/test_path.py @@ -0,0 +1,45 @@ +""" + +Part of the bsie test suite. +A copy of the license is provided with the project. +Author: Matthias Baumgartner, 2022 +""" +# imports +import unittest + +# bsie imports +from bsie.utils import ns +from bsie.utils.node import Node + +# objects to test +from bsie.extractor.generic.path import Path + + +## code ## + +class TestPath(unittest.TestCase): + def test_extract(self): + node = Node(ns.bsfs.Entity, '') # Blank node + ext = Path() + + # baseline + self.assertSetEqual(set(ext.extract(node, '/tmp/foo/bar', (ns.bse.filename, ))), + {(node, ns.bse.filename, 'bar')}) + # predicates parameter is respected + self.assertSetEqual(set(ext.extract(node, '/tmp/foo/bar', (ns.bse.filename, ns.bse.foo))), + {(node, ns.bse.filename, 'bar')}) + self.assertSetEqual(set(ext.extract(node, '/tmp/foo/bar', (ns.bse.foo, ))), set()) + # path variations + self.assertSetEqual(set(ext.extract(node, 'bar', (ns.bse.filename, ))), + {(node, ns.bse.filename, 'bar')}) + self.assertSetEqual(set(ext.extract(node, '', (ns.bse.filename, ))), + {(node, ns.bse.filename, '')}) + self.assertSetEqual(set(ext.extract(node, None, (ns.bse.filename, ))), set()) + + +## main ## + +if __name__ == '__main__': + unittest.main() + +## EOF ## -- cgit v1.2.3