|
1 | | -import unittest |
2 | | - |
3 | 1 | from linkml_runtime.linkml_model.meta import LINKML, Element |
4 | 2 |
|
5 | 3 |
|
6 | | -class PolyDataclassTestCase(unittest.TestCase): |
7 | | - def test_class_for_uri(self): |
8 | | - """Test various class lookup options""" |
9 | | - e = Element |
10 | | - |
11 | | - # Test class URI |
12 | | - cls = e._class_for_uri(LINKML.ClassDefinition) |
13 | | - self.assertEqual("ClassDefinition", cls.__name__) |
14 | | - |
15 | | - # Test model URI |
16 | | - cls = e._class_for_uri(LINKML.TypeDefinition, use_model_uri=True) |
17 | | - self.assertEqual("TypeDefinition", cls.__name__) |
| 4 | +def test_class_for_uri(): |
| 5 | + """Test various class lookup options for polymorphic dataclasses""" |
| 6 | + e = Element |
18 | 7 |
|
19 | | - # Test class curie (note there isn't any model curie |
20 | | - cls = e._class_for_curie("linkml:TypeDefinition") |
21 | | - self.assertEqual("TypeDefinition", cls.__name__) |
| 8 | + # Test class URI lookup |
| 9 | + cls = e._class_for_uri(LINKML.ClassDefinition) |
| 10 | + assert cls.__name__ == "ClassDefinition" |
22 | 11 |
|
23 | | - # Make sure the self test works |
24 | | - cls = e._class_for_uri(LINKML.Element) |
25 | | - self.assertEqual("Element", cls.__name__) |
| 12 | + # Test model URI lookup |
| 13 | + cls = e._class_for_uri(LINKML.TypeDefinition, use_model_uri=True) |
| 14 | + assert cls.__name__ == "TypeDefinition" |
26 | 15 |
|
27 | | - # Make sure we fail gracefully |
28 | | - cls = e._class_for_uri("linkml:Missing") |
29 | | - self.assertIsNone(cls) |
| 16 | + # Test class curie lookup (note there isn't any model curie) |
| 17 | + cls = e._class_for_curie("linkml:TypeDefinition") |
| 18 | + assert cls.__name__ == "TypeDefinition" |
30 | 19 |
|
| 20 | + # Test self lookup works |
| 21 | + cls = e._class_for_uri(LINKML.Element) |
| 22 | + assert cls.__name__ == "Element" |
31 | 23 |
|
32 | | -if __name__ == "__main__": |
33 | | - unittest.main() |
| 24 | + # Test graceful failure for missing classes |
| 25 | + cls = e._class_for_uri("linkml:Missing") |
| 26 | + assert cls is None |
0 commit comments