def test_get_async_param(self): """ L{twisted.python.compat._get_async_param} uses isAsync by default, or deprecated async keyword argument if isAsync is None. """ self.assertEqual(_get_async_param(isAsync=False), False) self.assertEqual(_get_async_param(isAsync=True), True) self.assertEqual(_get_async_param(isAsync=None, **{"async": False}), False) self.assertEqual(_get_async_param(isAsync=None, **{"async": True}), True) self.assertRaises(TypeError, _get_async_param, False, {"async": False})
def test_get_async_param_deprecation(self): """ L{twisted.python.compat._get_async_param} raises a deprecation warning if async keyword argument is passed. """ self.assertEqual(_get_async_param(isAsync=None, **{'async': False}), False) currentWarnings = self.flushWarnings( offendingFunctions=[self.test_get_async_param_deprecation]) self.assertEqual( currentWarnings[0]['message'], "'async' keyword argument is deprecated, please use isAsync")
def addOutput(self, data, isAsync=None, **kwargs): isAsync = _get_async_param(isAsync, **kwargs) if isAsync: self.terminal.eraseLine() self.terminal.cursorBackward(len(self.lineBuffer) + len(self.ps[self.pn])) self.terminal.write(data) if isAsync: if self._needsNewline(): self.terminal.nextLine() self.terminal.write(self.ps[self.pn]) if self.lineBuffer: oldBuffer = self.lineBuffer self.lineBuffer = [] self.lineBufferIndex = 0 self._deliverBuffer(oldBuffer)
def write(self, data, isAsync=None, **kwargs): isAsync = _get_async_param(isAsync, **kwargs) self.handler.addOutput(data, isAsync)