OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <title>Service Worker: registration stress test</title> | 2 <title>Service Worker: registration stress test</title> |
3 <script src="../../resources/testharness.js"></script> | 3 <script src="../../resources/testharness.js"></script> |
4 <script src="../../resources/testharnessreport.js"></script> | 4 <script src="../../resources/testharnessreport.js"></script> |
5 <script src="../resources/test-helpers.js"></script> | 5 <script src="../resources/test-helpers.js"></script> |
6 <body> | 6 <body> |
7 <script> | 7 <script> |
8 | 8 |
9 async_test(function(t) { | 9 async_test(function(t) { |
10 var step = t.step_func.bind(t); | 10 var step = t.step_func.bind(t); |
11 var url = '../resources/worker-no-op.js'; | 11 var url = '../resources/worker-no-op.js'; |
12 var frames = []; | 12 var frames = []; |
13 | 13 |
14 var number_of_workers = 50; | 14 var number_of_registrations = 50; |
15 var register_promises = []; | 15 var register_promises = []; |
16 | 16 |
17 for (var i = 0; i < number_of_workers; i++) { | 17 for (var i = 0; i < number_of_registrations; i++) { |
18 var scope = i; | 18 var scope = i; |
19 register_promises.push(with_iframe(scope) | 19 register_promises.push(with_iframe(scope) |
20 .then(step(function(f) { | 20 .then(step(function(f) { |
21 frames.push(f); | 21 frames.push(f); |
22 return service_worker_unregister_and_register(t, url, scope); | 22 return service_worker_unregister_and_register(t, url, scope); |
23 }))); | 23 }))); |
24 } | 24 } |
25 | 25 |
26 Promise.all(register_promises) | 26 Promise.all(register_promises) |
27 .then(step(function(workers) { | 27 .then(step(function(registrations) { |
28 var unregister_promises = []; | 28 var unregister_promises = []; |
29 for (var i = 0; i < number_of_workers; i++) { | 29 for (var i = 0; i < number_of_registrations; i++) { |
30 var scope = i; | 30 var scope = i; |
31 frames[i].remove(); | 31 frames[i].remove(); |
32 unregister_promises.push( | 32 unregister_promises.push( |
33 navigator.serviceWorker.unregister(scope)); | 33 navigator.serviceWorker.unregister(scope)); |
34 } | 34 } |
35 return Promise.all(unregister_promises); | 35 return Promise.all(unregister_promises); |
36 })) | 36 })) |
37 .then(step(function() { t.done(); })) | 37 .then(step(function() { t.done(); })) |
38 .catch(unreached_rejection(t)); | 38 .catch(unreached_rejection(t)); |
39 }, 'Registration: stress test'); | 39 }, 'Registration: stress test'); |
40 | 40 |
41 </script> | 41 </script> |
OLD | NEW |