Используя jest, я могу получить подробную информацию о поддельных функциях, таких как (количество вызовов, аргументы, и т. Д.)
Мне пришлось использовать плагин babel-plugin-rewire, чтобы смоделировать функцию, которая не экспортируется. Кто-нибудь знает, как я могу проверить, сколько раз вызываемая функция вызывалась и какие результаты она возвращала?
Вот код экспортируемого модуля:
export default {
Notify(method, message) {
log('info', method, message);
},
Important(method, message) {
log('error', method, message);
},
}
Неэкспортированная функция, которую я хочу смоделировать, это log ().
Вот тест
import logr from '.....'
it('should call info method', async () => {
logr.__Rewire__('log',('Important', 'test', 'test message')=>{
return { level, method, message };
});
await logr.info('test', 'this is test');
expect(logr.log.mock.calls.length).toBe(1); // What I want to check
expect(logr.log.mock.calls[0][0]).toBe('Important');//I want to check
logr.__ResetDependency__('log');
});