diff --git a/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/App.java b/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/App.java deleted file mode 100644 index fd8d574..0000000 --- a/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/App.java +++ /dev/null @@ -1,34 +0,0 @@ -package io.roastedroot.proxywasm.jaxrs; - -import com.dylibso.chicory.wasm.Parser; -import com.dylibso.chicory.wasm.WasmModule; -import io.roastedroot.proxywasm.StartException; -import jakarta.enterprise.context.ApplicationScoped; -import jakarta.enterprise.inject.Produces; -import java.nio.file.Path; - -@ApplicationScoped -public class App { - - private static final WasmModule httpHeadersModule = - Parser.parse( - Path.of("../proxy-wasm-java-host/src/test/go-examples/http_headers/main.wasm")); - - @Produces - public WasmPluginFactory createFoo() throws StartException { - return () -> - WasmPlugin.builder() - .withName("foo") - .withPluginConfig("{\"header\": \"x-wasm-header\", \"value\": \"foo\"}") - .build(httpHeadersModule); - } - - @Produces - public WasmPluginFactory createBar() throws StartException { - return () -> - WasmPlugin.builder() - .withName("bar") - .withPluginConfig("{\"header\": \"x-wasm-header\", \"value\": \"bar\"}") - .build(httpHeadersModule); - } -} diff --git a/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/ExampleResource.java b/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/ExampleResource.java deleted file mode 100644 index c07393b..0000000 --- a/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/ExampleResource.java +++ /dev/null @@ -1,22 +0,0 @@ -package io.roastedroot.proxywasm.jaxrs; - -import jakarta.ws.rs.GET; -import jakarta.ws.rs.Path; - -@Path("/example") -public class ExampleResource { - - @GET - @NamedWasmPlugin("bar") - @Path("/bar") - public String bar() { - return "bar"; - } - - @GET - @NamedWasmPlugin("foo") - @Path("/foo") - public String foo() { - return "foo"; - } -} diff --git a/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/ExampleResourceTest.java b/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/ExampleResourceTest.java deleted file mode 100644 index d5398b8..0000000 --- a/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/ExampleResourceTest.java +++ /dev/null @@ -1,26 +0,0 @@ -package io.roastedroot.proxywasm.jaxrs; - -import static io.restassured.RestAssured.given; - -import io.quarkus.test.junit.QuarkusTest; -import org.junit.jupiter.api.Test; - -@QuarkusTest -public class ExampleResourceTest { - - @Test - public void testFooBar() { - given().when() - .get("/example/foo") - .then() - .statusCode(200) - .header("x-proxy-wasm-go-sdk-example", "http_headers") - .header("x-wasm-header", "foo"); - given().when() - .get("/example/bar") - .then() - .statusCode(200) - .header("x-proxy-wasm-go-sdk-example", "http_headers") - .header("x-wasm-header", "bar"); - } -} diff --git a/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/HttpHeadersResource.java b/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/HttpHeadersResource.java new file mode 100644 index 0000000..711ee9b --- /dev/null +++ b/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/HttpHeadersResource.java @@ -0,0 +1,14 @@ +package io.roastedroot.proxywasm.jaxrs; + +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; + +@Path("/http_headers") +public class HttpHeadersResource { + + @GET + @NamedWasmPlugin("http_headers") + public String get() { + return "hello world"; + } +} diff --git a/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/HttpHeadersTest.java b/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/HttpHeadersTest.java new file mode 100644 index 0000000..cd4bde6 --- /dev/null +++ b/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/HttpHeadersTest.java @@ -0,0 +1,40 @@ +package io.roastedroot.proxywasm.jaxrs; + +import static io.restassured.RestAssured.given; +import static io.roastedroot.proxywasm.jaxrs.TestHelpers.EXAMPLES_DIR; +import static org.hamcrest.Matchers.equalTo; + +import com.dylibso.chicory.wasm.Parser; +import io.quarkus.test.junit.QuarkusTest; +import io.roastedroot.proxywasm.StartException; +import jakarta.enterprise.inject.Produces; +import java.nio.file.Path; +import org.junit.jupiter.api.Test; + +@QuarkusTest +public class HttpHeadersTest { + + @Produces + public WasmPluginFactory create() throws StartException { + return () -> + WasmPlugin.builder() + .withName("http_headers") + .withPluginConfig("{\"header\": \"x-wasm-header\", \"value\": \"foo\"}") + .build( + Parser.parse( + Path.of( + EXAMPLES_DIR + + "/go-examples/http_headers/main.wasm"))); + } + + @Test + public void testRequest() { + given().when() + .get("/http_headers") + .then() + .statusCode(200) + .header("x-proxy-wasm-go-sdk-example", "http_headers") + .header("x-wasm-header", "foo") + .body(equalTo("hello world")); + } +} diff --git a/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/TestHelpers.java b/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/TestHelpers.java new file mode 100644 index 0000000..36f6709 --- /dev/null +++ b/proxy-wasm-jaxrs/src/test/java/io/roastedroot/proxywasm/jaxrs/TestHelpers.java @@ -0,0 +1,7 @@ +package io.roastedroot.proxywasm.jaxrs; + +public final class TestHelpers { + private TestHelpers() {} + + public static final String EXAMPLES_DIR = "../proxy-wasm-java-host/src/test"; +}