def test_alreadyInstalled(self): """ If a reactor is already installed, L{installReactor} raises L{ReactorAlreadyInstalledError}. """ with NoReactor(): installReactor(object()) self.assertRaises(ReactorAlreadyInstalledError, installReactor, object())
def test_installReactor(self): """ L{installReactor} installs a new reactor if none is present. """ with NoReactor(): newReactor = object() installReactor(newReactor) from twisted.internet import reactor self.assertIs(newReactor, reactor)
def test_defaultReactor(self): """ L{twisted.internet.reactor} is used if no reactor argument is passed to L{task.react}. """ def main(reactor): self.passedReactor = reactor return defer.succeed(None) reactor = _FakeReactor() with NoReactor(): installReactor(reactor) exitError = self.assertRaises(SystemExit, task.react, main, []) self.assertEqual(0, exitError.code) self.assertIdentical(reactor, self.passedReactor)
def __enter__(self): NoReactor.__enter__(self) import twisted.internet twisted.internet.reactor = self.alternate sys.modules['twisted.internet.reactor'] = self.alternate
def __init__(self, reactor): """ @param reactor: Any object to install as the global reactor. """ NoReactor.__init__(self) self.alternate = reactor