Макет с сервисами внедрения sinon в node.js - PullRequest
0 голосов
/ 25 июня 2018

У меня есть следующий класс в родительском проекте (родительский проект будет модулем в дочернем проекте):

export default class testService {

    constructor({loggerFactory,childService}) {
        this.logger = loggerFactory.logger
        this.child = childService;
    }
}

когда я запускаю тест, тест не пройден, потому что дочерняя служба не существует.служба существует только в том случае, если я открываю дочерний проект, который включает в себя родительский модуль в модулях узла

, поэтому мой вопрос заключается в том, как я могу сделать это, чтобы предотвратить сбой в тесте

1 Ответ

0 голосов
/ 05 июля 2018

Вы можете передать заглушку childService при создании экземпляра класса в вашем тесте:

const loggerFactory = {
  logger: () => {},
}

const childService = {}

const mockTestService = new testService({loggerFactory, childService});
...