From c8277ef25a5e89ac4252904f3adc0c5b12016699 Mon Sep 17 00:00:00 2001 From: Citrons <909229731@qq.com> Date: Mon, 17 Aug 2026 17:23:29 +0800 Subject: [PATCH] =?UTF-8?q?test(GOV-011):=20=E8=A1=A5=E5=85=85=20Node=2022?= =?UTF-8?q?=20=E7=B3=BB=E5=88=97=E8=BE=B9=E7=95=8C=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tools/runtime/verify-runtime.test.mjs | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/tools/runtime/verify-runtime.test.mjs b/tools/runtime/verify-runtime.test.mjs index 8f12517..e472ece 100644 --- a/tools/runtime/verify-runtime.test.mjs +++ b/tools/runtime/verify-runtime.test.mjs @@ -3,18 +3,20 @@ import test from 'node:test'; import { assertSupportedRuntime } from './verify-runtime.mjs'; -test('只接受 Node 22 与 pnpm 10', () => { - assert.doesNotThrow(() => - assertSupportedRuntime({ nodeVersion: '22.11.0', pnpmVersion: '10.25.0' }), - ); +test('接受完整 Node.js 22.x 并拒绝相邻主版本', () => { + for (const nodeVersion of ['22.0.0', '22.11.0', '22.99.123-beta.1+build.7']) { + assert.doesNotThrow(() => assertSupportedRuntime({ nodeVersion, pnpmVersion: '10.25.0' })); + } - for (const nodeVersion of ['20.20.2', '24.0.0']) { + for (const nodeVersion of ['21.7.3', '23.0.0']) { assert.throws( () => assertSupportedRuntime({ nodeVersion, pnpmVersion: '10.25.0' }), new RegExp(`Node\\.js 必须为 22\\.x,实际 ${nodeVersion.replaceAll('.', '\\.')}`), ); } +}); +test('只接受 pnpm 10.x', () => { for (const pnpmVersion of ['9.15.0', '11.0.0']) { assert.throws( () => assertSupportedRuntime({ nodeVersion: '22.11.0', pnpmVersion }),