Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5082)

Unified Diff: chrome/renderer/net/net_error_helper_core_unittest.cc

Issue 379283002: Rework UMAHistogramHelper and StatisticsDeltaReader into [Chrome]HistogramTester. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/chrome_tests_unit.gypi ('k') | chrome/test/base/uma_histogram_helper.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/renderer/net/net_error_helper_core_unittest.cc
diff --git a/chrome/renderer/net/net_error_helper_core_unittest.cc b/chrome/renderer/net/net_error_helper_core_unittest.cc
index eee80f712388fc78e363f183f4399512b0480de5..3ff1deeca074cf1b8ac48d24ce2b506df8e56665 100644
--- a/chrome/renderer/net/net_error_helper_core_unittest.cc
+++ b/chrome/renderer/net/net_error_helper_core_unittest.cc
@@ -13,11 +13,11 @@
#include "base/logging.h"
#include "base/metrics/statistics_recorder.h"
#include "base/strings/stringprintf.h"
+#include "base/test/histogram_tester.h"
#include "base/timer/mock_timer.h"
#include "base/timer/timer.h"
#include "base/values.h"
#include "chrome/common/net/net_error_info.h"
-#include "chrome/test/base/uma_histogram_helper.h"
#include "content/public/common/url_constants.h"
#include "net/base/net_errors.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -2230,37 +2230,11 @@ TEST_F(NetErrorHelperCoreAutoReloadTest, ShownWhileNotReloading) {
EXPECT_TRUE(timer()->IsRunning());
}
-// Return the count for the named histogram, or 0 if there is no histogram by
-// that name. This function is error-tolerant because histograms that have no
-// data points may not be registered, and the unit tests below still need to be
-// able to check that they haven't changed.
-int GetHistogramCount(const char *name) {
- base::HistogramBase* histogram =
- base::StatisticsRecorder::FindHistogram(name);
- if (!histogram)
- return 0;
- scoped_ptr<base::HistogramSamples> samples = histogram->SnapshotSamples();
- if (!samples)
- return 0;
- return samples->TotalCount();
-}
-
-void ExpectHistogramDelta(const char *name, int old_count, int delta) {
- int new_count = GetHistogramCount(name);
- EXPECT_EQ(old_count + delta, new_count) << "For histogram " << name;
-}
-
class NetErrorHelperCoreHistogramTest
: public NetErrorHelperCoreAutoReloadTest {
public:
virtual void SetUp() OVERRIDE {
NetErrorHelperCoreAutoReloadTest::SetUp();
- StoreOldCounts();
- }
-
- void ExpectDelta(const char *name, int delta) {
- DCHECK(old_counts_.count(name) == 1);
- ExpectHistogramDelta(name, old_counts_[name], delta);
}
static const char kCountAtStop[];
@@ -2269,15 +2243,8 @@ class NetErrorHelperCoreHistogramTest
static const char kErrorAtSuccess[];
static const char kErrorAtFirstSuccess[];
- private:
- void StoreOldCounts() {
- for (size_t i = 0; kHistogramNames[i]; i++)
- old_counts_[kHistogramNames[i]] = GetHistogramCount(kHistogramNames[i]);
- }
-
- static const char *kHistogramNames[];
-
- std::map<std::string, int> old_counts_;
+ protected:
+ base::HistogramTester histogram_tester_;
};
const char NetErrorHelperCoreHistogramTest::kCountAtStop[] =
@@ -2290,14 +2257,6 @@ const char NetErrorHelperCoreHistogramTest::kErrorAtSuccess[] =
"Net.AutoReload.ErrorAtSuccess";
const char NetErrorHelperCoreHistogramTest::kErrorAtFirstSuccess[] =
"Net.AutoReload.ErrorAtFirstSuccess";
-const char *NetErrorHelperCoreHistogramTest::kHistogramNames[] = {
- kCountAtStop,
- kErrorAtStop,
- kCountAtSuccess,
- kErrorAtSuccess,
- kErrorAtFirstSuccess,
- NULL
-};
// Test that the success histograms are updated when auto-reload succeeds at the
// first attempt, and that the failure histograms are not updated.
@@ -2308,11 +2267,11 @@ TEST_F(NetErrorHelperCoreHistogramTest, SuccessAtFirstAttempt) {
// All of CountAtSuccess, ErrorAtSuccess, and ErrorAtFirstSuccess should
// reflect this successful load. The failure histograms should be unchanged.
- ExpectDelta(kCountAtSuccess, 1);
- ExpectDelta(kErrorAtSuccess, 1);
- ExpectDelta(kErrorAtFirstSuccess, 1);
- ExpectDelta(kCountAtStop, 0);
- ExpectDelta(kErrorAtStop, 0);
+ histogram_tester_.ExpectTotalCount(kCountAtSuccess, 1);
+ histogram_tester_.ExpectTotalCount(kErrorAtSuccess, 1);
+ histogram_tester_.ExpectTotalCount(kErrorAtFirstSuccess, 1);
+ histogram_tester_.ExpectTotalCount(kCountAtStop, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtStop, 0);
}
// Test that the success histograms are updated when auto-reload succeeds but
@@ -2329,11 +2288,11 @@ TEST_F(NetErrorHelperCoreHistogramTest, SuccessAtSecondAttempt) {
// CountAtSuccess and ErrorAtSuccess should reflect this successful load, but
// not ErrorAtFirstSuccess since it wasn't a first success.
- ExpectDelta(kCountAtSuccess, 1);
- ExpectDelta(kErrorAtSuccess, 1);
- ExpectDelta(kErrorAtFirstSuccess, 0);
- ExpectDelta(kCountAtStop, 0);
- ExpectDelta(kErrorAtStop, 0);
+ histogram_tester_.ExpectTotalCount(kCountAtSuccess, 1);
+ histogram_tester_.ExpectTotalCount(kErrorAtSuccess, 1);
+ histogram_tester_.ExpectTotalCount(kErrorAtFirstSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kCountAtStop, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtStop, 0);
}
// Test that a user stop (caused by the user pressing the 'Stop' button)
@@ -2348,11 +2307,11 @@ TEST_F(NetErrorHelperCoreHistogramTest, UserStop) {
core()->OnStop();
// CountAtStop and ErrorAtStop should reflect the failure.
- ExpectDelta(kCountAtSuccess, 0);
- ExpectDelta(kErrorAtSuccess, 0);
- ExpectDelta(kErrorAtFirstSuccess, 0);
- ExpectDelta(kCountAtStop, 1);
- ExpectDelta(kErrorAtStop, 1);
+ histogram_tester_.ExpectTotalCount(kCountAtSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtFirstSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kCountAtStop, 1);
+ histogram_tester_.ExpectTotalCount(kErrorAtStop, 1);
}
// Test that a user stop (caused by the user pressing the 'Stop' button)
@@ -2366,11 +2325,11 @@ TEST_F(NetErrorHelperCoreHistogramTest, OtherPageLoaded) {
NetErrorHelperCore::NON_ERROR_PAGE);
core()->OnStop();
- ExpectDelta(kCountAtSuccess, 0);
- ExpectDelta(kErrorAtSuccess, 0);
- ExpectDelta(kErrorAtFirstSuccess, 0);
- ExpectDelta(kCountAtStop, 1);
- ExpectDelta(kErrorAtStop, 1);
+ histogram_tester_.ExpectTotalCount(kCountAtSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtFirstSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kCountAtStop, 1);
+ histogram_tester_.ExpectTotalCount(kErrorAtStop, 1);
}
// Test that a commit of a different URL (caused by the user navigating to a
@@ -2386,11 +2345,11 @@ TEST_F(NetErrorHelperCoreHistogramTest, OtherPageLoadedAfterTimerFires) {
kTestUrl);
core()->OnFinishLoad(NetErrorHelperCore::MAIN_FRAME);
- ExpectDelta(kCountAtSuccess, 0);
- ExpectDelta(kErrorAtSuccess, 0);
- ExpectDelta(kErrorAtFirstSuccess, 0);
- ExpectDelta(kCountAtStop, 1);
- ExpectDelta(kErrorAtStop, 1);
+ histogram_tester_.ExpectTotalCount(kCountAtSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtFirstSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kCountAtStop, 1);
+ histogram_tester_.ExpectTotalCount(kErrorAtStop, 1);
}
// Test that a commit of the same URL with an auto-reload attempt in flight
@@ -2400,11 +2359,11 @@ TEST_F(NetErrorHelperCoreHistogramTest, SamePageLoadedAfterTimerFires) {
timer()->Fire();
DoSuccessLoad();
- ExpectDelta(kCountAtSuccess, 1);
- ExpectDelta(kErrorAtSuccess, 1);
- ExpectDelta(kErrorAtFirstSuccess, 1);
- ExpectDelta(kCountAtStop, 0);
- ExpectDelta(kErrorAtStop, 0);
+ histogram_tester_.ExpectTotalCount(kCountAtSuccess, 1);
+ histogram_tester_.ExpectTotalCount(kErrorAtSuccess, 1);
+ histogram_tester_.ExpectTotalCount(kErrorAtFirstSuccess, 1);
+ histogram_tester_.ExpectTotalCount(kCountAtStop, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtStop, 0);
}
TEST_F(NetErrorHelperCoreHistogramTest, SamePageLoadedAfterLoadStarts) {
@@ -2416,11 +2375,11 @@ TEST_F(NetErrorHelperCoreHistogramTest, SamePageLoadedAfterLoadStarts) {
// User does a manual reload
DoSuccessLoad();
- ExpectDelta(kCountAtSuccess, 1);
- ExpectDelta(kErrorAtSuccess, 1);
- ExpectDelta(kErrorAtFirstSuccess, 1);
- ExpectDelta(kCountAtStop, 0);
- ExpectDelta(kErrorAtStop, 0);
+ histogram_tester_.ExpectTotalCount(kCountAtSuccess, 1);
+ histogram_tester_.ExpectTotalCount(kErrorAtSuccess, 1);
+ histogram_tester_.ExpectTotalCount(kErrorAtFirstSuccess, 1);
+ histogram_tester_.ExpectTotalCount(kCountAtStop, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtStop, 0);
}
// In this test case, the user presses the reload button manually after an
@@ -2434,11 +2393,11 @@ TEST_F(NetErrorHelperCoreHistogramTest, ErrorPageLoadedAfterTimerFires) {
default_url()));
DoErrorLoad(net::ERR_CONNECTION_RESET);
- ExpectDelta(kCountAtSuccess, 0);
- ExpectDelta(kErrorAtSuccess, 0);
- ExpectDelta(kErrorAtFirstSuccess, 0);
- ExpectDelta(kCountAtStop, 0);
- ExpectDelta(kErrorAtStop, 0);
+ histogram_tester_.ExpectTotalCount(kCountAtSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtFirstSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kCountAtStop, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtStop, 0);
}
TEST_F(NetErrorHelperCoreHistogramTest, SuccessPageLoadedBeforeTimerFires) {
@@ -2448,11 +2407,11 @@ TEST_F(NetErrorHelperCoreHistogramTest, SuccessPageLoadedBeforeTimerFires) {
core()->OnCommitLoad(NetErrorHelperCore::MAIN_FRAME,
GURL(kFailedHttpsUrl));
- ExpectDelta(kCountAtSuccess, 0);
- ExpectDelta(kErrorAtSuccess, 0);
- ExpectDelta(kErrorAtFirstSuccess, 0);
- ExpectDelta(kCountAtStop, 1);
- ExpectDelta(kErrorAtStop, 1);
+ histogram_tester_.ExpectTotalCount(kCountAtSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kErrorAtFirstSuccess, 0);
+ histogram_tester_.ExpectTotalCount(kCountAtStop, 1);
+ histogram_tester_.ExpectTotalCount(kErrorAtStop, 1);
}
« no previous file with comments | « chrome/chrome_tests_unit.gypi ('k') | chrome/test/base/uma_histogram_helper.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698