Skip to content

Commit

Permalink
fixed naming convertion, and introduce the option function in the ini…
Browse files Browse the repository at this point in the history
…t method

Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
  • Loading branch information
vincenzopalazzo committed Feb 14, 2022
1 parent d63fea0 commit 50e78b2
Show file tree
Hide file tree
Showing 9 changed files with 33 additions and 35 deletions.
43 changes: 21 additions & 22 deletions include/benchmark/benchmark.h
Original file line number Diff line number Diff line change
Expand Up @@ -284,7 +284,26 @@ BENCHMARK(BM_test)->Unit(benchmark::kMillisecond);
namespace benchmark {
class BenchmarkReporter;

void Initialize(int* argc, char** argv, void (*help_printer)());
inline void HelperPrinter() {
fprintf(stdout,
"benchmark"
" [--benchmark_list_tests={true|false}]\n"
" [--benchmark_filter=<regex>]\n"
" [--benchmark_min_time=<min_time>]\n"
" [--benchmark_repetitions=<num_repetitions>]\n"
" [--benchmark_enable_random_interleaving={true|false}]\n"
" [--benchmark_report_aggregates_only={true|false}]\n"
" [--benchmark_display_aggregates_only={true|false}]\n"
" [--benchmark_format=<console|json|csv>]\n"
" [--benchmark_out=<filename>]\n"
" [--benchmark_out_format=<json|console|csv>]\n"
" [--benchmark_color={auto|true|false}]\n"
" [--benchmark_counters_tabular={true|false}]\n"
" [--benchmark_context=<key>=<value>,...]\n"
" [--v=<verbosity>]\n");
}
void Initialize(int* argc, char** argv,
void (*HelperPrintf)() = benchmark::HelperPrinter);
void Shutdown();

// Report to stdout all arguments in 'argv' as unrecognized except the first.
Expand Down Expand Up @@ -1182,25 +1201,6 @@ class LambdaBenchmark : public Benchmark {
Lambda lambda_;
};
#endif

inline void helper_printer() {
fprintf(stdout,
"benchmark"
" [--benchmark_list_tests={true|false}]\n"
" [--benchmark_filter=<regex>]\n"
" [--benchmark_min_time=<min_time>]\n"
" [--benchmark_repetitions=<num_repetitions>]\n"
" [--benchmark_enable_random_interleaving={true|false}]\n"
" [--benchmark_report_aggregates_only={true|false}]\n"
" [--benchmark_display_aggregates_only={true|false}]\n"
" [--benchmark_format=<console|json|csv>]\n"
" [--benchmark_out=<filename>]\n"
" [--benchmark_out_format=<json|console|csv>]\n"
" [--benchmark_color={auto|true|false}]\n"
" [--benchmark_counters_tabular={true|false}]\n"
" [--benchmark_context=<key>=<value>,...]\n"
" [--v=<verbosity>]\n");
}
} // namespace internal

