Как выполнить модульный тест, если используемые функции находятся за пределами класса, но в одном файле

#unit-testing #sinon

Вопрос:

Как мы проводим модульное тестирование контроллера класса?

Я использую sinon, и мне трудно его тестировать, так как функция getData находится за пределами класса. Как я могу издеваться над данными getData?

Это пример кода в sampleCode.js

 const somelibraries = require('somelibraries');   export function getData(params) {  .  . }   class controller {   SendData(params){  //do more stuff here and then call getData method;  getData(params);  return true;   }  }   module.exports = new controller();  

Мой тестовый случай будет выглядеть примерно так:

 const controller = require('controller'); const sinon = require('sinon'); const { assert } = require('chai');   describe('controller', ()=gt;{   it("should sendData",()=gt;{   var mockGetData = sinon.mock(getData);  const result = controller.sendData('23232');   .  .   }  });