Openhandle в Jest с регистратором Winston - PullRequest
0 голосов
/ 27 мая 2020

В моем приложении node.js (с использованием express) у меня есть класс TypeScript, например:

import { logger } from 'logger';

export default class SomeDataService {
  private someDependency: SomeDependency;

  constructor(someDependency: SomeDependency) {
    this.someDependency = someDependency
    logger.info(`Attempting to get location from location service`);
  }
// rest removed for brevity
}

В моем тесте (с использованием Jest) я ссылаюсь на него так:

describe('when..... etc', () => {

    it('then..... etc', async () => {
      someDataService = new SomeDataService(someDependency);
    });

К сожалению, когда я запустил это (jest

Jest не завершился через одну секунду после завершения тестового запуска.

Это обычно означает, что есть асинхронные операции, которые не были остановлены в ваших тестах. Рассмотрите возможность запуска Jest с --detectOpenHandles для устранения этой проблемы.

Когда я удаляю logger в SomeDataService, эта ошибка исчезает. Регистратор I Я использую Winston - и похоже, что он все еще имеет openHandle после запуска теста. Просто интересно, как я go закрываю это или обхожу эту проблему? (Я бы предпочел не заглушать реализацию)

TIA

...