brintos

brintos / llvm-project-archived public Read only

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