summary refs log tree commit diff stats
path: root/test/all_benchmarks.py
diff options
context:
space:
mode:
authorhut <hut@lavabit.com>2010-06-18 11:44:53 +0200
committerhut <hut@lavabit.com>2010-06-18 11:47:08 +0200
commit26962ded19264ae1885386783c861d002d8fd1dc (patch)
tree51e4a017b16ec02b394e3eee03dc2efc48219d6a /test/all_benchmarks.py
parentea62273c39fc5aa67d76f0f297ed49d3a49bee5d (diff)
downloadranger-26962ded19264ae1885386783c861d002d8fd1dc.tar.gz
all_benchmarks: shortened
Diffstat (limited to 'test/all_benchmarks.py')
-rwxr-xr-xtest/all_benchmarks.py17
1 files changed, 8 insertions, 9 deletions
diff --git a/test/all_benchmarks.py b/test/all_benchmarks.py
index e1b47142..20f11ad8 100755
--- a/test/all_benchmarks.py
+++ b/test/all_benchmarks.py
@@ -30,15 +30,7 @@ if __name__ == '__main__':
 	modules = (fname[:-3] for fname in os.listdir(sys.path[0]) \
 			if fname[:3] == 'bm_' and fname[-3:] == '.py')
 
-	benchmarks = []  # find all benchmark (class, methodname) pairs
-	for val in [__import__(module) for module in modules]:
-		for cls in vars(val).values():
-			if type(cls) == type:
-				for methodname in vars(cls):
-					if methodname.startswith('bm_'):
-						benchmarks.append((cls, methodname))
-
-	for cls, methodname in benchmarks:
+	def run_benchmark(cls, methodname):
 		full_method_name = "{0}.{1}".format(cls.__name__, methodname)
 		if all(re.search(full_method_name) for re in regexes):
 			method = getattr(cls(), methodname)
@@ -51,3 +43,10 @@ if __name__ == '__main__':
 			else:
 				t2 = time.time()
 				print("{0:60}: {1:10}s".format(full_method_name, t2 - t1))
+
+	for val in [__import__(module) for module in modules]:
+		for cls in vars(val).values():
+			if type(cls) == type:
+				for methodname in vars(cls):
+					if methodname.startswith('bm_'):
+						run_benchmark(cls, methodname)