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

Side by Side Diff: third_party/WebKit/LayoutTests/http/tests/security/offscreen-canvas-worker-read-blocked-by-setting.html

Issue 2171563002: Add WorkerSettings to expose certain flag values in WorkerGlobalScope (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Nits Created 4 years, 4 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
(Empty)
1 <!DOCTYPE html>
2 <title>Block reading offscreen canvas in worker via StrictCanvasTainting setting </title>
3 <script src="/resources/testharness.js"></script>
4 <script src="/resources/testharnessreport.js"></script>
5 <script id='myWorker' type='text/worker'>
6 self.onmessage = function(e) {
7 var offCanvas = new OffscreenCanvas(100, 100);
8 var context = offCanvas.getContext('2d');
9
10 var name1;
11 try {
12 var imageData = context.getImageData(0, 0, 100, 100);
13 name1 = "NoError";
14 } catch (ex) {
15 name1 = ex.name;
16 }
17
18 var name2;
19 try {
20 var imageCanvas = new OffscreenCanvas(100, 100);
21 var imageCtx = imageCanvas.getContext('2d');
22 imageCtx.fillStyle = "blue";
23 imageCtx.fillRect(0, 0, 100, 100);
24 var imageBitMap = imageCanvas.transferToImageBitmap();
25
26 context.drawImage(imageBitMap, 0, 0, 100, 100);
27 var imageData = context.getImageData(0, 0, 100, 100);
28 name2 = "NoError";
29 } catch (ex) {
30 name2 = ex.name;
31 }
32 self.postMessage([name1, name2]);
33 };
34 </script>
35 <script>
36 if (window.testRunner) {
37 testRunner.overridePreference("WebKitDisableReadingFromCanvas", true);
38 }
39
40 async_test(function() {
41 var blob = new Blob([document.getElementById('myWorker').textContent]);
42 var worker = new Worker(URL.createObjectURL(blob));
43 worker.onmessage = this.step_func(function (e) {
44 assert_equals(e.data[0], "SecurityError", "First test on getImageData");
45 assert_equals(e.data[1], "SecurityError", "Second test on getImageData");
46 this.done();
47 });
48
49 worker.postMessage("");
50 }, "getImageData should throw on worker");
51
52
53 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698