def test_patch_instance(self): class Foo(object): che = 6 def bar(self): return 5 def mock_bar(self): return 2 f = Foo() self.assertEqual(5, f.bar()) self.assertEqual(6, f.che) fm = testdata.patch_instance( f, bar=mock_bar, che=7 ) self.assertEqual(2, fm.bar()) self.assertEqual(7, fm.che) self.assertEqual(2, f.bar()) self.assertEqual(7, f.che) f = Foo() self.assertEqual(5, f.bar()) self.assertEqual(6, f.che) fm = testdata.patch(f, bar=mock_bar, che=7) self.assertEqual(2, fm.bar()) self.assertEqual(7, fm.che)
def test_patch_instance_property(self): class Foo(object): @property def bar(self): return 1 f = Foo() fm = testdata.patch_instance( f, bar=2 ) self.assertEqual(2, fm.bar) self.assertEqual(2, f.bar) f2 = Foo() self.assertEqual(1, f2.bar)