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

Side by Side Diff: content/browser/webui/url_data_manager_backend_unittest.cc

Issue 1874893002: Convert //content/browser from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 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 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 "content/browser/webui/url_data_manager_backend.h"
6
7 #include <memory>
8
5 #include "base/macros.h" 9 #include "base/macros.h"
6 #include "base/memory/scoped_ptr.h"
7 #include "base/run_loop.h" 10 #include "base/run_loop.h"
8 #include "content/browser/webui/url_data_manager_backend.h"
9 #include "content/public/test/mock_resource_context.h" 11 #include "content/public/test/mock_resource_context.h"
10 #include "content/public/test/test_browser_thread_bundle.h" 12 #include "content/public/test/test_browser_thread_bundle.h"
11 #include "net/http/http_response_headers.h" 13 #include "net/http/http_response_headers.h"
12 #include "net/http/http_response_info.h" 14 #include "net/http/http_response_info.h"
13 #include "net/url_request/url_request_context.h" 15 #include "net/url_request/url_request_context.h"
14 #include "net/url_request/url_request_job.h" 16 #include "net/url_request/url_request_job.h"
15 #include "net/url_request/url_request_job_factory_impl.h" 17 #include "net/url_request/url_request_job_factory_impl.h"
16 #include "net/url_request/url_request_test_util.h" 18 #include "net/url_request/url_request_test_util.h"
17 #include "testing/gtest/include/gtest/gtest.h" 19 #include "testing/gtest/include/gtest/gtest.h"
18 20
(...skipping 23 matching lines...) Expand all
42 class UrlDataManagerBackendTest : public testing::Test { 44 class UrlDataManagerBackendTest : public testing::Test {
43 public: 45 public:
44 UrlDataManagerBackendTest() { 46 UrlDataManagerBackendTest() {
45 // URLRequestJobFactory takes ownership of the passed in ProtocolHandler. 47 // URLRequestJobFactory takes ownership of the passed in ProtocolHandler.
46 url_request_job_factory_.SetProtocolHandler( 48 url_request_job_factory_.SetProtocolHandler(
47 "chrome", URLDataManagerBackend::CreateProtocolHandler( 49 "chrome", URLDataManagerBackend::CreateProtocolHandler(
48 &resource_context_, false, nullptr)); 50 &resource_context_, false, nullptr));
49 url_request_context_.set_job_factory(&url_request_job_factory_); 51 url_request_context_.set_job_factory(&url_request_job_factory_);
50 } 52 }
51 53
52 scoped_ptr<net::URLRequest> CreateRequest(net::URLRequest::Delegate* delegate, 54 std::unique_ptr<net::URLRequest> CreateRequest(
53 const char* origin) { 55 net::URLRequest::Delegate* delegate,
54 scoped_ptr<net::URLRequest> request = url_request_context_.CreateRequest( 56 const char* origin) {
55 GURL("chrome://resources/polymer/v1_0/polymer/polymer-extracted.js"), 57 std::unique_ptr<net::URLRequest> request =
56 net::HIGHEST, delegate); 58 url_request_context_.CreateRequest(
59 GURL(
60 "chrome://resources/polymer/v1_0/polymer/polymer-extracted.js"),
61 net::HIGHEST, delegate);
57 request->SetExtraRequestHeaderByName("Origin", origin, true); 62 request->SetExtraRequestHeaderByName("Origin", origin, true);
58 return request; 63 return request;
59 } 64 }
60 65
61 protected: 66 protected:
62 TestBrowserThreadBundle thread_bundle_; 67 TestBrowserThreadBundle thread_bundle_;
63 MockResourceContext resource_context_; 68 MockResourceContext resource_context_;
64 net::URLRequestJobFactoryImpl url_request_job_factory_; 69 net::URLRequestJobFactoryImpl url_request_job_factory_;
65 net::URLRequestContext url_request_context_; 70 net::URLRequestContext url_request_context_;
66 net::TestDelegate delegate_; 71 net::TestDelegate delegate_;
67 }; 72 };
68 73
69 TEST_F(UrlDataManagerBackendTest, AccessControlAllowOriginChromeUrl) { 74 TEST_F(UrlDataManagerBackendTest, AccessControlAllowOriginChromeUrl) {
70 scoped_ptr<net::URLRequest> request( 75 std::unique_ptr<net::URLRequest> request(
71 CreateRequest(&delegate_, "chrome://webui")); 76 CreateRequest(&delegate_, "chrome://webui"));
72 request->Start(); 77 request->Start();
73 base::RunLoop().RunUntilIdle(); 78 base::RunLoop().RunUntilIdle();
74 EXPECT_TRUE(request->response_headers()->HasHeaderValue( 79 EXPECT_TRUE(request->response_headers()->HasHeaderValue(
75 "Access-Control-Allow-Origin", "chrome://webui")); 80 "Access-Control-Allow-Origin", "chrome://webui"));
76 } 81 }
77 82
78 TEST_F(UrlDataManagerBackendTest, AccessControlAllowOriginNonChromeUrl) { 83 TEST_F(UrlDataManagerBackendTest, AccessControlAllowOriginNonChromeUrl) {
79 scoped_ptr<net::URLRequest> request( 84 std::unique_ptr<net::URLRequest> request(
80 CreateRequest(&delegate_, "http://www.example.com")); 85 CreateRequest(&delegate_, "http://www.example.com"));
81 request->Start(); 86 request->Start();
82 base::RunLoop().RunUntilIdle(); 87 base::RunLoop().RunUntilIdle();
83 EXPECT_TRUE(request->response_headers()->HasHeaderValue( 88 EXPECT_TRUE(request->response_headers()->HasHeaderValue(
84 "Access-Control-Allow-Origin", "null")); 89 "Access-Control-Allow-Origin", "null"));
85 } 90 }
86 91
87 // Check that the URLRequest isn't passed headers after cancellation. 92 // Check that the URLRequest isn't passed headers after cancellation.
88 TEST_F(UrlDataManagerBackendTest, CancelBeforeResponseStarts) { 93 TEST_F(UrlDataManagerBackendTest, CancelBeforeResponseStarts) {
89 scoped_ptr<net::URLRequest> request( 94 std::unique_ptr<net::URLRequest> request(
90 CreateRequest(&delegate_, "chrome://webui")); 95 CreateRequest(&delegate_, "chrome://webui"));
91 request->Start(); 96 request->Start();
92 request->Cancel(); 97 request->Cancel();
93 base::RunLoop().RunUntilIdle(); 98 base::RunLoop().RunUntilIdle();
94 EXPECT_EQ(net::URLRequestStatus::CANCELED, request->status().status()); 99 EXPECT_EQ(net::URLRequestStatus::CANCELED, request->status().status());
95 EXPECT_EQ(1, delegate_.response_started_count()); 100 EXPECT_EQ(1, delegate_.response_started_count());
96 } 101 }
97 102
98 // Check that the URLRequest isn't passed data after cancellation. 103 // Check that the URLRequest isn't passed data after cancellation.
99 TEST_F(UrlDataManagerBackendTest, CancelAfterFirstReadStarted) { 104 TEST_F(UrlDataManagerBackendTest, CancelAfterFirstReadStarted) {
100 CancelAfterFirstReadURLRequestDelegate cancel_delegate; 105 CancelAfterFirstReadURLRequestDelegate cancel_delegate;
101 scoped_ptr<net::URLRequest> request( 106 std::unique_ptr<net::URLRequest> request(
102 CreateRequest(&cancel_delegate, "chrome://webui")); 107 CreateRequest(&cancel_delegate, "chrome://webui"));
103 request->Start(); 108 request->Start();
104 base::RunLoop().RunUntilIdle(); 109 base::RunLoop().RunUntilIdle();
105 110
106 EXPECT_EQ(net::URLRequestStatus::CANCELED, request->status().status()); 111 EXPECT_EQ(net::URLRequestStatus::CANCELED, request->status().status());
107 EXPECT_EQ(1, cancel_delegate.response_started_count()); 112 EXPECT_EQ(1, cancel_delegate.response_started_count());
108 EXPECT_EQ("", cancel_delegate.data_received()); 113 EXPECT_EQ("", cancel_delegate.data_received());
109 } 114 }
110 115
111 // Check for a network error page request via chrome://network-error/. 116 // Check for a network error page request via chrome://network-error/.
112 TEST_F(UrlDataManagerBackendTest, ChromeNetworkErrorPageRequest) { 117 TEST_F(UrlDataManagerBackendTest, ChromeNetworkErrorPageRequest) {
113 scoped_ptr<net::URLRequest> error_request = 118 std::unique_ptr<net::URLRequest> error_request =
114 url_request_context_.CreateRequest( 119 url_request_context_.CreateRequest(GURL("chrome://network-error/-105"),
115 GURL("chrome://network-error/-105"), net::HIGHEST, &delegate_); 120 net::HIGHEST, &delegate_);
116 error_request->Start(); 121 error_request->Start();
117 base::RunLoop().Run(); 122 base::RunLoop().Run();
118 EXPECT_EQ(net::URLRequestStatus::FAILED, error_request->status().status()); 123 EXPECT_EQ(net::URLRequestStatus::FAILED, error_request->status().status());
119 EXPECT_EQ(net::ERR_NAME_NOT_RESOLVED, error_request->status().error()); 124 EXPECT_EQ(net::ERR_NAME_NOT_RESOLVED, error_request->status().error());
120 } 125 }
121 126
122 // Check for an invalid network error page request via chrome://network-error/. 127 // Check for an invalid network error page request via chrome://network-error/.
123 TEST_F(UrlDataManagerBackendTest, ChromeNetworkErrorPageRequestFailed) { 128 TEST_F(UrlDataManagerBackendTest, ChromeNetworkErrorPageRequestFailed) {
124 scoped_ptr<net::URLRequest> error_request = 129 std::unique_ptr<net::URLRequest> error_request =
125 url_request_context_.CreateRequest( 130 url_request_context_.CreateRequest(
126 GURL("chrome://network-error/-123456789"), net::HIGHEST, &delegate_); 131 GURL("chrome://network-error/-123456789"), net::HIGHEST, &delegate_);
127 error_request->Start(); 132 error_request->Start();
128 base::RunLoop().Run(); 133 base::RunLoop().Run();
129 EXPECT_EQ(net::URLRequestStatus::FAILED, error_request->status().status()); 134 EXPECT_EQ(net::URLRequestStatus::FAILED, error_request->status().status());
130 EXPECT_EQ(net::ERR_INVALID_URL, error_request->status().error()); 135 EXPECT_EQ(net::ERR_INVALID_URL, error_request->status().error());
131 } 136 }
132 137
133 } // namespace content 138 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/webui/url_data_manager_backend.cc ('k') | content/browser/webui/url_data_source_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698