aboutsummaryrefslogtreecommitdiffstats
path: root/test/schema/test_schema.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/schema/test_schema.py')
-rw-r--r--test/schema/test_schema.py34
1 files changed, 18 insertions, 16 deletions
diff --git a/test/schema/test_schema.py b/test/schema/test_schema.py
index c19c226..32dbc93 100644
--- a/test/schema/test_schema.py
+++ b/test/schema/test_schema.py
@@ -66,30 +66,32 @@ class TestSchema(unittest.TestCase):
# literals
self.l_root = types.ROOT_LITERAL
self.l_number = types.ROOT_NUMBER
+ self.l_array = types.ROOT_ARRAY
+ self.l_time = types.ROOT_TIME
self.l_string = self.l_root.child(ns.xsd.string)
self.l_integer = self.l_root.child(ns.xsd.integer)
self.l_unused = self.l_root.child(ns.xsd.boolean)
- self.literals = [self.l_root, self.l_number, self.l_string, self.l_integer, self.l_unused]
+ self.f_root = types.ROOT_FEATURE
+ self.literals = [self.l_root, self.l_array, self.f_root, self.l_number, self.l_time, self.l_string, self.l_integer, self.l_unused]
# predicates
self.p_root = types.ROOT_PREDICATE
- self.f_root = types.ROOT_FEATURE
self.p_tag = self.p_root.child(ns.bse.tag, self.n_ent, self.n_tag, False)
self.p_group = self.p_tag.child(ns.bse.group, self.n_img, self.n_tag, False)
self.p_comment = self.p_root.child(ns.bse.comment, self.n_root, self.l_string, True)
- self.predicates = [self.p_root, self.f_root, self.p_tag, self.p_group, self.p_comment]
+ self.predicates = [self.p_root, self.p_tag, self.p_group, self.p_comment]
def test_construction(self):
# no args yields a minimal schema
schema = Schema()
self.assertSetEqual(set(schema.nodes()), {self.n_root})
- self.assertSetEqual(set(schema.literals()), {self.l_root, self.l_number})
- self.assertSetEqual(set(schema.predicates()), {self.p_root, self.f_root})
+ self.assertSetEqual(set(schema.literals()), {self.l_root, self.l_number, self.l_array, self.l_time, self.f_root})
+ self.assertSetEqual(set(schema.predicates()), {self.p_root})
# nodes and literals are optional
schema = Schema(self.predicates)
self.assertSetEqual(set(schema.nodes()), {self.n_root, self.n_ent, self.n_img, self.n_tag})
- self.assertSetEqual(set(schema.literals()), {self.l_root, self.l_string, self.l_number})
+ self.assertSetEqual(set(schema.literals()), {self.l_root, self.l_string, self.l_number, self.l_time, self.l_array, self.f_root})
self.assertSetEqual(set(schema.predicates()), set(self.predicates))
# predicates, nodes, and literals are respected
@@ -110,21 +112,21 @@ class TestSchema(unittest.TestCase):
# literals are complete
schema = Schema(self.predicates, self.nodes, None)
- self.assertSetEqual(set(schema.literals()), {self.l_root, self.l_string, self.l_number})
+ self.assertSetEqual(set(schema.literals()), {self.l_root, self.l_string, self.l_number, self.l_array, self.l_time, self.f_root})
schema = Schema(self.predicates, self.nodes, [])
- self.assertSetEqual(set(schema.literals()), {self.l_root, self.l_string, self.l_number})
+ self.assertSetEqual(set(schema.literals()), {self.l_root, self.l_string, self.l_number, self.l_array, self.l_time, self.f_root})
schema = Schema(self.predicates, self.nodes, [self.l_string])
- self.assertSetEqual(set(schema.literals()), {self.l_root, self.l_string, self.l_number})
+ self.assertSetEqual(set(schema.literals()), {self.l_root, self.l_string, self.l_number, self.l_array, self.l_time, self.f_root})
schema = Schema(self.predicates, self.nodes, [self.l_integer])
- self.assertSetEqual(set(schema.literals()), {self.l_root, self.l_string, self.l_integer, self.l_number})
+ self.assertSetEqual(set(schema.literals()), {self.l_root, self.l_string, self.l_integer, self.l_number, self.l_array, self.l_time, self.f_root})
schema = Schema(self.predicates, self.nodes, [self.l_integer, self.l_unused])
self.assertSetEqual(set(schema.literals()), set(self.literals))
# predicates are complete
schema = Schema([], self.nodes, self.literals)
- self.assertSetEqual(set(schema.predicates()), {self.p_root, self.f_root})
+ self.assertSetEqual(set(schema.predicates()), {self.p_root})
schema = Schema([self.p_group], self.nodes, self.literals)
- self.assertSetEqual(set(schema.predicates()), {self.p_root, self.f_root, self.p_tag, self.p_group})
+ self.assertSetEqual(set(schema.predicates()), {self.p_root, self.p_tag, self.p_group})
schema = Schema([self.p_group, self.p_comment], self.nodes, self.literals)
self.assertSetEqual(set(schema.predicates()), set(self.predicates))
@@ -176,14 +178,14 @@ class TestSchema(unittest.TestCase):
self.assertEqual(str(Schema(self.predicates, self.nodes, self.literals)), 'Schema()')
# repr conversion with only default nodes, literals, and predicates
n = [ns.bsfs.Node]
- l = [ns.bsfs.Literal, ns.bsfs.Number]
- p = [ns.bsfs.Feature, ns.bsfs.Predicate]
+ l = [ns.bsfs.Array, ns.bsfs.Feature, ns.bsfs.Literal, ns.bsfs.Number, ns.bsfs.Time]
+ p = [ns.bsfs.Predicate]
self.assertEqual(repr(Schema()), f'Schema({n}, {l}, {p})')
self.assertEqual(repr(Schema([], [], [])), f'Schema({n}, {l}, {p})')
# repr conversion
n = [ns.bsfs.Entity, ns.bsfs.Image, ns.bsfs.Node, ns.bsfs.Tag, ns.bsfs.Unused]
- l = [ns.bsfs.Literal, ns.bsfs.Number, ns.xsd.boolean, ns.xsd.integer, ns.xsd.string]
- p = [ns.bse.comment, ns.bse.group, ns.bse.tag, ns.bsfs.Feature, ns.bsfs.Predicate]
+ l = [ns.bsfs.Array, ns.bsfs.Feature, ns.bsfs.Literal, ns.bsfs.Number, ns.bsfs.Time, ns.xsd.boolean, ns.xsd.integer, ns.xsd.string]
+ p = [ns.bse.comment, ns.bse.group, ns.bse.tag, ns.bsfs.Predicate]
self.assertEqual(repr(Schema(self.predicates, self.nodes, self.literals)), f'Schema({n}, {l}, {p})')
def test_equality(self):