aboutsummaryrefslogtreecommitdiffstats
path: root/test/lib/test_naming_policy.py
diff options
context:
space:
mode:
authorMatthias Baumgartner <dev@igsor.net>2023-02-08 19:23:46 +0100
committerMatthias Baumgartner <dev@igsor.net>2023-02-08 19:23:46 +0100
commita281d6b3a75a7d4a97e673c285ee430a327482ed (patch)
treecbdecc56c7fca6a7a4cd03a1b974d5c60ee3cd7b /test/lib/test_naming_policy.py
parent482235a8229261fa905f73ce167982bca57ab3e6 (diff)
downloadbsie-a281d6b3a75a7d4a97e673c285ee430a327482ed.tar.gz
bsie-a281d6b3a75a7d4a97e673c285ee430a327482ed.tar.bz2
bsie-a281d6b3a75a7d4a97e673c285ee430a327482ed.zip
preview extractor
Diffstat (limited to 'test/lib/test_naming_policy.py')
-rw-r--r--test/lib/test_naming_policy.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/test/lib/test_naming_policy.py b/test/lib/test_naming_policy.py
index 763537b..4861c84 100644
--- a/test/lib/test_naming_policy.py
+++ b/test/lib/test_naming_policy.py
@@ -32,6 +32,10 @@ class TestDefaultNamingPolicy(unittest.TestCase):
self.assertEqual(policy.handle_node(
Node(ns.bsfs.File, ucid='abc123cba')).uri,
URI('http://example.com/me/file#abc123cba'))
+ # processes bsfs:Preview
+ self.assertEqual(policy.handle_node(
+ Node(ns.bsfs.Preview, ucid='abc123cba', size=123)).uri,
+ URI('http://example.com/me/preview#abc123cba_s123'))
# raises an exception on unknown types
self.assertRaises(errors.ProgrammingError, policy.handle_node,
Node(ns.bsfs.Entity, ucid='abc123cba', size=123))
@@ -47,6 +51,31 @@ class TestDefaultNamingPolicy(unittest.TestCase):
self.assertTrue(policy.name_file(
Node(ns.bsfs.File)).uri.startswith('http://example.com/me/file#'))
+ def test_name_preview(self):
+ # setup
+ policy = DefaultNamingPolicy('http://example.com', 'me')
+ # name_preview uses ucid
+ self.assertEqual(policy.name_preview(
+ Node(ns.bsfs.Preview, ucid='123abc321')).uri,
+ URI('http://example.com/me/preview#123abc321'))
+ self.assertEqual(policy.name_preview(
+ Node(ns.bsfs.Preview, ucid='123abc321', size=400)).uri,
+ URI('http://example.com/me/preview#123abc321_s400'))
+ # name_preview uses source
+ self.assertEqual(policy.name_preview(
+ Node(ns.bsfs.Preview, source=Node(ns.bsfs.File, ucid='123file321'))).uri,
+ URI('http://example.com/me/preview#123file321'))
+ self.assertEqual(policy.name_preview(
+ Node(ns.bsfs.Preview, source=Node(ns.bsfs.File, ucid='123file321'), size=300)).uri,
+ URI('http://example.com/me/preview#123file321_s300'))
+ # name_preview falls back to a random guid
+ self.assertTrue(policy.name_preview(
+ Node(ns.bsfs.Preview)).uri.startswith('http://example.com/me/preview#'))
+ self.assertTrue(policy.name_preview(
+ Node(ns.bsfs.Preview, size=200)).uri.startswith('http://example.com/me/preview#'))
+ self.assertTrue(policy.name_preview(
+ Node(ns.bsfs.Preview, size=200)).uri.endswith('_s200'))
+
class TestNamingPolicyIterator(unittest.TestCase):
@@ -71,10 +100,15 @@ class TestNamingPolicyIterator(unittest.TestCase):
policy = DefaultNamingPolicy('http://example.com', 'me')
triples = [
(Node(ns.bsfs.File, ucid='foo'), 'predA', 'hello'),
+ (Node(ns.bsfs.Preview, ucid='bar'), 'predB', 1234),
+ (Node(ns.bsfs.Preview, ucid='hello'), 'predC', Node(ns.bsfs.File, ucid='world'))
]
# handles nodes, handles values, ignores predicate
self.assertListEqual(list(policy(triples)), [
(Node(ns.bsfs.File, uri='http://example.com/me/file#foo'), 'predA', 'hello'),
+ (Node(ns.bsfs.Preview, uri='http://example.com/me/preview#bar'), 'predB', 1234),
+ (Node(ns.bsfs.Preview, uri='http://example.com/me/preview#hello'), 'predC',
+ Node(ns.bsfs.File, uri='http://example.com/me/file#world')),
])