From 34f6f710423deed741575521985eec8d7f9d3bb7 Mon Sep 17 00:00:00 2001 From: Delyan Haralanov Date: Wed, 20 Apr 2022 12:02:44 +0300 Subject: [PATCH] test: enable clearMocks in vitest config (#7263) --- .../components/form/__tests__/form-item.test.tsx | 4 ++-- packages/components/form/__tests__/form.test.tsx | 2 -- .../__tests__/roving-focus-group.test.ts | 1 - .../__tests__/roving-focus-item.test.ts | 1 - .../components/slot/__tests__/only-child.test.tsx | 2 -- .../components/tooltip/__tests__/content.test.ts | 9 --------- .../components/tooltip/__tests__/tooltip.test.ts | 2 -- .../components/tooltip/__tests__/trigger.test.ts | 1 - .../__tests__/dynamic-size-grid.test.ts | 14 +------------- .../__tests__/dynamic-size-list.test.ts | 14 +------------- .../virtual-list/__tests__/fixed-size-grid.test.ts | 14 +------------- .../virtual-list/__tests__/fixed-size-list.test.ts | 14 +------------- .../directives/__tests__/click-outside.test.ts | 2 -- packages/directives/__tests__/repeat-click.test.ts | 6 +----- packages/hooks/__tests__/use-model-toggle.test.tsx | 2 -- .../hooks/__tests__/use-prevent-global.test.ts | 14 +------------- vitest.config.ts | 1 + 17 files changed, 9 insertions(+), 94 deletions(-) diff --git a/packages/components/form/__tests__/form-item.test.tsx b/packages/components/form/__tests__/form-item.test.tsx index 290ab25cde..11ac26f1ae 100644 --- a/packages/components/form/__tests__/form-item.test.tsx +++ b/packages/components/form/__tests__/form-item.test.tsx @@ -114,8 +114,8 @@ describe('ElFormItem', () => { it('should be able to validate with callback without throwing rejection', async () => { const emailInput = formItemRef.value! const callback = vi.fn() - expect(console.warn).toHaveBeenCalled() expect(emailInput.validate('', callback)).resolves.toBe(false) + expect(console.warn).toHaveBeenCalled() await rAF() expect(callback).toHaveBeenCalled() }) @@ -123,8 +123,8 @@ describe('ElFormItem', () => { it('should emit validate event', async () => { const emailInput = formItemRef.value! const callback = vi.fn() - expect(console.warn).toHaveBeenCalled() expect(emailInput.validate('', callback)).resolves.toBe(false) + expect(console.warn).toHaveBeenCalled() await rAF() expect(findForm().emitted('validate')).toEqual([ ['email', false, 'email is required'], diff --git a/packages/components/form/__tests__/form.test.tsx b/packages/components/form/__tests__/form.test.tsx index 072901cd6b..562743af60 100644 --- a/packages/components/form/__tests__/form.test.tsx +++ b/packages/components/form/__tests__/form.test.tsx @@ -569,8 +569,6 @@ describe('Form', () => { const findDomainItems = () => wrapper.findAll('.domain-item') beforeEach(() => { - onSuccess.mockClear() - onError.mockClear() createComponent() }) diff --git a/packages/components/roving-focus-group/__tests__/roving-focus-group.test.ts b/packages/components/roving-focus-group/__tests__/roving-focus-group.test.ts index e311b22cad..fe170d860a 100644 --- a/packages/components/roving-focus-group/__tests__/roving-focus-group.test.ts +++ b/packages/components/roving-focus-group/__tests__/roving-focus-group.test.ts @@ -83,7 +83,6 @@ describe('', () => { await nextTick() }) afterEach(() => { - ;[onFocus, onBlur, onMousedown].forEach((f) => f.mockClear()) wrapper.unmount() }) diff --git a/packages/components/roving-focus-group/__tests__/roving-focus-item.test.ts b/packages/components/roving-focus-group/__tests__/roving-focus-item.test.ts index bd1a3ed11a..a169480197 100644 --- a/packages/components/roving-focus-group/__tests__/roving-focus-item.test.ts +++ b/packages/components/roving-focus-group/__tests__/roving-focus-item.test.ts @@ -102,7 +102,6 @@ describe('', () => { await nextTick() }) afterEach(() => { - ;[onItemFocus, onItemShiftTab].forEach((f) => f.mockClear()) wrapper.unmount() }) diff --git a/packages/components/slot/__tests__/only-child.test.tsx b/packages/components/slot/__tests__/only-child.test.tsx index ff87c5fe1c..b84f1c2a66 100644 --- a/packages/components/slot/__tests__/only-child.test.tsx +++ b/packages/components/slot/__tests__/only-child.test.tsx @@ -5,7 +5,6 @@ import { debugWarn } from '@element-plus/utils' import { FORWARD_REF_INJECTION_KEY } from '@element-plus/hooks' import { OnlyChild } from '../src/only-child' import type { MountingOptions } from '@vue/test-utils' -import type { SpyInstanceFn } from 'vitest' type Slot = NonNullable['slots']>['default']> @@ -34,7 +33,6 @@ describe('ElOnlyChild', () => { let wrapper: ReturnType afterEach(() => { - ;(debugWarn as SpyInstanceFn).mockClear() wrapper?.unmount() }) diff --git a/packages/components/tooltip/__tests__/content.test.ts b/packages/components/tooltip/__tests__/content.test.ts index 48488885a9..8e9f89a690 100644 --- a/packages/components/tooltip/__tests__/content.test.ts +++ b/packages/components/tooltip/__tests__/content.test.ts @@ -91,15 +91,6 @@ describe('', () => { }) afterEach(() => { - ;[ - onOpen, - onClose, - onToggle, - onShow, - onHide, - onBeforeShow, - onBeforeHide, - ].forEach((fn) => fn.mockClear()) open.value = false controlled.value = false trigger.value = 'hover' diff --git a/packages/components/tooltip/__tests__/tooltip.test.ts b/packages/components/tooltip/__tests__/tooltip.test.ts index c4cc42517b..09d03afffd 100644 --- a/packages/components/tooltip/__tests__/tooltip.test.ts +++ b/packages/components/tooltip/__tests__/tooltip.test.ts @@ -7,7 +7,6 @@ import { ElPopperTrigger } from '@element-plus/components/popper' import Tooltip from '../src/tooltip.vue' import type { VNode } from 'vue' -import type { SpyInstanceFn } from 'vitest' vi.mock('@element-plus/utils/error', () => ({ debugWarn: vi.fn(), @@ -32,7 +31,6 @@ describe('', () => { afterEach(() => { wrapper?.unmount() document.body.innerHTML = '' - ;(debugWarn as SpyInstanceFn).mockClear() }) describe('rendering', () => { diff --git a/packages/components/tooltip/__tests__/trigger.test.ts b/packages/components/tooltip/__tests__/trigger.test.ts index c34497396c..8cff53c4d3 100644 --- a/packages/components/tooltip/__tests__/trigger.test.ts +++ b/packages/components/tooltip/__tests__/trigger.test.ts @@ -52,7 +52,6 @@ describe('', () => { let wrapper: ReturnType afterEach(() => { - ;[onOpen, onClose, onToggle, onShow, onHide].forEach((fn) => fn.mockClear()) open.value = false controlled.value = false wrapper?.unmount() diff --git a/packages/components/virtual-list/__tests__/dynamic-size-grid.test.ts b/packages/components/virtual-list/__tests__/dynamic-size-grid.test.ts index db68a61e8e..f1baf6d733 100644 --- a/packages/components/virtual-list/__tests__/dynamic-size-grid.test.ts +++ b/packages/components/virtual-list/__tests__/dynamic-size-grid.test.ts @@ -1,13 +1,5 @@ import { nextTick, unref } from 'vue' -import { - afterAll, - beforeAll, - beforeEach, - describe, - expect, - it, - vi, -} from 'vitest' +import { afterAll, beforeAll, describe, expect, it, vi } from 'vitest' import makeMount from '@element-plus/test-utils/make-mount' import makeScroll from '@element-plus/test-utils/make-scroll' import setupMock from '../setup-mock' @@ -66,10 +58,6 @@ describe('', () => { cleanup() }) - beforeEach(() => { - onItemRendered.mockClear() - }) - describe('render testing', () => { it('should render correctly', async () => { const wrapper = mount() diff --git a/packages/components/virtual-list/__tests__/dynamic-size-list.test.ts b/packages/components/virtual-list/__tests__/dynamic-size-list.test.ts index 4a3391d36a..514db203bd 100644 --- a/packages/components/virtual-list/__tests__/dynamic-size-list.test.ts +++ b/packages/components/virtual-list/__tests__/dynamic-size-list.test.ts @@ -1,13 +1,5 @@ import { nextTick } from 'vue' -import { - afterAll, - beforeAll, - beforeEach, - describe, - expect, - it, - vi, -} from 'vitest' +import { afterAll, beforeAll, describe, expect, it, vi } from 'vitest' import makeMount from '@element-plus/test-utils/make-mount' import setupMock from '../setup-mock' import { @@ -67,10 +59,6 @@ describe('', () => { cleanup() }) - beforeEach(() => { - onItemRendered.mockClear() - }) - describe('render testing', () => { it('should render vertical list correctly', async () => { const wrapper = mount() diff --git a/packages/components/virtual-list/__tests__/fixed-size-grid.test.ts b/packages/components/virtual-list/__tests__/fixed-size-grid.test.ts index ebfe5392ed..2959f1e332 100644 --- a/packages/components/virtual-list/__tests__/fixed-size-grid.test.ts +++ b/packages/components/virtual-list/__tests__/fixed-size-grid.test.ts @@ -1,13 +1,5 @@ import { nextTick, unref } from 'vue' -import { - afterAll, - beforeAll, - beforeEach, - describe, - expect, - it, - vi, -} from 'vitest' +import { afterAll, beforeAll, describe, expect, it, vi } from 'vitest' import makeMount from '@element-plus/test-utils/make-mount' import makeScroll from '@element-plus/test-utils/make-scroll' import setupMock from '../setup-mock' @@ -63,10 +55,6 @@ describe('', () => { cleanup() }) - beforeEach(() => { - onItemRendered.mockClear() - }) - describe('render testing', () => { it('should render correctly', async () => { const wrapper = mount() diff --git a/packages/components/virtual-list/__tests__/fixed-size-list.test.ts b/packages/components/virtual-list/__tests__/fixed-size-list.test.ts index 51034e76e6..f9bdb5e305 100644 --- a/packages/components/virtual-list/__tests__/fixed-size-list.test.ts +++ b/packages/components/virtual-list/__tests__/fixed-size-list.test.ts @@ -1,13 +1,5 @@ import { nextTick } from 'vue' -import { - afterAll, - beforeAll, - beforeEach, - describe, - expect, - it, - vi, -} from 'vitest' +import { afterAll, beforeAll, describe, expect, it, vi } from 'vitest' import makeMount from '@element-plus/test-utils/make-mount' import makeScroll from '@element-plus/test-utils/make-scroll' import setupMock from '../setup-mock' @@ -65,10 +57,6 @@ describe('', () => { cleanup() }) - beforeEach(() => { - onItemRendered.mockClear() - }) - it('should render correctly', async () => { const wrapper = mount() diff --git a/packages/directives/__tests__/click-outside.test.ts b/packages/directives/__tests__/click-outside.test.ts index 3438ab1a28..5f687db214 100644 --- a/packages/directives/__tests__/click-outside.test.ts +++ b/packages/directives/__tests__/click-outside.test.ts @@ -85,8 +85,6 @@ describe('Directives.vue', () => { // clear the previously assigned event object mousedownObject = null mouseupObject = null - - handler.mockClear() }) test('render test', () => { const wrapper = _mount() diff --git a/packages/directives/__tests__/repeat-click.test.ts b/packages/directives/__tests__/repeat-click.test.ts index eb8a4470ed..fe5957b917 100644 --- a/packages/directives/__tests__/repeat-click.test.ts +++ b/packages/directives/__tests__/repeat-click.test.ts @@ -1,5 +1,5 @@ import { mount } from '@vue/test-utils' -import { beforeEach, describe, expect, test, vi } from 'vitest' +import { describe, expect, test, vi } from 'vitest' import sleep from '@element-plus/test-utils/sleep' import RepeatClick from '../repeat-click' @@ -19,10 +19,6 @@ const _mount = () => }, }) -beforeEach(() => { - handler.mockClear() -}) - describe('Directives.vue', () => { test('Click test', async () => { const wrapper = _mount() diff --git a/packages/hooks/__tests__/use-model-toggle.test.tsx b/packages/hooks/__tests__/use-model-toggle.test.tsx index d41e4aa415..e91872e475 100644 --- a/packages/hooks/__tests__/use-model-toggle.test.tsx +++ b/packages/hooks/__tests__/use-model-toggle.test.tsx @@ -52,8 +52,6 @@ describe('use-model-toggle', () => { beforeEach(() => { flag = true wrapper = mount(Comp) - onShow.mockClear() - onHide.mockClear() }) afterEach(() => { diff --git a/packages/hooks/__tests__/use-prevent-global.test.ts b/packages/hooks/__tests__/use-prevent-global.test.ts index 0ef10b5e15..6bc140a0ed 100644 --- a/packages/hooks/__tests__/use-prevent-global.test.ts +++ b/packages/hooks/__tests__/use-prevent-global.test.ts @@ -1,13 +1,5 @@ import { ref } from 'vue' -import { - afterAll, - beforeAll, - beforeEach, - describe, - expect, - it, - vi, -} from 'vitest' +import { afterAll, beforeAll, describe, expect, it, vi } from 'vitest' import triggerEvent from '@element-plus/test-utils/trigger-event' import { usePreventGlobal } from '../use-prevent-global' @@ -18,10 +10,6 @@ describe('usePreventGlobal', () => { document.body.addEventListener(evtName, evtHandler) }) - beforeEach(() => { - evtHandler.mockClear() - }) - afterAll(() => { document.body.removeEventListener(evtName, evtHandler) }) diff --git a/vitest.config.ts b/vitest.config.ts index 16eeecee63..50ae0bd176 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -9,6 +9,7 @@ export default defineConfig({ disabled: true, }, test: { + clearMocks: true, environment: 'jsdom', setupFiles: ['./vitest.setup.ts'], transformMode: {