작성한 질문수
스프링 핵심 원리 - 기본편
새로운 할인 정책 개발
해결된 질문
작성
·
195
0
강의와는 무관하게 문득 궁금해져서 같은 테스트 클래스에서 두개의 함수를 만들고 같은 아이디로 회원가입을하고 findmember 를 이용하여 찾아왔는데 아무런 문제없이 진행되었습니다. 테스트가 끝나면 초기화되는것은 알고있지만 같은 테스트 안에서 진행되면 이게 어떻게 가능한건가요? 같은 아이디로 회원가입하면 가장 최근에 회원가입한 정보로 덮어씌워지는건가요?
답변 1
안녕하세요. 10jmin04님, 공식 서포터즈 David입니다.
테스트 전체 코드를 올려주시면 답변에 도움될 것 같습니다.
감사합니다.
package hello.core.discount;import hello.core.member.*;import org.assertj.core.api.Assertions;import org.junit.jupiter.api.DisplayName;import org.junit.jupiter.api.Test;import static org.assertj.core.api.Assertions.*;import static org.junit.jupiter.api.Assertions.*;class RateDiscountPolicyTest { RateDiscountPolicy rateDiscountPolicy=new RateDiscountPolicy(); MemberService memberService=new MemberServiceImpl(); @Test @DisplayName("VIP는 10% 할인이 적용되어야 한다.") void vip_o(){ //given Member member=new Member(1L,"memberVIP", Grade.VIP); //when //int discount= rateDiscountPolicy.discount(member,10000); //then // assertThat(discount).isEqualTo(1000); memberService.join(member); Member member1=memberService.findMember(1L); assertThat(member).isEqualTo(member1); } @Test @DisplayName("VIP가 아니면 할인이 적용되지 않아야 한다.") void vip_x(){ //given Member member=new Member(1L,"memberBASIC",Grade.BASIC); //when // int discount= rateDiscountPolicy.discount(member,10000); //then //assertThat(discount).isEqualTo(0); memberService.join(member); Member member1=memberService.findMember(1L); assertThat(member).isEqualTo(member1); }}
여깄습니다 !
이해하신대로 map의 put 메서드 경우 동일한 key값이 존재할 경우 value를 덮어 씌우게 됩니다.
감사합니다 !