def test_eq(self): obj1 = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}}) obj2 = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}}) obj3 = jsonobj.JSONobj({'key0': 'value0', 'key2': {'foo': 'bar'}}) self.assertEqual(obj1, obj2) self.assertEqual(obj1, {'key1': 'value1', 'key2': {'foo': 'bar'}}) self.assertNotEqual(obj1, obj3)
def test_getattr(self): obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}}) self.assertEqual(obj.key1, 'value1') self.assertIsInstance(obj.key2, jsonobj.JSONobj) self.assertEqual(obj.key2.foo, 'bar') with self.assertRaises(KeyError): obj.key3
def test_contains(self): array = jsonobj.JSONarray(['value1', {'foo': 'bar'}]) self.assertIn('value1', array) self.assertIn({'foo': 'bar'}, array) self.assertIn(jsonobj.JSONobj({'foo': 'bar'}), array) self.assertNotIn('value2', array)
def test_str(self): obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}}) self.assertEqual(str(obj), '{"key1": "value1", "key2": {"foo": "bar"}}')
def test_repr(self): obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}}) self.assertEqual(eval(repr(obj)), obj)
def test_delattr(self): obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}}) del obj.key1 self.assertNotIn('key1', obj)
def test_setattr(self): obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}}) obj.key1 = 'update' self.assertEqual(obj.key1, 'update') obj.key3 = 'new' self.assertEqual(obj.key3, 'new')
def test_iter(self): obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}}) array = [e for e in obj] self.assertEqual(array, ['key1', 'key2'])
def test_contains(self): obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}}) self.assertIn('key1', obj) self.assertIn('key2', obj) self.assertNotIn('key3', obj)
def test_len(self): obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}}) self.assertEqual(len(obj), 2)
def test_count(self): array = jsonobj.JSONarray(['value1', {'foo': 'bar'}]) self.assertEqual(array.count('value1'), 1) self.assertEqual(array.count(jsonobj.JSONobj({'foo': 'bar'})), 1) self.assertEqual(array.count('value2'), 0)
def test_reversed(self): array = jsonobj.JSONarray(['value1', {'foo': 'bar'}]) r = [e for e in reversed(array)] self.assertEqual(r[1], 'value1') self.assertIsInstance(r[0], jsonobj.JSONobj) self.assertEqual(r[0], jsonobj.JSONobj({'foo': 'bar'}))
def test_iter(self): array = jsonobj.JSONarray(['value1', {'foo': 'bar'}]) a = [e for e in array] self.assertEqual(a[0], 'value1') self.assertIsInstance(a[1], jsonobj.JSONobj) self.assertEqual(a[1], jsonobj.JSONobj({'foo': 'bar'}))