def test_simple_serialization_and_deserialization(self): typeDescription = TypeDescription.Primitive(23.4) self.assertDeserializationSerializationSucceeded(typeDescription) typeDescription = TypeDescription.Tuple([1, 2, 3, 4, 5]) self.assertDeserializationSerializationSucceeded(typeDescription) typeDescription = TypeDescription.ClassDefinition("source text here", ['test']) self.assertDeserializationSerializationSucceeded(typeDescription)
def defineClass(self, objectId, sourceFileId, lineNumber, scopeIds): """ scopeIds: a dict freeVariableMemberAccessChain -> id """ freeVariableMemberAccessChainsToId = \ self._processFreeVariableMemberAccessChainResolution( scopeIds ) self.objectIdToObjectDefinition[objectId] = \ TypeDescription.ClassDefinition( sourceFileId=sourceFileId, lineNumber=lineNumber, freeVariableMemberAccessChainsToId=freeVariableMemberAccessChainsToId )
def defineClass(self, objectId, sourceFileId, lineNumber, scopeIds, baseClassIds): """ scopeIds: a dict freeVariableMemberAccessChain -> id baseClassIds: a list of ids representing (immediate) base classes """ freeVariableMemberAccessChainsToId = \ self._processFreeVariableMemberAccessChainResolution( scopeIds ) self.objectIdToObjectDefinition[objectId] = \ TypeDescription.ClassDefinition( sourceFileId=sourceFileId, lineNumber=lineNumber, freeVariableMemberAccessChainsToId=freeVariableMemberAccessChainsToId, baseClassIds=baseClassIds )
def test_nested_type_serialization_and_deserialization(self): dict1 = { "a": 1, "b": 2, "c": 3} dict2 = { "a": 4, "b": 5, "c": 6} typeDescription = TypeDescription.ClassDefinition("source text here", [dict1, dict2]) self.assertDeserializationSerializationSucceeded(typeDescription)