• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

람다식이 이해가 안됩니다.

24.05.04 16:23 작성 조회수 60

0

멤버서비스 테스트에서 예외가 발생했을때 사용한 람다식이 해석이 안됩니다. 무슨 의미 인가요?

assertThatThrownBy(()-> member service.accountTransfer(members.getMemberId(), memberEx.getMemberId(), 2000)
.isInstanceOf(IllegalStatementException.class);

위 람다식은 어떻게 해석해야 하나요?

 

답변 1

답변을 작성해보세요.

1

David님의 프로필

David

2024.05.04

안녕하세요. 양치잘하기님, 공식 서포터즈 David입니다.

아래 코드에서 람다식은 memberService.accountTransfer()를 실행하는 것 밖엔 없습니다.

람다식을 감싸고 있는 assertThatThrownBy는 람다식이 실행되었을 때 내부에서 예외가 발생되는걸 감지하고, isInstanceOf 메서드에 발생된 예외 탕비이 넘겨진 예외타입(IllegalStatementException과 일치하는지 확인합니다.

assertThatThrownBy(

  ()-> memberService.accountTransfer(

      members.getMemberId(),

      memberEx.getMemberId(),

      2000

  )

.isInstanceOf(IllegalStatementException.class);

감사합니다.