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

cake coke님의 프로필 이미지

작성한 질문수

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

주문 기능 테스트

상품주문 코드 실행시 actual이 뜬금없이 2로 떠 있어 어디서부터 잘못된 것인지 모르겠습니다.

작성

·

336

답변 8

1

cake coke님의 프로필 이미지
cake coke
질문자

더 꼼꼼해져야겠네요.. 감사합니다! 드디어 해결했습니다.

0

저도 똑같은 에러 떠서 h2 테이블 삭제하고 똑같이 했는데 실제값 : 10 , 기대값 : 8떠서 어떻게 해야할지 모르겠네요

0

김영한님의 프로필 이미지
김영한
지식공유자

다음 내용을 고치면 동작할거에요^^

OrderItem

    public int getTotalPrice() {
// return getOrderPrice() + getCount();
return getOrderPrice() * getCount();
}

Order

    public void addOrderItem(OrderItem orderItem) {
// orderItem.add(orderItem);
orderItems.add(orderItem);
orderItem.setOrder(this);
}

화이팅!

0

cake coke님의 프로필 이미지
cake coke
질문자

말씀해주신 부분을 고쳤는데도.. 해결하지 못해 다시 메일 보내드렸습니다. 다른 에러도 유심히 보고 import도 하고 테이블도 지워보고 했지만 계속 되지가 않아 여러 번 요청드리게 된점 죄송합니다. 자세한 내용은 이메일을 봐주시면 감사드리겠습니다.

0

김영한님의 프로필 이미지
김영한
지식공유자

다음 부분을 참고해주세요.

    public void removeStock(int quantity) {
// int restStock = this.stockQuantity = quantity;
int restStock = this.stockQuantity - quantity;
if (restStock < 0) {
throw new NotEnoughStockException("need more stock");
}
this.stockQuantity = restStock;
}

감사합니다.

0

cake coke님의 프로필 이미지
cake coke
질문자

계속 시도해봤지만 되지 않아 이메일로 jpashop.test 압축해서 질문링크와 함께 보내드렸습니다!

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. cake coke님

먼저 데이터가 꼬였을 수 있으니, 테이블의 데이터를 모두 삭제해주세요.

그리고 application.yml에 ddl-auto: create로 되어있는지 확인해주세요.(테이블이 항상 다시 생성되는지)

만약 그래도 잘 안되면, 작성하신 테스트 코드를 모두 보여주세요.

감사합니다.

0

cake coke님의 프로필 이미지
cake coke
질문자

코드 실행시 expected와 actual이 일치해야 하는데 뜬금없이 actual이 2로 되어있어 어디를 손봐야 할지 모르겠습니다. 도와주시면 감사드리겠습니다!