Я использую jest и пытаюсь смоделировать пакет ora
spinner.start
, чтобы увидеть, был ли он вызван. Я пробовал следующее, как я думаю, что они сделали это в другом посте здесь
Мой код (лала. js):
import ora from 'ora';
const spinner = ora({ indent: 2 });
export const lala = () => {
spinner.start('dfsdfsdf');
return 'hey';
};
export default lala();
тестовый файл:
import { lala } from './lala';
import ora from 'ora';
jest.mock('ora', () => () => {
const start = jest.fn();
const result = { start };
return result;
});
describe('lala', () => {
it.only('calls start', () => {
lala();
const spinner = ora();
expect(spinner.start).toHaveBeenCalled();
});
});
Ошибка, которую я получаю от Jest, заключается в том, что он не был вызван как show в следующем блоке кода:
expect(jest.fn()).toHaveBeenCalled()
Expected number of calls: >= 1
Received number of calls: 0
Я пробовал так много вещей и импортировал / дразнить это многими способами, но не могу заставить его работать. В конце концов, я хочу сделать toHaveBeenCalledWith('dfsdfsdf')
, но пока не могу даже правильно высмеять это. Любая помощь будет оценена. Я использую следующие версии Jest и Ora:
"jest": "24.8.0",
"ora": "3.2.0",
Заранее спасибо.