OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Flags: --harmony-tostring | 5 // Flags: --harmony-tostring |
6 | 6 |
7 'use strict'; | 7 'use strict'; |
8 | 8 |
9 function assertGetterName(expected, object, name) { | 9 function assertGetterName(expected, object, name) { |
10 var descr = Object.getOwnPropertyDescriptor(object, name); | 10 var descr = Object.getOwnPropertyDescriptor(object, name); |
11 assertSame(expected, descr.get.name); | 11 assertSame(expected, descr.get.name); |
12 } | 12 } |
13 | 13 |
14 | 14 |
15 function assertSetterName(expected, object, name) { | 15 function assertSetterName(expected, object, name) { |
16 var descr = Object.getOwnPropertyDescriptor(object, name); | 16 var descr = Object.getOwnPropertyDescriptor(object, name); |
17 assertSame(expected, descr.set.name); | 17 assertSame(expected, descr.set.name); |
18 } | 18 } |
19 | 19 |
20 | 20 |
21 assertGetterName('get byteLength', ArrayBuffer.prototype, 'byteLength'); | 21 assertGetterName('get byteLength', ArrayBuffer.prototype, 'byteLength'); |
22 assertGetterName('get size', Set.prototype, 'size'); | 22 assertGetterName('get size', Set.prototype, 'size'); |
23 assertGetterName('get size', Map.prototype, 'size'); | 23 assertGetterName('get size', Map.prototype, 'size'); |
24 | 24 |
25 | 25 |
26 let typedArrays = [ | 26 let TypedArray = Uint8Array.__proto__; |
27 Uint8Array, | |
28 Int8Array, | |
29 Uint16Array, | |
30 Int16Array, | |
31 Uint32Array, | |
32 Int32Array, | |
33 Float32Array, | |
34 Float64Array, | |
35 Uint8ClampedArray | |
36 ]; | |
37 | 27 |
38 for (let f of typedArrays) { | 28 assertGetterName('get buffer', TypedArray.prototype, 'buffer'); |
39 assertGetterName('get buffer', f.prototype, 'buffer'); | 29 assertGetterName('get byteOffset', TypedArray.prototype, 'byteOffset'); |
40 assertGetterName('get byteOffset', f.prototype, 'byteOffset'); | 30 assertGetterName('get byteLength', TypedArray.prototype, 'byteLength'); |
41 assertGetterName('get byteLength', f.prototype, 'byteLength'); | 31 assertGetterName('get length', TypedArray.prototype, 'length'); |
42 assertGetterName('get length', f.prototype, 'length'); | 32 assertGetterName('get [Symbol.toStringTag]', TypedArray.prototype, Symbol.toStri
ngTag); |
43 assertGetterName('get [Symbol.toStringTag]', f.prototype, Symbol.toStringTag); | |
44 } | |
45 | 33 |
46 | 34 |
47 assertGetterName('get buffer', DataView.prototype, 'buffer'); | 35 assertGetterName('get buffer', DataView.prototype, 'buffer'); |
48 assertGetterName('get byteOffset', DataView.prototype, 'byteOffset'); | 36 assertGetterName('get byteOffset', DataView.prototype, 'byteOffset'); |
49 assertGetterName('get byteLength', DataView.prototype, 'byteLength'); | 37 assertGetterName('get byteLength', DataView.prototype, 'byteLength'); |
50 | 38 |
51 | 39 |
52 assertGetterName('get __proto__', Object.prototype, '__proto__'); | 40 assertGetterName('get __proto__', Object.prototype, '__proto__'); |
53 assertSetterName('set __proto__', Object.prototype, '__proto__'); | 41 assertSetterName('set __proto__', Object.prototype, '__proto__'); |
OLD | NEW |