[JSC] Do not use asArrayModes() with Structures because it discards TypedArray inform...
[WebKit-https.git] / JSTests / stress / accessors-get-set-prefix.js
1 function tryGetOwnPropertyDescriptorGetName(obj, property, expectedName)
2 {
3     let descriptor = Object.getOwnPropertyDescriptor(obj, property);
4     if (!descriptor)
5         throw "Couldn't find property descriptor on object " + obj.toString() + " for property " + property.toString();
6
7     let getter = descriptor.get;
8     if (!getter)
9         throw "Property " + property.toString() + " on object " + obj.toString() + " is not a getter";
10
11     let getterName = getter.name;
12     if (getterName !== expectedName)
13         throw "Wrong getter name for property " + property.toString() + " on object " + obj.toString() + " expected " + expectedName + " got " + getterName;
14 }
15
16 tryGetOwnPropertyDescriptorGetName(Array, Symbol.species, "get [Symbol.species]");
17 tryGetOwnPropertyDescriptorGetName(Map, Symbol.species, "get [Symbol.species]");
18 tryGetOwnPropertyDescriptorGetName(Set, Symbol.species, "get [Symbol.species]");
19 tryGetOwnPropertyDescriptorGetName(RegExp, Symbol.species, "get [Symbol.species]");
20 tryGetOwnPropertyDescriptorGetName(Promise, Symbol.species, "get [Symbol.species]");
21 tryGetOwnPropertyDescriptorGetName(Map.prototype, "size", "get size");
22 tryGetOwnPropertyDescriptorGetName(Set.prototype, "size", "get size");
23 tryGetOwnPropertyDescriptorGetName(RegExp.prototype, "flags", "get flags");
24 tryGetOwnPropertyDescriptorGetName(RegExp.prototype, "sticky", "get sticky");
25 tryGetOwnPropertyDescriptorGetName(RegExp.prototype, "source", "get source");
26
27 if (Object.__lookupGetter__("__proto__").name !== "get __proto__")
28     throw "Expected Object __proto__ getter to be named \"get __proto\"";
29
30 if (Object.__lookupSetter__("__proto__").name !== "set __proto__")
31     throw "Expected Object __proto__ setter to be named \"set __proto\"";
32
33 if (Int32Array.prototype.__lookupGetter__("byteOffset").name !== "get byteOffset")
34     throw "Expected TypedArray.prototype byteOffset getter to be named \"get byteOffset\"";