diff options
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/backend/eslint.config.js | 8 | ||||
| -rw-r--r-- | packages/backend/jest.js | 20 | ||||
| -rw-r--r-- | packages/backend/package.json | 12 | ||||
| -rw-r--r-- | packages/backend/test-federation/compose.yml | 4 |
4 files changed, 38 insertions, 6 deletions
diff --git a/packages/backend/eslint.config.js b/packages/backend/eslint.config.js index ae7b2baf49..d15a703ba2 100644 --- a/packages/backend/eslint.config.js +++ b/packages/backend/eslint.config.js @@ -1,4 +1,5 @@ import tsParser from '@typescript-eslint/parser'; +import globals from 'globals'; import sharedConfig from '../shared/eslint.config.js'; export default [ @@ -7,6 +8,13 @@ export default [ ignores: ['**/node_modules', 'built', '@types/**/*', 'migration'], }, { + languageOptions: { + globals: { + ...globals.node, + }, + }, + }, + { files: ['**/*.ts', '**/*.tsx'], languageOptions: { parserOptions: { diff --git a/packages/backend/jest.js b/packages/backend/jest.js new file mode 100644 index 0000000000..0cb2c2ab77 --- /dev/null +++ b/packages/backend/jest.js @@ -0,0 +1,20 @@ +#!/usr/bin/env node +import child_process from 'node:child_process'; +import path from 'node:path'; +import url from 'node:url'; + +import semver from 'semver'; + +const __filename = url.fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); + +const args = []; +args.push(...[ + ...semver.satisfies(process.version, '^20.17.0 || ^22.0.0') ? ['--no-experimental-require-module'] : [], + '--experimental-vm-modules', + '--experimental-import-meta-resolve', + path.join(__dirname, 'node_modules/jest/bin/jest.js'), + ...process.argv.slice(2), +]); + +child_process.spawn(process.execPath, args, { stdio: 'inherit' }); diff --git a/packages/backend/package.json b/packages/backend/package.json index 3c6dcc6523..71f301d430 100644 --- a/packages/backend/package.json +++ b/packages/backend/package.json @@ -22,12 +22,12 @@ "typecheck": "tsc --noEmit && tsc -p test --noEmit && tsc -p test-federation --noEmit", "eslint": "eslint --quiet \"{src,test-federation}/**/*.ts\"", "lint": "pnpm typecheck && pnpm eslint", - "jest": "cross-env NODE_ENV=test node --experimental-vm-modules --experimental-import-meta-resolve node_modules/jest/bin/jest.js --forceExit --config jest.config.unit.cjs", - "jest:e2e": "cross-env NODE_ENV=test node --experimental-vm-modules --experimental-import-meta-resolve node_modules/jest/bin/jest.js --forceExit --config jest.config.e2e.cjs", - "jest:fed": "node --experimental-vm-modules --experimental-import-meta-resolve node_modules/jest/bin/jest.js --forceExit --config jest.config.fed.cjs", - "jest-and-coverage": "cross-env NODE_ENV=test node --experimental-vm-modules --experimental-import-meta-resolve node_modules/jest/bin/jest.js --coverage --forceExit --config jest.config.unit.cjs", - "jest-and-coverage:e2e": "cross-env NODE_ENV=test node --experimental-vm-modules --experimental-import-meta-resolve node_modules/jest/bin/jest.js --coverage --forceExit --config jest.config.e2e.cjs", - "jest-clear": "cross-env NODE_ENV=test node --experimental-vm-modules --experimental-import-meta-resolve node_modules/jest/bin/jest.js --clearCache", + "jest": "cross-env NODE_ENV=test node ./jest.js --forceExit --config jest.config.unit.cjs", + "jest:e2e": "cross-env NODE_ENV=test node ./jest.js --forceExit --config jest.config.e2e.cjs", + "jest:fed": "node ./jest.js --forceExit --config jest.config.fed.cjs", + "jest-and-coverage": "cross-env NODE_ENV=test node ./jest.js --coverage --forceExit --config jest.config.unit.cjs", + "jest-and-coverage:e2e": "cross-env NODE_ENV=test node ./jest.js --coverage --forceExit --config jest.config.e2e.cjs", + "jest-clear": "cross-env NODE_ENV=test node ./jest.js --clearCache", "test": "pnpm jest", "test:e2e": "pnpm build && pnpm build:test && pnpm jest:e2e", "test:fed": "pnpm jest:fed", diff --git a/packages/backend/test-federation/compose.yml b/packages/backend/test-federation/compose.yml index 6c010e0089..bd0ac15a31 100644 --- a/packages/backend/test-federation/compose.yml +++ b/packages/backend/test-federation/compose.yml @@ -51,6 +51,10 @@ services: target: /misskey/packages/backend/jest.config.fed.cjs read_only: true - type: bind + source: ../jest.js + target: /misskey/packages/backend/jest.js + read_only: true + - type: bind source: ../../misskey-js/built target: /misskey/packages/misskey-js/built read_only: true |