const test = require('node:test'); const assert = require('node:assert/strict'); const { reverseCurve } = require('../../src/curves/reverseCurve'); test('reverseCurve: swaps x and y for each pressure key', () => { const input = { 700: { x: [0, 50, 100], y: [0, 10, 20] }, 800: { x: [0, 50, 100], y: [0, 11, 22] }, }; const out = reverseCurve(input); assert.deepEqual(out['700'].x, [0, 10, 20]); assert.deepEqual(out['700'].y, [0, 50, 100]); assert.deepEqual(out['800'].x, [0, 11, 22]); assert.deepEqual(out['800'].y, [0, 50, 100]); }); test('reverseCurve: returns a fresh object with cloned arrays', () => { const input = { 700: { x: [1, 2], y: [3, 4] } }; const out = reverseCurve(input); out['700'].x.push(999); assert.deepEqual(input['700'].x, [1, 2]); assert.deepEqual(input['700'].y, [3, 4]); }); test('reverseCurve: handles empty input', () => { assert.deepEqual(reverseCurve({}), {}); assert.deepEqual(reverseCurve(null), {}); });