blob: 051658eef34444b5505333e830bef9030b599f56 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
function base() { }
class beforeSwizzle extends base {
constructor() {
super(Object.setPrototypeOf(beforeSwizzle, null));
}
}
new beforeSwizzle();
// Again, testing both dynamic prototype dispatch, and that we get the function
// before evaluating args
class beforeThrow extends base {
constructor() {
function thrower() { throw new Error(); }
super(thrower());
}
}
Object.setPrototypeOf(beforeThrow, Math.sin);
// Will throw that Math.sin is not a constructor before evaluating the args
assertThrowsInstanceOf(() => new beforeThrow(), TypeError);
if (typeof reportCompare === 'function')
reportCompare(0,0,"OK");
|