From: Lucas Di Pentima Date: Thu, 3 Mar 2022 14:16:53 +0000 (-0300) Subject: 18574: Adds remaining invalid key/value test cases. X-Git-Tag: 2.4.0~67^2 X-Git-Url: https://git.arvados.org/arvados.git/commitdiff_plain/1d7078e6475545bd358167a354b9e12835e6d677 18574: Adds remaining invalid key/value test cases. Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima --- diff --git a/sdk/python/tests/test_vocabulary.py b/sdk/python/tests/test_vocabulary.py index 1d3d7b6272..aa2e739e20 100644 --- a/sdk/python/tests/test_vocabulary.py +++ b/sdk/python/tests/test_vocabulary.py @@ -173,6 +173,10 @@ class VocabularyTest(unittest.TestCase): strict_voc.convert_to_identifiers({'foo': 'bar'}) def test_convert_to_identifiers_invalid_key(self): + with self.assertRaises(vocabulary.VocabularyKeyError): + self.voc.convert_to_identifiers({42: 'bar'}) + with self.assertRaises(vocabulary.VocabularyKeyError): + self.voc.convert_to_identifiers({None: 'bar'}) with self.assertRaises(vocabulary.VocabularyKeyError): self.voc.convert_to_identifiers({('f', 'o', 'o'): 'bar'}) @@ -188,6 +192,16 @@ class VocabularyTest(unittest.TestCase): def test_convert_to_identifiers_invalid_value(self): with self.assertRaises(vocabulary.VocabularyValueError): self.voc.convert_to_identifiers({'Animal': 42}) + with self.assertRaises(vocabulary.VocabularyValueError): + self.voc.convert_to_identifiers({'Animal': None}) + with self.assertRaises(vocabulary.VocabularyValueError): + self.voc.convert_to_identifiers({'Animal': {'hello': 'world'}}) + with self.assertRaises(vocabulary.VocabularyValueError): + self.voc.convert_to_identifiers({'Animal': [42]}) + with self.assertRaises(vocabulary.VocabularyValueError): + self.voc.convert_to_identifiers({'Animal': [None]}) + with self.assertRaises(vocabulary.VocabularyValueError): + self.voc.convert_to_identifiers({'Animal': [{'hello': 'world'}]}) def test_convert_to_identifiers_unknown_value_list(self): # Non-strict key @@ -256,6 +270,10 @@ class VocabularyTest(unittest.TestCase): def test_convert_to_labels_invalid_key(self): with self.assertRaises(vocabulary.VocabularyKeyError): self.voc.convert_to_labels({42: 'bar'}) + with self.assertRaises(vocabulary.VocabularyKeyError): + self.voc.convert_to_labels({None: 'bar'}) + with self.assertRaises(vocabulary.VocabularyKeyError): + self.voc.convert_to_labels({('f', 'o', 'o'): 'bar'}) def test_convert_to_labels_unknown_value(self): # Non-strict key @@ -269,6 +287,18 @@ class VocabularyTest(unittest.TestCase): def test_convert_to_labels_invalid_value(self): with self.assertRaises(vocabulary.VocabularyValueError): self.voc.convert_to_labels({'IDTAGIMPORTANCES': {'high': True}}) + with self.assertRaises(vocabulary.VocabularyValueError): + self.voc.convert_to_labels({'IDTAGIMPORTANCES': None}) + with self.assertRaises(vocabulary.VocabularyValueError): + self.voc.convert_to_labels({'IDTAGIMPORTANCES': 42}) + with self.assertRaises(vocabulary.VocabularyValueError): + self.voc.convert_to_labels({'IDTAGIMPORTANCES': False}) + with self.assertRaises(vocabulary.VocabularyValueError): + self.voc.convert_to_labels({'IDTAGIMPORTANCES': [42]}) + with self.assertRaises(vocabulary.VocabularyValueError): + self.voc.convert_to_labels({'IDTAGIMPORTANCES': [None]}) + with self.assertRaises(vocabulary.VocabularyValueError): + self.voc.convert_to_labels({'IDTAGIMPORTANCES': [{'high': True}]}) def test_convert_to_labels_unknown_value_list(self): # Non-strict key