示例#1
0
def test_contains(min_items=2, max_items=1000):
    items = KeypoolDict()

    for i in xrange(0, MAX_ITER):
        rand = random.randint(min_items, max_items)
        keys = [items.setitem(i) for i in xrange(0, rand)]

        assert all([key in items for key in keys])
示例#2
0
def test_quick_allocate():
    items = KeypoolDict()
    min = 2
    max = 10

    for i in xrange(0, MAX_ITER):
        rand = random.randint(min, max)
        keys = [items.setitem(i) for i in xrange(0, rand)]
        assert_unique(keys)
示例#3
0
def test_reuse(min_items=2, max_items=1000):
    items = KeypoolDict()

    for i in xrange(0, MAX_ITER):
        rand = random.randint(min_items, max_items)
        keys = [items.setitem(i) for i in xrange(0, rand)]

        # No keys are identical
        assert_unique(keys)

        # Delete all the items
        [delitem(items, key) for key in items.keys()]

        # The old keys are now reused
        keys2 = [items.setitem(i) for i in xrange(0, rand)]

        assert keys == keys2
        assert_unique(keys)

        [delitem(items, key) for key in items.keys()]