Commit c1c01b2c by Marek Kurdej

Handle the case when the argument name is an empty string.

parent 17e1c405
...@@ -153,12 +153,16 @@ bool BenchmarkFamilies::FindBenchmarks( ...@@ -153,12 +153,16 @@ bool BenchmarkFamilies::FindBenchmarks(
// Add arguments to instance name // Add arguments to instance name
size_t arg_i = 0; size_t arg_i = 0;
for (auto const& arg : args) { for (auto const& arg : args) {
instance.name += "/";
if (arg_i < family->arg_names_.size()) { if (arg_i < family->arg_names_.size()) {
instance.name += const auto& arg_name = family->arg_names_[arg_i];
StringPrintF("/%s:", family->arg_names_[arg_i].c_str()); if (!arg_name.empty()) {
} else { instance.name +=
instance.name += "/"; StringPrintF("%s:", family->arg_names_[arg_i].c_str());
}
} }
AppendHumanReadable(arg, &instance.name); AppendHumanReadable(arg, &instance.name);
++arg_i; ++arg_i;
} }
......
...@@ -86,10 +86,11 @@ void BM_arg_names(benchmark::State& state) { ...@@ -86,10 +86,11 @@ void BM_arg_names(benchmark::State& state) {
while (state.KeepRunning()) { while (state.KeepRunning()) {
} }
} }
BENCHMARK(BM_arg_names)->Args({2, 4})->ArgNames({"first", "second"}); BENCHMARK(BM_arg_names)->Args({2, 5, 4})->ArgNames({"first", "", "third"});
ADD_CASES(TC_ConsoleOut, {{"^BM_arg_names/first:2/second:4 %console_report$"}}); ADD_CASES(TC_ConsoleOut,
ADD_CASES(TC_JSONOut, {{"\"name\": \"BM_arg_names/first:2/second:4\",$"}}); {{"^BM_arg_names/first:2/5/third:4 %console_report$"}});
ADD_CASES(TC_CSVOut, {{"^\"BM_arg_names/first:2/second:4\",%csv_report$"}}); ADD_CASES(TC_JSONOut, {{"\"name\": \"BM_arg_names/first:2/5/third:4\",$"}});
ADD_CASES(TC_CSVOut, {{"^\"BM_arg_names/first:2/5/third:4\",%csv_report$"}});
// ========================================================================= // // ========================================================================= //
// ----------------------- Testing Complexity Output ----------------------- // // ----------------------- Testing Complexity Output ----------------------- //
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment