42 lines
1.8 KiB
Java
42 lines
1.8 KiB
Java
package com.baiyue.gateway.config;
|
|
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
import java.io.IOException;
|
|
import java.io.InputStream;
|
|
import java.nio.charset.StandardCharsets;
|
|
|
|
import static org.assertj.core.api.Assertions.assertThat;
|
|
|
|
class OverseasLastlegRouteContractTest {
|
|
@Test
|
|
void browserAndPdaPathsAreForwardedToLastlegWithoutPrefixRewrite() throws IOException {
|
|
try (InputStream input = getClass().getResourceAsStream("/application-overseas.yml")) {
|
|
assertThat(input).isNotNull();
|
|
String yaml = new String(input.readAllBytes(), StandardCharsets.UTF_8);
|
|
int routeStart = yaml.indexOf("- id: lastleg-service");
|
|
int routeEnd = yaml.indexOf("- id: warehouse-overseas-service", routeStart);
|
|
assertThat(routeStart).isGreaterThanOrEqualTo(0);
|
|
assertThat(routeEnd).isGreaterThan(routeStart);
|
|
String route = yaml.substring(routeStart, routeEnd);
|
|
|
|
assertThat(route).contains("uri: lb://lastleg-service")
|
|
.contains("/api/platform/v1/last-leg/**")
|
|
.contains("/api/merchant/v1/last-leg/**")
|
|
.contains("/api/pda/v1/last-leg/**")
|
|
.doesNotContain("StripPrefix", "RewritePath");
|
|
}
|
|
}
|
|
|
|
@Test
|
|
void swaggerPublishesAnIndependentLastlegPdaGroup() throws IOException {
|
|
try (InputStream input = getClass().getResourceAsStream("/application-overseas.yml")) {
|
|
assertThat(input).isNotNull();
|
|
String yaml = new String(input.readAllBytes(), StandardCharsets.UTF_8);
|
|
assertThat(yaml).contains("name: lastleg-pda", "url: /lastleg-service/v3/api-docs/pda")
|
|
.contains("Path=/lastleg-service/v3/api-docs/**")
|
|
.doesNotContain("event-bridge-service/v3/api-docs/pda");
|
|
}
|
|
}
|
|
}
|