From 5b42f2f440bdc43a8deabc62ed4cc51134ab1151 Mon Sep 17 00:00:00 2001 From: James Prevett Date: Mon, 28 Oct 2024 12:49:47 -0500 Subject: [PATCH] Added multi-backend testing to CI Added test:common NPM script Renamed some test setup scripts --- .github/workflows/ci.yaml | 10 ++++++++-- package.json | 1 + tests/common.ts | 2 +- tests/setup/{Overlay.ts => cow+fetch.ts} | 0 tests/setup/{InMemory.ts => memory.ts} | 0 5 files changed, 10 insertions(+), 3 deletions(-) rename tests/setup/{Overlay.ts => cow+fetch.ts} (100%) rename tests/setup/{InMemory.ts => memory.ts} (100%) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index cbfc43e2..158012e9 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -36,5 +36,11 @@ jobs: - name: Build run: npm run build - - name: Unit tests - run: npm test + - name: Unit tests (common) + run: npm run test:common + + - name: Unit tests (InMemory) + run: npx zenfs-test tests/setup/memory.ts + + - name: Unit tests (Overlay+Fetch) + run: npx zenfs-test tests/setup/cow+fetch.ts diff --git a/package.json b/package.json index 01286b7b..5e9adfdf 100644 --- a/package.json +++ b/package.json @@ -53,6 +53,7 @@ "format": "prettier --write .", "format:check": "prettier --check .", "lint": "eslint src tests", + "test:common": "tsx --test --experimental-test-coverage 'tests/**/!(fs)/*.test.ts' 'tests/*.test.ts'", "test": "tsx --test --experimental-test-coverage", "build": "tsc -p tsconfig.json", "build:docs": "typedoc", diff --git a/tests/common.ts b/tests/common.ts index 4791f6be..c7f60cfd 100644 --- a/tests/common.ts +++ b/tests/common.ts @@ -11,7 +11,7 @@ export function createTSWorker(source: string): Worker { return new Worker(`import('tsx/esm/api').then(tsx => {tsx.register();import('${source}');});`, { eval: true }); } -const setupPath = resolve(process.env.SETUP || join(import.meta.dirname, 'setup/InMemory.ts')); +const setupPath = resolve(process.env.SETUP || join(import.meta.dirname, 'setup/memory.ts')); await import(setupPath).catch(error => { console.log('Failed to import test setup:'); diff --git a/tests/setup/Overlay.ts b/tests/setup/cow+fetch.ts similarity index 100% rename from tests/setup/Overlay.ts rename to tests/setup/cow+fetch.ts diff --git a/tests/setup/InMemory.ts b/tests/setup/memory.ts similarity index 100% rename from tests/setup/InMemory.ts rename to tests/setup/memory.ts