#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);