From 12721febaab014c810a5c66e8fe3c808e87ca964 Mon Sep 17 00:00:00 2001 From: Diego Aquino Date: Sun, 12 Jan 2025 08:56:53 -0300 Subject: [PATCH 1/2] test(root): clear vitest mocks by default --- apps/zimic-test-client/vitest.config.mts | 1 + examples/with-openapi-typegen/vitest.config.mts | 1 + examples/with-vitest-browser/vitest.config.mts | 1 + examples/with-vitest-jsdom/vitest.config.mts | 1 + examples/with-vitest-node/vitest.config.mts | 1 + packages/zimic/src/cli/__tests__/cli.node.test.ts | 4 ---- .../src/cli/browser/__tests__/browser.node.test.ts | 1 - .../zimic/src/cli/server/__tests__/server.node.test.ts | 6 ------ .../src/cli/typegen/__tests__/openapi.node.test.ts | 1 - .../src/cli/typegen/__tests__/typegen.node.test.ts | 1 - .../http/interceptorWorker/__tests__/shared/methods.ts | 6 +----- packages/zimic/vitest.config.mts | 10 ++++------ 12 files changed, 10 insertions(+), 24 deletions(-) diff --git a/apps/zimic-test-client/vitest.config.mts b/apps/zimic-test-client/vitest.config.mts index 5692d2a6..9fead009 100644 --- a/apps/zimic-test-client/vitest.config.mts +++ b/apps/zimic-test-client/vitest.config.mts @@ -15,6 +15,7 @@ export default defineConfig({ minWorkers: 1, maxWorkers, maxConcurrency: maxWorkers, + clearMocks: true, coverage: { provider: 'istanbul', reporter: ['text', 'html'], diff --git a/examples/with-openapi-typegen/vitest.config.mts b/examples/with-openapi-typegen/vitest.config.mts index 44bb85fe..3f7e60d9 100644 --- a/examples/with-openapi-typegen/vitest.config.mts +++ b/examples/with-openapi-typegen/vitest.config.mts @@ -7,5 +7,6 @@ export default defineConfig({ environment: 'node', include: ['./tests/**/*.test.ts'], setupFiles: ['./tests/setup.ts'], + clearMocks: true, }, }); diff --git a/examples/with-vitest-browser/vitest.config.mts b/examples/with-vitest-browser/vitest.config.mts index 50dfa48e..8f6733fd 100644 --- a/examples/with-vitest-browser/vitest.config.mts +++ b/examples/with-vitest-browser/vitest.config.mts @@ -8,6 +8,7 @@ export default defineConfig({ globals: true, include: ['./tests/**/*.test.ts'], setupFiles: ['./tests/setup.ts'], + clearMocks: true, browser: { name: 'chromium', provider: 'playwright', diff --git a/examples/with-vitest-jsdom/vitest.config.mts b/examples/with-vitest-jsdom/vitest.config.mts index b78c8a69..eba4178d 100644 --- a/examples/with-vitest-jsdom/vitest.config.mts +++ b/examples/with-vitest-jsdom/vitest.config.mts @@ -8,5 +8,6 @@ export default defineConfig({ environment: 'jsdom', include: ['./tests/**/*.test.ts'], setupFiles: ['./tests/setup.ts'], + clearMocks: true, }, }); diff --git a/examples/with-vitest-node/vitest.config.mts b/examples/with-vitest-node/vitest.config.mts index 44bb85fe..3f7e60d9 100644 --- a/examples/with-vitest-node/vitest.config.mts +++ b/examples/with-vitest-node/vitest.config.mts @@ -7,5 +7,6 @@ export default defineConfig({ environment: 'node', include: ['./tests/**/*.test.ts'], setupFiles: ['./tests/setup.ts'], + clearMocks: true, }, }); diff --git a/packages/zimic/src/cli/__tests__/cli.node.test.ts b/packages/zimic/src/cli/__tests__/cli.node.test.ts index ae03634b..9be3b6ee 100644 --- a/packages/zimic/src/cli/__tests__/cli.node.test.ts +++ b/packages/zimic/src/cli/__tests__/cli.node.test.ts @@ -8,7 +8,6 @@ import runCLI from '../cli'; describe('CLI', () => { const processArgvSpy = vi.spyOn(process, 'argv', 'get'); - const processOnSpy = vi.spyOn(process, 'on'); const rootHelpOutput = [ 'zimic [command]', @@ -24,10 +23,7 @@ describe('CLI', () => { ].join('\n'); beforeEach(() => { - processArgvSpy.mockClear(); processArgvSpy.mockReturnValue([]); - - processOnSpy.mockClear(); }); it('should not throw an error if no command is provided', async () => { diff --git a/packages/zimic/src/cli/browser/__tests__/browser.node.test.ts b/packages/zimic/src/cli/browser/__tests__/browser.node.test.ts index 96749160..f8b81e03 100644 --- a/packages/zimic/src/cli/browser/__tests__/browser.node.test.ts +++ b/packages/zimic/src/cli/browser/__tests__/browser.node.test.ts @@ -12,7 +12,6 @@ describe('CLI (browser)', () => { const processArgvSpy = vi.spyOn(process, 'argv', 'get'); beforeEach(() => { - processArgvSpy.mockClear(); processArgvSpy.mockReturnValue([]); }); diff --git a/packages/zimic/src/cli/server/__tests__/server.node.test.ts b/packages/zimic/src/cli/server/__tests__/server.node.test.ts index 66a81e04..1c8abc7c 100644 --- a/packages/zimic/src/cli/server/__tests__/server.node.test.ts +++ b/packages/zimic/src/cli/server/__tests__/server.node.test.ts @@ -38,17 +38,11 @@ describe('CLI (server)', async () => { const crypto = await importCrypto(); const processArgvSpy = vi.spyOn(process, 'argv', 'get'); - const processOnSpy = vi.spyOn(process, 'on'); const processOffSpy = vi.spyOn(process, 'off'); const processExitSpy = vi.spyOn(process, 'exit').mockReturnValue(undefined as never); beforeEach(() => { - processArgvSpy.mockClear(); processArgvSpy.mockReturnValue([]); - - processOnSpy.mockClear(); - processOffSpy.mockClear(); - processExitSpy.mockClear(); }); afterEach(() => { diff --git a/packages/zimic/src/cli/typegen/__tests__/openapi.node.test.ts b/packages/zimic/src/cli/typegen/__tests__/openapi.node.test.ts index 78419fd9..c40f9caf 100644 --- a/packages/zimic/src/cli/typegen/__tests__/openapi.node.test.ts +++ b/packages/zimic/src/cli/typegen/__tests__/openapi.node.test.ts @@ -95,7 +95,6 @@ describe('Type generation (OpenAPI)', () => { }); beforeEach(() => { - processArgvSpy.mockClear(); processArgvSpy.mockReturnValue([]); schemaInterceptor.clear(); diff --git a/packages/zimic/src/cli/typegen/__tests__/typegen.node.test.ts b/packages/zimic/src/cli/typegen/__tests__/typegen.node.test.ts index a45751b5..1ddd6fc1 100644 --- a/packages/zimic/src/cli/typegen/__tests__/typegen.node.test.ts +++ b/packages/zimic/src/cli/typegen/__tests__/typegen.node.test.ts @@ -7,7 +7,6 @@ describe('Type generation', () => { const processArgvSpy = vi.spyOn(process, 'argv', 'get'); beforeEach(() => { - processArgvSpy.mockClear(); processArgvSpy.mockReturnValue([]); }); diff --git a/packages/zimic/src/interceptor/http/interceptorWorker/__tests__/shared/methods.ts b/packages/zimic/src/interceptor/http/interceptorWorker/__tests__/shared/methods.ts index fc429433..1095729d 100644 --- a/packages/zimic/src/interceptor/http/interceptorWorker/__tests__/shared/methods.ts +++ b/packages/zimic/src/interceptor/http/interceptorWorker/__tests__/shared/methods.ts @@ -1,4 +1,4 @@ -import { afterAll, beforeAll, beforeEach, describe, expect, it, vi } from 'vitest'; +import { afterAll, beforeAll, describe, expect, it, vi } from 'vitest'; import { HttpResponse } from '@/http'; import HttpHeaders from '@/http/headers/HttpHeaders'; @@ -92,10 +92,6 @@ export function declareMethodHttpInterceptorWorkerTests(options: SharedHttpInter } } - beforeEach(() => { - spiedRequestHandler.mockClear(); - }); - it(`should intercept ${method} requests after started`, async () => { await usingHttpInterceptorWorker(workerOptions, async (worker) => { const interceptor = createDefaultHttpInterceptor(); diff --git a/packages/zimic/vitest.config.mts b/packages/zimic/vitest.config.mts index 2b923427..a98bdcd1 100644 --- a/packages/zimic/vitest.config.mts +++ b/packages/zimic/vitest.config.mts @@ -1,16 +1,16 @@ import path from 'path'; -import { ViteUserConfig, defineConfig } from 'vitest/config'; +import { defineConfig } from 'vitest/config'; -export const defaultConfig: ViteUserConfig = { +export default defineConfig({ publicDir: './public', test: { globals: false, testTimeout: 5000, hookTimeout: 5000, - retry: process.env.CI === 'true' ? 1 : 0, setupFiles: ['./tests/setup/shared.ts'], maxWorkers: process.env.CI === 'true' ? '100%' : '50%', minWorkers: 1, + clearMocks: true, coverage: { provider: 'istanbul', reporter: ['text', 'html'], @@ -54,6 +54,4 @@ export const defaultConfig: ViteUserConfig = { include: ['@vitest/coverage-istanbul'], }, plugins: [], -}; - -export default defineConfig(defaultConfig); +}); From 54339ddc1b4734f20bcb1b7c34fe728532458559 Mon Sep 17 00:00:00 2001 From: Diego Aquino Date: Sun, 12 Jan 2025 09:25:07 -0300 Subject: [PATCH 2/2] test(#zimic): re-add test retries on ci --- packages/zimic/vitest.config.mts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/zimic/vitest.config.mts b/packages/zimic/vitest.config.mts index a98bdcd1..3c4cd780 100644 --- a/packages/zimic/vitest.config.mts +++ b/packages/zimic/vitest.config.mts @@ -7,6 +7,7 @@ export default defineConfig({ globals: false, testTimeout: 5000, hookTimeout: 5000, + retry: process.env.CI === 'true' ? 1 : 0, setupFiles: ['./tests/setup/shared.ts'], maxWorkers: process.env.CI === 'true' ? '100%' : '50%', minWorkers: 1,