[JSC] Do not use asArrayModes() with Structures because it discards TypedArray inform...
[WebKit-https.git] / JSTests / stress / domjit-getter-complex-with-incorrect-object.js
1 var createDOMJITGetterComplexObject = $vm.createDOMJITGetterComplexObject;
2
3 function shouldThrow(func, errorMessage) {
4     var errorThrown = false;
5     var error = null;
6     try {
7         func();
8     } catch (e) {
9         errorThrown = true;
10         error = e;
11     }
12     if (!errorThrown)
13         throw new Error('not thrown');
14     if (String(error) !== errorMessage)
15         throw new Error(`bad error: ${String(error)}`);
16 }
17
18 var complex = createDOMJITGetterComplexObject();
19 var object = {};
20 object.__proto__ = complex;
21 function access(object)
22 {
23     return object.customGetter;
24 }
25 noInline(access);
26 for (var i = 0; i < 1e4; ++i) {
27     shouldThrow(() => {
28         access(object);
29     }, `TypeError: The DOMJITGetterComplex.customGetter getter can only be used on instances of DOMJITGetterComplex`);
30 }