|
|
@@ -310,6 +310,70 @@ class FlashDeliveryApplicationServiceTest {
|
|
|
verify(fixture.orderMapper, never()).selectPage(any(), any());
|
|
|
}
|
|
|
|
|
|
+ @Test
|
|
|
+ void flashNewTaskListAndAcceptRequireFlashDeliveryType() {
|
|
|
+ Fixture fixture = new Fixture();
|
|
|
+ InfoUser rider = new InfoUser();
|
|
|
+ rider.setUserId(8L);
|
|
|
+ rider.setUserType("2");
|
|
|
+ rider.setDeliveryType("FOOD");
|
|
|
+ when(fixture.userMapper.selectInfoUserByUserId(8L)).thenReturn(rider);
|
|
|
+
|
|
|
+ assertThrows(ServiceException.class,
|
|
|
+ () -> fixture.service.riderOrders(8L, 1, 10, "newTask", null, null));
|
|
|
+ assertThrows(ServiceException.class, () -> fixture.service.accept(8L, 10L));
|
|
|
+ verify(fixture.orderMapper, never()).selectPage(any(), any());
|
|
|
+ verify(fixture.orderMapper, never()).accept(any(), any(), any());
|
|
|
+ }
|
|
|
+
|
|
|
+ @Test
|
|
|
+ void riderDetailHidesWaitingFlashOrdersFromNonFlashRiders() {
|
|
|
+ Fixture fixture = new Fixture();
|
|
|
+ InfoUser rider = new InfoUser();
|
|
|
+ rider.setUserId(8L);
|
|
|
+ rider.setUserType("2");
|
|
|
+ rider.setDeliveryType("FOOD");
|
|
|
+ when(fixture.userMapper.selectInfoUserByUserId(8L)).thenReturn(rider);
|
|
|
+ when(fixture.orderMapper.selectById(10L)).thenReturn(order(10L, "WAITING_ACCEPTANCE"));
|
|
|
+
|
|
|
+ assertThrows(ServiceException.class, () -> fixture.service.riderDetail(8L, 10L));
|
|
|
+ verify(fixture.imageMapper, never()).selectList(any());
|
|
|
+ }
|
|
|
+
|
|
|
+ @Test
|
|
|
+ @SuppressWarnings({"rawtypes", "unchecked"})
|
|
|
+ void enabledFlashRiderStillListsNewTasks() {
|
|
|
+ Fixture fixture = new Fixture();
|
|
|
+ InfoUser rider = new InfoUser();
|
|
|
+ rider.setUserId(8L);
|
|
|
+ rider.setUserType("2");
|
|
|
+ rider.setDeliveryType("FLASH");
|
|
|
+ when(fixture.userMapper.selectInfoUserByUserId(8L)).thenReturn(rider);
|
|
|
+ when(fixture.orderMapper.selectPage(any(com.baomidou.mybatisplus.core.metadata.IPage.class),
|
|
|
+ any(Wrapper.class))).thenReturn(new Page<FlashDeliveryOrder>());
|
|
|
+
|
|
|
+ fixture.service.riderOrders(8L, 1, 10, "newTask", null, null);
|
|
|
+ verify(fixture.orderMapper).selectPage(any(com.baomidou.mybatisplus.core.metadata.IPage.class),
|
|
|
+ any(Wrapper.class));
|
|
|
+ }
|
|
|
+
|
|
|
+ @Test
|
|
|
+ @SuppressWarnings({"rawtypes", "unchecked"})
|
|
|
+ void ownOrderTabsRemainAccessibleRegardlessOfDeliveryType() {
|
|
|
+ Fixture fixture = new Fixture();
|
|
|
+ InfoUser rider = new InfoUser();
|
|
|
+ rider.setUserId(8L);
|
|
|
+ rider.setUserType("2");
|
|
|
+ rider.setDeliveryType("FOOD");
|
|
|
+ when(fixture.userMapper.selectInfoUserByUserId(8L)).thenReturn(rider);
|
|
|
+ when(fixture.orderMapper.selectPage(any(com.baomidou.mybatisplus.core.metadata.IPage.class),
|
|
|
+ any(Wrapper.class))).thenReturn(new Page<FlashDeliveryOrder>());
|
|
|
+
|
|
|
+ fixture.service.riderOrders(8L, 1, 10, "toPickup", null, null);
|
|
|
+ verify(fixture.orderMapper).selectPage(any(com.baomidou.mybatisplus.core.metadata.IPage.class),
|
|
|
+ any(Wrapper.class));
|
|
|
+ }
|
|
|
+
|
|
|
@Test
|
|
|
void assignedRiderTabsIgnoreLocationParameters() {
|
|
|
Fixture fixture = new Fixture();
|