@Programep

Как в unit тестах jasmine вызвать метод mock сервиса?

Пробую сделать тест с использованием вызова метода mock-сервиса который используется в реальном приложении для эмуляции запросов к API. Чтобы не дублировать хотел использовать этот же метод в unit тесте, но похоже apiServiceMock.getPages(queryModel) возвращает undefined потому что при выполнении теста в VS Code Test Explorer отображается ошибка TypeError: Cannot read properties of undefined (reading 'request')
Если скопировать в переменную result тестовые значения из mock-сервиса, то тест работает без ошибок.
Подскажите пожалуйста как лучше сделать этот тест и можно ли переиспользовать метод mock-сервиса, чтобы не дублировать тестовые данные.
Код теста:
it('#return correct response', () => {
    const queryModel = new QueryModel();
    const result: Observable<PaginationModel> = apiServiceMock.getPages(queryModel);

      realService.getPages(queryModel).subscribe(response => {
        expect(response).toEqual(result);
      });

    const req = httpMock.match(`${test_url}`)[0];
    expect(req.request.method).toBe("GET");
    req.flush(result);
  });
  • Вопрос задан
  • 28 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы