'``SerializableArgument`` can be given multiple types to allow instances
of any of those types to be serialized and deserialized.'

def test_multiple_type_serialization(self):

    argument = SerializableArgument(NodeState, Deployment)
    objects = [_TEST_DEPLOYMENT, NODE_STATE]
    serialized = list((argument.toString(o) for o in objects))
    unserialized = list((argument.fromString(s) for s in serialized))
    self.assertEqual(objects, unserialized)
