aboutsummaryrefslogtreecommitdiffstats
path: root/test/base/test_extractor.py
diff options
context:
space:
mode:
authorMatthias Baumgartner <dev@igsor.net>2022-12-24 10:27:09 +0100
committerMatthias Baumgartner <dev@igsor.net>2022-12-24 10:27:09 +0100
commit266c2c9a072bf3289fd7f2d75278b7d59528378c (patch)
tree60760e0fec84d5cd7b3f3efef11e3892df5cc85a /test/base/test_extractor.py
parented2074ae88f2db6cb6b38716b43b35e29eb2e16c (diff)
downloadbsie-266c2c9a072bf3289fd7f2d75278b7d59528378c.tar.gz
bsie-266c2c9a072bf3289fd7f2d75278b7d59528378c.tar.bz2
bsie-266c2c9a072bf3289fd7f2d75278b7d59528378c.zip
package restructuring: base
* Reader and Extractor to respective reader/extractor modules * ReaderBuilder to reader module * ExtractorBuilder to extractor module * Loading module in utils (safe_load, unpack_name) * Pipeline and PipelineBuilder to lib module * errors to utils * documentation: "standard import" and "external import"
Diffstat (limited to 'test/base/test_extractor.py')
-rw-r--r--test/base/test_extractor.py70
1 files changed, 0 insertions, 70 deletions
diff --git a/test/base/test_extractor.py b/test/base/test_extractor.py
deleted file mode 100644
index 30974ef..0000000
--- a/test/base/test_extractor.py
+++ /dev/null
@@ -1,70 +0,0 @@
-"""
-
-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 bsfs, ns
-
-# objects to test
-from bsie.base import extractor
-
-
-## code ##
-
-class StubExtractor(extractor.Extractor):
- def __init__(self):
- super().__init__(bsfs.schema.Schema.from_string(extractor.SCHEMA_PREAMBLE + '''
- bse:author rdfs:subClassOf bsfs:Predicate ;
- rdfs:domain bsfs:Entity ;
- rdfs:range xsd:string ;
- bsfs:unique "false"^^xsd:boolean .
- bse:comment rdfs:subClassOf bsfs:Predicate ;
- rdfs:domain bsfs:Entity ;
- rdfs:range xsd:string ;
- bsfs:unique "false"^^xsd:boolean .
- '''))
-
- def extract(self, subject, content, predicates):
- raise NotImplementedError()
-
-class StubSub(StubExtractor):
- pass
-
-class TestExtractor(unittest.TestCase):
- def test_essentials(self):
- ext = StubExtractor()
- self.assertEqual(str(ext), 'StubExtractor')
- self.assertEqual(repr(ext), 'StubExtractor()')
- self.assertEqual(ext, StubExtractor())
- self.assertEqual(hash(ext), hash(StubExtractor()))
-
- sub = StubSub()
- self.assertEqual(str(sub), 'StubSub')
- self.assertEqual(repr(sub), 'StubSub()')
- self.assertEqual(sub, StubSub())
- self.assertEqual(hash(sub), hash(StubSub()))
- self.assertNotEqual(ext, sub)
- self.assertNotEqual(hash(ext), hash(sub))
-
- def test_principals(self):
- schema = bsfs.schema.Schema.Empty()
- entity = schema.node(ns.bsfs.Node).get_child(ns.bsfs.Entity)
- string = schema.literal(ns.bsfs.Literal).get_child(bsfs.URI('http://www.w3.org/2001/XMLSchema#string'))
- p_author = schema.predicate(ns.bsfs.Predicate).get_child(ns.bse.author, domain=entity, range=string)
- p_comment = schema.predicate(ns.bsfs.Predicate).get_child(ns.bse.comment, domain=entity, range=string)
- ext = StubExtractor()
- self.assertSetEqual(set(ext.principals),
- {p_author, p_comment} | set(schema.predicates()) - {schema.predicate(ns.bsfs.Predicate)})
-
-
-## main ##
-
-if __name__ == '__main__':
- unittest.main()
-
-## EOF ##