1a8c51b3fSopenharmony_ci 2a8c51b3fSopenharmony_ci#include "benchmark/benchmark.h" 3a8c51b3fSopenharmony_ci#include "output_test.h" 4a8c51b3fSopenharmony_ci 5a8c51b3fSopenharmony_ci// ========================================================================= // 6a8c51b3fSopenharmony_ci// ------------------------ Testing Basic Output --------------------------- // 7a8c51b3fSopenharmony_ci// ========================================================================= // 8a8c51b3fSopenharmony_ci 9a8c51b3fSopenharmony_cistatic void BM_ExplicitRepetitions(benchmark::State& state) { 10a8c51b3fSopenharmony_ci for (auto _ : state) { 11a8c51b3fSopenharmony_ci } 12a8c51b3fSopenharmony_ci} 13a8c51b3fSopenharmony_ciBENCHMARK(BM_ExplicitRepetitions)->Repetitions(2); 14a8c51b3fSopenharmony_ci 15a8c51b3fSopenharmony_ciADD_CASES(TC_ConsoleOut, 16a8c51b3fSopenharmony_ci {{"^BM_ExplicitRepetitions/repeats:2 %console_report$"}}); 17a8c51b3fSopenharmony_ciADD_CASES(TC_ConsoleOut, 18a8c51b3fSopenharmony_ci {{"^BM_ExplicitRepetitions/repeats:2 %console_report$"}}); 19a8c51b3fSopenharmony_ciADD_CASES(TC_ConsoleOut, 20a8c51b3fSopenharmony_ci {{"^BM_ExplicitRepetitions/repeats:2_mean %console_report$"}}); 21a8c51b3fSopenharmony_ciADD_CASES(TC_ConsoleOut, 22a8c51b3fSopenharmony_ci {{"^BM_ExplicitRepetitions/repeats:2_median %console_report$"}}); 23a8c51b3fSopenharmony_ciADD_CASES(TC_ConsoleOut, 24a8c51b3fSopenharmony_ci {{"^BM_ExplicitRepetitions/repeats:2_stddev %console_report$"}}); 25a8c51b3fSopenharmony_ciADD_CASES(TC_JSONOut, 26a8c51b3fSopenharmony_ci {{"\"name\": \"BM_ExplicitRepetitions/repeats:2\",$"}, 27a8c51b3fSopenharmony_ci {"\"family_index\": 0,$", MR_Next}, 28a8c51b3fSopenharmony_ci {"\"per_family_instance_index\": 0,$", MR_Next}, 29a8c51b3fSopenharmony_ci {"\"run_name\": \"BM_ExplicitRepetitions/repeats:2\",$", MR_Next}, 30a8c51b3fSopenharmony_ci {"\"run_type\": \"iteration\",$", MR_Next}, 31a8c51b3fSopenharmony_ci {"\"repetitions\": 2,$", MR_Next}, 32a8c51b3fSopenharmony_ci {"\"repetition_index\": 0,$", MR_Next}, 33a8c51b3fSopenharmony_ci {"\"threads\": 1,$", MR_Next}, 34a8c51b3fSopenharmony_ci {"\"iterations\": %int,$", MR_Next}, 35a8c51b3fSopenharmony_ci {"\"real_time\": %float,$", MR_Next}, 36a8c51b3fSopenharmony_ci {"\"cpu_time\": %float,$", MR_Next}, 37a8c51b3fSopenharmony_ci {"\"time_unit\": \"ns\"$", MR_Next}, 38a8c51b3fSopenharmony_ci {"}", MR_Next}}); 39a8c51b3fSopenharmony_ciADD_CASES(TC_JSONOut, 40a8c51b3fSopenharmony_ci {{"\"name\": \"BM_ExplicitRepetitions/repeats:2\",$"}, 41a8c51b3fSopenharmony_ci {"\"family_index\": 0,$", MR_Next}, 42a8c51b3fSopenharmony_ci {"\"per_family_instance_index\": 0,$", MR_Next}, 43a8c51b3fSopenharmony_ci {"\"run_name\": \"BM_ExplicitRepetitions/repeats:2\",$", MR_Next}, 44a8c51b3fSopenharmony_ci {"\"run_type\": \"iteration\",$", MR_Next}, 45a8c51b3fSopenharmony_ci {"\"repetitions\": 2,$", MR_Next}, 46a8c51b3fSopenharmony_ci {"\"repetition_index\": 1,$", MR_Next}, 47a8c51b3fSopenharmony_ci {"\"threads\": 1,$", MR_Next}, 48a8c51b3fSopenharmony_ci {"\"iterations\": %int,$", MR_Next}, 49a8c51b3fSopenharmony_ci {"\"real_time\": %float,$", MR_Next}, 50a8c51b3fSopenharmony_ci {"\"cpu_time\": %float,$", MR_Next}, 51a8c51b3fSopenharmony_ci {"\"time_unit\": \"ns\"$", MR_Next}, 52a8c51b3fSopenharmony_ci {"}", MR_Next}}); 53a8c51b3fSopenharmony_ciADD_CASES(TC_JSONOut, 54a8c51b3fSopenharmony_ci {{"\"name\": \"BM_ExplicitRepetitions/repeats:2_mean\",$"}, 55a8c51b3fSopenharmony_ci {"\"family_index\": 0,$", MR_Next}, 56a8c51b3fSopenharmony_ci {"\"per_family_instance_index\": 0,$", MR_Next}, 57a8c51b3fSopenharmony_ci {"\"run_name\": \"BM_ExplicitRepetitions/repeats:2\",$", MR_Next}, 58a8c51b3fSopenharmony_ci {"\"run_type\": \"aggregate\",$", MR_Next}, 59a8c51b3fSopenharmony_ci {"\"repetitions\": 2,$", MR_Next}, 60a8c51b3fSopenharmony_ci {"\"threads\": 1,$", MR_Next}, 61a8c51b3fSopenharmony_ci {"\"aggregate_name\": \"mean\",$", MR_Next}, 62a8c51b3fSopenharmony_ci {"\"aggregate_unit\": \"time\",$", MR_Next}, 63a8c51b3fSopenharmony_ci {"\"iterations\": %int,$", MR_Next}, 64a8c51b3fSopenharmony_ci {"\"real_time\": %float,$", MR_Next}, 65a8c51b3fSopenharmony_ci {"\"cpu_time\": %float,$", MR_Next}, 66a8c51b3fSopenharmony_ci {"\"time_unit\": \"ns\"$", MR_Next}, 67a8c51b3fSopenharmony_ci {"}", MR_Next}}); 68a8c51b3fSopenharmony_ciADD_CASES(TC_JSONOut, 69a8c51b3fSopenharmony_ci {{"\"name\": \"BM_ExplicitRepetitions/repeats:2_median\",$"}, 70a8c51b3fSopenharmony_ci {"\"family_index\": 0,$", MR_Next}, 71a8c51b3fSopenharmony_ci {"\"per_family_instance_index\": 0,$", MR_Next}, 72a8c51b3fSopenharmony_ci {"\"run_name\": \"BM_ExplicitRepetitions/repeats:2\",$", MR_Next}, 73a8c51b3fSopenharmony_ci {"\"run_type\": \"aggregate\",$", MR_Next}, 74a8c51b3fSopenharmony_ci {"\"repetitions\": 2,$", MR_Next}, 75a8c51b3fSopenharmony_ci {"\"threads\": 1,$", MR_Next}, 76a8c51b3fSopenharmony_ci {"\"aggregate_name\": \"median\",$", MR_Next}, 77a8c51b3fSopenharmony_ci {"\"aggregate_unit\": \"time\",$", MR_Next}, 78a8c51b3fSopenharmony_ci {"\"iterations\": %int,$", MR_Next}, 79a8c51b3fSopenharmony_ci {"\"real_time\": %float,$", MR_Next}, 80a8c51b3fSopenharmony_ci {"\"cpu_time\": %float,$", MR_Next}, 81a8c51b3fSopenharmony_ci {"\"time_unit\": \"ns\"$", MR_Next}, 82a8c51b3fSopenharmony_ci {"}", MR_Next}}); 83a8c51b3fSopenharmony_ciADD_CASES(TC_JSONOut, 84a8c51b3fSopenharmony_ci {{"\"name\": \"BM_ExplicitRepetitions/repeats:2_stddev\",$"}, 85a8c51b3fSopenharmony_ci {"\"family_index\": 0,$", MR_Next}, 86a8c51b3fSopenharmony_ci {"\"per_family_instance_index\": 0,$", MR_Next}, 87a8c51b3fSopenharmony_ci {"\"run_name\": \"BM_ExplicitRepetitions/repeats:2\",$", MR_Next}, 88a8c51b3fSopenharmony_ci {"\"run_type\": \"aggregate\",$", MR_Next}, 89a8c51b3fSopenharmony_ci {"\"repetitions\": 2,$", MR_Next}, 90a8c51b3fSopenharmony_ci {"\"threads\": 1,$", MR_Next}, 91a8c51b3fSopenharmony_ci {"\"aggregate_name\": \"stddev\",$", MR_Next}, 92a8c51b3fSopenharmony_ci {"\"aggregate_unit\": \"time\",$", MR_Next}, 93a8c51b3fSopenharmony_ci {"\"iterations\": %int,$", MR_Next}, 94a8c51b3fSopenharmony_ci {"\"real_time\": %float,$", MR_Next}, 95a8c51b3fSopenharmony_ci {"\"cpu_time\": %float,$", MR_Next}, 96a8c51b3fSopenharmony_ci {"\"time_unit\": \"ns\"$", MR_Next}, 97a8c51b3fSopenharmony_ci {"}", MR_Next}}); 98a8c51b3fSopenharmony_ciADD_CASES(TC_CSVOut, {{"^\"BM_ExplicitRepetitions/repeats:2\",%csv_report$"}}); 99a8c51b3fSopenharmony_ciADD_CASES(TC_CSVOut, {{"^\"BM_ExplicitRepetitions/repeats:2\",%csv_report$"}}); 100a8c51b3fSopenharmony_ciADD_CASES(TC_CSVOut, 101a8c51b3fSopenharmony_ci {{"^\"BM_ExplicitRepetitions/repeats:2_mean\",%csv_report$"}}); 102a8c51b3fSopenharmony_ciADD_CASES(TC_CSVOut, 103a8c51b3fSopenharmony_ci {{"^\"BM_ExplicitRepetitions/repeats:2_median\",%csv_report$"}}); 104a8c51b3fSopenharmony_ciADD_CASES(TC_CSVOut, 105a8c51b3fSopenharmony_ci {{"^\"BM_ExplicitRepetitions/repeats:2_stddev\",%csv_report$"}}); 106a8c51b3fSopenharmony_ci 107a8c51b3fSopenharmony_ci// ========================================================================= // 108a8c51b3fSopenharmony_ci// ------------------------ Testing Basic Output --------------------------- // 109a8c51b3fSopenharmony_ci// ========================================================================= // 110a8c51b3fSopenharmony_ci 111a8c51b3fSopenharmony_cistatic void BM_ImplicitRepetitions(benchmark::State& state) { 112a8c51b3fSopenharmony_ci for (auto _ : state) { 113a8c51b3fSopenharmony_ci } 114a8c51b3fSopenharmony_ci} 115a8c51b3fSopenharmony_ciBENCHMARK(BM_ImplicitRepetitions); 116a8c51b3fSopenharmony_ci 117a8c51b3fSopenharmony_ciADD_CASES(TC_ConsoleOut, {{"^BM_ImplicitRepetitions %console_report$"}}); 118a8c51b3fSopenharmony_ciADD_CASES(TC_ConsoleOut, {{"^BM_ImplicitRepetitions %console_report$"}}); 119a8c51b3fSopenharmony_ciADD_CASES(TC_ConsoleOut, {{"^BM_ImplicitRepetitions %console_report$"}}); 120a8c51b3fSopenharmony_ciADD_CASES(TC_ConsoleOut, {{"^BM_ImplicitRepetitions_mean %console_report$"}}); 121a8c51b3fSopenharmony_ciADD_CASES(TC_ConsoleOut, {{"^BM_ImplicitRepetitions_median %console_report$"}}); 122a8c51b3fSopenharmony_ciADD_CASES(TC_ConsoleOut, {{"^BM_ImplicitRepetitions_stddev %console_report$"}}); 123a8c51b3fSopenharmony_ciADD_CASES(TC_JSONOut, {{"\"name\": \"BM_ImplicitRepetitions\",$"}, 124a8c51b3fSopenharmony_ci {"\"family_index\": 1,$", MR_Next}, 125a8c51b3fSopenharmony_ci {"\"per_family_instance_index\": 0,$", MR_Next}, 126a8c51b3fSopenharmony_ci {"\"run_name\": \"BM_ImplicitRepetitions\",$", MR_Next}, 127a8c51b3fSopenharmony_ci {"\"run_type\": \"iteration\",$", MR_Next}, 128a8c51b3fSopenharmony_ci {"\"repetitions\": 3,$", MR_Next}, 129a8c51b3fSopenharmony_ci {"\"repetition_index\": 0,$", MR_Next}, 130a8c51b3fSopenharmony_ci {"\"threads\": 1,$", MR_Next}, 131a8c51b3fSopenharmony_ci {"\"iterations\": %int,$", MR_Next}, 132a8c51b3fSopenharmony_ci {"\"real_time\": %float,$", MR_Next}, 133a8c51b3fSopenharmony_ci {"\"cpu_time\": %float,$", MR_Next}, 134a8c51b3fSopenharmony_ci {"\"time_unit\": \"ns\"$", MR_Next}, 135a8c51b3fSopenharmony_ci {"}", MR_Next}}); 136a8c51b3fSopenharmony_ciADD_CASES(TC_JSONOut, {{"\"name\": \"BM_ImplicitRepetitions\",$"}, 137a8c51b3fSopenharmony_ci {"\"family_index\": 1,$", MR_Next}, 138a8c51b3fSopenharmony_ci {"\"per_family_instance_index\": 0,$", MR_Next}, 139a8c51b3fSopenharmony_ci {"\"run_name\": \"BM_ImplicitRepetitions\",$", MR_Next}, 140a8c51b3fSopenharmony_ci {"\"run_type\": \"iteration\",$", MR_Next}, 141a8c51b3fSopenharmony_ci {"\"repetitions\": 3,$", MR_Next}, 142a8c51b3fSopenharmony_ci {"\"repetition_index\": 1,$", MR_Next}, 143a8c51b3fSopenharmony_ci {"\"threads\": 1,$", MR_Next}, 144a8c51b3fSopenharmony_ci {"\"iterations\": %int,$", MR_Next}, 145a8c51b3fSopenharmony_ci {"\"real_time\": %float,$", MR_Next}, 146a8c51b3fSopenharmony_ci {"\"cpu_time\": %float,$", MR_Next}, 147a8c51b3fSopenharmony_ci {"\"time_unit\": \"ns\"$", MR_Next}, 148a8c51b3fSopenharmony_ci {"}", MR_Next}}); 149a8c51b3fSopenharmony_ciADD_CASES(TC_JSONOut, {{"\"name\": \"BM_ImplicitRepetitions\",$"}, 150a8c51b3fSopenharmony_ci {"\"family_index\": 1,$", MR_Next}, 151a8c51b3fSopenharmony_ci {"\"per_family_instance_index\": 0,$", MR_Next}, 152a8c51b3fSopenharmony_ci {"\"run_name\": \"BM_ImplicitRepetitions\",$", MR_Next}, 153a8c51b3fSopenharmony_ci {"\"run_type\": \"iteration\",$", MR_Next}, 154a8c51b3fSopenharmony_ci {"\"repetitions\": 3,$", MR_Next}, 155a8c51b3fSopenharmony_ci {"\"repetition_index\": 2,$", MR_Next}, 156a8c51b3fSopenharmony_ci {"\"threads\": 1,$", MR_Next}, 157a8c51b3fSopenharmony_ci {"\"iterations\": %int,$", MR_Next}, 158a8c51b3fSopenharmony_ci {"\"real_time\": %float,$", MR_Next}, 159a8c51b3fSopenharmony_ci {"\"cpu_time\": %float,$", MR_Next}, 160a8c51b3fSopenharmony_ci {"\"time_unit\": \"ns\"$", MR_Next}, 161a8c51b3fSopenharmony_ci {"}", MR_Next}}); 162a8c51b3fSopenharmony_ciADD_CASES(TC_JSONOut, {{"\"name\": \"BM_ImplicitRepetitions_mean\",$"}, 163a8c51b3fSopenharmony_ci {"\"family_index\": 1,$", MR_Next}, 164a8c51b3fSopenharmony_ci {"\"per_family_instance_index\": 0,$", MR_Next}, 165a8c51b3fSopenharmony_ci {"\"run_name\": \"BM_ImplicitRepetitions\",$", MR_Next}, 166a8c51b3fSopenharmony_ci {"\"run_type\": \"aggregate\",$", MR_Next}, 167a8c51b3fSopenharmony_ci {"\"repetitions\": 3,$", MR_Next}, 168a8c51b3fSopenharmony_ci {"\"threads\": 1,$", MR_Next}, 169a8c51b3fSopenharmony_ci {"\"aggregate_name\": \"mean\",$", MR_Next}, 170a8c51b3fSopenharmony_ci {"\"aggregate_unit\": \"time\",$", MR_Next}, 171a8c51b3fSopenharmony_ci {"\"iterations\": %int,$", MR_Next}, 172a8c51b3fSopenharmony_ci {"\"real_time\": %float,$", MR_Next}, 173a8c51b3fSopenharmony_ci {"\"cpu_time\": %float,$", MR_Next}, 174a8c51b3fSopenharmony_ci {"\"time_unit\": \"ns\"$", MR_Next}, 175a8c51b3fSopenharmony_ci {"}", MR_Next}}); 176a8c51b3fSopenharmony_ciADD_CASES(TC_JSONOut, {{"\"name\": \"BM_ImplicitRepetitions_median\",$"}, 177a8c51b3fSopenharmony_ci {"\"family_index\": 1,$", MR_Next}, 178a8c51b3fSopenharmony_ci {"\"per_family_instance_index\": 0,$", MR_Next}, 179a8c51b3fSopenharmony_ci {"\"run_name\": \"BM_ImplicitRepetitions\",$", MR_Next}, 180a8c51b3fSopenharmony_ci {"\"run_type\": \"aggregate\",$", MR_Next}, 181a8c51b3fSopenharmony_ci {"\"repetitions\": 3,$", MR_Next}, 182a8c51b3fSopenharmony_ci {"\"threads\": 1,$", MR_Next}, 183a8c51b3fSopenharmony_ci {"\"aggregate_name\": \"median\",$", MR_Next}, 184a8c51b3fSopenharmony_ci {"\"aggregate_unit\": \"time\",$", MR_Next}, 185a8c51b3fSopenharmony_ci {"\"iterations\": %int,$", MR_Next}, 186a8c51b3fSopenharmony_ci {"\"real_time\": %float,$", MR_Next}, 187a8c51b3fSopenharmony_ci {"\"cpu_time\": %float,$", MR_Next}, 188a8c51b3fSopenharmony_ci {"\"time_unit\": \"ns\"$", MR_Next}, 189a8c51b3fSopenharmony_ci {"}", MR_Next}}); 190a8c51b3fSopenharmony_ciADD_CASES(TC_JSONOut, {{"\"name\": \"BM_ImplicitRepetitions_stddev\",$"}, 191a8c51b3fSopenharmony_ci {"\"family_index\": 1,$", MR_Next}, 192a8c51b3fSopenharmony_ci {"\"per_family_instance_index\": 0,$", MR_Next}, 193a8c51b3fSopenharmony_ci {"\"run_name\": \"BM_ImplicitRepetitions\",$", MR_Next}, 194a8c51b3fSopenharmony_ci {"\"run_type\": \"aggregate\",$", MR_Next}, 195a8c51b3fSopenharmony_ci {"\"repetitions\": 3,$", MR_Next}, 196a8c51b3fSopenharmony_ci {"\"threads\": 1,$", MR_Next}, 197a8c51b3fSopenharmony_ci {"\"aggregate_name\": \"stddev\",$", MR_Next}, 198a8c51b3fSopenharmony_ci {"\"aggregate_unit\": \"time\",$", MR_Next}, 199a8c51b3fSopenharmony_ci {"\"iterations\": %int,$", MR_Next}, 200a8c51b3fSopenharmony_ci {"\"real_time\": %float,$", MR_Next}, 201a8c51b3fSopenharmony_ci {"\"cpu_time\": %float,$", MR_Next}, 202a8c51b3fSopenharmony_ci {"\"time_unit\": \"ns\"$", MR_Next}, 203a8c51b3fSopenharmony_ci {"}", MR_Next}}); 204a8c51b3fSopenharmony_ciADD_CASES(TC_CSVOut, {{"^\"BM_ImplicitRepetitions\",%csv_report$"}}); 205a8c51b3fSopenharmony_ciADD_CASES(TC_CSVOut, {{"^\"BM_ImplicitRepetitions\",%csv_report$"}}); 206a8c51b3fSopenharmony_ciADD_CASES(TC_CSVOut, {{"^\"BM_ImplicitRepetitions_mean\",%csv_report$"}}); 207a8c51b3fSopenharmony_ciADD_CASES(TC_CSVOut, {{"^\"BM_ImplicitRepetitions_median\",%csv_report$"}}); 208a8c51b3fSopenharmony_ciADD_CASES(TC_CSVOut, {{"^\"BM_ImplicitRepetitions_stddev\",%csv_report$"}}); 209a8c51b3fSopenharmony_ci 210a8c51b3fSopenharmony_ci// ========================================================================= // 211a8c51b3fSopenharmony_ci// --------------------------- TEST CASES END ------------------------------ // 212a8c51b3fSopenharmony_ci// ========================================================================= // 213a8c51b3fSopenharmony_ci 214a8c51b3fSopenharmony_ciint main(int argc, char* argv[]) { RunOutputTests(argc, argv); } 215