Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
michael@0 | 1 | function bogusConstruct(target) { return 4; } |
michael@0 | 2 | function bogusConstructUndefined(target) { } |
michael@0 | 3 | |
michael@0 | 4 | var handler = { construct: bogusConstruct } |
michael@0 | 5 | |
michael@0 | 6 | function callable() {} |
michael@0 | 7 | |
michael@0 | 8 | var p = new Proxy(callable, handler); |
michael@0 | 9 | |
michael@0 | 10 | assertThrowsInstanceOf(function () { new p(); }, TypeError, |
michael@0 | 11 | "[[Construct must throw if an object is not returned."); |
michael@0 | 12 | |
michael@0 | 13 | handler.construct = bogusConstructUndefined; |
michael@0 | 14 | assertThrowsInstanceOf(function () { new p(); }, TypeError, |
michael@0 | 15 | "[[Construct must throw if an object is not returned."); |
michael@0 | 16 | |
michael@0 | 17 | if (typeof reportCompare === "function") |
michael@0 | 18 | reportCompare(0,0, "OK"); |