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

Side by Side Diff: chrome/browser/ui/views/ssl_client_certificate_selector_browsertest.cc

Issue 680133002: Standardize usage of virtual/override/final specifiers. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 1 month 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 (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 "base/bind.h" 5 #include "base/bind.h"
6 #include "base/files/file_path.h" 6 #include "base/files/file_path.h"
7 #include "base/synchronization/waitable_event.h" 7 #include "base/synchronization/waitable_event.h"
8 #include "chrome/browser/profiles/profile.h" 8 #include "chrome/browser/profiles/profile.h"
9 #include "chrome/browser/ssl/ssl_client_auth_requestor_mock.h" 9 #include "chrome/browser/ssl/ssl_client_auth_requestor_mock.h"
10 #include "chrome/browser/ui/browser.h" 10 #include "chrome/browser/ui/browser.h"
(...skipping 24 matching lines...) Expand all
35 // SSLClientAuthHandler. 35 // SSLClientAuthHandler.
36 36
37 class SSLClientCertificateSelectorTest : public InProcessBrowserTest { 37 class SSLClientCertificateSelectorTest : public InProcessBrowserTest {
38 public: 38 public:
39 SSLClientCertificateSelectorTest() 39 SSLClientCertificateSelectorTest()
40 : io_loop_finished_event_(false, false), 40 : io_loop_finished_event_(false, false),
41 url_request_(NULL), 41 url_request_(NULL),
42 selector_(NULL) { 42 selector_(NULL) {
43 } 43 }
44 44
45 virtual void SetUpInProcessBrowserTestFixture() override { 45 void SetUpInProcessBrowserTestFixture() override {
46 base::FilePath certs_dir = net::GetTestCertsDirectory(); 46 base::FilePath certs_dir = net::GetTestCertsDirectory();
47 47
48 mit_davidben_cert_ = net::ImportCertFromFile(certs_dir, "mit.davidben.der"); 48 mit_davidben_cert_ = net::ImportCertFromFile(certs_dir, "mit.davidben.der");
49 ASSERT_NE(static_cast<net::X509Certificate*>(NULL), 49 ASSERT_NE(static_cast<net::X509Certificate*>(NULL),
50 mit_davidben_cert_.get()); 50 mit_davidben_cert_.get());
51 51
52 foaf_me_chromium_test_cert_ = net::ImportCertFromFile( 52 foaf_me_chromium_test_cert_ = net::ImportCertFromFile(
53 certs_dir, "foaf.me.chromium-test-cert.der"); 53 certs_dir, "foaf.me.chromium-test-cert.der");
54 ASSERT_NE(static_cast<net::X509Certificate*>(NULL), 54 ASSERT_NE(static_cast<net::X509Certificate*>(NULL),
55 foaf_me_chromium_test_cert_.get()); 55 foaf_me_chromium_test_cert_.get());
56 56
57 cert_request_info_ = new net::SSLCertRequestInfo; 57 cert_request_info_ = new net::SSLCertRequestInfo;
58 cert_request_info_->host_and_port = net::HostPortPair("foo", 123); 58 cert_request_info_->host_and_port = net::HostPortPair("foo", 123);
59 cert_request_info_->client_certs.push_back(mit_davidben_cert_); 59 cert_request_info_->client_certs.push_back(mit_davidben_cert_);
60 cert_request_info_->client_certs.push_back(foaf_me_chromium_test_cert_); 60 cert_request_info_->client_certs.push_back(foaf_me_chromium_test_cert_);
61 } 61 }
62 62
63 virtual void SetUpOnMainThread() override { 63 void SetUpOnMainThread() override {
64 url_request_context_getter_ = browser()->profile()->GetRequestContext(); 64 url_request_context_getter_ = browser()->profile()->GetRequestContext();
65 65
66 BrowserThread::PostTask( 66 BrowserThread::PostTask(
67 BrowserThread::IO, FROM_HERE, 67 BrowserThread::IO, FROM_HERE,
68 base::Bind(&SSLClientCertificateSelectorTest::SetUpOnIOThread, this)); 68 base::Bind(&SSLClientCertificateSelectorTest::SetUpOnIOThread, this));
69 69
70 io_loop_finished_event_.Wait(); 70 io_loop_finished_event_.Wait();
71 71
72 content::WaitForLoadStop( 72 content::WaitForLoadStop(
73 browser()->tab_strip_model()->GetActiveWebContents()); 73 browser()->tab_strip_model()->GetActiveWebContents());
(...skipping 12 matching lines...) Expand all
86 86
87 auth_requestor_ = new StrictMock<SSLClientAuthRequestorMock>( 87 auth_requestor_ = new StrictMock<SSLClientAuthRequestorMock>(
88 url_request_, 88 url_request_,
89 cert_request_info_); 89 cert_request_info_);
90 90
91 io_loop_finished_event_.Signal(); 91 io_loop_finished_event_.Signal();
92 } 92 }
93 93
94 // Have to release our reference to the auth handler during the test to allow 94 // Have to release our reference to the auth handler during the test to allow
95 // it to be destroyed while the Browser and its IO thread still exist. 95 // it to be destroyed while the Browser and its IO thread still exist.
96 virtual void TearDownOnMainThread() override { 96 void TearDownOnMainThread() override {
97 BrowserThread::PostTask( 97 BrowserThread::PostTask(
98 BrowserThread::IO, FROM_HERE, 98 BrowserThread::IO, FROM_HERE,
99 base::Bind(&SSLClientCertificateSelectorTest::CleanUpOnIOThread, this)); 99 base::Bind(&SSLClientCertificateSelectorTest::CleanUpOnIOThread, this));
100 100
101 io_loop_finished_event_.Wait(); 101 io_loop_finished_event_.Wait();
102 102
103 auth_requestor_ = NULL; 103 auth_requestor_ = NULL;
104 } 104 }
105 105
106 virtual void CleanUpOnIOThread() { 106 virtual void CleanUpOnIOThread() {
(...skipping 18 matching lines...) Expand all
125 scoped_refptr<net::X509Certificate> foaf_me_chromium_test_cert_; 125 scoped_refptr<net::X509Certificate> foaf_me_chromium_test_cert_;
126 scoped_refptr<net::SSLCertRequestInfo> cert_request_info_; 126 scoped_refptr<net::SSLCertRequestInfo> cert_request_info_;
127 scoped_refptr<StrictMock<SSLClientAuthRequestorMock> > auth_requestor_; 127 scoped_refptr<StrictMock<SSLClientAuthRequestorMock> > auth_requestor_;
128 // The selector will be deleted when a cert is selected or the tab is closed. 128 // The selector will be deleted when a cert is selected or the tab is closed.
129 SSLClientCertificateSelector* selector_; 129 SSLClientCertificateSelector* selector_;
130 }; 130 };
131 131
132 class SSLClientCertificateSelectorMultiTabTest 132 class SSLClientCertificateSelectorMultiTabTest
133 : public SSLClientCertificateSelectorTest { 133 : public SSLClientCertificateSelectorTest {
134 public: 134 public:
135 virtual void SetUpInProcessBrowserTestFixture() override { 135 void SetUpInProcessBrowserTestFixture() override {
136 SSLClientCertificateSelectorTest::SetUpInProcessBrowserTestFixture(); 136 SSLClientCertificateSelectorTest::SetUpInProcessBrowserTestFixture();
137 137
138 cert_request_info_1_ = new net::SSLCertRequestInfo; 138 cert_request_info_1_ = new net::SSLCertRequestInfo;
139 cert_request_info_1_->host_and_port = net::HostPortPair("bar", 123); 139 cert_request_info_1_->host_and_port = net::HostPortPair("bar", 123);
140 cert_request_info_1_->client_certs.push_back(mit_davidben_cert_); 140 cert_request_info_1_->client_certs.push_back(mit_davidben_cert_);
141 cert_request_info_1_->client_certs.push_back(foaf_me_chromium_test_cert_); 141 cert_request_info_1_->client_certs.push_back(foaf_me_chromium_test_cert_);
142 142
143 cert_request_info_2_ = new net::SSLCertRequestInfo; 143 cert_request_info_2_ = new net::SSLCertRequestInfo;
144 cert_request_info_2_->host_and_port = net::HostPortPair("bar", 123); 144 cert_request_info_2_->host_and_port = net::HostPortPair("bar", 123);
145 cert_request_info_2_->client_certs.push_back(mit_davidben_cert_); 145 cert_request_info_2_->client_certs.push_back(mit_davidben_cert_);
146 cert_request_info_2_->client_certs.push_back(foaf_me_chromium_test_cert_); 146 cert_request_info_2_->client_certs.push_back(foaf_me_chromium_test_cert_);
147 } 147 }
148 148
149 virtual void SetUpOnMainThread() override { 149 void SetUpOnMainThread() override {
150 // Also calls SetUpOnIOThread. 150 // Also calls SetUpOnIOThread.
151 SSLClientCertificateSelectorTest::SetUpOnMainThread(); 151 SSLClientCertificateSelectorTest::SetUpOnMainThread();
152 152
153 AddTabAtIndex(1, GURL("about:blank"), ui::PAGE_TRANSITION_LINK); 153 AddTabAtIndex(1, GURL("about:blank"), ui::PAGE_TRANSITION_LINK);
154 AddTabAtIndex(2, GURL("about:blank"), ui::PAGE_TRANSITION_LINK); 154 AddTabAtIndex(2, GURL("about:blank"), ui::PAGE_TRANSITION_LINK);
155 ASSERT_TRUE(NULL != browser()->tab_strip_model()->GetWebContentsAt(0)); 155 ASSERT_TRUE(NULL != browser()->tab_strip_model()->GetWebContentsAt(0));
156 ASSERT_TRUE(NULL != browser()->tab_strip_model()->GetWebContentsAt(1)); 156 ASSERT_TRUE(NULL != browser()->tab_strip_model()->GetWebContentsAt(1));
157 ASSERT_TRUE(NULL != browser()->tab_strip_model()->GetWebContentsAt(2)); 157 ASSERT_TRUE(NULL != browser()->tab_strip_model()->GetWebContentsAt(2));
158 content::WaitForLoadStop(browser()->tab_strip_model()->GetWebContentsAt(1)); 158 content::WaitForLoadStop(browser()->tab_strip_model()->GetWebContentsAt(1));
159 content::WaitForLoadStop(browser()->tab_strip_model()->GetWebContentsAt(2)); 159 content::WaitForLoadStop(browser()->tab_strip_model()->GetWebContentsAt(2));
160 160
161 selector_1_ = new SSLClientCertificateSelector( 161 selector_1_ = new SSLClientCertificateSelector(
162 browser()->tab_strip_model()->GetWebContentsAt(1), 162 browser()->tab_strip_model()->GetWebContentsAt(1),
163 auth_requestor_1_->cert_request_info_, 163 auth_requestor_1_->cert_request_info_,
164 base::Bind(&SSLClientAuthRequestorMock::CertificateSelected, 164 base::Bind(&SSLClientAuthRequestorMock::CertificateSelected,
165 auth_requestor_1_)); 165 auth_requestor_1_));
166 selector_1_->Init(); 166 selector_1_->Init();
167 selector_2_ = new SSLClientCertificateSelector( 167 selector_2_ = new SSLClientCertificateSelector(
168 browser()->tab_strip_model()->GetWebContentsAt(2), 168 browser()->tab_strip_model()->GetWebContentsAt(2),
169 auth_requestor_2_->cert_request_info_, 169 auth_requestor_2_->cert_request_info_,
170 base::Bind(&SSLClientAuthRequestorMock::CertificateSelected, 170 base::Bind(&SSLClientAuthRequestorMock::CertificateSelected,
171 auth_requestor_2_)); 171 auth_requestor_2_));
172 selector_2_->Init(); 172 selector_2_->Init();
173 173
174 EXPECT_EQ(2, browser()->tab_strip_model()->active_index()); 174 EXPECT_EQ(2, browser()->tab_strip_model()->active_index());
175 EXPECT_EQ(mit_davidben_cert_.get(), selector_1_->GetSelectedCert()); 175 EXPECT_EQ(mit_davidben_cert_.get(), selector_1_->GetSelectedCert());
176 EXPECT_EQ(mit_davidben_cert_.get(), selector_2_->GetSelectedCert()); 176 EXPECT_EQ(mit_davidben_cert_.get(), selector_2_->GetSelectedCert());
177 } 177 }
178 178
179 virtual void SetUpOnIOThread() override { 179 void SetUpOnIOThread() override {
180 url_request_1_ = 180 url_request_1_ =
181 MakeURLRequest(url_request_context_getter_.get()).release(); 181 MakeURLRequest(url_request_context_getter_.get()).release();
182 url_request_2_ = 182 url_request_2_ =
183 MakeURLRequest(url_request_context_getter_.get()).release(); 183 MakeURLRequest(url_request_context_getter_.get()).release();
184 184
185 auth_requestor_1_ = new StrictMock<SSLClientAuthRequestorMock>( 185 auth_requestor_1_ = new StrictMock<SSLClientAuthRequestorMock>(
186 url_request_1_, 186 url_request_1_,
187 cert_request_info_1_); 187 cert_request_info_1_);
188 auth_requestor_2_ = new StrictMock<SSLClientAuthRequestorMock>( 188 auth_requestor_2_ = new StrictMock<SSLClientAuthRequestorMock>(
189 url_request_2_, 189 url_request_2_,
190 cert_request_info_2_); 190 cert_request_info_2_);
191 191
192 SSLClientCertificateSelectorTest::SetUpOnIOThread(); 192 SSLClientCertificateSelectorTest::SetUpOnIOThread();
193 } 193 }
194 194
195 virtual void TearDownOnMainThread() override { 195 void TearDownOnMainThread() override {
196 auth_requestor_2_ = NULL; 196 auth_requestor_2_ = NULL;
197 auth_requestor_1_ = NULL; 197 auth_requestor_1_ = NULL;
198 SSLClientCertificateSelectorTest::TearDownOnMainThread(); 198 SSLClientCertificateSelectorTest::TearDownOnMainThread();
199 } 199 }
200 200
201 virtual void CleanUpOnIOThread() override { 201 void CleanUpOnIOThread() override {
202 delete url_request_1_; 202 delete url_request_1_;
203 delete url_request_2_; 203 delete url_request_2_;
204 SSLClientCertificateSelectorTest::CleanUpOnIOThread(); 204 SSLClientCertificateSelectorTest::CleanUpOnIOThread();
205 } 205 }
206 206
207 protected: 207 protected:
208 net::URLRequest* url_request_1_; 208 net::URLRequest* url_request_1_;
209 net::URLRequest* url_request_2_; 209 net::URLRequest* url_request_2_;
210 scoped_refptr<net::SSLCertRequestInfo> cert_request_info_1_; 210 scoped_refptr<net::SSLCertRequestInfo> cert_request_info_1_;
211 scoped_refptr<net::SSLCertRequestInfo> cert_request_info_2_; 211 scoped_refptr<net::SSLCertRequestInfo> cert_request_info_2_;
212 scoped_refptr<StrictMock<SSLClientAuthRequestorMock> > auth_requestor_1_; 212 scoped_refptr<StrictMock<SSLClientAuthRequestorMock> > auth_requestor_1_;
213 scoped_refptr<StrictMock<SSLClientAuthRequestorMock> > auth_requestor_2_; 213 scoped_refptr<StrictMock<SSLClientAuthRequestorMock> > auth_requestor_2_;
214 SSLClientCertificateSelector* selector_1_; 214 SSLClientCertificateSelector* selector_1_;
215 SSLClientCertificateSelector* selector_2_; 215 SSLClientCertificateSelector* selector_2_;
216 }; 216 };
217 217
218 class SSLClientCertificateSelectorMultiProfileTest 218 class SSLClientCertificateSelectorMultiProfileTest
219 : public SSLClientCertificateSelectorTest { 219 : public SSLClientCertificateSelectorTest {
220 public: 220 public:
221 virtual void SetUpInProcessBrowserTestFixture() override { 221 void SetUpInProcessBrowserTestFixture() override {
222 SSLClientCertificateSelectorTest::SetUpInProcessBrowserTestFixture(); 222 SSLClientCertificateSelectorTest::SetUpInProcessBrowserTestFixture();
223 223
224 cert_request_info_1_ = new net::SSLCertRequestInfo; 224 cert_request_info_1_ = new net::SSLCertRequestInfo;
225 cert_request_info_1_->host_and_port = net::HostPortPair("foo", 123); 225 cert_request_info_1_->host_and_port = net::HostPortPair("foo", 123);
226 cert_request_info_1_->client_certs.push_back(mit_davidben_cert_); 226 cert_request_info_1_->client_certs.push_back(mit_davidben_cert_);
227 cert_request_info_1_->client_certs.push_back(foaf_me_chromium_test_cert_); 227 cert_request_info_1_->client_certs.push_back(foaf_me_chromium_test_cert_);
228 } 228 }
229 229
230 virtual void SetUpOnMainThread() override { 230 void SetUpOnMainThread() override {
231 browser_1_ = CreateIncognitoBrowser(); 231 browser_1_ = CreateIncognitoBrowser();
232 url_request_context_getter_1_ = browser_1_->profile()->GetRequestContext(); 232 url_request_context_getter_1_ = browser_1_->profile()->GetRequestContext();
233 233
234 // Also calls SetUpOnIOThread. 234 // Also calls SetUpOnIOThread.
235 SSLClientCertificateSelectorTest::SetUpOnMainThread(); 235 SSLClientCertificateSelectorTest::SetUpOnMainThread();
236 236
237 selector_1_ = new SSLClientCertificateSelector( 237 selector_1_ = new SSLClientCertificateSelector(
238 browser_1_->tab_strip_model()->GetActiveWebContents(), 238 browser_1_->tab_strip_model()->GetActiveWebContents(),
239 auth_requestor_1_->cert_request_info_, 239 auth_requestor_1_->cert_request_info_,
240 base::Bind(&SSLClientAuthRequestorMock::CertificateSelected, 240 base::Bind(&SSLClientAuthRequestorMock::CertificateSelected,
241 auth_requestor_1_)); 241 auth_requestor_1_));
242 selector_1_->Init(); 242 selector_1_->Init();
243 243
244 EXPECT_EQ(mit_davidben_cert_.get(), selector_1_->GetSelectedCert()); 244 EXPECT_EQ(mit_davidben_cert_.get(), selector_1_->GetSelectedCert());
245 } 245 }
246 246
247 virtual void SetUpOnIOThread() override { 247 void SetUpOnIOThread() override {
248 url_request_1_ = 248 url_request_1_ =
249 MakeURLRequest(url_request_context_getter_1_.get()).release(); 249 MakeURLRequest(url_request_context_getter_1_.get()).release();
250 250
251 auth_requestor_1_ = new StrictMock<SSLClientAuthRequestorMock>( 251 auth_requestor_1_ = new StrictMock<SSLClientAuthRequestorMock>(
252 url_request_1_, 252 url_request_1_,
253 cert_request_info_1_); 253 cert_request_info_1_);
254 254
255 SSLClientCertificateSelectorTest::SetUpOnIOThread(); 255 SSLClientCertificateSelectorTest::SetUpOnIOThread();
256 } 256 }
257 257
258 virtual void TearDownOnMainThread() override { 258 void TearDownOnMainThread() override {
259 auth_requestor_1_ = NULL; 259 auth_requestor_1_ = NULL;
260 SSLClientCertificateSelectorTest::TearDownOnMainThread(); 260 SSLClientCertificateSelectorTest::TearDownOnMainThread();
261 } 261 }
262 262
263 virtual void CleanUpOnIOThread() override { 263 void CleanUpOnIOThread() override {
264 delete url_request_1_; 264 delete url_request_1_;
265 SSLClientCertificateSelectorTest::CleanUpOnIOThread(); 265 SSLClientCertificateSelectorTest::CleanUpOnIOThread();
266 } 266 }
267 267
268 protected: 268 protected:
269 Browser* browser_1_; 269 Browser* browser_1_;
270 scoped_refptr<net::URLRequestContextGetter> url_request_context_getter_1_; 270 scoped_refptr<net::URLRequestContextGetter> url_request_context_getter_1_;
271 net::URLRequest* url_request_1_; 271 net::URLRequest* url_request_1_;
272 scoped_refptr<net::SSLCertRequestInfo> cert_request_info_1_; 272 scoped_refptr<net::SSLCertRequestInfo> cert_request_info_1_;
273 scoped_refptr<StrictMock<SSLClientAuthRequestorMock> > auth_requestor_1_; 273 scoped_refptr<StrictMock<SSLClientAuthRequestorMock> > auth_requestor_1_;
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
386 EXPECT_TRUE(ui_test_utils::SendKeyPressSync( 386 EXPECT_TRUE(ui_test_utils::SendKeyPressSync(
387 browser_1_, ui::VKEY_RETURN, false, false, false, false)); 387 browser_1_, ui::VKEY_RETURN, false, false, false, false));
388 388
389 Mock::VerifyAndClear(auth_requestor_.get()); 389 Mock::VerifyAndClear(auth_requestor_.get());
390 Mock::VerifyAndClear(auth_requestor_1_.get()); 390 Mock::VerifyAndClear(auth_requestor_1_.get());
391 391
392 // Now let the default selection for auth_requestor_ mock get checked on 392 // Now let the default selection for auth_requestor_ mock get checked on
393 // destruction. 393 // destruction.
394 EXPECT_CALL(*auth_requestor_.get(), CertificateSelected(NULL)); 394 EXPECT_CALL(*auth_requestor_.get(), CertificateSelected(NULL));
395 } 395 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/views/ssl_client_certificate_selector.cc ('k') | chrome/browser/ui/views/status_bubble_views.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698