|
1 /* |
|
2 * Any copyright is dedicated to the Public Domain. |
|
3 * http://creativecommons.org/licenses/publicdomain/ |
|
4 */ |
|
5 |
|
6 var errors = ["Error", "EvalError", "RangeError", "ReferenceError", |
|
7 "SyntaxError", "TypeError", "URIError"]; |
|
8 |
|
9 for (var i = 0; i < errors.length; i++) { |
|
10 var error = this[errors[i]]; |
|
11 |
|
12 var desc = Object.getOwnPropertyDescriptor(error.prototype, "name"); |
|
13 assertEq(!!desc, true, errors[i] + ".prototype.name should exist"); |
|
14 assertEq((desc || {}).enumerable, false, errors[i] + ".prototype.name should not be enumerable"); |
|
15 |
|
16 desc = Object.getOwnPropertyDescriptor(error.prototype, "message"); |
|
17 assertEq(!!desc, true, errors[i] + ".prototype.message should exist"); |
|
18 assertEq((desc || {}).enumerable, false, errors[i] + ".prototype.message should not be enumerable"); |
|
19 |
|
20 var instance = new error; |
|
21 desc = Object.getOwnPropertyDescriptor(instance, "message"); |
|
22 assertEq(!!desc, false, "new " + errors[i] + ".message should not exist"); |
|
23 |
|
24 instance = new error("a message"); |
|
25 desc = Object.getOwnPropertyDescriptor(instance, "message"); |
|
26 assertEq(!!desc, true, "new " + errors[i] + "(...).message should exist"); |
|
27 assertEq((desc || {}).enumerable, false, "new " + errors[i] + "(...).message should not be enumerable"); |
|
28 } |
|
29 |
|
30 reportCompare(true, true); |