tdd : picking system - pick error

This commit is contained in:
haerong22
2021-08-05 22:23:30 +09:00
parent 0dc9916bde
commit 304ed0f1a4
3 changed files with 37 additions and 7 deletions

View File

@@ -10,8 +10,6 @@ import org.springframework.stereotype.Service;
public class PickingServiceImpl implements PickingService {
@Override
public void pick(PickingList pickingList, Sku sku) throws Exception{
setStatus(pickingList, null);
if (!pickingList.getSkuAmountMap().containsKey(sku)) {
throw new Exception("wrong sku");
} else {
@@ -20,6 +18,8 @@ public class PickingServiceImpl implements PickingService {
}
pickingList.getPickedMap().put(sku, pickingList.getPickedMap().get(sku) + 1);
}
setStatus(pickingList, null);
}
private void setStatus(PickingList pickingList, PickingStateEnum status) {

View File

@@ -73,4 +73,37 @@ public class PickingServiceTests {
assertEquals(PickerStateEnum.PROCESS, picker.getState());
assertEquals(1, pickingList.getPickedMap().get(orderDetail.getSku()));
}
@Test
void pick_DONE_success() {
try {
for (int i = 0; i < 10; i++) {
pickingService.pick(pickingList, orderDetail.getSku());
pickingService.pick(pickingList, orderDetail2.getSku());
}
} catch (Exception e) {
fail("should not exception");
}
assertEquals(PickingStateEnum.DONE, pickingList.getState());
assertEquals(PickerStateEnum.DONE, pickingList.getPicker().getState());
}
@Test
void pick_wrongSku() {
try {
pickingService.pick(pickingList, new Sku());
} catch (Exception e) {
assertEquals("wrong sku", e.getMessage());
}
}
@Test
void pick_toMuch() {
try {
pickingService.pick(pickingList, orderDetail.getSku());
} catch (Exception e) {
assertEquals("to much sku", e.getMessage());
}
}
}

View File

@@ -8,11 +8,8 @@ SKU
주문 -> 피킹리스트 -> 피커 -> 피킹완료
------- TO-DO -------
[] 피킹
[] 피킹 중단
[] 피킹 에러
[] 피킹 완료
[v] 피킹 완료
[v] 피킹
[v] 피킹 리스트 할당시 피커도 할당
[v] 피커 할당시 피킹리스트도 할당
[v] 피커에게 피킹 리스트 할당