Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / fast / canvas / resources / canvas-createImageBitmap-invalid-args-in-workers.js
blob633f4e9d4a735cd453aaf56302a6ba4f5ff79ce2
1 importScripts('../../../resources/js-test.js');
3 self.jsTestIsAsync = true;
5 description('Test createImageBitmap with invalid arguments in workers.');
7 var reason;
9 function shouldBeRejected(promise, message) {
10     return promise.then(function() {
11         testFailed('Resolved unexpectedly: ' + message);
12     }, function(e) {
13         reason = e;
14         testPassed('Rejected as expected: ' + message);
15         shouldBeTrue('reason instanceof Error');
16         debug(String(e));
17     });
20 var data;
22 self.addEventListener('message', function(e) {
23     data = e.data;
24     Promise.resolve().then(function() {
25         return shouldBeRejected(createImageBitmap(null, 0, 0, 10, 10), 'null');
26     }).then(function() {
27         return shouldBeRejected(createImageBitmap(data, 0, 0, 10, 0), 'invalid area');
28     }).then(function() {
29         return shouldBeRejected(createImageBitmap(data, 0, 0, 0, 10), 'invalid area');
30     }).catch(function(e) {
31         testFailed('Unexpected rejection: ' + e);
32     }).then(finishJSTest, finishJSTest);
33 });