This commit is contained in:
2026-08-13 15:59:05 +08:00
parent 8b393d1906
commit 8bcd23f307
6 changed files with 115 additions and 22 deletions
@@ -0,0 +1,34 @@
package com.baiyue.gateway.config;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.gateway.config.GatewayProperties;
import static org.assertj.core.api.Assertions.assertThat;
@SpringBootTest(properties = {
"spring.cloud.nacos.discovery.enabled=false",
"spring.cloud.nacos.discovery.register-enabled=false",
"spring.cloud.nacos.config.enabled=false",
"spring.cloud.gateway.discovery.locator.enabled=false",
"baiyue.security.jwt-secret=test-jwt-secret-at-least-32-bytes-long"
})
class CustomerTransitStatisticsRouteContractTest {
@Autowired private GatewayProperties gatewayProperties;
@Test
void routesCustomerTransitSummaryToFirstlegService() {
var route = gatewayProperties.getRoutes().stream()
.filter(candidate -> "firstleg-service".equals(candidate.getId()))
.findFirst()
.orElseThrow();
assertThat(route.getUri().toString()).isEqualTo("lb://firstleg-service");
assertThat(route.getPredicates()).singleElement().satisfies(predicate -> {
assertThat(predicate.getName()).isEqualTo("Path");
assertThat(String.join(",", predicate.getArgs().values()))
.contains("/api/platform/v1/customers/{customerId}/container-transit-summary");
});
}
}
@@ -69,7 +69,9 @@ class GatewayFileRouteConfigurationTest {
assertThat(paths)
.contains("/api/platform/v1/pallets/**")
.contains("/api/platform/v1/locations/**")
.contains("/api/platform/v1/overseas-storage-fees/**");
.contains("/api/platform/v1/overseas-storage-fees/**")
.contains("/api/platform/v1/suppliers/**")
.contains("/api/platform/v1/domestic-containers/**");
});
}