@@ -62,12 +62,13 @@ class LeaksRunnerResult(perf_test_driver.Result):
62
62
63
63
64
64
class LeaksRunnerBenchmarkDriver (perf_test_driver .BenchmarkDriver ):
65
- def __init__ (self , binary , xfail_list , num_samples , num_iters ):
65
+ def __init__ (self , binary , xfail_list , num_samples , num_iters , verbose ):
66
66
perf_test_driver .BenchmarkDriver .__init__ (
67
67
self , binary , xfail_list , enable_parallel = True
68
68
)
69
69
self .num_samples = num_samples
70
70
self .num_iters = num_iters
71
+ self .verbose = verbose
71
72
72
73
def print_data_header (self , max_test_len ):
73
74
fmt = "{:<%d}{:<10}{:}" % (max_test_len + 5 )
@@ -120,6 +121,13 @@ class LeaksRunnerBenchmarkDriver(perf_test_driver.BenchmarkDriver):
120
121
]
121
122
d ["objc_count" ] = len (d ["objc_objects" ])
122
123
124
+ # If we are asked to emit verbose output, do so now.
125
+ if self .verbose :
126
+ tmp = (data ["path" ], data ["test_name" ], d )
127
+ sys .stderr .write (
128
+ "VERBOSE (%s,%s): %s" % tmp )
129
+ sys .stderr .flush ()
130
+
123
131
total_count = d ["objc_count" ] + d ["swift_count" ]
124
132
return total_count
125
133
except Exception :
@@ -156,13 +164,17 @@ def parse_args():
156
164
)
157
165
parser .add_argument ("-num-samples" , type = int , default = 2 )
158
166
parser .add_argument ("-num-iters" , type = int , default = 2 )
167
+ parser .add_argument ("-v" , "--verbose" , action = "store_true" ,
168
+ help = "Upon failure, dump out raw result" ,
169
+ dest = "verbose" )
159
170
return parser .parse_args ()
160
171
161
172
162
173
if __name__ == "__main__" :
163
174
args = parse_args ()
164
175
driver = LeaksRunnerBenchmarkDriver (
165
- SWIFT_BIN_DIR , XFAIL_LIST , args .num_samples , args .num_iters
176
+ SWIFT_BIN_DIR , XFAIL_LIST , args .num_samples , args .num_iters ,
177
+ args .verbose
166
178
)
167
179
if driver .run (args .filter ):
168
180
sys .exit (0 )
0 commit comments