def test_get_item_from_dict(self): data = {'key1': 'a', 'key2': 'b', 'key3': 'c'} lm = EmbeddedManager(data) self.assertEqual('a', lm.get('key1')) self.assertEqual('b', lm.get('key2')) self.assertEqual('c', lm.get('key3')) with self.assertRaises(DoesNotExist): lm.get('key4')
def test_get_item(self): data = ['a', 'b', 'c'] lm = EmbeddedManager(data) self.assertEqual('a', lm.get('a')) self.assertEqual('b', lm.get('b')) self.assertEqual('c', lm.get('c')) with self.assertRaises(DoesNotExist): lm.get('z')
def test_get_with_keys_from_dict(self): data = { 'key1': Dummy(id=1, name='NAME_A'), 'key2': Dummy(id=2, name='NAME_A'), 'key3': Dummy(id=3, name='NAME_B'), 'key4': Dummy(id=4, name='NAME_B') } lm = EmbeddedManager(data) self.assertTrue(isinstance(lm.get(id=1, name='NAME_A'), Dummy)) self.assertEqual(1, lm.get(id=1, name='NAME_A').id) self.assertEqual('NAME_A', lm.get(id=1, name='NAME_A').name) with self.assertRaises(DoesNotExist): lm.get(id=3, name='NAME_A')
def test_get_with_keys(self): data = [ Dummy(id=1, name='NAME_A'), Dummy(id=2, name='NAME_A'), Dummy(id=3, name='NAME_B'), Dummy(id=4, name='NAME_B') ] lm = EmbeddedManager(data) self.assertTrue(isinstance(lm.get(id=1, name='NAME_A'), Dummy)) self.assertEqual(1, lm.get(id=1, name='NAME_A').id) self.assertEqual('NAME_A', lm.get(id=1, name='NAME_A').name) with self.assertRaises(DoesNotExist): lm.get(id=3, name='NAME_A')
def test_append(self): data = [ Dummy(id=1, name='NAME_A'), Dummy(id=2, name='NAME_A'), Dummy(id=3, name='NAME_B'), Dummy(id=4, name='NAME_B') ] lm = EmbeddedManager(data) lm.append(Dummy(id=5, name='NAME_C')) self.assertEqual(5, len(lm)) self.assertEqual(5, lm.get(id=5).id) self.assertEqual('NAME_C', lm.get(id=5).name) self.assertEqual(1, len(lm.filter(name='NAME_C'))) self.assertEqual(5, lm.filter(name='NAME_C')[0].id) self.assertEqual('NAME_C', lm.filter(name='NAME_C')[0].name)
def test_get_from_dict_with_field(self): data = { 'key1': Dummy(id=1, name='NAME_A', check='NAME_X'), 'key2': Dummy(id=2, name='NAME_A', check='NAME_A'), 'key3': Dummy(id=3, name='NAME_B', check='NAME_X'), 'key4': Dummy(id=4, name='NAME_B', check='NAME_X'), 'key5': Dummy(id=5, name='NAME_B', check='NAME_B'), 'key6': Dummy(id=6, name='NAME_B', check='NAME_B') } lm = EmbeddedManager(data, type=Dummy) self.assertEqual(2, lm.get(name=F('check')).id)
def test_get_with_field(self): data = [ Dummy(id=1, name='NAME_A', check='NAME_X'), Dummy(id=2, name='NAME_A', check='NAME_A'), Dummy(id=3, name='NAME_B', check='NAME_X'), Dummy(id=4, name='NAME_B', check='NAME_X'), Dummy(id=5, name='NAME_B', check='NAME_B'), Dummy(id=6, name='NAME_B', check='NAME_B') ] lm = EmbeddedManager(data, type=Dummy) self.assertEqual(2, lm.get(name=F('check')).id)
def test_update(self): data = { 'key1': Dummy(id=1, name='NAME_A'), 'key2': Dummy(id=2, name='NAME_A'), 'key3': Dummy(id=3, name='NAME_B'), 'key4': Dummy(id=4, name='NAME_B') } lm = EmbeddedManager(data) lm.update({ 'key4': Dummy(id=5, name='NAME_C'), 'key5': Dummy(id=6, name='NAME_C'), }) self.assertEqual(5, len(lm)) self.assertEqual(5, lm.get('key4').id) self.assertEqual('NAME_C', lm.get('key4').name) self.assertEqual(6, lm.get(id=6).id) self.assertEqual('NAME_C', lm.get('key5').name) self.assertEqual(2, len(lm.filter(name='NAME_C'))) self.assertEqual(5, lm.filter(name='NAME_C')['key4'].id) self.assertEqual('NAME_C', lm.filter(name='NAME_C')['key4'].name) self.assertEqual(6, lm.filter(name='NAME_C')['key5'].id) self.assertEqual('NAME_C', lm.filter(name='NAME_C')['key5'].name)
def test_create_with_key_in_dict_with_type(self): data = { 'key1': Dummy(id=1, name='NAME_A'), 'key2': Dummy(id=2, name='NAME_A'), 'key3': Dummy(id=3, name='NAME_B'), 'key4': Dummy(id=4, name='NAME_B') } lm = EmbeddedManager(data, type=Dummy) created = lm.create('key5', id=5, name='CREATED') self.assertIsNotNone(created) self.assertTrue(isinstance(created, Dummy)) self.assertEqual(5, created.id) self.assertEqual('CREATED', created.name) self.assertEqual(5, len(lm)) got = lm.get('key5') self.assertEqual(5, got.id) self.assertEqual('CREATED', got.name)
def test_create_with_type(self): data = [ Dummy(id=1, name='NAME_A'), Dummy(id=2, name='NAME_A'), Dummy(id=3, name='NAME_B'), Dummy(id=4, name='NAME_B') ] lm = EmbeddedManager(data, type=Dummy) created = lm.create(id=5, name='CREATED') self.assertIsNotNone(created) self.assertTrue(isinstance(created, Dummy)) self.assertEqual(5, created.id) self.assertEqual('CREATED', created.name) self.assertEqual(5, len(lm)) got = lm.get(id=5) self.assertEqual(5, got.id) self.assertEqual('CREATED', got.name)
def test_get_with_key_from_dict(self): data = { 'key1': Dummy(id=1, name='NAME_1'), 'key2': Dummy(id=2, name='NAME_2'), 'key3': Dummy(id=3, name='NAME_3') } lm = EmbeddedManager(data) self.assertTrue(isinstance(lm.get(id=1), Dummy)) self.assertEqual(1, lm.get(id=1).id) self.assertEqual('NAME_1', lm.get(id=1).name) self.assertTrue(isinstance(lm.get(id=2), Dummy)) self.assertEqual(2, lm.get(id=2).id) self.assertEqual('NAME_2', lm.get(id=2).name) self.assertTrue(isinstance(lm.get(id=3), Dummy)) self.assertEqual(3, lm.get(id=3).id) self.assertEqual('NAME_3', lm.get(id=3).name) with self.assertRaises(DoesNotExist): lm.get(id=4) with self.assertRaises(DoesNotExist): lm.get(xxx=1) self.assertTrue(isinstance(lm.get(name='NAME_1'), Dummy)) self.assertEqual(1, lm.get(name='NAME_1').id) self.assertEqual('NAME_1', lm.get(name='NAME_1').name)