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

Side by Side Diff: chrome/test/data/webui/net_internals/hsts_view.js

Issue 826423009: Treat HSTS and HPKP state independently. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rsleevi comments Created 5 years, 11 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 (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 test fixture. 5 // Include test fixture.
6 GEN_INCLUDE(['net_internals_test.js']); 6 GEN_INCLUDE(['net_internals_test.js']);
7 7
8 // Anonymous namespace 8 // Anonymous namespace
9 (function() { 9 (function() {
10 10
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
162 /** 162 /**
163 * A Task to try and add an HSTS domain via the HTML form. The task will wait 163 * A Task to try and add an HSTS domain via the HTML form. The task will wait
164 * until the results from the automatically sent query have been received, and 164 * until the results from the automatically sent query have been received, and
165 * then checks them against the expected values. 165 * then checks them against the expected values.
166 * @param {string} domain The domain to send and expected to be returned. 166 * @param {string} domain The domain to send and expected to be returned.
167 * @param {bool} stsSubdomains Whether the HSTS subdomain checkbox should be 167 * @param {bool} stsSubdomains Whether the HSTS subdomain checkbox should be
168 * selected. Also the corresponding expected return value, in the success 168 * selected. Also the corresponding expected return value, in the success
169 * case. 169 * case.
170 * @param {bool} pkpSubdomains Whether the pinning subdomain checkbox should be 170 * @param {bool} pkpSubdomains Whether the pinning subdomain checkbox should be
171 * selected. Also the corresponding expected return value, in the success 171 * selected. Also the corresponding expected return value, in the success
172 * case. 172 * case. When publicKeyHashes is INVALID_HASH, the expected return value
173 * is false.
173 * @param {number} stsObserved The time the STS policy was observed. 174 * @param {number} stsObserved The time the STS policy was observed.
174 * @param {number} pkpObserved The time the PKP policy was observed. 175 * @param {number} pkpObserved The time the PKP policy was observed.
175 * @param {string} publicKeyHashes Public key hash to send. Also the 176 * @param {string} publicKeyHashes Public key hash to send. Also the
176 * corresponding expected return value, on success. When this is the string 177 * corresponding expected return value, on success. When this is the string
177 * INVALID_HASH, an empty string is expected to be received instead. 178 * INVALID_HASH, an empty string is expected to be received instead.
178 * @param {QueryResultType} queryResultType Expected result type. 179 * @param {QueryResultType} queryResultType Expected result type.
179 * @extends {CheckQueryResultTask} 180 * @extends {CheckQueryResultTask}
180 */ 181 */
181 function AddTask(domain, stsSubdomains, pkpSubdomains, publicKeyHashes, 182 function AddTask(domain, stsSubdomains, pkpSubdomains, publicKeyHashes,
182 stsObserved, pkpObserved, queryResultType) { 183 stsObserved, pkpObserved, queryResultType) {
183 this.requestedPublicKeyHashes_ = publicKeyHashes; 184 this.requestedPublicKeyHashes_ = publicKeyHashes;
184 if (publicKeyHashes == INVALID_HASH) 185 this.requestedPkpSubdomains_ = pkpSubdomains;
186 if (publicKeyHashes == INVALID_HASH) {
187 pkpSubdomains = false;
185 publicKeyHashes = ''; 188 publicKeyHashes = '';
189 }
186 CheckQueryResultTask.call(this, domain, stsSubdomains, pkpSubdomains, 190 CheckQueryResultTask.call(this, domain, stsSubdomains, pkpSubdomains,
187 stsObserved, pkpObserved, publicKeyHashes, 191 stsObserved, pkpObserved, publicKeyHashes,
188 queryResultType); 192 queryResultType);
189 } 193 }
190 194
191 AddTask.prototype = { 195 AddTask.prototype = {
192 __proto__: CheckQueryResultTask.prototype, 196 __proto__: CheckQueryResultTask.prototype,
193 197
194 /** 198 /**
195 * Fills out the add form, simulates a click to submit it, and starts 199 * Fills out the add form, simulates a click to submit it, and starts
196 * listening for the results of the query that is automatically submitted. 200 * listening for the results of the query that is automatically submitted.
197 */ 201 */
198 start: function() { 202 start: function() {
199 $(HSTSView.ADD_INPUT_ID).value = this.domain_; 203 $(HSTSView.ADD_INPUT_ID).value = this.domain_;
200 $(HSTSView.ADD_STS_CHECK_ID).checked = this.stsSubdomains_; 204 $(HSTSView.ADD_STS_CHECK_ID).checked = this.stsSubdomains_;
201 $(HSTSView.ADD_PKP_CHECK_ID).checked = this.pkpSubdomains_; 205 $(HSTSView.ADD_PKP_CHECK_ID).checked = this.requestedPkpSubdomains_;
202 $(HSTSView.ADD_PINS_ID).value = this.requestedPublicKeyHashes_; 206 $(HSTSView.ADD_PINS_ID).value = this.requestedPublicKeyHashes_;
203 $(HSTSView.ADD_SUBMIT_ID).click(); 207 $(HSTSView.ADD_SUBMIT_ID).click();
204 CheckQueryResultTask.prototype.start.call(this); 208 CheckQueryResultTask.prototype.start.call(this);
205 } 209 }
206 }; 210 };
207 211
208 /** 212 /**
209 * A Task to query a domain and wait for the results. Parameters mirror those 213 * A Task to query a domain and wait for the results. Parameters mirror those
210 * of CheckQueryResultTask, except |domain| is also the name of the domain to 214 * of CheckQueryResultTask, except |domain| is also the name of the domain to
211 * query. 215 * query.
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after
376 * Adds two different domains and then deletes them. 380 * Adds two different domains and then deletes them.
377 */ 381 */
378 TEST_F('NetInternalsTest', 'netInternalsHSTSViewAddTwice', function() { 382 TEST_F('NetInternalsTest', 'netInternalsHSTSViewAddTwice', function() {
379 NetInternalsTest.switchToView('hsts'); 383 NetInternalsTest.switchToView('hsts');
380 taskQueue = new NetInternalsTest.TaskQueue(true); 384 taskQueue = new NetInternalsTest.TaskQueue(true);
381 var now = new Date().getTime() / 1000.0; 385 var now = new Date().getTime() / 1000.0;
382 taskQueue.addTask(new AddTask('somewhere.com', false, false, VALID_HASH, 386 taskQueue.addTask(new AddTask('somewhere.com', false, false, VALID_HASH,
383 now, now, QueryResultType.SUCCESS)); 387 now, now, QueryResultType.SUCCESS));
384 taskQueue.addTask(new QueryTask('somewhereelse.com', false, false, now, now, 388 taskQueue.addTask(new QueryTask('somewhereelse.com', false, false, now, now,
385 '', QueryResultType.NOT_FOUND)); 389 '', QueryResultType.NOT_FOUND));
386 taskQueue.addTask(new AddTask('somewhereelse.com', true, true, '', 390 taskQueue.addTask(new AddTask('somewhereelse.com', true, false, '',
387 now, now, QueryResultType.SUCCESS)); 391 now, now, QueryResultType.SUCCESS));
388 taskQueue.addTask(new QueryTask('somewhere.com', false, false, now, now, 392 taskQueue.addTask(new QueryTask('somewhere.com', false, false, now, now,
389 VALID_HASH, QueryResultType.SUCCESS)); 393 VALID_HASH, QueryResultType.SUCCESS));
390 taskQueue.addTask(new DeleteTask('somewhere.com', QueryResultType.NOT_FOUND)); 394 taskQueue.addTask(new DeleteTask('somewhere.com', QueryResultType.NOT_FOUND));
391 taskQueue.addTask(new QueryTask('somewhereelse.com', true, true, now, now, '', 395 taskQueue.addTask(new QueryTask('somewhereelse.com', true, false, now, now,
392 QueryResultType.SUCCESS)); 396 '', QueryResultType.SUCCESS));
393 taskQueue.addTask(new DeleteTask('somewhereelse.com', 397 taskQueue.addTask(new DeleteTask('somewhereelse.com',
394 QueryResultType.NOT_FOUND)); 398 QueryResultType.NOT_FOUND));
395 taskQueue.run(true); 399 taskQueue.run(true);
396 }); 400 });
397 401
398 })(); // Anonymous namespace 402 })(); // Anonymous namespace
OLDNEW
« no previous file with comments | « chrome/browser/ui/webui/net_internals/net_internals_ui.cc ('k') | net/http/http_security_headers.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698