diff --git a/jest.config.cjs b/jest.config.cjs index 9821a4d..e890629 100644 --- a/jest.config.cjs +++ b/jest.config.cjs @@ -20,4 +20,7 @@ module.exports = { coverageDirectory: 'coverage', coverageReporters: ['text', 'lcov'], verbose: true, + // Must have: fake-indexeddb + debounce timers keep event loop alive + forceExit: true, + testTimeout: 15000, }; diff --git a/package.json b/package.json index 1153b2f..3338fb8 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,8 @@ "scripts": { "build": "rollup -c", "dev": "rollup -c -w", - "test": "jest --coverage", + "test": "jest", + "test:coverage": "jest --coverage", "test:watch": "jest --watch", "lint": "eslint \"src/**/*.ts\"", "lint:fix": "eslint \"src/**/*.ts\" --fix", diff --git a/tests/utils.test.ts b/tests/utils.test.ts index 2a9dbc8..d59b0cb 100644 --- a/tests/utils.test.ts +++ b/tests/utils.test.ts @@ -40,25 +40,25 @@ describe('escapeHTML', () => { describe('debounce', () => { test('延迟执行', (done) => { let called = 0; - const fn = debounce(() => { called++; }, 50); + const fn = debounce(() => { called++; }, 20); fn(); expect(called).toBe(0); setTimeout(() => { expect(called).toBe(1); done(); - }, 100); + }, 50); }); test('多次调用只执行最后一次', (done) => { let result = 0; - const fn = debounce((v: number) => { result = v; }, 50); + const fn = debounce((v: number) => { result = v; }, 20); fn(1); fn(2); fn(3); setTimeout(() => { expect(result).toBe(3); done(); - }, 100); + }, 50); }); });