1*a5b79717SMircea Trofin #include <string.h> 2*a5b79717SMircea Trofin 3*a5b79717SMircea Trofin #include <iostream> 4*a5b79717SMircea Trofin 5*a5b79717SMircea Trofin #include "benchmark/benchmark.h" 6*a5b79717SMircea Trofin 7*a5b79717SMircea Trofin // Tests that the user specified verbosity level can be get. BM_Verbosity(benchmark::State & state)8*a5b79717SMircea Trofinstatic void BM_Verbosity(benchmark::State& state) { 9*a5b79717SMircea Trofin for (auto _ : state) { 10*a5b79717SMircea Trofin } 11*a5b79717SMircea Trofin } 12*a5b79717SMircea Trofin BENCHMARK(BM_Verbosity); 13*a5b79717SMircea Trofin main(int argc,char ** argv)14*a5b79717SMircea Trofinint main(int argc, char** argv) { 15*a5b79717SMircea Trofin const int32_t flagv = 42; 16*a5b79717SMircea Trofin 17*a5b79717SMircea Trofin // Verify that argv specify --v=42. 18*a5b79717SMircea Trofin bool found = false; 19*a5b79717SMircea Trofin for (int i = 0; i < argc; ++i) { 20*a5b79717SMircea Trofin if (strcmp("--v=42", argv[i]) == 0) { 21*a5b79717SMircea Trofin found = true; 22*a5b79717SMircea Trofin break; 23*a5b79717SMircea Trofin } 24*a5b79717SMircea Trofin } 25*a5b79717SMircea Trofin if (!found) { 26*a5b79717SMircea Trofin std::cerr << "This test requires '--v=42' to be passed as a command-line " 27*a5b79717SMircea Trofin << "argument.\n"; 28*a5b79717SMircea Trofin return 1; 29*a5b79717SMircea Trofin } 30*a5b79717SMircea Trofin 31*a5b79717SMircea Trofin benchmark::Initialize(&argc, argv); 32*a5b79717SMircea Trofin 33*a5b79717SMircea Trofin // Check that the current flag value is reported accurately via the 34*a5b79717SMircea Trofin // GetBenchmarkVerbosity() function. 35*a5b79717SMircea Trofin if (flagv != benchmark::GetBenchmarkVerbosity()) { 36*a5b79717SMircea Trofin std::cerr 37*a5b79717SMircea Trofin << "Seeing different value for flags. GetBenchmarkVerbosity() returns [" 38*a5b79717SMircea Trofin << benchmark::GetBenchmarkVerbosity() << "] expected flag=[" << flagv 39*a5b79717SMircea Trofin << "]\n"; 40*a5b79717SMircea Trofin return 1; 41*a5b79717SMircea Trofin } 42*a5b79717SMircea Trofin return 0; 43*a5b79717SMircea Trofin } 44