Home | History | Annotate | Download | only in test
      1 // Copyright 2014 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "base/test/statistics_delta_reader.h"
      6 
      7 #include "base/memory/scoped_ptr.h"
      8 #include "base/metrics/histogram.h"
      9 #include "base/metrics/histogram_samples.h"
     10 #include "testing/gtest/include/gtest/gtest.h"
     11 
     12 namespace base {
     13 
     14 TEST(StatisticsDeltaReaderTest, Scope) {
     15   // Record a histogram before the creation of the recorder.
     16   UMA_HISTOGRAM_BOOLEAN("Test", true);
     17 
     18   StatisticsDeltaReader reader;
     19 
     20   // Verify that no histogram is recorded.
     21   scoped_ptr<HistogramSamples> samples(
     22       reader.GetHistogramSamplesSinceCreation("Test"));
     23   EXPECT_FALSE(samples);
     24 
     25   // Record a histogram after the creation of the recorder.
     26   UMA_HISTOGRAM_BOOLEAN("Test", true);
     27 
     28   // Verify that one histogram is recorded.
     29   samples = reader.GetHistogramSamplesSinceCreation("Test");
     30   EXPECT_TRUE(samples);
     31   EXPECT_EQ(1, samples->TotalCount());
     32 }
     33 
     34 }  // namespace base
     35