def testSettingClassMethod(self): c = Controller() class MethodTarget(object): def m(self): pass mt = MethodTarget() c.override(mt, 'm', lambda(x): x)
def testOverrideOfOneItem(self): """Verify override stores and replays""" c = Controller() x = KlassBeingMocked() x.f = 38 c.override(x, 'f', 5) self.failUnless(x.f == 5) c.restore() self.failUnless(x.f == 38)
def testOverrideWithImplicitMock(self): """Verify override stores and replays""" c = Controller() x = KlassBeingMocked() x.f = 38 c.override(x, 'f') x.f(35) c.replay() self.failUnlessRaises(Exception, c.verify) x.f(35) c.verify() c.restore() self.failUnless(x.f == 38)
def testOverrideOfTwoItems(self): """Verify override stores and replays for multiple items""" c = Controller() x = KlassBeingMocked() y = KlassBeingMocked() x.f = 38 y.g = 39 c.override(x, 'f', 5) c.override(y, 'g', 6) self.failUnless(x.f == 5) self.failUnless(y.g == 6) c.restore() self.failUnless(x.f == 38) self.failUnless(y.g == 39)
def testOverrideModule(self): """Verify that overriding a module works""" c = Controller() c.override(os, 'getsid', classmethod(c.mock())) c.restore()