Chromium Code Reviews| Index: base/metrics/histogram_unittest.cc |
| diff --git a/base/metrics/histogram_unittest.cc b/base/metrics/histogram_unittest.cc |
| index 2fadc304415e4fc96b5478bdad712cc2e2a30e21..e03f5aaf95ec3b7567dce74ed6d68aacd8bf3f2a 100644 |
| --- a/base/metrics/histogram_unittest.cc |
| +++ b/base/metrics/histogram_unittest.cc |
| @@ -245,7 +245,7 @@ TEST_F(HistogramTest, AddCountTest) { |
| histogram->AddCount(20, 15); |
| histogram->AddCount(30, 14); |
| - scoped_ptr<SampleVector> samples = histogram->SnapshotSampleVector(); |
| + scoped_ptr<HistogramSamples> samples = histogram->SnapshotSamples(); |
| EXPECT_EQ(29, samples->TotalCount()); |
| EXPECT_EQ(15, samples->GetCount(20)); |
| EXPECT_EQ(14, samples->GetCount(30)); |
| @@ -253,12 +253,37 @@ TEST_F(HistogramTest, AddCountTest) { |
| histogram->AddCount(20, 25); |
| histogram->AddCount(30, 24); |
| - scoped_ptr<SampleVector> samples2 = histogram->SnapshotSampleVector(); |
| + scoped_ptr<HistogramSamples> samples2 = histogram->SnapshotSamples(); |
| EXPECT_EQ(78, samples2->TotalCount()); |
| EXPECT_EQ(40, samples2->GetCount(20)); |
| EXPECT_EQ(38, samples2->GetCount(30)); |
| } |
| +// Test the AddCount function with large sample values. |
| +TEST_F(HistogramTest, AddCountLargeTest) { |
|
Alexei Svitkine (slow)
2016/01/22 22:33:03
Nit: Maybe AddCount_LargeValuesDontOverflow
And s
bcf
2016/01/22 22:46:14
Done.
|
| + const size_t kBucketCount = 50; |
| + Histogram* histogram = static_cast<Histogram*>( |
| + Histogram::FactoryGet("AddCountHistogram", 10, 1000000000, kBucketCount, |
| + HistogramBase::kNoFlags)); |
| + |
| + histogram->AddCount(200000000, 15); |
| + histogram->AddCount(300000000, 14); |
| + |
| + scoped_ptr<HistogramSamples> samples = histogram->SnapshotSamples(); |
| + EXPECT_EQ(29, samples->TotalCount()); |
| + EXPECT_EQ(15, samples->GetCount(200000000)); |
| + EXPECT_EQ(14, samples->GetCount(300000000)); |
| + |
| + histogram->AddCount(200000000, 25); |
| + histogram->AddCount(300000000, 24); |
| + |
| + scoped_ptr<HistogramSamples> samples2 = histogram->SnapshotSamples(); |
| + EXPECT_EQ(78, samples2->TotalCount()); |
| + EXPECT_EQ(40, samples2->GetCount(200000000)); |
| + EXPECT_EQ(38, samples2->GetCount(300000000)); |
| + EXPECT_EQ(19400000000LL, samples2->sum()); |
| +} |
| + |
| // Make sure histogram handles out-of-bounds data gracefully. |
| TEST_F(HistogramTest, BoundsTest) { |
| const size_t kBucketCount = 50; |
| @@ -358,7 +383,7 @@ TEST_F(HistogramTest, CorruptBucketBounds) { |
| Histogram* histogram = static_cast<Histogram*>( |
| Histogram::FactoryGet("Histogram", 1, 64, 8, HistogramBase::kNoFlags)); |
| - scoped_ptr<SampleVector> snapshot = histogram->SnapshotSampleVector(); |
| + scoped_ptr<HistogramSamples> snapshot = histogram->SnapshotSamples(); |
| EXPECT_EQ(HistogramBase::NO_INCONSISTENCIES, |
| histogram->FindCorruption(*snapshot)); |