Files
admin-web/src/modules/overseas-business/routes.test.ts
T
2026-10-20 11:33:39 +08:00

29 lines
1.5 KiB
TypeScript

import { describe, expect, it } from 'vitest'
import { overseasBusinessPermissions as permission } from './permissions'
import { overseasBusinessRoutes } from './routes'
describe('overseas business routes', () => {
it('keeps the frozen paths and permissions', () => {
expect(overseasBusinessRoutes.map((route) => [route.path, route.meta?.permission])).toEqual([
['overseas-business/purchases', permission.purchaseList],
['overseas-business/purchases/:purchaseId', permission.purchaseList],
['overseas-business/purchases/:purchaseId/edit', permission.purchaseEdit],
['overseas-business/trucks', permission.truckList],
['overseas-business/trucks/new', permission.truckCreate],
['overseas-business/trucks/:orderId', permission.truckList],
['overseas-business/trucks/:orderId/edit', permission.truckEdit],
['overseas-business/looseboards', permission.looseboardList],
['overseas-business/looseboards/new', permission.looseboardCreate],
['overseas-business/looseboards/:orderId/edit', permission.looseboardEdit],
])
})
it('adds the requested truck detail without opening unrelated routes', () => {
const paths = overseasBusinessRoutes.map((route) => route.path)
expect(paths).not.toContain('overseas-business/purchases/new')
expect(paths).toContain('overseas-business/trucks/:orderId')
expect(paths).not.toContain('overseas-business/looseboards/:orderId')
expect(JSON.stringify(overseasBusinessRoutes)).not.toContain('permissionAnyOf')
})
})