더북(TheBook)
const playMusic = (song) => {
    dependencies.player.play(song);
};

module.exports = { playMusic, inject };

여기에서 dependencies 객체는 음악 재생기에서 사용하는 의존성을 정의한다. inject() 함수는 의존성을 주입하는 역할을 한다. playMusic() 함수는 주입된 의존성의 play() 메서드를 호출하여 음악을 재생한다.

 

테스트를 위한 가짜 의존성 주입

테스트에서 가짜 의존성을 주입하여 테스트한다.

 

// musicPlayer.test.js
const { playMusic, inject } = require('./musicPlayer');
test('should pretend to play a song with injected dependency', () => {
    const fakePlayer = {
      play: (song) => `Pretending to play ${song}`
    };


신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.