Skip to content

Commit c103e98

Browse files
ZYSzysMylesBorins
authored andcommitted
test: more tests for internal/util/types
PR-URL: #25225 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
1 parent 252a696 commit c103e98

File tree

1 file changed

+123
-15
lines changed

1 file changed

+123
-15
lines changed

Diff for: test/parallel/test-util-types.js

+123-15
Original file line numberDiff line numberDiff line change
@@ -120,39 +120,147 @@ for (const [ value, _method ] of [
120120
{
121121
const primitive = true;
122122
const arrayBuffer = new ArrayBuffer();
123+
const buffer = Buffer.from(arrayBuffer);
123124
const dataView = new DataView(arrayBuffer);
124-
const int32Array = new Int32Array(arrayBuffer);
125125
const uint8Array = new Uint8Array(arrayBuffer);
126-
const buffer = Buffer.from(arrayBuffer);
126+
const uint8ClampedArray = new Uint8ClampedArray(arrayBuffer);
127+
const uint16Array = new Uint16Array(arrayBuffer);
128+
const uint32Array = new Uint32Array(arrayBuffer);
129+
const int8Array = new Int8Array(arrayBuffer);
130+
const int16Array = new Int16Array(arrayBuffer);
131+
const int32Array = new Int32Array(arrayBuffer);
132+
const float32Array = new Float32Array(arrayBuffer);
133+
const float64Array = new Float64Array(arrayBuffer);
134+
const bigInt64Array = new BigInt64Array(arrayBuffer);
135+
const bigUint64Array = new BigUint64Array(arrayBuffer);
127136

137+
const fakeBuffer = Object.create(Buffer.prototype);
128138
const fakeDataView = Object.create(DataView.prototype);
129-
const fakeInt32Array = Object.create(Int32Array.prototype);
130139
const fakeUint8Array = Object.create(Uint8Array.prototype);
131-
const fakeBuffer = Object.create(Buffer.prototype);
140+
const fakeUint8ClampedArray = Object.create(Uint8ClampedArray.prototype);
141+
const fakeUint16Array = Object.create(Uint16Array.prototype);
142+
const fakeUint32Array = Object.create(Uint32Array.prototype);
143+
const fakeInt8Array = Object.create(Int8Array.prototype);
144+
const fakeInt16Array = Object.create(Int16Array.prototype);
145+
const fakeInt32Array = Object.create(Int32Array.prototype);
146+
const fakeFloat32Array = Object.create(Float32Array.prototype);
147+
const fakeFloat64Array = Object.create(Float64Array.prototype);
148+
const fakeBigInt64Array = Object.create(BigInt64Array.prototype);
149+
const fakeBigUint64Array = Object.create(BigUint64Array.prototype);
132150

133151
const stealthyDataView =
134-
Object.setPrototypeOf(new DataView(arrayBuffer), Uint8Array.prototype);
135-
const stealthyInt32Array =
136-
Object.setPrototypeOf(new Int32Array(arrayBuffer), uint8Array);
152+
Object.setPrototypeOf(new DataView(arrayBuffer), Uint8Array.prototype);
137153
const stealthyUint8Array =
138-
Object.setPrototypeOf(new Uint8Array(arrayBuffer), ArrayBuffer.prototype);
154+
Object.setPrototypeOf(new Uint8Array(arrayBuffer), ArrayBuffer.prototype);
155+
const stealthyUint8ClampedArray =
156+
Object.setPrototypeOf(
157+
new Uint8ClampedArray(arrayBuffer), ArrayBuffer.prototype
158+
);
159+
const stealthyUint16Array =
160+
Object.setPrototypeOf(new Uint16Array(arrayBuffer), Uint16Array.prototype);
161+
const stealthyUint32Array =
162+
Object.setPrototypeOf(new Uint32Array(arrayBuffer), Uint32Array.prototype);
163+
const stealthyInt8Array =
164+
Object.setPrototypeOf(new Int8Array(arrayBuffer), Int8Array.prototype);
165+
const stealthyInt16Array =
166+
Object.setPrototypeOf(new Int16Array(arrayBuffer), Int16Array.prototype);
167+
const stealthyInt32Array =
168+
Object.setPrototypeOf(new Int32Array(arrayBuffer), Int32Array.prototype);
169+
const stealthyFloat32Array =
170+
Object.setPrototypeOf(
171+
new Float32Array(arrayBuffer), Float32Array.prototype
172+
);
173+
const stealthyFloat64Array =
174+
Object.setPrototypeOf(
175+
new Float64Array(arrayBuffer), Float64Array.prototype
176+
);
177+
const stealthyBigInt64Array =
178+
Object.setPrototypeOf(
179+
new BigInt64Array(arrayBuffer), BigInt64Array.prototype
180+
);
181+
const stealthyBigUint64Array =
182+
Object.setPrototypeOf(
183+
new BigUint64Array(arrayBuffer), BigUint64Array.prototype
184+
);
139185

140186
const all = [
141-
primitive, arrayBuffer, dataView, int32Array, uint8Array, buffer,
142-
fakeDataView, fakeInt32Array, fakeUint8Array, fakeBuffer,
143-
stealthyDataView, stealthyInt32Array, stealthyUint8Array
187+
primitive, arrayBuffer, buffer, fakeBuffer,
188+
dataView, fakeDataView, stealthyDataView,
189+
uint8Array, fakeUint8Array, stealthyUint8Array,
190+
uint8ClampedArray, fakeUint8ClampedArray, stealthyUint8ClampedArray,
191+
uint16Array, fakeUint16Array, stealthyUint16Array,
192+
uint32Array, fakeUint32Array, stealthyUint32Array,
193+
int8Array, fakeInt8Array, stealthyInt8Array,
194+
int16Array, fakeInt16Array, stealthyInt16Array,
195+
int32Array, fakeInt32Array, stealthyInt32Array,
196+
float32Array, fakeFloat32Array, stealthyFloat32Array,
197+
float64Array, fakeFloat64Array, stealthyFloat64Array,
198+
bigInt64Array, fakeBigInt64Array, stealthyBigInt64Array,
199+
bigUint64Array, fakeBigUint64Array, stealthyBigUint64Array
144200
];
145201

146202
const expected = {
147203
isArrayBufferView: [
148-
dataView, int32Array, uint8Array, buffer,
149-
stealthyDataView, stealthyInt32Array, stealthyUint8Array
204+
buffer,
205+
dataView, stealthyDataView,
206+
uint8Array, stealthyUint8Array,
207+
uint8ClampedArray, stealthyUint8ClampedArray,
208+
uint16Array, stealthyUint16Array,
209+
uint32Array, stealthyUint32Array,
210+
int8Array, stealthyInt8Array,
211+
int16Array, stealthyInt16Array,
212+
int32Array, stealthyInt32Array,
213+
float32Array, stealthyFloat32Array,
214+
float64Array, stealthyFloat64Array,
215+
bigInt64Array, stealthyBigInt64Array,
216+
bigUint64Array, stealthyBigUint64Array
150217
],
151218
isTypedArray: [
152-
int32Array, uint8Array, buffer, stealthyInt32Array, stealthyUint8Array
219+
buffer,
220+
uint8Array, stealthyUint8Array,
221+
uint8ClampedArray, stealthyUint8ClampedArray,
222+
uint16Array, stealthyUint16Array,
223+
uint32Array, stealthyUint32Array,
224+
int8Array, stealthyInt8Array,
225+
int16Array, stealthyInt16Array,
226+
int32Array, stealthyInt32Array,
227+
float32Array, stealthyFloat32Array,
228+
float64Array, stealthyFloat64Array,
229+
bigInt64Array, stealthyBigInt64Array,
230+
bigUint64Array, stealthyBigUint64Array
153231
],
154232
isUint8Array: [
155-
uint8Array, buffer, stealthyUint8Array
233+
buffer, uint8Array, stealthyUint8Array
234+
],
235+
isUint8ClampedArray: [
236+
uint8ClampedArray, stealthyUint8ClampedArray
237+
],
238+
isUint16Array: [
239+
uint16Array, stealthyUint16Array
240+
],
241+
isUint32Array: [
242+
uint32Array, stealthyUint32Array
243+
],
244+
isInt8Array: [
245+
int8Array, stealthyInt8Array
246+
],
247+
isInt16Array: [
248+
int16Array, stealthyInt16Array
249+
],
250+
isInt32Array: [
251+
int32Array, stealthyInt32Array
252+
],
253+
isFloat32Array: [
254+
float32Array, stealthyFloat32Array
255+
],
256+
isFloat64Array: [
257+
float64Array, stealthyFloat64Array
258+
],
259+
isBigInt64Array: [
260+
bigInt64Array, stealthyBigInt64Array
261+
],
262+
isBigUint64Array: [
263+
bigUint64Array, stealthyBigUint64Array
156264
]
157265
};
158266

0 commit comments

Comments
 (0)