| Index: test/webkit/fast/js/Promise-exception.js
|
| diff --git a/test/webkit/indexed-setter-on-global-object.js b/test/webkit/fast/js/Promise-exception.js
|
| similarity index 69%
|
| copy from test/webkit/indexed-setter-on-global-object.js
|
| copy to test/webkit/fast/js/Promise-exception.js
|
| index 20c70c24f5e5b8f887cc8ec8f1d4fbd99431c45d..2bc3ca4b915ab7fe5ceb23729163f7e931bd9d24 100644
|
| --- a/test/webkit/indexed-setter-on-global-object.js
|
| +++ b/test/webkit/fast/js/Promise-exception.js
|
| @@ -1,4 +1,4 @@
|
| -// Copyright 2013 the V8 project authors. All rights reserved.
|
| +// Copyright 2014 the V8 project authors. All rights reserved.
|
| // Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
|
| //
|
| // Redistribution and use in source and binary forms, with or without
|
| @@ -21,16 +21,23 @@
|
| // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
| // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
| -description(
|
| -"Tests that creating an indexed setter on the global object doesn't break things."
|
| -);
|
| +// Flags: --harmony
|
| +'use strict';
|
| +description('An exception thrown from an onFulfilled callback should reject the Promise.');
|
|
|
| -var thingy;
|
| +var thisInThenCallback;
|
| +var result;
|
|
|
| -this.__defineSetter__(42, function(value) {
|
| - thingy = value;
|
| +new Promise(function(resolve) {
|
| + resolve('hello');
|
| +}).then(function(result) {
|
| + throw 'foobar';
|
| +}).then(function(localResult) {
|
| + testFailed('Unexpected invocation of onFulfilled');
|
| +}, function(localResult) {
|
| + thisInThenCallback = this;
|
| + shouldBe('thisInThenCallback', 'undefined');
|
| + result = localResult;
|
| + shouldBeEqualToString('result', 'foobar');
|
| + finishJSTest();
|
| });
|
| -
|
| -this[42] = "foo";
|
| -
|
| -shouldBe("thingy", "\"foo\"");
|
|
|