Я пишу несколько тестов на шутку и настроил ручной макет для внешнего модуля. Я хочу написать сквозной тест, который запускает дочерний процесс, и чтобы этот дочерний процесс использовал мой ручной макет.
// my-cli.js
myFunc('foo')
// my-func.js
import externalFunc from '@my-team/external-module'
export default function myFunc(foo) {
externalFunc() // should be mocked in __mocks__/@my-team/external-module.js
}
// my-func.test.js
test('myFunc', () => {
myFunc() // externalFunc is mocked as expected
})
// my-cli.js
test('cli', () => {
await execa('/path/to/my/cli.js') // manual mock is not used
})
Я удалил console.log в макете, и мой тест E2E не используетмой манекенКак я могу заставить дочерний процесс использовать мой ручной макет?