mirror of https://github.com/mahmoud/boltons.git
some basic gcutils tests
This commit is contained in:
parent
69e2209109
commit
4e253fa631
|
@ -0,0 +1,34 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
import sys
|
||||||
|
import time
|
||||||
|
|
||||||
|
|
||||||
|
if '__pypy__' not in sys.builtin_module_names:
|
||||||
|
# pypy's gc really is different
|
||||||
|
|
||||||
|
from boltons.gcutils import get_all, toggle_gc_postcollect
|
||||||
|
|
||||||
|
def test_get_all():
|
||||||
|
class TestType(object):
|
||||||
|
pass
|
||||||
|
|
||||||
|
tt = TestType()
|
||||||
|
|
||||||
|
assert len(get_all(TestType)) == 1
|
||||||
|
assert len(get_all(bool)) == 0
|
||||||
|
return
|
||||||
|
|
||||||
|
def test_toggle_gc_postcollect():
|
||||||
|
COUNT = int(1e6)
|
||||||
|
|
||||||
|
start = time.time()
|
||||||
|
with toggle_gc_postcollect:
|
||||||
|
x = [{} for x in range(COUNT)]
|
||||||
|
no_gc_time = time.time() - start
|
||||||
|
|
||||||
|
start = time.time()
|
||||||
|
x = [{} for x in range(COUNT)]
|
||||||
|
with_gc_time = time.time() - start
|
||||||
|
|
||||||
|
assert no_gc_time < with_gc_time
|
Loading…
Reference in New Issue