20260903173038

This commit is contained in:
oneao committed 2026-09-03 17:30:39 +08:00
1 parent c8940f6e03
commit 0faf44cffc
55 files changed
+3278 -208

No files matched your search

@@ -35,10 +35,10 @@ function makeStub(label) {
}
vi.mock('@/views/dashboard/index.vue', () => ({ default: makeStub('Dashboard') }))
vi.mock('@/views/system/module-management/index.vue', () => ({
vi.mock('@/views/module/module-management/index.vue', () => ({
default: makeStub('ModuleManagement'),
}))
vi.mock('@/views/system/menu-management/index.vue', () => ({
vi.mock('@/views/module/menu-management/index.vue', () => ({
default: makeStub('MenuManagement'),
}))
vi.mock('@/views/detail/DetailPage.vue', () => ({
@@ -90,7 +90,7 @@ describe('页面 keep-alive 缓存', () => {
expect(counters.Dashboard.mounts).toBe(1)
// 进入模块管理,点两下按钮制造页面状态
await router.push('/system/module-management')
await router.push('/module/module-management')
await flushPromises()
expect(counters.ModuleManagement.mounts).toBe(1)
const inc = () => wrapper.find('[data-page="ModuleManagement"] [data-inc]').trigger('click')
@@ -99,12 +99,12 @@ describe('页面 keep-alive 缓存', () => {
expect(wrapper.find('[data-page="ModuleManagement"]').text()).toContain('#2')
// 切到菜单管理再切回:不重新挂载,clicks 仍为 2
await router.push('/system/menu-management')
await router.push('/module/menu-management')
await flushPromises()
expect(counters.ModuleManagement.unmounted).toBe(0)
expect(counters.ModuleManagement.deactivated).toBe(1)
await router.push('/system/module-management')
await router.push('/module/module-management')
await flushPromises()
expect(counters.ModuleManagement.mounts).toBe(1)
expect(counters.ModuleManagement.unmounted).toBe(0)
@@ -113,19 +113,19 @@ describe('页面 keep-alive 缓存', () => {
// 再绕经工作台切回:缓存依旧(包装组件不得依赖当前路由)
await router.push('/dashboard')
await flushPromises()
await router.push('/system/menu-management')
await router.push('/module/menu-management')
await flushPromises()
await router.push('/system/module-management')
await router.push('/module/module-management')
await flushPromises()
expect(counters.ModuleManagement.mounts).toBe(1)
expect(wrapper.find('[data-page="ModuleManagement"]').text()).toContain('#2')
// 关闭页签后缓存销毁:重新进入应重新挂载
const appStore = useAppStore()
appStore.removeVisitedTab('/system/module-management')
appStore.removeVisitedTab('/module/module-management')
await router.push('/dashboard')
await flushPromises()
await router.push('/system/module-management')
await router.push('/module/module-management')
await flushPromises()
expect(counters.ModuleManagement.mounts).toBe(2)
expect(wrapper.find('[data-page="ModuleManagement"]').text()).toContain('#0')
@@ -160,13 +160,13 @@ describe('页面 keep-alive 缓存', () => {
it('双击页签刷新:页面组件重新挂载、状态归零(缓存槽位不变)', async () => {
const wrapper = await mountApp()
await router.push('/system/module-management')
await router.push('/module/module-management')
await flushPromises()
await wrapper.find('[data-page="ModuleManagement"] [data-inc]').trigger('click')
expect(wrapper.find('[data-page="ModuleManagement"]').text()).toContain('#1')
const appStore = useAppStore()
appStore.refreshRoute('/system/module-management')
appStore.refreshRoute('/module/module-management')
await flushPromises()
expect(counters.ModuleManagement.mounts).toBe(2)
@@ -8,7 +8,7 @@
*/
import { describe, it, expect, beforeEach, vi } from 'vitest'
import { flushPromises } from '@vue/test-utils'
import MenuManagement from '@/views/system/menu-management/index.vue'
import MenuManagement from '@/views/module/menu-management/index.vue'
import { mountPage } from '../helpers/app.js'
vi.mock('@/services/api', () => ({