def test5_full_integration_test_missing_from_dict(self):
     test_dict = {
         'foo': 'bar',
         'aaa': 'bbb',
         'ccc': 'bbb',
         'zzz': 'zzz',
     }
     compare_dict = {
         'foo': 'foo',
         'aaa': 'aaa',
         'ccc': 'ccc',
         'yyy': 'yyy',
         'zzz': 'zzz',
     }
     setattr(self.gen_obj, 'foo', 'bar')
     setattr(self.gen_obj, 'aaa', 'zzz')
     setattr(self.gen_obj, 'ccc', 'ddd')
     setattr(self.gen_obj, 'yyy', 'yyy')
     dod = DictObjectDiffer(test_dict, self.gen_obj, compare_dict)
     dod.compare()
     self.assertEqual(dod.dict_difference, {
         'ccc': 'ddd',
         'aaa': 'zzz',
     })
     self.assertEqual(dod.object_difference, {
         'aaa': 'bbb',
         'ccc': 'bbb',
     })
     self.assertEqual(dod.missing_from_dict, {
         'yyy': 'yyy',
     })
     self.assertEqual(dod.missing_from_object, {
         'zzz': 'zzz',
     })
 def test6_dict_missing_key(self):
     test_dict = {
         'foo': 'bar',
     }
     setattr(self.gen_obj, 'doesntexistindict', 'baz')
     dod = DictObjectDiffer(test_dict, self.gen_obj, {'doesntexistindict': 'foo'})
     missing_from_object = dod._missing_from_object()
     self.assertEqual(missing_from_object, {'doesntexistindict': ''})
 def test1_object_equals_dict(self):
     test_dict = {
         'foo': 'foo'
     }
     """ We haven't added a foo attribute to our gen_obj
         so dod.missing_from_object should include {'foo': 'bar'}
     """
     setattr(self.gen_obj, 'foo', 'foo')
     dod = DictObjectDiffer(test_dict, self.gen_obj, {'foo': 'foo'})
     self.assertEqual(
         dod._missing_from_object(test_dict, self.gen_obj, {'foo': 'foo'}),
         {}
     )
 def test4_object_and_dict_differ(self):
     test_dict = {
         'foo': 'bar',
     }
     setattr(self.gen_obj, 'foo', 'baz')
     dod = DictObjectDiffer(test_dict, self.gen_obj, {'foo': 'foo'})
     dict_difference, object_difference = \
         dod._compare_dict_to_object(
             test_dict, self.gen_obj,
             {'foo': 'foo'}
         )
     self.assertEqual(dict_difference, {'foo': 'baz'})
     self.assertEqual(object_difference, {'foo': 'bar'})