Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <lucas.dipentima@curii.com>
+ 'IDTAGCOMMENTS': {
+ 'strict': False,
+ 'labels': [
+ {'label': 'Comment'},
+ {'label': 'Notes'},
+ ],
+ },
self.assertEqual(
self.voc.key_aliases.keys(),
set(['idtaganimals', 'creature', 'animal',
self.assertEqual(
self.voc.key_aliases.keys(),
set(['idtaganimals', 'creature', 'animal',
- 'idtagimportances', 'importance', 'priority'])
+ 'idtagimportances', 'importance', 'priority',
+ 'idtagcomments', 'comment', 'notes'])
)
vk = self.voc.key_aliases['creature']
)
vk = self.voc.key_aliases['creature']
def test_convert_to_identifiers_multiple_pairs(self):
cases = [
def test_convert_to_identifiers_multiple_pairs(self):
cases = [
- {'IDTAGIMPORTANCES': 'IDVALIMPORTANCE1', 'IDTAGANIMALS': 'IDVALANIMAL1'},
- {'IDTAGIMPORTANCES': 'High', 'IDTAGANIMALS': 'IDVALANIMAL1'},
- {'importance': 'IDVALIMPORTANCE1', 'animal': 'IDVALANIMAL1'},
- {'priority': 'high priority', 'animal': 'IDVALANIMAL1'},
+ {'IDTAGIMPORTANCES': 'IDVALIMPORTANCE1', 'IDTAGANIMALS': 'IDVALANIMAL1', 'IDTAGCOMMENTS': 'Very important person'},
+ {'IDTAGIMPORTANCES': 'High', 'IDTAGANIMALS': 'IDVALANIMAL1', 'comment': 'Very important person'},
+ {'importance': 'IDVALIMPORTANCE1', 'animal': 'IDVALANIMAL1', 'notes': 'Very important person'},
+ {'priority': 'high priority', 'animal': 'IDVALANIMAL1', 'NOTES': 'Very important person'},
]
for case in cases:
self.assertEqual(
self.voc.convert_to_identifiers(case),
]
for case in cases:
self.assertEqual(
self.voc.convert_to_identifiers(case),
- {'IDTAGIMPORTANCES': 'IDVALIMPORTANCE1', 'IDTAGANIMALS': 'IDVALANIMAL1'},
+ {'IDTAGIMPORTANCES': 'IDVALIMPORTANCE1', 'IDTAGANIMALS': 'IDVALANIMAL1', 'IDTAGCOMMENTS': 'Very important person'},
"failing test case: {}".format(case)
)
"failing test case: {}".format(case)
)
def test_convert_to_labels_multiple_pairs(self):
cases = [
def test_convert_to_labels_multiple_pairs(self):
cases = [
- {'IDTAGIMPORTANCES': 'IDVALIMPORTANCE1', 'IDTAGANIMALS': 'IDVALANIMAL1'},
- {'IDTAGIMPORTANCES': 'High', 'IDTAGANIMALS': 'IDVALANIMAL1'},
- {'importance': 'IDVALIMPORTANCE1', 'animal': 'IDVALANIMAL1'},
- {'priority': 'high priority', 'animal': 'IDVALANIMAL1'},
+ {'IDTAGIMPORTANCES': 'IDVALIMPORTANCE1', 'IDTAGANIMALS': 'IDVALANIMAL1', 'IDTAGCOMMENTS': 'Very important person'},
+ {'IDTAGIMPORTANCES': 'High', 'IDTAGANIMALS': 'IDVALANIMAL1', 'comment': 'Very important person'},
+ {'importance': 'IDVALIMPORTANCE1', 'animal': 'IDVALANIMAL1', 'notes': 'Very important person'},
+ {'priority': 'high priority', 'animal': 'IDVALANIMAL1', 'NOTES': 'Very important person'},
]
for case in cases:
self.assertEqual(
self.voc.convert_to_labels(case),
]
for case in cases:
self.assertEqual(
self.voc.convert_to_labels(case),
- {'Importance': 'High', 'Animal': 'Human'},
+ {'Importance': 'High', 'Animal': 'Human', 'Comment': 'Very important person'},
"failing test case: {}".format(case)
)
"failing test case: {}".format(case)
)
+ def test_convert_roundtrip(self):
+ initial = {'IDTAGIMPORTANCES': 'IDVALIMPORTANCE1', 'IDTAGANIMALS': 'IDVALANIMAL1', 'IDTAGCOMMENTS': 'Very important person'}
+ converted = self.voc.convert_to_labels(initial)
+ self.assertNotEqual(converted, initial)
+ self.assertEqual(self.voc.convert_to_identifiers(converted), initial)
+
def test_convert_to_labels_unknown_key(self):
# Non-strict vocabulary
self.assertEqual(self.voc.strict_keys, False)
def test_convert_to_labels_unknown_key(self):
# Non-strict vocabulary
self.assertEqual(self.voc.strict_keys, False)