def test_putleft(): q = BlockingQueue() items = range(20) for i in items: q.putleft(i) assert len(q) == i+1 assert q.get() == i assert len(q) == i q.putleft(i) assert q.getmany() == list(reversed(items)) assert len(q) == 0
def test_maxsize(maxsize=5): q = BlockingQueue(maxsize=maxsize) assert q.maxsize == maxsize for i in xrange(maxsize): assert not q.is_full q.put(i) assert q.is_full assert len(q.getmany()) == maxsize assert not q.is_full q.putmany(range(maxsize)) assert q.is_full q.putleft(99, respectmaxsize=0) assert q.is_full assert len(q) == maxsize+1 assert q.get() == 99 assert q.is_full assert q._fsema.locked() # pylint: disable-msg=W0212 assert len(q.getmany()) == maxsize assert not q.is_full assert q.is_empty