import unittest from pyson.ObjectMapper import ObjectMapper from geniusweb.references.Parameters import Parameters class ParametersTest (unittest.TestCase) : pyson=ObjectMapper() params=Parameters({'a':1}) params1=Parameters({'a':1}) params2=Parameters() paramsjson={'a':1} def testGet(self): self.assertEqual({'a':1}, self.params.getParameters()) def testSerialize(self): print(str(self.pyson.toJson(self.params))) self.assertEqual(self.paramsjson, self.pyson.toJson(self.params)) def testDeserialize(self): self.assertEqual(self.params, self.pyson.parse(self.paramsjson, Parameters)) def testRepr(self): self.assertEqual("{'a': 1}", repr(self.params)) def testEqual(self): self.assertEqual(self.params, self.params1) self.assertNotEqual(self.params, self.params2) self.assertEqual(hash(self.params), hash(self.params1)) self.assertNotEqual(hash(self.params), hash(self.params2)) def testWith(self): p=self.params.With('b', 2) self.assertEqual({'a':1, 'b':2}, p.getParameters())