import { describe, expect, it } from 'vitest' import { readFileSync } from 'node:fs' import { resolve } from 'node:path' import { overseasMasterDataPermissions } from './permissions' import { overseasMasterDataRoutes } from './routes' describe('overseas master data routes', () => { it('uses the frozen stable paths and list permissions', () => { expect(overseasMasterDataRoutes.map((route) => [route.path, route.meta?.permission])).toEqual([ ['overseas-master-data/quotes', overseasMasterDataPermissions.quoteList], ['overseas-master-data/exchange-rates', overseasMasterDataPermissions.exchangeRateList], ['overseas-master-data/vehicles', overseasMasterDataPermissions.vehicleList], ['overseas-master-data/vehicles/:vehicleId', overseasMasterDataPermissions.vehicleList], ]) }) it('keeps vehicle detail as a route page and does not add a duplicate partner warehouse route', () => { expect(overseasMasterDataRoutes.at(-1)?.meta?.showPageHeading).toBe(false) expect(overseasMasterDataRoutes.some((route) => route.path.includes('partner-warehouse'))).toBe(false) }) it('activates the confirmed partner type in the existing warehouse domain without a duplicate route', () => { const apiSource = readFileSync(resolve(process.cwd(), 'src/modules/warehouses/api/platformWarehouses.ts'), 'utf8') expect(apiSource).toContain("'OVERSEAS_PARTNER'") expect(overseasMasterDataRoutes.some((route) => route.path.includes('partner-warehouse'))).toBe(false) }) })