From 7e9f3e2ffb4e8b7b8107b6496d07c29f2280c458 Mon Sep 17 00:00:00 2001 From: SamTV12345 <40429738+samtv12345@users.noreply.github.com> Date: Sun, 26 Apr 2026 18:32:36 +0200 Subject: [PATCH] test(container): convert loadSettings + api/pad to TypeScript ESM MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit vitest's include glob is .ts-only (tests/container/specs/**/*.ts), so the two .js files in tests/container were silently never collected, and the docker workflow's `pnpm run test-container` step exited 1 with: No test files found, exiting with code 1 Both files were small and pure CJS (require() + exports). Converted to ESM with vitest imports and import.meta.url-derived __dirname. Original .js files removed. Note: loadSettings reads ../../../settings.json.docker (three segments up to repo root) — preserved the original path. --- .../container/{loadSettings.js => loadSettings.ts} | 13 ++++++++----- src/tests/container/specs/api/{pad.js => pad.ts} | 6 ++++-- 2 files changed, 12 insertions(+), 7 deletions(-) rename src/tests/container/{loadSettings.js => loadSettings.ts} (80%) rename src/tests/container/specs/api/{pad.js => pad.ts} (85%) diff --git a/src/tests/container/loadSettings.js b/src/tests/container/loadSettings.ts similarity index 80% rename from src/tests/container/loadSettings.js rename to src/tests/container/loadSettings.ts index b59ff0165..e764b911f 100644 --- a/src/tests/container/loadSettings.js +++ b/src/tests/container/loadSettings.ts @@ -12,10 +12,15 @@ * back to a default) */ -const fs = require('fs'); -const jsonminify = require('jsonminify'); +import fs from 'fs'; +import jsonminify from 'jsonminify'; +import { fileURLToPath } from 'node:url'; +import { dirname } from 'node:path'; -function loadSettings() { +const __filename = fileURLToPath(import.meta.url); +const __dirname = dirname(__filename); + +export function loadSettings(): any { let settingsStr = fs.readFileSync(`${__dirname}/../../../settings.json.docker`).toString(); // try to parse the settings try { @@ -33,5 +38,3 @@ function loadSettings() { console.error('whoops something is bad with settings'); } } - -exports.loadSettings = loadSettings; diff --git a/src/tests/container/specs/api/pad.js b/src/tests/container/specs/api/pad.ts similarity index 85% rename from src/tests/container/specs/api/pad.js rename to src/tests/container/specs/api/pad.ts index f6ff8ebf5..be8ffb64f 100644 --- a/src/tests/container/specs/api/pad.js +++ b/src/tests/container/specs/api/pad.ts @@ -5,9 +5,11 @@ * TODO: unify those two files, and merge in a single one. */ -const settings = require('../../loadSettings').loadSettings(); -const supertest = require('supertest'); +import { describe, it } from 'vitest'; +import supertest from 'supertest'; +import { loadSettings } from '../../loadSettings.js'; +const settings = loadSettings(); const api = supertest(`http://${settings.ip}:${settings.port}`); const apiVersion = 1;