Мок-методы экспорта нестандартных классов в Jest Testing - PullRequest
0 голосов
/ 18 июня 2020

Я пытаюсь имитировать простую функцию в своем классе обслуживания.

// hello.controller.ts

@Get()
  async getHello(): Promise<string> {
    const result = await this.helloService.getHello();
    return result;
  }

// hello.service.ts

export class HelloService { 
    getHello(): string {
       return 'Hello World!';
    }
}

// mock.ts

export const mockHello = jest.fn((): string => {
  return 'Hello World!';
});

jest.mock('../src/hello/hello.service', () => ({
 get getHello() {
    return mockHello;
   },
 }));

Когда я тестировал выполнение API, вместо функции mock вызывается служебная функция. Как сделать так, чтобы моя фиктивная функция вызывалась вместо служебной функции. Макет работает только тогда, когда я делаю свою функцию stati c и использую следующий код в mock.ts.

HelloService.getHello = mockHello;

Как заставить работать вышеуказанный сценарий, не делая функцию stati c.

...