import unittest from pyson.ObjectMapper import ObjectMapper from geniusweb.party.Capabilities import Capabilities class PartyTest(unittest.TestCase): pyson = ObjectMapper() cap= Capabilities( set([ "SAOP"]), set(['geniusweb.profile.utilityspace.LinearAdditive'])) cap1= Capabilities( set([ "SAOP"]), set(['geniusweb.profile.utilityspace.LinearAdditive'])) cap2= Capabilities( set([ "SHAOP"]), set(['geniusweb.profile.utilityspace.LinearAdditive'])) cap3= Capabilities( set([ "SAOP"]), set(['geniusweb.profile.Profile'])) capjson= {"behaviours":["SAOP"], "profiles":["geniusweb.profile.utilityspace.LinearAdditive"]} def testSerialize(self): print(str(self.pyson.toJson(self.cap))) self.assertEqual(self.capjson, self.pyson.toJson(self.cap)) def testDeserialize(self): self.assertEqual(self.cap, self.pyson.parse(self.capjson, Capabilities)) def testRepr(self): self.assertEqual("Capabilities[{'geniusweb.profile.utilityspace.LinearAdditive'},{'SAOP'}]", repr(self.cap)) def testEqual(self): self.assertEqual(self.cap, self.cap1) self.assertNotEqual(self.cap, self.cap2) self.assertNotEqual(self.cap, self.cap3) self.assertEqual(hash(self.cap), hash(self.cap1)) self.assertNotEqual(hash(self.cap), hash(self.cap2)) self.assertNotEqual(hash(self.cap), hash(self.cap3))