fix(lastleg): export all pages when pagination caps batch size
This commit is contained in:
@@ -414,6 +414,27 @@ class LastlegOrderServiceTest {
|
||||
assertEquals("处理中", LastlegOrderStatus.labelOf("PROCESSING"));
|
||||
}
|
||||
|
||||
@Test
|
||||
void exportContinuesAfterThePaginationInterceptorCapsTheBatchSize() {
|
||||
when(orders.selectPage(any(), any())).thenAnswer(invocation -> {
|
||||
com.baomidou.mybatisplus.extension.plugins.pagination.Page<LastlegOrder> page = invocation.getArgument(0);
|
||||
page.setSize(500);
|
||||
page.setTotal(501);
|
||||
long start = (page.getCurrent() - 1) * page.getSize() + 1;
|
||||
page.setRecords(java.util.stream.LongStream.rangeClosed(start, Math.min(start + 499, 501))
|
||||
.mapToObj(id -> order(id, "100", "PENDING_ASSIGNMENT", null)).toList());
|
||||
return page;
|
||||
});
|
||||
var query = new LastlegOrderRequests.Query(1L, 20L, null, null, null, null, null, null,
|
||||
null, null, null, null, null, null, null, null, LastlegOrderRequests.SailingStage.BEFORE_DEPARTURE);
|
||||
|
||||
String csv = new String(service.exportCsv("100", query), StandardCharsets.UTF_8);
|
||||
|
||||
assertEquals(502, csv.lines().count());
|
||||
assertTrue(csv.contains("\"LM-501\""));
|
||||
verify(orders, org.mockito.Mockito.times(2)).selectPage(any(), any());
|
||||
}
|
||||
|
||||
@Test
|
||||
void pageWarehouseFilterMatchesFrozenWarehouseName() {
|
||||
assertWarehouseFilter("洛杉矶仓", "洛杉矶仓", true);
|
||||
|
||||
Reference in New Issue
Block a user