优化
This commit is contained in:
@@ -3,13 +3,18 @@ import { resolve } from 'node:path'
|
||||
import { describe, expect, it } from 'vitest'
|
||||
|
||||
const source = readFileSync(resolve(process.cwd(), 'src/modules/ocean-bookings/pages/OceanBookingDetailView.vue'), 'utf8')
|
||||
const routesSource = readFileSync(resolve(process.cwd(), 'src/modules/ocean-bookings/routes.ts'), 'utf8')
|
||||
|
||||
describe('OceanBookingDetailView interaction contract', () => {
|
||||
it('recognizes the dedicated create route as an editable new booking', () => {
|
||||
expect(source).toContain("route.name === 'ocean-booking-create' || id.value === 'new'")
|
||||
expect(source).toContain('const editable = computed(() => isNew.value)')
|
||||
expect(source).toContain("const canSave = computed(() => isNew.value && access.can('platform:firstleg:ocean-booking:create'))")
|
||||
expect(source).toContain(':disabled="!editable"')
|
||||
expect(source).not.toContain("status === 'DRAFT'")
|
||||
expect(source).toContain("? access.can('platform:firstleg:ocean-booking:create')")
|
||||
expect(routesSource.indexOf("path: 'ocean-bookings/new'")).toBeLessThan(routesSource.indexOf("path: 'ocean-bookings/:bookingId'"))
|
||||
expect(routesSource).toContain("name: 'ocean-booking-create'")
|
||||
expect(routesSource).toContain("permission: 'platform:firstleg:ocean-booking:create'")
|
||||
})
|
||||
|
||||
it('selects business objects and automatically keeps their ids and names together', () => {
|
||||
@@ -73,7 +78,7 @@ describe('OceanBookingDetailView interaction contract', () => {
|
||||
expect(source).toContain('v-model="releaseReason"')
|
||||
expect(source).not.toContain('v-model="releaseForm.')
|
||||
expect(source).toContain('线下订舱资料已登记并确认')
|
||||
expect(source).toContain("{{ isNew ? '登记订舱' : '保存' }}")
|
||||
expect(source).toContain('<Save :size="16" />登记订舱')
|
||||
expect(source).toContain('登记后直接确认')
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user