@@ -13,6 +13,10 @@ const miniProgramBridgeMocks = vi.hoisted(() => ({
|
||||
returnToWechatMiniProgram: vi.fn()
|
||||
}))
|
||||
|
||||
const hostNavigationTitleMocks = vi.hoisted(() => ({
|
||||
syncHostNavigationTitle: vi.fn()
|
||||
}))
|
||||
|
||||
const testState = vi.hoisted(() => ({
|
||||
onLoadHandler: null as null | (() => void),
|
||||
onBackPressHandler: null as null | (() => boolean)
|
||||
@@ -35,6 +39,10 @@ vi.mock('@/services/WechatMiniProgramBridgeService', () => ({
|
||||
returnToWechatMiniProgram: miniProgramBridgeMocks.returnToWechatMiniProgram
|
||||
}))
|
||||
|
||||
vi.mock('@/utils/hostNavigationTitle', () => ({
|
||||
syncHostNavigationTitle: hostNavigationTitleMocks.syncHostNavigationTitle
|
||||
}))
|
||||
|
||||
vi.mock('@/usecases/explainUseCase', () => ({
|
||||
explainUseCase: {
|
||||
loadExplainHalls: async () => [],
|
||||
@@ -69,6 +77,7 @@ const mountExplainList = () => mount(ExplainListPage, {
|
||||
beforeEach(() => {
|
||||
hostEnvironmentMocks.embeddedInWechatMiniProgram = false
|
||||
miniProgramBridgeMocks.returnToWechatMiniProgram.mockResolvedValue({ status: 'not-embedded' })
|
||||
hostNavigationTitleMocks.syncHostNavigationTitle.mockReset()
|
||||
testState.onLoadHandler = null
|
||||
testState.onBackPressHandler = null
|
||||
window.location.hash = '#/pages/explain/list'
|
||||
@@ -123,7 +132,11 @@ describe('讲解展厅列表返回', () => {
|
||||
window.history.replaceState({}, '', window.location.href)
|
||||
const wrapper = mountExplainList()
|
||||
|
||||
testState.onLoadHandler?.()
|
||||
await flushPromises()
|
||||
|
||||
expect(wrapper.getComponent(ExplainHallSelectStub).props('forceInternalHeader')).toBe(false)
|
||||
expect(hostNavigationTitleMocks.syncHostNavigationTitle).toHaveBeenCalledWith('免费讲解')
|
||||
await wrapper.get('[data-testid="explain-list-back"]').trigger('click')
|
||||
await flushPromises()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user