const strictEqual = require('assert').strictEqual; global.TestArrays = class { strings(x) { strictEqual(x, 'y'); return 'x'; } byteStrings(x) { strictEqual(x, 'yz'); return 'xx'; } usvStrings(x) { strictEqual(x, 'abc'); return 'efg'; } f32(x) { strictEqual(x.length, 2); strictEqual(x[0], 1); strictEqual(x[1], 2); return new Float32Array([3, 4, 5]); } f64(x) { strictEqual(x.length, 2); strictEqual(x[0], 1); strictEqual(x[1], 2); return new Float64Array([3, 4, 5]); } i8(x) { strictEqual(x.length, 2); strictEqual(x[0], 1); strictEqual(x[1], 2); return new Int8Array([3, 4, 5]); } i16(x) { strictEqual(x.length, 2); strictEqual(x[0], 1); strictEqual(x[1], 2); return new Int16Array([3, 4, 5]); } i32(x) { strictEqual(x.length, 2); strictEqual(x[0], 1); strictEqual(x[1], 2); return new Int32Array([3, 4, 5]); } u8(x) { strictEqual(x.length, 2); strictEqual(x[0], 1); strictEqual(x[1], 2); return new Uint8Array([3, 4, 5]); } u8Clamped(x) { strictEqual(x.length, 2); strictEqual(x[0], 1); strictEqual(x[1], 2); return new Uint8ClampedArray([3, 4, 5]); } u16(x) { strictEqual(x.length, 2); strictEqual(x[0], 1); strictEqual(x[1], 2); return new Uint16Array([3, 4, 5]); } u32(x) { strictEqual(x.length, 2); strictEqual(x[0], 1); strictEqual(x[1], 2); return new Uint32Array([3, 4, 5]); } };