示例#1
0
 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)
示例#2
0
 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
示例#3
0
 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)
示例#4
0
 def test_str(self):
     obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}})
     self.assertEqual(str(obj),
                      '{"key1": "value1", "key2": {"foo": "bar"}}')
示例#5
0
 def test_repr(self):
     obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}})
     self.assertEqual(eval(repr(obj)), obj)
示例#6
0
 def test_delattr(self):
     obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}})
     del obj.key1
     self.assertNotIn('key1', obj)
示例#7
0
 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')
示例#8
0
 def test_iter(self):
     obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}})
     array = [e for e in obj]
     self.assertEqual(array, ['key1', 'key2'])
示例#9
0
 def test_contains(self):
     obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}})
     self.assertIn('key1', obj)
     self.assertIn('key2', obj)
     self.assertNotIn('key3', obj)
示例#10
0
 def test_len(self):
     obj = jsonobj.JSONobj({'key1': 'value1', 'key2': {'foo': 'bar'}})
     self.assertEqual(len(obj), 2)
示例#11
0
 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)
示例#12
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'}))
示例#13
0
 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'}))