Commit 250052fb authored by J. Fernando Sánchez's avatar J. Fernando Sánchez
Browse files

Options as a set in the JSON-LD context

Closes #18
parent 603e0866
...@@ -40,6 +40,9 @@ ...@@ -40,6 +40,9 @@
"plugins": { "plugins": {
"@container": "@list" "@container": "@list"
}, },
"options": {
"@container": "@set"
},
"prov:wasGeneratedBy": { "prov:wasGeneratedBy": {
"@type": "@id" "@type": "@id"
}, },
......
...@@ -97,7 +97,15 @@ class ModelsTest(TestCase): ...@@ -97,7 +97,15 @@ class ModelsTest(TestCase):
def test_plugins(self): def test_plugins(self):
self.assertRaises(Error, plugins.Plugin) self.assertRaises(Error, plugins.Plugin)
p = plugins.Plugin({"name": "dummy", "version": 0}) p = plugins.Plugin({"name": "dummy",
"version": 0,
"extra_params": {
"none": {
"options": ["es", ],
"required": False,
"default": "0"
}
}})
c = p.jsonld() c = p.jsonld()
assert "info" not in c assert "info" not in c
assert "repo" not in c assert "repo" not in c
...@@ -105,6 +113,8 @@ class ModelsTest(TestCase): ...@@ -105,6 +113,8 @@ class ModelsTest(TestCase):
logging.debug("Framed:") logging.debug("Framed:")
logging.debug(c) logging.debug(c)
p.validate() p.validate()
assert "es" in c['extra_params']['none']['options']
assert isinstance(c['extra_params']['none']['options'], list)
def test_str(self): def test_str(self):
"""The string representation shouldn't include private variables""" """The string representation shouldn't include private variables"""
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment