优化
This commit is contained in:
@@ -6,7 +6,7 @@ import { enableAutoUnmount, flushPromises, mount } from '@vue/test-utils'
|
||||
import { afterAll, afterEach, beforeEach, describe, expect, it, vi } from 'vitest'
|
||||
import { useAccessPreviewStore } from '@/core/access/accessPreview'
|
||||
import { useAuthStore } from '@/core/auth/auth'
|
||||
import { listPlatformFeeItems } from '@/modules/fee-items/api/platformFeeItems'
|
||||
import { createPlatformFeeItem, listPlatformFeeItems, updatePlatformFeeItem } from '@/modules/fee-items/api/platformFeeItems'
|
||||
import FeeItemsView from './FeeItemsView.vue'
|
||||
|
||||
const source = readFileSync(join(process.cwd(), 'src/modules/fee-items/pages/FeeItemsView.vue'), 'utf8').replace(/\r\n/g, '\n')
|
||||
@@ -54,6 +54,26 @@ enableAutoUnmount(afterEach)
|
||||
afterAll(() => vi.unstubAllGlobals())
|
||||
|
||||
describe('FeeItemsView public master data and access', () => {
|
||||
it('saves configured and zero prices and clears the default on edit', async () => {
|
||||
const wrapper = await mountView(['firstleg:fee-item:view', 'firstleg:fee-item:create', 'firstleg:fee-item:edit'])
|
||||
const state = (wrapper.vm.$ as unknown as { setupState: {
|
||||
openCreate(): void; saveFeeItem(): Promise<void>
|
||||
form: { id: string; category: string; feeTypeName: string; defaultPrice: number | null }
|
||||
} }).setupState
|
||||
state.openCreate(); await flushPromises()
|
||||
Object.assign(state.form, { category: '操作费', feeTypeName: '加封费', defaultPrice: 60 })
|
||||
await state.saveFeeItem(); await flushPromises()
|
||||
expect(createPlatformFeeItem).toHaveBeenLastCalledWith(expect.objectContaining({ defaultPrice: 60 }))
|
||||
state.openCreate(); await flushPromises()
|
||||
Object.assign(state.form, { category: '操作费', feeTypeName: '零元费', defaultPrice: 0 })
|
||||
await state.saveFeeItem(); await flushPromises()
|
||||
expect(createPlatformFeeItem).toHaveBeenLastCalledWith(expect.objectContaining({ defaultPrice: 0 }))
|
||||
state.openCreate(); await flushPromises()
|
||||
Object.assign(state.form, { id: '1', category: '操作费', feeTypeName: '加封费', defaultPrice: null })
|
||||
await state.saveFeeItem(); await flushPromises()
|
||||
expect(updatePlatformFeeItem).toHaveBeenCalledWith('1', expect.objectContaining({ defaultPrice: null }))
|
||||
})
|
||||
|
||||
beforeEach(() => {
|
||||
vi.stubGlobal('ResizeObserver', ResizeObserverStub)
|
||||
vi.stubGlobal('localStorage', createMemoryStorage())
|
||||
|
||||
Reference in New Issue
Block a user