Skip to content
This repository has been archived by the owner on Aug 13, 2022. It is now read-only.

Commit

Permalink
주문 테스트 작성
Browse files Browse the repository at this point in the history
  • Loading branch information
yyy9942 committed Jan 31, 2020
1 parent 61e4edd commit ec74ca5
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 3 deletions.
2 changes: 1 addition & 1 deletion src/main/java/com/delfood/service/OrderService.java
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ public OrderResponse order(String memberId, List<OrderItemDTO> items, long shopI
* @return
*/
@Transactional(propagation = Propagation.NESTED)
private Long doOrder(String memberId, List<OrderItemDTO> items, Long shopId) {
public Long doOrder(String memberId, List<OrderItemDTO> items, Long shopId) {
MemberDTO memberInfo = memberService.getMemberInfo(memberId);
OrderDTO order = OrderDTO
.builder()
Expand Down
24 changes: 22 additions & 2 deletions src/test/java/com/delfood/service/OrderServiceTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import static org.hamcrest.CoreMatchers.any;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.junit.Assert.*;
import org.assertj.core.util.Arrays;
Expand All @@ -15,14 +16,17 @@
import org.mockito.junit.MockitoJUnitRunner;
import org.mockito.stubbing.Answer;
import org.springframework.boot.test.mock.mockito.MockBean;
import com.delfood.controller.response.OrderResponse;
import com.delfood.dto.AddressDTO;
import com.delfood.dto.ItemsBillDTO;
import com.delfood.dto.ItemsBillDTO.MenuInfo;
import com.delfood.dto.ItemsBillDTO.ShopInfo;
import com.delfood.dto.MemberDTO;
import com.delfood.dto.OrderDTO;
import com.delfood.dto.OrderDTO.OrderStatus;
import com.delfood.dto.OrderItemDTO;
import com.delfood.dto.OrderItemOptionDTO;
import com.delfood.dto.PaymentDTO;
import com.delfood.dto.ShopDTO;
import com.delfood.dto.ShopDTO.DeliveryType;
import com.delfood.dto.ShopDTO.OrderType;
Expand All @@ -31,6 +35,7 @@
import com.delfood.mapper.AddressMapper;
import com.delfood.mapper.MemberMapper;
import com.delfood.mapper.OrderMapper;
import com.delfood.mapper.PaymentMapper;
import com.delfood.utils.OrderUtil;
import com.delfood.utils.SHA256Util;

Expand All @@ -51,6 +56,15 @@ public class OrderServiceTest {

@Mock
AddressService addressService;

@Mock
PaymentService paymentService;

@Mock
MockPayService mockPayService;

@Mock
PushService pushService;

public static String MEMBER_ID = "testMemberId";

Expand Down Expand Up @@ -126,7 +140,7 @@ public void testMockInit() {
}

@Test
public void getBillTest_계산서_검증() {
public void getBillTest_주문_테스트() {
OrderItemDTO item = new OrderItemDTO();
item.setId(OrderUtil.generateOrderItemKey(MEMBER_ID, 0));
item.setMenuId(MENU_ID);
Expand All @@ -143,12 +157,18 @@ public void testMockInit() {
orderItems.add(item);

given(orderMapper.findItemsBill(orderItems)).willReturn(menus);

given(orderService.doOrder(MEMBER_ID, orderItems, SHOP_ID)).willReturn(ORDER_ID);
given(shopService.getShop(SHOP_ID)).willReturn(ShopDTO.builder().id(SHOP_ID).ownerId("testOwner").name("").build());

OrderResponse order = orderService.order(MEMBER_ID, orderItems, SHOP_ID, null);
ItemsBillDTO bill = orderService.getBill(MEMBER_ID, orderItems, null);

assertThat(bill.getTotalPrice(), equalTo(13000L));
assertThat(bill.getDeliveryInfo().getDeliveryPrice(), equalTo(3000L));
assertThat(bill.getItemsPrice(), equalTo(10000L));

assertThat(order.getBill().getMenus(), equalTo(menus));
assertThat(order.getBill().getItemsPrice(), equalTo(10000L));
}

}

0 comments on commit ec74ca5

Please sign in to comment.