Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / http / tests / serviceworker / fetch-canvas-tainting.html
blobc00e7b6c7b5d6df629214fd703280076f969662c
1 <!DOCTYPE html>
2 <title>Service Worker: canvas tainting of the fetched image</title>
3 <script src="../resources/testharness.js"></script>
4 <script src="../resources/testharnessreport.js"></script>
5 <script src="../resources/get-host-info.js"></script>
6 <script src="resources/test-helpers.js?pipe=sub"></script>
7 <body>
8 <script>
9 async_test(function(t) {
10 var SCOPE = 'resources/fetch-canvas-tainting-iframe.html';
11 var SCRIPT = 'resources/fetch-rewrite-worker.js';
12 var host_info = get_host_info();
14 login(t, host_info.HTTP_ORIGIN, host_info.HTTP_REMOTE_ORIGIN)
15 .then(function() {
16 return service_worker_unregister_and_register(t, SCRIPT, SCOPE);
18 .then(function(registration) {
19 return wait_for_state(t, registration.installing, 'activated');
21 .then(function() { return with_iframe(SCOPE); })
22 .then(function(frame) {
23 return new Promise(function(resolve, reject) {
24 var channel = new MessageChannel();
25 channel.port1.onmessage = t.step_func(function(e) {
26 assert_equals(e.data.results, 'finish');
27 frame.remove();
28 service_worker_unregister_and_done(t, SCOPE);
29 });
30 frame.contentWindow.postMessage({},
31 host_info['HTTP_ORIGIN'],
32 [channel.port2]);
33 });
35 .catch(unreached_rejection(t));
36 }, 'Verify canvas tainting of fetched image in a Service Worker');
37 </script>
38 </body>