summaryrefslogtreecommitdiff
path: root/deps/v8/test/mjsunit/web-snapshot/web-snapshot-data-view.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/test/mjsunit/web-snapshot/web-snapshot-data-view.js')
-rw-r--r--deps/v8/test/mjsunit/web-snapshot/web-snapshot-data-view.js127
1 files changed, 0 insertions, 127 deletions
diff --git a/deps/v8/test/mjsunit/web-snapshot/web-snapshot-data-view.js b/deps/v8/test/mjsunit/web-snapshot/web-snapshot-data-view.js
deleted file mode 100644
index 8e2d86134e..0000000000
--- a/deps/v8/test/mjsunit/web-snapshot/web-snapshot-data-view.js
+++ /dev/null
@@ -1,127 +0,0 @@
-// Copyright 2022 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: --experimental-d8-web-snapshot-api --allow-natives-syntax --harmony-rab-gsab --verify-heap
-
-'use strict';
-
-d8.file.execute('test/mjsunit/web-snapshot/web-snapshot-helpers.js');
-
-(function TestDataView() {
- function createObjects() {
- const buffer = new ArrayBuffer(10);
- const array1 = new DataView(buffer, 0, 5);
- const array2 = new DataView(buffer, 5, 5);
- const array3 = new DataView(buffer, 2, 5);
- for (let i = 0; i < 5; i++) {
- array1.setUint8(i, i);
- array2.setUint8(i, i);
- }
- globalThis.array1 = array1;
- globalThis.array2 = array2;
- globalThis.array3 = array3;
- }
- const {array1, array2, array3} = takeAndUseWebSnapshot(createObjects, [
- 'array1',
- 'array2',
- 'array3'
- ]);
- assertEquals(5, array1.byteLength);
- assertEquals(0, array1.byteOffset);
- assertEquals(5, array2.byteLength);
- assertEquals(5, array2.byteOffset);
- assertEquals(5, array3.byteLength);
- assertEquals(2, array3.byteOffset);
-
- for (let i = 0; i < 5; i++) {
- assertEquals(i, array1.getUint8(i));
- assertEquals(i, array2.getUint8(i));
- }
- assertSame(array1.buffer, array2.buffer);
- assertSame(array1.buffer, array3.buffer);
-
- new DataView(array1.buffer).setUint8(2, 10);
- assertTrue(array1.getUint8(2) === 10);
- assertTrue(array3.getUint8(0) === 10);
-})();
-
-(function TestResizableDataView() {
- function createObjects() {
- let resizableArrayBuffer = new ArrayBuffer(1024, {
- maxByteLength: 1024 * 2,
- });
- // 0 offset, auto length
- let array1 = new DataView(resizableArrayBuffer);
- globalThis.array1 = array1;
-
- // Non-0 offset, auto length
- let array2 = new DataView(resizableArrayBuffer, 256);
- globalThis.array2 = array2;
-
- // Non-0 offset, fixed length
- let array3 = new DataView(resizableArrayBuffer, 128, 4);
- globalThis.array3 = array3;
- }
- const {array1, array2, array3} = takeAndUseWebSnapshot(createObjects, [
- 'array1',
- 'array2',
- 'array3',
- ]);
- assertTrue(array1.buffer.resizable);
- assertEquals(2048, array1.buffer.maxByteLength);
- assertEquals(1024, array1.byteLength);
- assertEquals(0, array1.byteOffset, 0);
- assertEquals(768, array2.byteLength); // 1024 - 256
- assertEquals(256, array2.byteOffset);
- assertEquals(4, array3.byteLength);
- assertEquals(128, array3.byteOffset);
-
- array1.buffer.resize(1024 * 2);
- assertEquals(2048, array1.byteLength);
- assertEquals(1792, array2.byteLength); // 2048 - 256
- assertEquals(4, array3.byteLength);
-
- assertSame(array1.buffer, array2.buffer);
- assertSame(array1.buffer, array3.buffer);
-})();
-
-(function TestGrowableDataView() {
- function createObjects() {
- let resizableArrayBuffer = new SharedArrayBuffer(1024, {
- maxByteLength: 1024 * 2,
- });
- // 0 offset, auto length
- let array1 = new DataView(resizableArrayBuffer);
- globalThis.array1 = array1;
-
- // Non-0 offset, auto length
- let array2 = new DataView(resizableArrayBuffer, 256);
- globalThis.array2 = array2;
-
- // Non-0 offset, fixed length
- let array3 = new DataView(resizableArrayBuffer, 128, 4);
- globalThis.array3 = array3;
- }
- const {array1, array2, array3} = takeAndUseWebSnapshot(createObjects, [
- 'array1',
- 'array2',
- 'array3',
- ]);
- assertTrue(array1.buffer.growable);
- assertEquals(2048, array1.buffer.maxByteLength);
- assertEquals(1024, array1.byteLength);
- assertEquals(0, array1.byteOffset);
- assertEquals(768, array2.byteLength); // 1024 - 256
- assertEquals(256, array2.byteOffset);
- assertEquals(4, array3.byteLength);
- assertEquals(128, array3.byteOffset);
-
- array1.buffer.grow(1024 * 2);
- assertEquals(2048, array1.byteLength);
- assertEquals(1792, array2.byteLength); // 2048 - 256
- assertEquals(4, array3.byteLength);
-
- assertSame(array1.buffer, array2.buffer);
- assertSame(array1.buffer, array3.buffer);
-})();