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

Side by Side Diff: chrome/browser/net/http_pipelining_compatibility_client_unittest.cc

Issue 9562037: Move TestURLRequestContextGetter to url_request_test_util.{h,cc} (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Change comment Created 8 years, 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/net/http_pipelining_compatibility_client.h" 5 #include "chrome/browser/net/http_pipelining_compatibility_client.h"
6 6
7 #include <map> 7 #include <map>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
11 #include "base/basictypes.h" 11 #include "base/basictypes.h"
12 #include "base/message_loop.h" 12 #include "base/message_loop.h"
13 #include "base/metrics/histogram.h" 13 #include "base/metrics/histogram.h"
14 #include "base/stl_util.h" 14 #include "base/stl_util.h"
15 #include "base/stringprintf.h" 15 #include "base/stringprintf.h"
16 #include "chrome/test/base/test_url_request_context_getter.h"
17 #include "content/test/test_browser_thread.h" 16 #include "content/test/test_browser_thread.h"
18 #include "net/base/net_errors.h" 17 #include "net/base/net_errors.h"
19 #include "net/base/test_completion_callback.h" 18 #include "net/base/test_completion_callback.h"
20 #include "net/url_request/url_request_context_getter.h" 19 #include "net/url_request/url_request_context_getter.h"
20 #include "net/url_request/url_request_test_util.h"
21 #include "net/test/test_server.h" 21 #include "net/test/test_server.h"
22 #include "testing/gtest/include/gtest/gtest.h" 22 #include "testing/gtest/include/gtest/gtest.h"
23 23
24 namespace chrome_browser_net { 24 namespace chrome_browser_net {
25 25
26 namespace { 26 namespace {
27 27
28 static const char* const kHistogramNames[] = { 28 static const char* const kHistogramNames[] = {
29 "NetConnectivity.Pipeline.0.NetworkError", 29 "NetConnectivity.Pipeline.0.NetworkError",
30 "NetConnectivity.Pipeline.0.ResponseCode", 30 "NetConnectivity.Pipeline.0.ResponseCode",
31 "NetConnectivity.Pipeline.0.Status", 31 "NetConnectivity.Pipeline.0.Status",
32 "NetConnectivity.Pipeline.1.NetworkError", 32 "NetConnectivity.Pipeline.1.NetworkError",
33 "NetConnectivity.Pipeline.1.ResponseCode", 33 "NetConnectivity.Pipeline.1.ResponseCode",
34 "NetConnectivity.Pipeline.1.Status", 34 "NetConnectivity.Pipeline.1.Status",
35 "NetConnectivity.Pipeline.2.NetworkError", 35 "NetConnectivity.Pipeline.2.NetworkError",
36 "NetConnectivity.Pipeline.2.ResponseCode", 36 "NetConnectivity.Pipeline.2.ResponseCode",
37 "NetConnectivity.Pipeline.2.Status", 37 "NetConnectivity.Pipeline.2.Status",
38 }; 38 };
39 39
40 enum HistogramField { 40 enum HistogramField {
41 FIELD_NETWORK_ERROR, 41 FIELD_NETWORK_ERROR,
42 FIELD_RESPONSE_CODE, 42 FIELD_RESPONSE_CODE,
43 FIELD_STATUS, 43 FIELD_STATUS,
44 }; 44 };
45 45
46 using content::BrowserThread;
47
46 class HttpPipeliningCompatibilityClientTest : public testing::Test { 48 class HttpPipeliningCompatibilityClientTest : public testing::Test {
47 public: 49 public:
48 HttpPipeliningCompatibilityClientTest() 50 HttpPipeliningCompatibilityClientTest()
49 : test_server_( 51 : test_server_(
50 net::TestServer::TYPE_HTTP, 52 net::TestServer::TYPE_HTTP,
51 net::TestServer::kLocalhost, 53 net::TestServer::kLocalhost,
52 FilePath(FILE_PATH_LITERAL("chrome/test/data/http_pipelining"))), 54 FilePath(FILE_PATH_LITERAL("chrome/test/data/http_pipelining"))),
53 io_thread_(content::BrowserThread::IO, &message_loop_) { 55 io_thread_(BrowserThread::IO, &message_loop_) {
54 } 56 }
55 57
56 protected: 58 protected:
57 virtual void SetUp() OVERRIDE { 59 virtual void SetUp() OVERRIDE {
58 ASSERT_TRUE(test_server_.Start()); 60 ASSERT_TRUE(test_server_.Start());
59 context_ = new TestURLRequestContextGetter; 61 context_ = new TestURLRequestContextGetter(
62 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO));
60 context_->AddRef(); 63 context_->AddRef();
61 64
62 for (size_t i = 0; i < arraysize(kHistogramNames); ++i) { 65 for (size_t i = 0; i < arraysize(kHistogramNames); ++i) {
63 const char* name = kHistogramNames[i]; 66 const char* name = kHistogramNames[i];
64 base::Histogram::SampleSet sample = GetHistogram(name); 67 base::Histogram::SampleSet sample = GetHistogram(name);
65 if (sample.TotalCount() > 0) { 68 if (sample.TotalCount() > 0) {
66 original_samples_[name] = sample; 69 original_samples_[name] = sample;
67 } 70 }
68 } 71 }
69 } 72 }
70 73
71 virtual void TearDown() OVERRIDE { 74 virtual void TearDown() OVERRIDE {
72 content::BrowserThread::ReleaseSoon(content::BrowserThread::IO, 75 BrowserThread::ReleaseSoon(BrowserThread::IO, FROM_HERE, context_);
73 FROM_HERE, context_);
74 message_loop_.RunAllPending(); 76 message_loop_.RunAllPending();
75 } 77 }
76 78
77 void RunTest( 79 void RunTest(
78 std::vector<HttpPipeliningCompatibilityClient::RequestInfo> requests) { 80 std::vector<HttpPipeliningCompatibilityClient::RequestInfo> requests) {
79 HttpPipeliningCompatibilityClient client; 81 HttpPipeliningCompatibilityClient client;
80 net::TestCompletionCallback callback; 82 net::TestCompletionCallback callback;
81 client.Start(test_server_.GetURL("").spec(), 83 client.Start(test_server_.GetURL("").spec(),
82 requests, callback.callback(), 84 requests, callback.callback(),
83 context_->GetURLRequestContext()); 85 context_->GetURLRequestContext());
(...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after
453 EXPECT_EQ(1, network_sample3.counts(-net::ERR_PIPELINE_EVICTION)); 455 EXPECT_EQ(1, network_sample3.counts(-net::ERR_PIPELINE_EVICTION));
454 456
455 base::Histogram::SampleSet response_sample3 = 457 base::Histogram::SampleSet response_sample3 =
456 GetHistogramValue(2, FIELD_RESPONSE_CODE); 458 GetHistogramValue(2, FIELD_RESPONSE_CODE);
457 EXPECT_EQ(0, response_sample3.TotalCount()); 459 EXPECT_EQ(0, response_sample3.TotalCount());
458 } 460 }
459 461
460 } // anonymous namespace 462 } // anonymous namespace
461 463
462 } // namespace chrome_browser_net 464 } // namespace chrome_browser_net
OLDNEW
« no previous file with comments | « chrome/browser/intents/cws_intents_registry_unittest.cc ('k') | chrome/browser/safe_browsing/malware_details_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698