def test_nested_weaved(self): def plusone(self, what): return super(_class, self).ident(what) + 1 def plustwo(self, what): return super(_class2, self).ident(what) + 2 sobj = self.SimpleObject() prev = sobj.ident(99) with weaved(sobj, ident=plusone) as sobj: _class = sobj.__class__ with weaved(sobj, ident=plustwo) as sobj: _class2 = sobj.__class__ self.assertEqual(prev + 3, sobj.ident(99)) self.assertEqual(prev + 1, sobj.ident(99)) self.assertEqual(prev, sobj.ident(99))
def test_simple_substitution(self): def plusone(self, what): return super(_class, self).ident(what) + 1 sobj = self.SimpleObject() prev = sobj.ident(99) with weaved(sobj, ident=plusone) as sobj: _class = sobj.__class__ self.assertEqual(prev + 1, sobj.ident(99))