Как написать тесты для класса с помощью jest, чтобы я мог имитировать инициализацию конструктора?

#javascript #node.js #jestjs

#язык JavaScript #node.js #jestjs

Вопрос:

У меня в проекте есть класс, в котором есть код, как показано ниже.

myRepo.js

 class MyRepo{  constructor(){  this.fnType={  "Member":this.getMemberDetails,  "Claim":this.getClaimDetails  }  }  getMemberDetails=async({parameters})=gt;{  //some operation  return someData;  }  getClaimDetails=async({parameters})=gt;{  //some operation  return someData;  }  }  

Этот класс используется в другом сервисном файле, который динамически вызывает одну из функций класса myRepo на основе некоторого параметра.

service.js

 const service=(myRepo)=gt;{  const queryType=getQueryType(); // Will return either 'Member' or 'Claim'  let reponse=myrepo.fnType[queryType](someParameters); // how to mock this line?   }  

Используя jest, как можно написать тесты для service.js того, чтобы я мог имитировать поведение выбора динамического метода и не получать неопределенную ошибку в строке ниже.

 let reponse=myrepo.fnType[queryType](someParameters);