diff options
author | hut <hut@lavabit.com> | 2010-04-29 16:14:50 +0200 |
---|---|---|
committer | hut <hut@lavabit.com> | 2010-04-29 19:23:37 +0200 |
commit | d76fd5b7666cd1e7b9ff4eb51a822e1ab41fac28 (patch) | |
tree | f6d53c1c9be06fb7320f43bed0ee4539aa74583f /all_benchmarks.py | |
parent | bb5bfad4426eac02d0d855dd7f6ccf8ed5cc84f9 (diff) | |
download | ranger-d76fd5b7666cd1e7b9ff4eb51a822e1ab41fac28.tar.gz |
Separated benchmark from testcase
Diffstat (limited to 'all_benchmarks.py')
-rwxr-xr-x | all_benchmarks.py | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/all_benchmarks.py b/all_benchmarks.py new file mode 100755 index 00000000..c03d0d92 --- /dev/null +++ b/all_benchmarks.py @@ -0,0 +1,31 @@ +#!/usr/bin/python +"""Run all the tests inside the test/ directory as a test suite.""" +if __name__ == '__main__': + from test import * + from time import time + from types import FunctionType as function + from sys import argv + bms = [] + try: + n = int(argv[1]) + except IndexError: + n = 10 + for key, val in vars().copy().items(): + if key.startswith('bm_'): + bms.extend(v for k,v in vars(val).items() if type(v) == type) + for bmclass in bms: + for attrname in vars(bmclass): + if not attrname.startswith('bm_'): + continue + bmobj = bmclass() + t1 = time() + method = getattr(bmobj, attrname) + methodname = "{0}.{1}".format(bmobj.__class__.__name__, method.__name__) + try: + method(n) + except: + print("{0} failed!".format(methodname)) + raise + else: + t2 = time() + print("{0:60}: {1:10}s".format(methodname, t2 - t1)) |