优化
This commit is contained in:
@@ -333,4 +333,55 @@ describe('PalletsView', () => {
|
||||
expect(document.body.textContent).not.toContain('托盘状态')
|
||||
expect(document.body.textContent).not.toContain('最大承重')
|
||||
})
|
||||
|
||||
it('keeps the latest detail when an older pallet request finishes last', async () => {
|
||||
const secondPallet = { ...pallet, id: '20002', palletCode: 'TP-002' }
|
||||
let resolveFirst!: (value: PlatformPalletResource) => void
|
||||
let resolveSecond!: (value: PlatformPalletResource) => void
|
||||
vi.mocked(getPlatformPallet).mockImplementation((_warehouseId, palletId) => new Promise((resolve) => {
|
||||
if (String(palletId) === String(pallet.id)) resolveFirst = resolve
|
||||
else resolveSecond = resolve
|
||||
}))
|
||||
const wrapper = await mountView()
|
||||
const vm = wrapper.vm as unknown as {
|
||||
detailOpen: boolean
|
||||
detail: PlatformPalletResource | null
|
||||
openDetail(row: PlatformPalletResource): Promise<void>
|
||||
}
|
||||
|
||||
void vm.openDetail(pallet)
|
||||
vm.detailOpen = false
|
||||
await wrapper.vm.$nextTick()
|
||||
void vm.openDetail(secondPallet)
|
||||
resolveSecond(secondPallet)
|
||||
await flushPromises()
|
||||
resolveFirst(pallet)
|
||||
await flushPromises()
|
||||
|
||||
expect(vm.detail?.palletCode).toBe('TP-002')
|
||||
})
|
||||
|
||||
it('keeps the latest pallet selected for editing', async () => {
|
||||
const secondPallet = { ...pallet, id: '20002', palletCode: 'TP-002', color: '蓝色' }
|
||||
let resolveFirst!: (value: PlatformPalletResource) => void
|
||||
let resolveSecond!: (value: PlatformPalletResource) => void
|
||||
vi.mocked(getPlatformPallet).mockImplementation((_warehouseId, palletId) => new Promise((resolve) => {
|
||||
if (String(palletId) === String(pallet.id)) resolveFirst = resolve
|
||||
else resolveSecond = resolve
|
||||
}))
|
||||
const wrapper = await mountView()
|
||||
const vm = wrapper.vm as unknown as {
|
||||
form: { palletCode: string; color: string }
|
||||
openEdit(row: PlatformPalletResource): Promise<void>
|
||||
}
|
||||
|
||||
void vm.openEdit(pallet)
|
||||
void vm.openEdit(secondPallet)
|
||||
resolveSecond(secondPallet)
|
||||
await flushPromises()
|
||||
resolveFirst(pallet)
|
||||
await flushPromises()
|
||||
|
||||
expect(vm.form).toMatchObject({ palletCode: 'TP-002', color: '蓝色' })
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user