开玩笑地介绍带有警卫的导航路线的Vue路由器信息

时间:2020-09-10 10:33:11

标签: vue.js jestjs vue-router

我在使用JEST测试路由器详细信息时遇到问题。

我在src / router路径中有一个名为index.ts的文件,其结构如下所示

index.ts ======== Vue.use(VueRouter); 常量路由:RouteConfig [] = [ { 路径:“ /学生”, 名称:“ studentDetails”, 组件:()=> 进口( “ @ / app / common / Layouts / CommonLayout.vue” ), 儿童:[ { 路径:“”, 组件:()=> 进口( “ @ / app / pages / student / student.vue” ) } ], beforeEnter:serviceGuard } ] const router = new VueRouter({ 模式:“历史”, 路线 });

export default router;

serviceGuard details like below,

serviceGuard.ts
===============
export const serviceGuard = async (to, from, next) => {
      if(!store.getters[types.GET_URL]) {
        let status = await urlInfo.getUrl();
        if(status === "success") {
          return next();
        }else{
          return next(false);
        }
      }else{
        return next();
      }
     
};

index.spec.ts file below
=========================

在这里,尝试如下测试路由器路径student和commonLayout,但在jest覆盖率报告中未覆盖行。

const serviceGuardSpy = jest.mock("@/routerGuard/serviceGuards")
const router = new VueRouter({
  routes: [
   {
   path: '/student',
   component: resolve => resolve(CommonLayout.vue),
   children: [
     { path: '', name: 'studentDetails', component: resolve => resolve(student) }
   ]
   beforeEnter: serviceGuardSpy
 }]
});

0 个答案:

没有答案