다음은 checkInService_tests.js 예제에서 가져온 코드로 실패 분기 로직을 확인하는 테스트다.
describe(‘checkInRecorder 실패 시’, function() { var recorderError = ‘체크인 등록 실패!’; beforeEach(function() { spyOn(checkInRecorder,‘recordCheckIn’).and.returnValue( Promise.reject(new Error(recorderError))); spyOn(attendee,‘undoCheckIn’); }); it(“기대 사유와 함께 버림 프라미스를 반환한다”, function(done) { checkInService.checkIn(attendee).then( function promiseResolved() { expect(‘이 성공 함수가 실행된다’).toBe(false); done(); }, function promiseRejected(reason) { expect(reason.message).toBe(recorderError); done(); }); });