From f5e46c9bf2f50d66a953fa133161fc829cecff06 Mon Sep 17 00:00:00 2001 From: Matt Mastracci Date: Sat, 10 Feb 2024 13:22:13 -0700 Subject: chore: move cli/tests/ -> tests/ (#22369) This looks like a massive PR, but it's only a move from cli/tests -> tests, and updates of relative paths for files. This is the first step towards aggregate all of the integration test files under tests/, which will lead to a set of integration tests that can run without the CLI binary being built. While we could leave these tests under `cli`, it would require us to keep a more complex directory structure for the various test runners. In addition, we have a lot of complexity to ignore various test files in the `cli` project itself (cargo publish exclusion rules, autotests = false, etc). And finally, the `tests/` folder will eventually house the `test_ffi`, `test_napi` and other testing code, reducing the size of the root repo directory. For easier review, the extremely large and noisy "move" is in the first commit (with no changes -- just a move), while the remainder of the changes to actual files is in the second commit. --- .../test/parallel/test-buffer-writefloat.js | 124 --------------------- 1 file changed, 124 deletions(-) delete mode 100644 cli/tests/node_compat/test/parallel/test-buffer-writefloat.js (limited to 'cli/tests/node_compat/test/parallel/test-buffer-writefloat.js') diff --git a/cli/tests/node_compat/test/parallel/test-buffer-writefloat.js b/cli/tests/node_compat/test/parallel/test-buffer-writefloat.js deleted file mode 100644 index 4dd75f83e..000000000 --- a/cli/tests/node_compat/test/parallel/test-buffer-writefloat.js +++ /dev/null @@ -1,124 +0,0 @@ -// deno-fmt-ignore-file -// deno-lint-ignore-file - -// Copyright Joyent and Node contributors. All rights reserved. MIT license. -// Taken from Node 18.12.1 -// This file is automatically generated by `tools/node_compat/setup.ts`. Do not modify this file manually. - -'use strict'; - -// Tests to verify floats are correctly written - -require('../common'); -const assert = require('assert'); - -const buffer = Buffer.allocUnsafe(8); - -buffer.writeFloatBE(1, 0); -buffer.writeFloatLE(1, 4); -assert.ok(buffer.equals( - new Uint8Array([ 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x3f ]))); - -buffer.writeFloatBE(1 / 3, 0); -buffer.writeFloatLE(1 / 3, 4); -assert.ok(buffer.equals( - new Uint8Array([ 0x3e, 0xaa, 0xaa, 0xab, 0xab, 0xaa, 0xaa, 0x3e ]))); - -buffer.writeFloatBE(3.4028234663852886e+38, 0); -buffer.writeFloatLE(3.4028234663852886e+38, 4); -assert.ok(buffer.equals( - new Uint8Array([ 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f ]))); - -buffer.writeFloatLE(1.1754943508222875e-38, 0); -buffer.writeFloatBE(1.1754943508222875e-38, 4); -assert.ok(buffer.equals( - new Uint8Array([ 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00 ]))); - -buffer.writeFloatBE(0 * -1, 0); -buffer.writeFloatLE(0 * -1, 4); -assert.ok(buffer.equals( - new Uint8Array([ 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80 ]))); - -buffer.writeFloatBE(Infinity, 0); -buffer.writeFloatLE(Infinity, 4); -assert.ok(buffer.equals( - new Uint8Array([ 0x7F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x7F ]))); - -assert.strictEqual(buffer.readFloatBE(0), Infinity); -assert.strictEqual(buffer.readFloatLE(4), Infinity); - -buffer.writeFloatBE(-Infinity, 0); -buffer.writeFloatLE(-Infinity, 4); -assert.ok(buffer.equals( - new Uint8Array([ 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF ]))); - -assert.strictEqual(buffer.readFloatBE(0), -Infinity); -assert.strictEqual(buffer.readFloatLE(4), -Infinity); - -buffer.writeFloatBE(NaN, 0); -buffer.writeFloatLE(NaN, 4); - -// JS only knows a single NaN but there exist two platform specific -// implementations. Therefore, allow both quiet and signalling NaNs. -if (buffer[1] === 0xBF) { - assert.ok( - buffer.equals(new Uint8Array( - [ 0x7F, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0x7F ]))); -} else { - assert.ok( - buffer.equals(new Uint8Array( - [ 0x7F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x7F ]))); -} - -assert.ok(Number.isNaN(buffer.readFloatBE(0))); -assert.ok(Number.isNaN(buffer.readFloatLE(4))); - -// OOB in writeFloat{LE,BE} should throw. -{ - const small = Buffer.allocUnsafe(1); - - ['writeFloatLE', 'writeFloatBE'].forEach((fn) => { - - // Verify that default offset works fine. - buffer[fn](23, undefined); - buffer[fn](23); - - assert.throws( - () => small[fn](11.11, 0), - { - code: 'ERR_BUFFER_OUT_OF_BOUNDS', - name: 'RangeError', - message: 'Attempt to access memory outside buffer bounds' - }); - - ['', '0', null, {}, [], () => {}, true, false].forEach((off) => { - assert.throws( - () => small[fn](23, off), - { code: 'ERR_INVALID_ARG_TYPE' } - ); - }); - - [Infinity, -1, 5].forEach((offset) => { - assert.throws( - () => buffer[fn](23, offset), - { - code: 'ERR_OUT_OF_RANGE', - name: 'RangeError', - message: 'The value of "offset" is out of range. ' + - `It must be >= 0 and <= 4. Received ${offset}` - } - ); - }); - - [NaN, 1.01].forEach((offset) => { - assert.throws( - () => buffer[fn](42, offset), - { - code: 'ERR_OUT_OF_RANGE', - name: 'RangeError', - message: 'The value of "offset" is out of range. ' + - `It must be an integer. Received ${offset}` - }); - }); - }); -} -- cgit v1.2.3