示例#1
0
 def test_serialize_policy(self):
     p = Policy.loads(policy_yaml)
     self.assertEqual(p[0].tag, ALPHA)
     self.assertEqual(p[0].block, "diego/geom2(branch1)")
     self.assertEqual(p[1].tag, BETA)
     self.assertEqual(p[1].block, "diego/geom")
     d = p.serialize()
     p2 = Policy.deserialize(d)
     self.assertEqual(p, p2)
示例#2
0
 def deserialize(data):
     '''From dictionary to object FinderRequest'''
     ret = FinderRequest()
     ret.block_names = SetDeserializer(BlockName).deserialize(data[FinderRequest.SERIAL_TRACKING_KEY])
     ret.existing = ReferencedDependencies.deserialize(data[FinderRequest.SERIAL_EXISTING_KEY])
     ret.unresolved = SetDeserializer(Declaration).deserialize(data[FinderRequest.SERIAL_UNRESOLVED_KEY])
     ret.policy = Policy.deserialize(data[FinderRequest.SERIAL_POLICY])
     criteria = data[FinderRequest.SERIAL_CRITERIA]
     ret.find, ret.update, ret.downgrade, ret.modify = criteria
     ret.existing_common_table = BlockVersionTable.deserialize(data[FinderRequest.SERIAL_DEP_COMMON_TABLE])
     return ret