def test_create_with_no_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)
     with self.assertRaisesRegex(TypeError,
                                 'No type defined for EmbeddedManager'):
         lm.create(id=5, name='CREATED')
 def test_create_with_no_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)
     with self.assertRaises(ValueError):
         created = lm.create(id=5, name='CREATED')
 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)