인프런 커뮤니티 질문&답변

10jmin04님의 프로필 이미지
10jmin04

작성한 질문수

스프링 핵심 원리 - 기본편

새로운 할인 정책 개발

질문있습니다 !

해결된 질문

작성

·

195

0

강의와는 무관하게 문득 궁금해져서 같은 테스트 클래스에서 두개의 함수를 만들고 같은 아이디로 회원가입을하고  findmember 를 이용하여 찾아왔는데 아무런 문제없이 진행되었습니다. 테스트가 끝나면 초기화되는것은 알고있지만 같은 테스트 안에서 진행되면 이게 어떻게 가능한건가요? 같은 아이디로 회원가입하면 가장 최근에 회원가입한 정보로 덮어씌워지는건가요? 

답변 1

0

안녕하세요. 10jmin04님, 공식 서포터즈 David입니다.

테스트 전체 코드를 올려주시면 답변에 도움될 것 같습니다.

감사합니다.

10jmin04님의 프로필 이미지
10jmin04
질문자

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);
}
}
10jmin04님의 프로필 이미지
10jmin04
질문자

여깄습니다 !

이해하신대로 map의 put 메서드 경우 동일한 key값이 존재할 경우 value를 덮어 씌우게 됩니다.

10jmin04님의 프로필 이미지
10jmin04
질문자

감사합니다 !

10jmin04님의 프로필 이미지
10jmin04

작성한 질문수

질문하기