annotate PerfsDb/Run.py @ 161:27b3b0df5f90

2 upload tests
author am@osimis.io
date Fri, 17 Aug 2018 17:24:11 +0200
parents 6995d5d12d88
children dbc42a03ee75
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
1 import argparse
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
2 import fnmatch
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
3
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
4 from ConfigFileBuilder import ConfigFileBuilder
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
5 from TestConfig import TestConfig
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
6 from Tests import *
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
7 from DbServer import DbServer
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
8 from DbType import DbType
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
9 from DbSize import DbSize
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
10
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
11
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
12 allTestConfigs = [
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
13 TestConfig(label= "mysql-small", dbSize=DbSize.Small, dbServer=DbServer(dbType=DbType.MySQL, port=2000)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
14 TestConfig(label= "pg9-small", dbSize=DbSize.Small, dbServer=DbServer(dbType=DbType.PG9, port=2001)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
15 TestConfig(label= "pg10-small", dbSize=DbSize.Small, dbServer=DbServer(dbType=DbType.PG10, port=2002)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
16 TestConfig(label= "pg11-small", dbSize=DbSize.Small, dbServer=DbServer(dbType=DbType.PG11, port=2003)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
17 TestConfig(label= "mssql-small", dbSize=DbSize.Small, dbServer=DbServer(dbType=DbType.MSSQL, port=2004)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
18 TestConfig(label= "sqlite-small", dbSize=DbSize.Small, dbType=DbType.Sqlite),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
19 TestConfig(label= "sqliteplugin-small", dbSize=DbSize.Small, dbType=DbType.SqlitePlugin),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
20
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
21 TestConfig(label= "mysql-tiny", dbSize=DbSize.Tiny, dbServer=DbServer(dbType=DbType.MySQL, port=3000)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
22 TestConfig(label= "pg9-tiny", dbSize=DbSize.Tiny, dbServer=DbServer(dbType=DbType.PG9, port=3001)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
23 TestConfig(label= "pg10-tiny", dbSize=DbSize.Tiny, dbServer=DbServer(dbType=DbType.PG10, port=3002)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
24 TestConfig(label= "pg11-tiny", dbSize=DbSize.Tiny, dbServer=DbServer(dbType=DbType.PG11, port=3003)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
25 TestConfig(label= "mssql-tiny", dbSize=DbSize.Tiny, dbServer=DbServer(dbType=DbType.MSSQL, port=3004)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
26 TestConfig(label= "sqlite-tiny", dbSize=DbSize.Tiny, dbType=DbType.Sqlite),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
27 TestConfig(label= "sqliteplugin-tiny", dbSize=DbSize.Tiny, dbType=DbType.SqlitePlugin),
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
28
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
29 TestConfig(label= "mysql-medium", dbSize=DbSize.Medium, dbServer=DbServer(dbType=DbType.MySQL, port=4000)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
30 TestConfig(label= "pg9-medium", dbSize=DbSize.Medium, dbServer=DbServer(dbType=DbType.PG9, port=4001)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
31 TestConfig(label= "pg10-medium", dbSize=DbSize.Medium, dbServer=DbServer(dbType=DbType.PG10, port=4002)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
32 TestConfig(label= "pg11-medium", dbSize=DbSize.Medium, dbServer=DbServer(dbType=DbType.PG11, port=4003)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
33 TestConfig(label= "mssql-medium", dbSize=DbSize.Medium, dbServer=DbServer(dbType=DbType.MSSQL, port=4004)),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
34 TestConfig(label= "sqlite-medium", dbSize=DbSize.Medium, dbType=DbType.Sqlite),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
35 TestConfig(label= "sqliteplugin-medium", dbSize=DbSize.Medium, dbType=DbType.SqlitePlugin),
161
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
36
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
37 TestConfig(label= "mysql-large", dbSize=DbSize.Large, dbServer=DbServer(dbType=DbType.MySQL, port=5000)),
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
38 TestConfig(label= "pg9-large", dbSize=DbSize.Large, dbServer=DbServer(dbType=DbType.PG9, port=5001)),
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
39 TestConfig(label= "pg10-large", dbSize=DbSize.Large, dbServer=DbServer(dbType=DbType.PG10, port=5002)),
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
40 TestConfig(label= "pg11-large", dbSize=DbSize.Large, dbServer=DbServer(dbType=DbType.PG11, port=5003)),
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
41 TestConfig(label= "mssql-large", dbSize=DbSize.Large, dbServer=DbServer(dbType=DbType.MSSQL, port=5004)),
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
42 TestConfig(label= "sqlite-large", dbSize=DbSize.Large, dbType=DbType.Sqlite),
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
43 TestConfig(label= "sqliteplugin-large", dbSize=DbSize.Large, dbType=DbType.SqlitePlugin),
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
44 ]
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
45
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
46 allTests = [
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
47 TestStatistics(),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
48 TestFindStudyByStudyDescription1Result(),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
49 TestFindStudyByPatientId1Result(),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
50 TestFindStudyByStudyDescription0Results(),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
51 TestFindStudyByPatientId0Results(),
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
52 TestFindStudyByPatientId5Results(),
161
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
53 TestUploadNextPatientFile(),
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
54 TestUploadFirstPatientFile(),
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
55 ]
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
56
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
57 selectedTestConfigs = []
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
58 selectedTests = []
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
59
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
60 parser = argparse.ArgumentParser(description = "Initializes/Runs/Clears PerfsDb setup.")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
61
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
62 # create a cli option for each config
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
63 for testConfig in allTestConfigs:
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
64 parser.add_argument("--" + testConfig.label, action = "store_true")
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
65
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
66 parser.add_argument("--init", help = "initializes DBs", action = "store_true")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
67 parser.add_argument("--run", help = "runs tests", action = "store_true")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
68 parser.add_argument("--clear", help = "clear DBs", action = "store_true")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
69
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
70 parser.add_argument("--orthanc-path", help = "path to the folder containing Orthanc executable", default=".")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
71 parser.add_argument("--plugins-path", help = "path to the folder containing Orthanc executable", default=".")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
72 parser.add_argument("--repeat", help = "number of times to repeat each test to average timings", type=int, default=50)
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
73 parser.add_argument("--test-filter", help = "filter tests by names (wildcards are allowed)", default="*")
161
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
74 parser.add_argument("--verbose", help = "start Orthanc in verbose mode", action = "store_true")
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
75 parser.add_argument("--trace", help = "start Orthanc in trace mode", action = "store_true")
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
76
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
77 args = parser.parse_args()
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
78
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
79 for testConfig in allTestConfigs:
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
80 if args.__dict__[testConfig.label.replace("-", "_")]:
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
81 selectedTestConfigs.append(testConfig)
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
82
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
83 # if no test config specified, take them all
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
84 if len(selectedTestConfigs) == 0:
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
85 selectedTestConfigs = allTestConfigs
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
86
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
87 selectedTestConfigs.sort(key=lambda x: x.label)
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
88
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
89 # filter tests
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
90 for test in allTests:
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
91 if fnmatch.fnmatch(test.name, args.test_filter):
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
92 selectedTests.append(test)
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
93
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
94 selectedTests.sort(key=lambda x: x.name)
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
95
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
96 # if no action specified, it means only run
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
97 if not (args.init | args.run | args.clear):
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
98 args.init = False
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
99 args.run = True
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
100 args.clear = False
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
101
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
102 print("***** Orthanc *******")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
103 print("path :", args.orthanc_path)
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
104
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
105 results = {}
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
106
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
107 for testConfig in selectedTestConfigs:
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
108 testConfig.setRepeatCount(args.repeat)
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
109
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
110 print("======= " + testConfig.label + " ========")
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
111
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
112 if args.clear:
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
113 print("** Clearing Db")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
114 testConfig.clearDb()
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
115
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
116 if args.init or args.run:
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
117 print("** Generating config files")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
118 testConfig.generateOrthancConfigurationFile(args.plugins_path)
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
119
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
120 print("** Launching DbServer")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
121 testConfig.launchDbServer()
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
122
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
123 print("** Launching Orthanc")
161
27b3b0df5f90 2 upload tests
am@osimis.io
parents: 160
diff changeset
124 orthancWasAlreadyRunning = not testConfig.launchOrthanc(args.orthanc_path, verboseEnabled=args.verbose, traceEnabled=args.trace)
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
125 if orthancWasAlreadyRunning and len(selectedTestConfigs) > 1:
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
126 print("Error: Can't execute multiple configuration on already running Orthanc. Exit Orthanc and let this script start Orthanc instances")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
127 exit(-1)
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
128
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
129 if args.init:
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
130 testConfig.initializeDb()
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
131
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
132 if args.run:
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
133 print("** Runnnig tests")
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
134 results[testConfig.label] = testConfig.runTests(selectedTests)
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
135
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
136 print("** Stopping Orthanc")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
137 testConfig.stopOrthanc()
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
138
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
139 print("++++++++++++++ results summary +++++++++++++++")
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
140 testNames = set()
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
141 resultsByTestName = {}
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
142 for configName, configResult in results.items():
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
143 for result in configResult:
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
144 testNames.add(result.name)
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
145 if not result.name in resultsByTestName:
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
146 resultsByTestName[result.name] = {}
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
147 resultsByTestName[result.name][configName] = result
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
148
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
149 headerLine = "{empty:<40}|".format(empty="")
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
150 for testConfig in selectedTestConfigs:
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
151 headerLine += "{configName:^15}|".format(configName=testConfig.label)
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
152
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
153 print(headerLine)
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
154
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
155 for testName in sorted(testNames):
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
156 resultLine = "{name:<40}|".format(name=testName)
160
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
157 for testConfig in selectedTestConfigs:
6995d5d12d88 filtering tests
am@osimis.io
parents: 158
diff changeset
158 resultLine += "{avg:>11.2f} ms |".format(avg = resultsByTestName[testName][testConfig.label].averageTimeInMs)
158
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
159 print(resultLine)
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
160
df1f9946571c perfs db continued: tests working with tiny DBs on all setup but the sqliteplugin
am@osimis.io
parents:
diff changeset
161 print("** Done")