优化
This commit is contained in:
@@ -60,6 +60,43 @@ class OrderApplicationServiceStateTest {
|
||||
&& order.getInboundCode() == null));
|
||||
}
|
||||
|
||||
@Test
|
||||
void creatingDraftPreservesProductImageDimensionsAndRemark() {
|
||||
OrderRepository repository = mock(OrderRepository.class);
|
||||
OrderMasterDataGuard masterData = mock(OrderMasterDataGuard.class);
|
||||
var cargo = new OrderRequests.Cargo(
|
||||
"测试蓝牙音箱", "8518210000", "CARTON", 2,
|
||||
new BigDecimal("24.000"), new BigDecimal("0.1200"),
|
||||
new BigDecimal("50.00"), new BigDecimal("40.00"), new BigDecimal("30.00"),
|
||||
new BigDecimal("300.00"), "USD", false, "自动化联调测试,请勿实际出货",
|
||||
"CODEX-E2E-01", "012345678905", "Bluetooth Speaker", "8518210000", 10, 20,
|
||||
new BigDecimal("22.000"), new BigDecimal("15.00"), "塑料 / Plastic",
|
||||
"音频播放 / Audio playback", "CC-E2E-01", "NO LOGO",
|
||||
new BigDecimal("18.00"), new BigDecimal("8.00"), new BigDecimal("7.00"),
|
||||
"FBA-E2E-01", "CODEX-E2E-01", 2085686000000000001L);
|
||||
OrderRequests.SaveRequest source = request();
|
||||
OrderRequests.SaveRequest request = new OrderRequests.SaveRequest(
|
||||
source.customerId(), source.customerName(), source.transportMode(), source.tradeTerm(),
|
||||
source.destinationCountryCode(), source.destinationWarehouseId(), source.destinationWarehouseName(),
|
||||
source.expectedShipDate(), source.customerRemark(), source.sender(), source.receiver(), List.of(cargo),
|
||||
source.pickupMethod(), source.receivingWarehouseId(), source.receivingWarehouseName(),
|
||||
source.channelCode(), source.channelName(), source.carrierId(), source.carrierName(), source.taxMode(),
|
||||
source.pricingTaxMode(), source.containerMode(), source.customsInspection(), source.destinationType(),
|
||||
source.amazonWarehouseCode(), source.shipmentId(), source.referenceId());
|
||||
when(masterData.validate(10001L, request)).thenReturn(snapshots());
|
||||
when(repository.completeIdempotency(anyLong(), any(), anyLong())).thenReturn(1);
|
||||
|
||||
service(repository, mock(OrderEligibilityGuard.class), masterData)
|
||||
.createDraft(10001L, 2L, request, "preserve-product-fields");
|
||||
|
||||
verify(repository).insertCargo(argThat(saved ->
|
||||
Long.valueOf(2085686000000000001L).equals(saved.getProductImageFileId())
|
||||
&& new BigDecimal("18.00").equals(saved.getProductLengthCm())
|
||||
&& new BigDecimal("8.00").equals(saved.getProductWidthCm())
|
||||
&& new BigDecimal("7.00").equals(saved.getProductHeightCm())
|
||||
&& "自动化联调测试,请勿实际出货".equals(saved.getCargoRemark())));
|
||||
}
|
||||
|
||||
@Test
|
||||
void creatingDraftValidatesCurrentPriceBookChannelBeforePersistence() {
|
||||
OrderRepository repository = mock(OrderRepository.class);
|
||||
|
||||
Reference in New Issue
Block a user