feat(fleet): integrate costs quotes operations and in-transit handovers
This commit is contained in:
@@ -17,6 +17,8 @@ public record EventDeliveryRoute(String serviceName, String path, boolean accept
|
||||
new EventDeliveryRoute("finance-service", "/internal/finance/v1/wallet-command-events", false);
|
||||
case EventTypes.BUSINESS_FEE_SOURCE_CHANGED ->
|
||||
new EventDeliveryRoute("finance-service", "/internal/finance/v1/business-fee-source-events", false);
|
||||
case EventTypes.COMPANY_VEHICLE_COST_SUBMITTED ->
|
||||
new EventDeliveryRoute("finance-service", "/internal/finance/v1/vehicle-costs/events", false);
|
||||
default -> throw new IllegalArgumentException("Unsupported direct-delivery event type: " + eventType);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@ public final class EventTypes {
|
||||
public static final String OVERSEAS_INBOUND_ORDER_DETAINED_CHANGED = "OverseasInboundOrderDetainedChanged";
|
||||
public static final String OVERSEAS_DELIVERY_COMPLETED = "OverseasDeliveryCompleted";
|
||||
public static final String BUSINESS_FEE_SOURCE_CHANGED = "BusinessFeeSourceChanged";
|
||||
public static final String COMPANY_VEHICLE_COST_SUBMITTED = "CompanyVehicleCostSubmitted";
|
||||
public static final String WALLET_COMMAND_REQUESTED = "WalletCommandRequested";
|
||||
public static final String WALLET_COMMAND_COMPLETED = "WalletCommandCompleted";
|
||||
public static final String LAST_MILE_HANDOFF_ACCEPTED = "LastMileHandoffAccepted";
|
||||
|
||||
@@ -29,7 +29,7 @@ class DeliveryAckTest {
|
||||
@Test
|
||||
void staleCannotAcknowledgeWalletCommandsResultsOrIndependentFees() {
|
||||
for (String type : new String[]{EventTypes.WALLET_COMMAND_REQUESTED, EventTypes.WALLET_COMMAND_COMPLETED,
|
||||
EventTypes.BUSINESS_FEE_SOURCE_CHANGED, EventTypes.OVERSEAS_DELIVERY_COMPLETED}) {
|
||||
EventTypes.BUSINESS_FEE_SOURCE_CHANGED, EventTypes.OVERSEAS_DELIVERY_COMPLETED, EventTypes.COMPANY_VEHICLE_COST_SUBMITTED}) {
|
||||
var event = event(type);
|
||||
assertThatThrownBy(() -> DeliveryAck.of(event, DeliveryAck.Outcome.STALE).requireMatches(event))
|
||||
.isInstanceOf(IllegalArgumentException.class);
|
||||
@@ -39,6 +39,8 @@ class DeliveryAckTest {
|
||||
|
||||
@Test
|
||||
void mixedLastlegOutboxRoutesWalletToFinanceAndUnloadingToFirstleg() {
|
||||
assertThat(EventDeliveryRoute.forEventType(EventTypes.COMPANY_VEHICLE_COST_SUBMITTED))
|
||||
.isEqualTo(new EventDeliveryRoute("finance-service", "/internal/finance/v1/vehicle-costs/events", false));
|
||||
assertThat(EventDeliveryRoute.forEventType(EventTypes.WALLET_COMMAND_REQUESTED))
|
||||
.isEqualTo(new EventDeliveryRoute("finance-service", "/internal/finance/v1/wallet-command-events", false));
|
||||
assertThat(EventDeliveryRoute.forEventType(EventTypes.OVERSEAS_CONTAINER_UNLOADED).serviceName()).isEqualTo("firstleg-service");
|
||||
|
||||
Reference in New Issue
Block a user