From f01ee38194a36366f528586d9d335bbd5fff020f Mon Sep 17 00:00:00 2001 From: Pradeep Elankumaran Date: Sat, 25 Apr 2026 08:39:56 -0700 Subject: [PATCH] ci: fix reporter test (node:test vs Jest), bump CI timeout, disable bail - Run reporter.test.js with node --test (uses node:test, not Jest) - Exclude reporter.test from Jest run - Bump client timeout to 60s in CI (Camoufox cold start on GitHub runners) - Disable bail so full suite runs even on failure --- .github/workflows/ci.yml | 7 +++++-- jest.config.cjs | 4 ++-- tests/helpers/client.js | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f37046f..0c13e67 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,10 +28,13 @@ jobs: npm install --no-save jest-junit npx playwright install --with-deps firefox - - name: Run tests + - name: Run tests (node:test) + run: node --test tests/unit/reporter.test.js + + - name: Run tests (Jest + browser) run: | xvfb-run --auto-servernum \ node --experimental-vm-modules node_modules/.bin/jest --runInBand --forceExit \ - --testPathIgnorePatterns="live" + --testPathIgnorePatterns="live|reporter\.test" env: CI: true diff --git a/jest.config.cjs b/jest.config.cjs index 2e99ac9..c35ce6c 100644 --- a/jest.config.cjs +++ b/jest.config.cjs @@ -26,8 +26,8 @@ module.exports = { // Verbose output verbose: true, - // Fail fast on first error (useful for CI) - bail: process.env.CI ? 1 : 0, + // Don't bail — run full suite even if a test fails + bail: 0, // Coverage settings (optional) collectCoverage: false, diff --git a/tests/helpers/client.js b/tests/helpers/client.js index 5a44f62..81017a6 100644 --- a/tests/helpers/client.js +++ b/tests/helpers/client.js @@ -7,7 +7,7 @@ class BrowserClient { this.sessionKey = crypto.randomUUID(); this.listItemId = this.sessionKey; // Legacy alias this.tabs = []; - this.timeout = 30000; // 30 second default timeout + this.timeout = process.env.CI ? 60000 : 30000; } async request(method, path, body = null, options = {}) {