| Index: LayoutTests/fast/canvas/resources/canvas-createImageBitmap-invalid-args-in-workers.js
 | 
| diff --git a/LayoutTests/fast/canvas/resources/canvas-createImageBitmap-invalid-args-in-workers.js b/LayoutTests/fast/canvas/resources/canvas-createImageBitmap-invalid-args-in-workers.js
 | 
| index e76a40fb58522df4fd9dca07e9eaa9e1580e45e5..633f4e9d4a735cd453aaf56302a6ba4f5ff79ce2 100644
 | 
| --- a/LayoutTests/fast/canvas/resources/canvas-createImageBitmap-invalid-args-in-workers.js
 | 
| +++ b/LayoutTests/fast/canvas/resources/canvas-createImageBitmap-invalid-args-in-workers.js
 | 
| @@ -4,12 +4,30 @@ self.jsTestIsAsync = true;
 | 
|  
 | 
|  description('Test createImageBitmap with invalid arguments in workers.');
 | 
|  
 | 
| +var reason;
 | 
| +
 | 
| +function shouldBeRejected(promise, message) {
 | 
| +    return promise.then(function() {
 | 
| +        testFailed('Resolved unexpectedly: ' + message);
 | 
| +    }, function(e) {
 | 
| +        reason = e;
 | 
| +        testPassed('Rejected as expected: ' + message);
 | 
| +        shouldBeTrue('reason instanceof Error');
 | 
| +        debug(String(e));
 | 
| +    });
 | 
| +}
 | 
| +
 | 
|  var data;
 | 
|  
 | 
|  self.addEventListener('message', function(e) {
 | 
| -  data = e.data;
 | 
| -  shouldThrow("createImageBitmap(null, 0, 0, 10, 10)");
 | 
| -  shouldThrow("createImageBitmap(data, 0, 0, 10, 0)");
 | 
| -  shouldThrow("createImageBitmap(data, 0, 0, 0, 10)");
 | 
| -  finishJSTest();
 | 
| +    data = e.data;
 | 
| +    Promise.resolve().then(function() {
 | 
| +        return shouldBeRejected(createImageBitmap(null, 0, 0, 10, 10), 'null');
 | 
| +    }).then(function() {
 | 
| +        return shouldBeRejected(createImageBitmap(data, 0, 0, 10, 0), 'invalid area');
 | 
| +    }).then(function() {
 | 
| +        return shouldBeRejected(createImageBitmap(data, 0, 0, 0, 10), 'invalid area');
 | 
| +    }).catch(function(e) {
 | 
| +        testFailed('Unexpected rejection: ' + e);
 | 
| +    }).then(finishJSTest, finishJSTest);
 | 
|  });
 | 
| 
 |