import {reduceUrl} from './reduceUrl'; import { Route } from '../router.interface'; const routes: Route = { '/': { path: '/', url: '/', title: '桌面', moduleId: '', moduleName: '', menu: '', isMatch: false, children: {} }, '/moduleList': { path: '/moduleList', url: '/moduleList', title: '云中台', moduleId: '', moduleName: '', menu: '', isMatch: false, children: {} }, '/:moduleName/:moduleId/:menu?': { path: '/:moduleName/:moduleId/:menu?', url: '/:moduleName/:moduleId/:menu?', title: '遥望云', moduleId: 'DM27005074D931174416476959029971', moduleName: 'goodsBasicInfo', menu: '', isMatch: false, default: '/goodsManage/categoryManage', children: { '/goodsManage/categoryManage': { path: '/goodsBasicInfo/DM27005074D931174416476959029971', url: '/goodsBasicInfo/DM27005074D931174416476959029971', title: '类目管理', moduleId: 'DM27005074D931174416476959029971', moduleName: 'goodsBasicInfo', menu: 'goodsManagecategoryManage', isMatch: false, isDefault: true, children: {} } } } } const routes2: Route = { '/': { path: '/', url: '/', title: '桌面', moduleId: '', moduleName: '', menu: '', isMatch: false, children: {} }, '/moduleList': { path: '/moduleList', url: '/moduleList', title: '云中台', moduleId: '', moduleName: '', menu: '', isMatch: false, children: {} }, '/:moduleName/:moduleId/:menu?': { path: '/:moduleName/:moduleId/:menu?', url: '/:moduleName/:moduleId/:menu?', title: '遥望云', moduleId: 'DM27005074D931174416476959029971', moduleName: 'goodsBasicInfo', menu: '', isMatch: false, default: '/goodsManagecategoryManage', children: { } } } describe('路由注册表有三条,路由跳转到', () => { it('/', () => { expect( reduceUrl('/', routes) ).toEqual({ title: '桌面', url: '/', path: '/', }); }); it('/moduleList', () => { expect( reduceUrl('/moduleList', routes) ).toEqual({ title: '云中台', url: '/moduleList', path: '/moduleList', }); }); it('/goodsBasicInfo/DM27005074D931174416476959029971', () => { expect( reduceUrl('/goodsBasicInfo/DM27005074D931174416476959029971', routes) ).toEqual({ params: { moduleId: 'DM27005074D931174416476959029971', moduleName: 'goodsBasicInfo', menu: 'goodsManagecategoryManage' }, title: '类目管理', parentPath: '/:moduleName/:moduleId/:menu?', url: '/goodsBasicInfo/DM27005074D931174416476959029971', path: '/goodsManage/categoryManage' }); }); it('/goodsBasicInfo/DM27005074D931174416476959029971', () => { expect( reduceUrl('/goodsBasicInfo/DM27005074D931174416476959029971', routes2) ).toEqual({ params: { moduleId: 'DM27005074D931174416476959029971', moduleName: 'goodsBasicInfo', menu: '' }, title: '遥望云', url: '/goodsBasicInfo/DM27005074D931174416476959029971', path: '/:moduleName/:moduleId/:menu?' }); }); }); // describe('路由注册表为空,路由跳转到', () => { // it('/', () => { // expect( // reduceUrl('/', {}) // ).toEqual({ // title: '遥望云', // url: '/', // path: '', // }); // }); // });