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

Side by Side Diff: chrome/test/data/extensions/api_test/webrequest/test_auth_required.html

Issue 8775046: Convert another batch of extension tests to manifest_version 2 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 years 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 <script src="framework.js"> 1 <!--
2 </script> 2 * Copyright (c) 2011 The Chromium Authors. All rights reserved. Use of this
3 <script> 3 * source code is governed by a BSD-style license that can be found in the
4 4 * LICENSE file.
5 // Generates a unique authentication URL so each test can run 5 -->
6 // without hitting the HTTP authentication cache. Each test 6 <script src="framework.js"></script>
7 // must use a unique realm, however. 7 <script src="test_auth_required.js"></script>
8 function getURLAuthRequired(realm) {
9 return getServerURL('auth-basic/' + realm + '/subpath?realm=' + realm);
10 }
11
12 runTests([
13 // onAuthRequired is not a blocking function in this variant.
14 function authRequiredNonBlocking() {
15 var realm = 'nonblock';
16 var url = getURLAuthRequired(realm);
17 expect(
18 [ // events
19 { label: "onBeforeRequest",
20 event: "onBeforeRequest",
21 details: {
22 url: url,
23 frameUrl: url
24 }
25 },
26 { label: "onBeforeSendHeaders",
27 event: "onBeforeSendHeaders",
28 details: {
29 url: url,
30 // Note: no requestHeaders because we don't ask for them.
31 },
32 },
33 { label: "onSendHeaders",
34 event: "onSendHeaders",
35 details: {
36 url: url,
37 }
38 },
39 { label: "onHeadersReceived",
40 event: "onHeadersReceived",
41 details: {
42 url: url,
43 responseHeadersExist: true,
44 statusLine: "HTTP/1.0 401 Unauthorized"
45 }
46 },
47 { label: "onAuthRequired",
48 event: "onAuthRequired",
49 details: {
50 url: url,
51 isProxy: false,
52 scheme: "basic",
53 realm: realm,
54 challenger: {host: testServer, port: testServerPort},
55 responseHeadersExist: true,
56 statusLine: "HTTP/1.0 401 Unauthorized",
57 }
58 },
59 { label: "onResponseStarted",
60 event: "onResponseStarted",
61 details: {
62 url: url,
63 fromCache: false,
64 statusCode: 401,
65 ip: "127.0.0.1",
66 responseHeadersExist: true,
67 statusLine: "HTTP/1.0 401 Unauthorized",
68 }
69 },
70 { label: "onCompleted",
71 event: "onCompleted",
72 details: {
73 url: url,
74 fromCache: false,
75 statusCode: 401,
76 ip: "127.0.0.1",
77 responseHeadersExist: true,
78 statusLine: "HTTP/1.0 401 Unauthorized",
79 }
80 },
81 ],
82 [ // event order
83 ["onBeforeRequest", "onBeforeSendHeaders", "onSendHeaders",
84 "onHeadersReceived", "onAuthRequired", "onResponseStarted",
85 "onCompleted"]
86 ],
87 {}, ["responseHeaders"]);
88 navigateAndWait(url);
89 },
90
91 // onAuthRequired is a blocking function but takes no action in this variant.
92 function authRequiredSyncNoAction() {
93 var realm = 'syncnoaction';
94 var url = getURLAuthRequired(realm);
95 expect(
96 [ // events
97 { label: "onBeforeRequest",
98 event: "onBeforeRequest",
99 details: {
100 url: url,
101 frameUrl: url
102 }
103 },
104 { label: "onBeforeSendHeaders",
105 event: "onBeforeSendHeaders",
106 details: {
107 url: url,
108 // Note: no requestHeaders because we don't ask for them.
109 },
110 },
111 { label: "onSendHeaders",
112 event: "onSendHeaders",
113 details: {
114 url: url,
115 }
116 },
117 { label: "onHeadersReceived",
118 event: "onHeadersReceived",
119 details: {
120 url: url,
121 responseHeadersExist: true,
122 statusLine: "HTTP/1.0 401 Unauthorized"
123 }
124 },
125 { label: "onAuthRequired",
126 event: "onAuthRequired",
127 details: {
128 url: url,
129 isProxy: false,
130 scheme: "basic",
131 realm: realm,
132 challenger: {host: testServer, port: testServerPort},
133 responseHeadersExist: true,
134 statusLine: "HTTP/1.0 401 Unauthorized",
135 }
136 },
137 { label: "onResponseStarted",
138 event: "onResponseStarted",
139 details: {
140 url: url,
141 fromCache: false,
142 statusCode: 401,
143 ip: "127.0.0.1",
144 responseHeadersExist: true,
145 statusLine: "HTTP/1.0 401 Unauthorized",
146 }
147 },
148 { label: "onCompleted",
149 event: "onCompleted",
150 details: {
151 url: url,
152 fromCache: false,
153 statusCode: 401,
154 ip: "127.0.0.1",
155 responseHeadersExist: true,
156 statusLine: "HTTP/1.0 401 Unauthorized",
157 }
158 },
159 ],
160 [ // event order
161 ["onBeforeRequest", "onBeforeSendHeaders", "onSendHeaders",
162 "onHeadersReceived", "onAuthRequired", "onResponseStarted",
163 "onCompleted"]
164 ],
165 {}, ["blocking", "responseHeaders"]);
166 navigateAndWait(url);
167 },
168
169 // onAuthRequired is a blocking function that cancels the auth attempt.
170 function authRequiredSyncCancelAuth() {
171 var realm = 'synccancel';
172 var url = getURLAuthRequired(realm);
173 expect(
174 [ // events
175 { label: "onBeforeRequest",
176 event: "onBeforeRequest",
177 details: {
178 url: url,
179 frameUrl: url
180 },
181 retval: {}
182 },
183 { label: "onBeforeSendHeaders",
184 event: "onBeforeSendHeaders",
185 details: {
186 url: url,
187 // Note: no requestHeaders because we don't ask for them.
188 },
189 retval: {}
190 },
191 { label: "onSendHeaders",
192 event: "onSendHeaders",
193 details: {
194 url: url,
195 }
196 },
197 { label: "onHeadersReceived",
198 event: "onHeadersReceived",
199 details: {
200 url: url,
201 responseHeadersExist: true,
202 statusLine: "HTTP/1.0 401 Unauthorized"
203 }
204 },
205 { label: "onAuthRequired",
206 event: "onAuthRequired",
207 details: {
208 url: url,
209 isProxy: false,
210 scheme: "basic",
211 realm: realm,
212 challenger: {host: testServer, port: testServerPort},
213 responseHeadersExist: true,
214 statusLine: "HTTP/1.0 401 Unauthorized",
215 },
216 retval: {cancel: true}
217 },
218 { label: "onResponseStarted",
219 event: "onResponseStarted",
220 details: {
221 url: url,
222 fromCache: false,
223 statusCode: 401,
224 ip: "127.0.0.1",
225 responseHeadersExist: true,
226 statusLine: "HTTP/1.0 401 Unauthorized",
227 }
228 },
229 { label: "onCompleted",
230 event: "onCompleted",
231 details: {
232 url: url,
233 fromCache: false,
234 statusCode: 401,
235 ip: "127.0.0.1",
236 responseHeadersExist: true,
237 statusLine: "HTTP/1.0 401 Unauthorized",
238 }
239 },
240 ],
241 [ // event order
242 ["onBeforeRequest", "onBeforeSendHeaders", "onSendHeaders",
243 "onHeadersReceived", "onAuthRequired", "onResponseStarted",
244 "onCompleted"]
245 ],
246 {},
247 ["responseHeaders", "blocking"]);
248 navigateAndWait(url);
249 },
250
251 // onAuthRequired is a blocking function that sets authentication credentials.
252 function authRequiredSyncSetAuth() {
253 var realm = 'syncsetauth';
254 var url = getURLAuthRequired(realm);
255 expect(
256 [ // events
257 { label: "onBeforeRequest",
258 event: "onBeforeRequest",
259 details: {
260 url: url,
261 frameUrl: url
262 },
263 retval: {}
264 },
265 { label: "onBeforeSendHeaders",
266 event: "onBeforeSendHeaders",
267 details: {
268 url: url,
269 // Note: no requestHeaders because we don't ask for them.
270 },
271 retval: {}
272 },
273 { label: "onSendHeaders",
274 event: "onSendHeaders",
275 details: {
276 url: url,
277 }
278 },
279 { label: "onHeadersReceived",
280 event: "onHeadersReceived",
281 details: {
282 url: url,
283 responseHeadersExist: true,
284 statusLine: "HTTP/1.0 401 Unauthorized"
285 }
286 },
287 { label: "onAuthRequired",
288 event: "onAuthRequired",
289 details: {
290 url: url,
291 isProxy: false,
292 scheme: "basic",
293 realm: realm,
294 challenger: {host: testServer, port: testServerPort},
295 responseHeadersExist: true,
296 statusLine: "HTTP/1.0 401 Unauthorized",
297 },
298 retval: {authCredentials: {username: "foo", password: "secret"}}
299 },
300 { label: "onResponseStarted",
301 event: "onResponseStarted",
302 details: {
303 url: url,
304 fromCache: false,
305 statusCode: 200,
306 ip: "127.0.0.1",
307 responseHeadersExist: true,
308 statusLine: "HTTP/1.1 200 OK",
309 }
310 },
311 { label: "onCompleted",
312 event: "onCompleted",
313 details: {
314 url: url,
315 fromCache: false,
316 statusCode: 200,
317 ip: "127.0.0.1",
318 responseHeadersExist: true,
319 statusLine: "HTTP/1.1 200 OK",
320 }
321 },
322 ],
323 [ // event order
324 ["onBeforeRequest", "onBeforeSendHeaders", "onSendHeaders",
325 "onHeadersReceived", "onAuthRequired", "onResponseStarted",
326 "onCompleted"]
327 ],
328 {},
329 ["responseHeaders", "blocking"]);
330 navigateAndWait(url);
331 },
332
333 // onAuthRequired is an async function but takes no action in this variant.
334 function authRequiredAsyncNoAction() {
335 var realm = 'asyncnoaction';
336 var url = getURLAuthRequired(realm);
337 expect(
338 [ // events
339 { label: "onBeforeRequest",
340 event: "onBeforeRequest",
341 details: {
342 url: url,
343 frameUrl: url
344 }
345 },
346 { label: "onBeforeSendHeaders",
347 event: "onBeforeSendHeaders",
348 details: {
349 url: url,
350 // Note: no requestHeaders because we don't ask for them.
351 },
352 },
353 { label: "onSendHeaders",
354 event: "onSendHeaders",
355 details: {
356 url: url,
357 }
358 },
359 { label: "onHeadersReceived",
360 event: "onHeadersReceived",
361 details: {
362 url: url,
363 responseHeadersExist: true,
364 statusLine: "HTTP/1.0 401 Unauthorized"
365 }
366 },
367 { label: "onAuthRequired",
368 event: "onAuthRequired",
369 details: {
370 url: url,
371 isProxy: false,
372 scheme: "basic",
373 realm: realm,
374 challenger: {host: testServer, port: testServerPort},
375 responseHeadersExist: true,
376 statusLine: "HTTP/1.0 401 Unauthorized",
377 }
378 },
379 { label: "onResponseStarted",
380 event: "onResponseStarted",
381 details: {
382 url: url,
383 fromCache: false,
384 statusCode: 401,
385 ip: "127.0.0.1",
386 responseHeadersExist: true,
387 statusLine: "HTTP/1.0 401 Unauthorized",
388 }
389 },
390 { label: "onCompleted",
391 event: "onCompleted",
392 details: {
393 url: url,
394 fromCache: false,
395 statusCode: 401,
396 ip: "127.0.0.1",
397 responseHeadersExist: true,
398 statusLine: "HTTP/1.0 401 Unauthorized",
399 }
400 },
401 ],
402 [ // event order
403 ["onBeforeRequest", "onBeforeSendHeaders", "onSendHeaders",
404 "onHeadersReceived", "onAuthRequired", "onResponseStarted",
405 "onCompleted"]
406 ],
407 {}, ["asyncBlocking", "responseHeaders"]);
408 navigateAndWait(url);
409 },
410
411 // onAuthRequired is an async function that cancels the auth attempt.
412 function authRequiredAsyncCancelAuth() {
413 var realm = 'asynccancel';
414 var url = getURLAuthRequired(realm);
415 expect(
416 [ // events
417 { label: "onBeforeRequest",
418 event: "onBeforeRequest",
419 details: {
420 url: url,
421 frameUrl: url
422 },
423 retval: {}
424 },
425 { label: "onBeforeSendHeaders",
426 event: "onBeforeSendHeaders",
427 details: {
428 url: url,
429 // Note: no requestHeaders because we don't ask for them.
430 },
431 retval: {}
432 },
433 { label: "onSendHeaders",
434 event: "onSendHeaders",
435 details: {
436 url: url,
437 }
438 },
439 { label: "onHeadersReceived",
440 event: "onHeadersReceived",
441 details: {
442 url: url,
443 responseHeadersExist: true,
444 statusLine: "HTTP/1.0 401 Unauthorized"
445 }
446 },
447 { label: "onAuthRequired",
448 event: "onAuthRequired",
449 details: {
450 url: url,
451 isProxy: false,
452 scheme: "basic",
453 realm: realm,
454 challenger: {host: testServer, port: testServerPort},
455 responseHeadersExist: true,
456 statusLine: "HTTP/1.0 401 Unauthorized",
457 },
458 retval: {cancel: true}
459 },
460 { label: "onResponseStarted",
461 event: "onResponseStarted",
462 details: {
463 url: url,
464 fromCache: false,
465 statusCode: 401,
466 ip: "127.0.0.1",
467 responseHeadersExist: true,
468 statusLine: "HTTP/1.0 401 Unauthorized",
469 }
470 },
471 { label: "onCompleted",
472 event: "onCompleted",
473 details: {
474 url: url,
475 fromCache: false,
476 statusCode: 401,
477 ip: "127.0.0.1",
478 responseHeadersExist: true,
479 statusLine: "HTTP/1.0 401 Unauthorized",
480 }
481 },
482 ],
483 [ // event order
484 ["onBeforeRequest", "onBeforeSendHeaders", "onSendHeaders",
485 "onHeadersReceived", "onAuthRequired", "onResponseStarted",
486 "onCompleted"]
487 ],
488 {},
489 ["responseHeaders", "asyncBlocking"]);
490 navigateAndWait(url);
491 },
492
493 // onAuthRequired is an async function that sets authentication credentials.
494 function authRequiredAsyncSetAuth() {
495 var realm = 'asyncsetauth';
496 var url = getURLAuthRequired(realm);
497 expect(
498 [ // events
499 { label: "onBeforeRequest",
500 event: "onBeforeRequest",
501 details: {
502 url: url,
503 frameUrl: url
504 },
505 retval: {}
506 },
507 { label: "onBeforeSendHeaders",
508 event: "onBeforeSendHeaders",
509 details: {
510 url: url,
511 // Note: no requestHeaders because we don't ask for them.
512 },
513 retval: {}
514 },
515 { label: "onSendHeaders",
516 event: "onSendHeaders",
517 details: {
518 url: url,
519 }
520 },
521 { label: "onHeadersReceived",
522 event: "onHeadersReceived",
523 details: {
524 url: url,
525 responseHeadersExist: true,
526 statusLine: "HTTP/1.0 401 Unauthorized"
527 }
528 },
529 { label: "onAuthRequired",
530 event: "onAuthRequired",
531 details: {
532 url: url,
533 isProxy: false,
534 scheme: "basic",
535 realm: realm,
536 challenger: {host: testServer, port: testServerPort},
537 responseHeadersExist: true,
538 statusLine: "HTTP/1.0 401 Unauthorized",
539 },
540 retval: {authCredentials: {username: "foo", password: "secret"}}
541 },
542 { label: "onResponseStarted",
543 event: "onResponseStarted",
544 details: {
545 url: url,
546 fromCache: false,
547 statusCode: 200,
548 ip: "127.0.0.1",
549 responseHeadersExist: true,
550 statusLine: "HTTP/1.1 200 OK",
551 }
552 },
553 { label: "onCompleted",
554 event: "onCompleted",
555 details: {
556 url: url,
557 fromCache: false,
558 statusCode: 200,
559 ip: "127.0.0.1",
560 responseHeadersExist: true,
561 statusLine: "HTTP/1.1 200 OK",
562 }
563 },
564 ],
565 [ // event order
566 ["onBeforeRequest", "onBeforeSendHeaders", "onSendHeaders",
567 "onHeadersReceived", "onAuthRequired", "onResponseStarted",
568 "onCompleted"]
569 ],
570 {},
571 ["responseHeaders", "asyncBlocking"]);
572 navigateAndWait(url);
573 },
574 ]);
575 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698