해결된 질문
작성
·
171
0
멤버서비스 테스트에서 예외가 발생했을때 사용한 람다식이 해석이 안됩니다. 무슨 의미 인가요?
assertThatThrownBy(()-> member service.accountTransfer(members.getMemberId(), memberEx.getMemberId(), 2000)
.isInstanceOf(IllegalStatementException.class);
위 람다식은 어떻게 해석해야 하나요?
답변 1
1
안녕하세요. 양치잘하기님, 공식 서포터즈 David입니다.
아래 코드에서 람다식은 memberService.accountTransfer()를 실행하는 것 밖엔 없습니다.
람다식을 감싸고 있는 assertThatThrownBy는 람다식이 실행되었을 때 내부에서 예외가 발생되는걸 감지하고, isInstanceOf 메서드에 발생된 예외 탕비이 넘겨진 예외타입(IllegalStatementException과 일치하는지 확인합니다.
assertThatThrownBy(
()-> memberService.accountTransfer(
members.getMemberId(),
memberEx.getMemberId(),
2000
)
.isInstanceOf(IllegalStatementException.class);
감사합니다.