inline internal::Benchmark* RegisterBenchmark(const char* name,
Expand Down Expand Up @@ -1462,8 +1462,7 @@ class Fixture : public internal::Benchmark {
#endif

// Helper macro to create a main routine in a test that runs the benchmarks
#define BENCHMARK_MAIN() \
BENCHMARK_MAIN_HELPER(::benchmark::internal::helper_printer)
#define BENCHMARK_MAIN() BENCHMARK_MAIN_HELPER(::benchmark::HelperPrinter)

#define BENCHMARK_MAIN_HELPER(helpPrinter) \
int main(int argc, char** argv) { \
Expand Down
8 changes: 4 additions & 4 deletions src/benchmark.cc
Original file line number Diff line number Diff line change
Expand Up @@ -538,10 +538,10 @@ void AddCustomContext(const std::string& key, const std::string& value) {

namespace internal {

void (*hprintf)();
void (*HelperPrintf)();

void PrintUsageAndExit() {
hprintf();
HelperPrintf();
exit(0);
}

Expand Down Expand Up @@ -604,10 +604,10 @@ int InitializeStreams() {

} // end namespace internal

void Initialize(int* argc, char** argv, void (*helper_printer)()) {
void Initialize(int* argc, char** argv, void (*HelperPrintf)()) {
internal::ParseCommandLineFlags(argc, argv);
internal::LogLevel() = FLAGS_v;
internal::hprintf = helper_printer;
internal::HelperPrintf = HelperPrintf;
}

void Shutdown() { delete internal::global_context; }
Expand Down
2 changes: 1 addition & 1 deletion test/benchmark_setup_teardown_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ BENCHMARK(BM_WithRep)
->Repetitions(4);

int main(int argc, char** argv) {
benchmark::Initialize(&argc, argv, benchmark::internal::helper_printer);
benchmark::Initialize(&argc, argv);

size_t ret = benchmark::RunSpecifiedBenchmarks(".");
assert(ret > 0);
Expand Down
2 changes: 1 addition & 1 deletion test/diagnostics_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,6 @@ BENCHMARK(BM_diagnostic_test_keep_running);

int main(int argc, char* argv[]) {
benchmark::internal::GetAbortHandler() = &TestHandler;
benchmark::Initialize(&argc, argv, benchmark::internal::helper_printer);
benchmark::Initialize(&argc, argv);
benchmark::RunSpecifiedBenchmarks();
}
2 changes: 1 addition & 1 deletion test/filter_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ int main(int argc, char** argv) {
list_only |= std::string(argv[i]).find("--benchmark_list_tests") !=
std::string::npos;

benchmark::Initialize(&argc, argv, benchmark::internal::helper_printer);
benchmark::Initialize(&argc, argv);

TestReporter test_reporter;
const size_t returned_count =
Expand Down
5 changes: 2 additions & 3 deletions test/output_test_helper.cc
Original file line number Diff line number Diff line change
Expand Up @@ -387,7 +387,7 @@ BENCHMARK_DISABLE_DEPRECATED_WARNING

void RunOutputTests(int argc, char* argv[]) {
using internal::GetTestCaseList;
benchmark::Initialize(&argc, argv, benchmark::internal::helper_printer);
benchmark::Initialize(&argc, argv);
auto options = benchmark::internal::GetOutputOptions(/*force_no_color*/ true);
benchmark::ConsoleReporter CR(options);
benchmark::JSONReporter JR;
Expand Down Expand Up @@ -504,8 +504,7 @@ std::string GetFileReporterOutput(int argc, char* argv[]) {

argc = int(new_argv.size());

benchmark::Initialize(&argc, new_argv.data(),
benchmark::internal::helper_printer);
benchmark::Initialize(&argc, new_argv.data());
benchmark::RunSpecifiedBenchmarks();

// Read the output back from the file, and delete the file.
Expand Down
2 changes: 1 addition & 1 deletion test/register_benchmark_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ void RunTestTwo() {
}

int main(int argc, char* argv[]) {
benchmark::Initialize(&argc, argv, benchmark::internal::helper_printer);
benchmark::Initialize(&argc, argv);

RunTestOne();
RunTestTwo();
Expand Down
2 changes: 1 addition & 1 deletion test/skip_with_error_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ ADD_CASES("BM_error_while_paused", {{"/1/threads:1", true, "error message"},
{"/2/threads:8", false, ""}});

int main(int argc, char* argv[]) {
benchmark::Initialize(&argc, argv, benchmark::internal::helper_printer);
benchmark::Initialize(&argc, argv);

TestReporter test_reporter;
benchmark::RunSpecifiedBenchmarks(&test_reporter);
Expand Down
2 changes: 1 addition & 1 deletion test/spec_arg_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ int main(int argc, char** argv) {
}
assert(found);

benchmark::Initialize(&argc, argv, benchmark::internal::helper_printer);
benchmark::Initialize(&argc, argv);

// Check that the current flag value is reported accurately via the
// GetBenchmarkFilter() function.
Expand Down

0 comments on commit 50e78b2

Please sign in to comment.