def test_dict_interface(self): op = InFlightOperations("test") self.assertEquals(list(op), []) self.assertRaises(KeyError, op.__getitem__, 1) self.assertRaises(KeyError, lambda: op[1]) self.assertRaises(KeyError, op.pop, 1) self.assertIdentical(op.get(1), None) self.assertIdentical(op.get(1, 2), 2) op[1] = w = defer.Deferred() self.assertEquals(list(op), [1]) self.assertIdentical(op[1], w) self.assertIdentical(op.get(1), w) self.assertRaises(KeyError, op.__setitem__, 1, defer.Deferred()) self.assertIdentical(op.pop(1), w) self.assertRaises(KeyError, op.pop, 1) op[1] = w self.assertEquals(op.popitem(), (1, w)) self.assertEquals(list(op), []) self.assertIdentical(op.setdefault(1, w), w) self.assertIdentical(op.setdefault(1, w), w)
def test_dict_interface(self): op = InFlightOperations('test') self.assertEquals(list(op), []) self.assertRaises(KeyError, op.__getitem__, 1) self.assertRaises(KeyError, lambda: op[1]) self.assertRaises(KeyError, op.pop, 1) self.assertIdentical(op.get(1), None) self.assertIdentical(op.get(1, 2), 2) op[1] = w = defer.Deferred() self.assertEquals(list(op), [1]) self.assertIdentical(op[1], w) self.assertIdentical(op.get(1), w) self.assertRaises(KeyError, op.__setitem__, 1, defer.Deferred()) self.assertIdentical(op.pop(1), w) self.assertRaises(KeyError, op.pop, 1) op[1] = w self.assertEquals(op.popitem(), (1, w)) self.assertEquals(list(op), []) self.assertIdentical(op.setdefault(1, w), w) self.assertIdentical(op.setdefault(1, w), w)
def test_context_single(self): op = InFlightOperations("test") with op(1) as w: self.assertEquals(list(op), [1]) self.assertIsInstance(w, defer.Deferred) self.assertIdentical(w, op[1]) self.assertIdentical(op.get(1), op[1]) self.assertEquals(list(op), []) with op(key=2, log=logging.getLogger(LOG_CATEGORY)): self.assertEquals(list(op), [2]) self.assertIsInstance(op.get(2), defer.Deferred) self.assertIdentical(op.get(2), op[2]) self.assertEquals(list(op), []) try: with op(None, logging.getLogger(LOG_CATEGORY)) as w: reactor.callLater(0, w.cancel) # @UndefinedVariable yield w.wait(timeout=None, fail=None) except CancelledError: pass else: raise self.assertEquals(list(op), []) try: with op(None, logging.getLogger(LOG_CATEGORY)) as w: reactor.callLater(0, w.errback, StompCancelledError("4711")) # @UndefinedVariable yield w.wait() except StompCancelledError as e: self.assertEquals(str(e), "4711") else: raise self.assertEquals(list(op), []) with op(None, logging.getLogger(LOG_CATEGORY)) as w: reactor.callLater(0, w.callback, 4711) # @UndefinedVariable result = yield w.wait() self.assertEquals(result, 4711) self.assertEquals(list(op), []) try: with op(None) as w: raise RuntimeError("hi") except RuntimeError: pass self.assertEquals(list(op), []) try: yield w except RuntimeError as e: self.assertEquals(str(e), "hi") else: raise try: with op(None) as w: d = w.wait() raise RuntimeError("hi") except RuntimeError: pass self.assertEquals(list(op), []) try: yield d except RuntimeError as e: self.assertEquals(str(e), "hi") else: pass
def test_context_single(self): op = InFlightOperations('test') with op(1) as w: self.assertEquals(list(op), [1]) self.assertIsInstance(w, defer.Deferred) self.assertIdentical(w, op[1]) self.assertIdentical(op.get(1), op[1]) self.assertEquals(list(op), []) with op(key=2, log=logging.getLogger(LOG_CATEGORY)): self.assertEquals(list(op), [2]) self.assertIsInstance(op.get(2), defer.Deferred) self.assertIdentical(op.get(2), op[2]) self.assertEquals(list(op), []) try: with op(None, logging.getLogger(LOG_CATEGORY)) as w: reactor.callLater(0, w.cancel) # @UndefinedVariable yield w.wait(timeout=None, fail=None) except CancelledError: pass else: raise self.assertEquals(list(op), []) try: with op(None, logging.getLogger(LOG_CATEGORY)) as w: reactor.callLater( 0, w.errback, StompCancelledError('4711')) # @UndefinedVariable yield w.wait() except StompCancelledError as e: self.assertEquals(str(e), '4711') else: raise self.assertEquals(list(op), []) with op(None, logging.getLogger(LOG_CATEGORY)) as w: reactor.callLater(0, w.callback, 4711) # @UndefinedVariable result = yield w.wait() self.assertEquals(result, 4711) self.assertEquals(list(op), []) try: with op(None) as w: raise RuntimeError('hi') except RuntimeError: pass self.assertEquals(list(op), []) try: yield w except RuntimeError as e: self.assertEquals(str(e), 'hi') else: raise try: with op(None) as w: d = w.wait() raise RuntimeError('hi') except RuntimeError: pass self.assertEquals(list(op), []) try: yield d except RuntimeError as e: self.assertEquals(str(e), 'hi') else: pass