1*a5b79717SMircea Trofin #include "../include/benchmark/benchmark.h"
2*a5b79717SMircea Trofin #include "gtest/gtest.h"
3*a5b79717SMircea Trofin
4*a5b79717SMircea Trofin namespace benchmark {
5*a5b79717SMircea Trofin namespace internal {
6*a5b79717SMircea Trofin
7*a5b79717SMircea Trofin namespace {
8*a5b79717SMircea Trofin
9*a5b79717SMircea Trofin class DummyBenchmark : public Benchmark {
10*a5b79717SMircea Trofin public:
DummyBenchmark()11*a5b79717SMircea Trofin DummyBenchmark() : Benchmark("dummy") {}
Run(State &)12*a5b79717SMircea Trofin void Run(State&) override {}
13*a5b79717SMircea Trofin };
14*a5b79717SMircea Trofin
TEST(DefaultTimeUnitTest,TimeUnitIsNotSet)15*a5b79717SMircea Trofin TEST(DefaultTimeUnitTest, TimeUnitIsNotSet) {
16*a5b79717SMircea Trofin DummyBenchmark benchmark;
17*a5b79717SMircea Trofin EXPECT_EQ(benchmark.GetTimeUnit(), kNanosecond);
18*a5b79717SMircea Trofin }
19*a5b79717SMircea Trofin
TEST(DefaultTimeUnitTest,DefaultIsSet)20*a5b79717SMircea Trofin TEST(DefaultTimeUnitTest, DefaultIsSet) {
21*a5b79717SMircea Trofin DummyBenchmark benchmark;
22*a5b79717SMircea Trofin EXPECT_EQ(benchmark.GetTimeUnit(), kNanosecond);
23*a5b79717SMircea Trofin SetDefaultTimeUnit(kMillisecond);
24*a5b79717SMircea Trofin EXPECT_EQ(benchmark.GetTimeUnit(), kMillisecond);
25*a5b79717SMircea Trofin }
26*a5b79717SMircea Trofin
TEST(DefaultTimeUnitTest,DefaultAndExplicitUnitIsSet)27*a5b79717SMircea Trofin TEST(DefaultTimeUnitTest, DefaultAndExplicitUnitIsSet) {
28*a5b79717SMircea Trofin DummyBenchmark benchmark;
29*a5b79717SMircea Trofin benchmark.Unit(kMillisecond);
30*a5b79717SMircea Trofin SetDefaultTimeUnit(kMicrosecond);
31*a5b79717SMircea Trofin
32*a5b79717SMircea Trofin EXPECT_EQ(benchmark.GetTimeUnit(), kMillisecond);
33*a5b79717SMircea Trofin }
34*a5b79717SMircea Trofin
35*a5b79717SMircea Trofin } // namespace
36*a5b79717SMircea Trofin } // namespace internal
37*a5b79717SMircea Trofin } // namespace benchmark
38