20260917212907
This commit is contained in:
1 parent
6fa3d8535e
commit
5cbf745bbf
115 files changed
+4104
-85
No files matched your search
@@ -0,0 +1,57 @@
|
||||
import { beforeEach, describe, expect, it, vi } from 'vitest'
|
||||
import { mount } from '@vue/test-utils'
|
||||
import { createTestPinia, createTestRouter } from '../helpers/app'
|
||||
import App from '@/App.vue'
|
||||
import { useI18nStore } from '@/stores/i18n'
|
||||
import { uiConfig } from '@/components/ui/config'
|
||||
import { resetUIConfig } from '@/components/ui'
|
||||
|
||||
const loadDataApi = vi.fn()
|
||||
|
||||
vi.mock('@/services/api', () => ({
|
||||
loadDataApi: (...args) => loadDataApi(...args),
|
||||
}))
|
||||
|
||||
async function mountApp() {
|
||||
const pinia = createTestPinia()
|
||||
const router = createTestRouter('/dashboard')
|
||||
await router.isReady()
|
||||
const wrapper = mount(App, {
|
||||
global: { plugins: [pinia, router], stubs: { FpsMonitor: true } },
|
||||
})
|
||||
await wrapper.vm.$nextTick()
|
||||
return { wrapper, i18n: useI18nStore() }
|
||||
}
|
||||
|
||||
beforeEach(() => {
|
||||
localStorage.clear()
|
||||
sessionStorage.clear()
|
||||
loadDataApi.mockReset()
|
||||
loadDataApi.mockResolvedValue({ data: [] })
|
||||
resetUIConfig()
|
||||
})
|
||||
|
||||
describe('App 语言联动(表单布局 + 译文)', () => {
|
||||
it('中文 → 表单横排,并按当前语言加载译文', async () => {
|
||||
const { i18n } = await mountApp()
|
||||
i18n.setLocale('zh-CN')
|
||||
await Promise.resolve()
|
||||
|
||||
expect(uiConfig.form.layout).toBe('horizontal')
|
||||
expect(loadDataApi.mock.calls.some(([, cond]) => String(cond).includes("b_locale = N'zh-CN'"))).toBe(
|
||||
true,
|
||||
)
|
||||
})
|
||||
|
||||
it('切到英文 → 表单竖排,并重新拉取 en-US 译文', async () => {
|
||||
const { i18n } = await mountApp()
|
||||
i18n.setLocale('en-US')
|
||||
await Promise.resolve()
|
||||
await Promise.resolve()
|
||||
|
||||
expect(uiConfig.form.layout).toBe('vertical')
|
||||
expect(loadDataApi.mock.calls.some(([, cond]) => String(cond).includes("b_locale = N'en-US'"))).toBe(
|
||||
true,
|
||||
)
|
||||
})
|
||||
})
|
||||
Reference in new issue
Block a user