You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

72 lines
2.0 KiB

// Flags: --harmony_simd
'use strict';
require('../common');
const assert = require('assert');
const inspect = require('util').inspect;
const SIMD = global.SIMD; // Pacify eslint.
assert.strictEqual(
inspect(SIMD.Bool16x8()),
'Bool16x8 [ false, false, false, false, false, false, false, false ]');
assert.strictEqual(
inspect(SIMD.Bool32x4()),
'Bool32x4 [ false, false, false, false ]');
assert.strictEqual(
inspect(SIMD.Bool8x16()),
'Bool8x16 [\r\n false,\r\n false,\r\n false,\r\n false,\r\n' +
' false,\r\n false,\r\n false,\r\n false,\r\n false,\r\n' +
' false,\r\n false,\r\n false,\r\n false,\r\n false,\r\n' +
' false,\r\n false ]');
assert.strictEqual(
inspect(SIMD.Bool32x4()),
'Bool32x4 [ false, false, false, false ]');
assert.strictEqual(
inspect(SIMD.Float32x4()),
'Float32x4 [ NaN, NaN, NaN, NaN ]');
assert.strictEqual(
inspect(SIMD.Int16x8()),
'Int16x8 [ 0, 0, 0, 0, 0, 0, 0, 0 ]');
assert.strictEqual(
inspect(SIMD.Int32x4()),
'Int32x4 [ 0, 0, 0, 0 ]');
assert.strictEqual(
inspect(SIMD.Int8x16()),
'Int8x16 [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]');
// The SIMD types below are not available in v5.
if (typeof SIMD.Uint16x8 === 'function') {
assert.strictEqual(
inspect(SIMD.Uint16x8()),
'Uint16x8 [ 0, 0, 0, 0, 0, 0, 0, 0 ]');
}
if (typeof SIMD.Uint32x4 === 'function') {
assert.strictEqual(
inspect(SIMD.Uint32x4()),
'Uint32x4 [ 0, 0, 0, 0 ]');
}
if (typeof SIMD.Uint8x16 === 'function') {
assert.strictEqual(
inspect(SIMD.Uint8x16()),
'Uint8x16 [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]');
}
// Tests from test-inspect.js that should not fail with --harmony_simd.
assert.strictEqual(inspect([]), '[]');
assert.strictEqual(inspect([0]), '[ 0 ]');
assert.strictEqual(inspect({}), '{}');
assert.strictEqual(inspect({foo: 42}), '{ foo: 42 }');
assert.strictEqual(inspect(null), 'null');
assert.strictEqual(inspect(true), 'true');
assert.strictEqual(inspect(false), 'false');