Example #1
0
 def test_specialize_generic_type(self):
     scope = Scope()
     GT = DataType("GT")
     A = DataType("A", access=AccessLevel.internal)
     scope.add_child(Scope(None, A))
     B = DataType("B", generic_types={GT: None})
     self.assertDictEqual(scope.specialize_type(B).generic_types, {GT: A})
Example #2
0
 def test_specialize_generic_type_filter(self):
     scope = Scope()
     GT = DataType("GT")
     A = DataType("A", access=AccessLevel.internal)
     B = DataType("B", access=AccessLevel.public)
     scope.add_child(Scope(None, A))
     scope.add_child(Scope(None, B))
     C = DataType("C", generic_types={GT: None})
     self.assertDictEqual(
         scope.specialize_type(C, at_least=AccessLevel.public).generic_types,
         {GT: B}
     )