b4d3e1ceba
Reason for revert: [Sheriff] Changes layout tests: http://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2032/builds/429 See e.g.: https://storage.googleapis.com/chromium-layout-test-archives/V8-Blink_Linux_32/429/layout-test-results/inspector/console/console-big-array-pretty-diff.html Please upload a blink side needsmanualrebaseline change first for these tests if the change is intended. Please also add a blink trybot on a reland of this CL. Original issue's description: > Add %TypedArray% to proto chain > > According to the ES6 spec, the main methods and getters shouldn't > be properties of the individual TypedArray objects and prototypes > but instead on %TypedArray% and %TypedArray%.prototype. This > difference is observable through introspection. This patch moves > some methods and getters to the proper place, with the exception > of %TypedArray%.prototype.subarray and harmony methods. These will > be moved in follow-on patches. > > BUG=v8:4085 > LOG=Y > R=adamk > > Committed: https://crrev.com/a10590158260737b256fac3254b4939f48f90095 > Cr-Commit-Position: refs/heads/master@{#29057} TBR=adamk@chromium.org,arv@chromium.org,littledan@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4085 Review URL: https://codereview.chromium.org/1192433003 Cr-Commit-Position: refs/heads/master@{#29070}
54 lines
1.5 KiB
JavaScript
54 lines
1.5 KiB
JavaScript
// Copyright 2015 the V8 project authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
// Flags: --harmony-tostring
|
|
|
|
'use strict';
|
|
|
|
function assertGetterName(expected, object, name) {
|
|
var descr = Object.getOwnPropertyDescriptor(object, name);
|
|
assertSame(expected, descr.get.name);
|
|
}
|
|
|
|
|
|
function assertSetterName(expected, object, name) {
|
|
var descr = Object.getOwnPropertyDescriptor(object, name);
|
|
assertSame(expected, descr.set.name);
|
|
}
|
|
|
|
|
|
assertGetterName('get byteLength', ArrayBuffer.prototype, 'byteLength');
|
|
assertGetterName('get size', Set.prototype, 'size');
|
|
assertGetterName('get size', Map.prototype, 'size');
|
|
|
|
|
|
let typedArrays = [
|
|
Uint8Array,
|
|
Int8Array,
|
|
Uint16Array,
|
|
Int16Array,
|
|
Uint32Array,
|
|
Int32Array,
|
|
Float32Array,
|
|
Float64Array,
|
|
Uint8ClampedArray
|
|
];
|
|
|
|
for (let f of typedArrays) {
|
|
assertGetterName('get buffer', f.prototype, 'buffer');
|
|
assertGetterName('get byteOffset', f.prototype, 'byteOffset');
|
|
assertGetterName('get byteLength', f.prototype, 'byteLength');
|
|
assertGetterName('get length', f.prototype, 'length');
|
|
assertGetterName('get [Symbol.toStringTag]', f.prototype, Symbol.toStringTag);
|
|
}
|
|
|
|
|
|
assertGetterName('get buffer', DataView.prototype, 'buffer');
|
|
assertGetterName('get byteOffset', DataView.prototype, 'byteOffset');
|
|
assertGetterName('get byteLength', DataView.prototype, 'byteLength');
|
|
|
|
|
|
assertGetterName('get __proto__', Object.prototype, '__proto__');
|
|
assertSetterName('set __proto__', Object.prototype, '__proto__');
|