test-framework
test-framework copied to clipboard
WebAssembly for Proxies (test framework)
This change adds support for 3 additional buffer types which are present in `proxy-wasm-rust-sdk`
This is one of the two additions we've done to the framework: support asserting on gRPC calls Follow up would be reading properties: https://github.com/Kuadrant/wasm-test-framework/pull/1
While trying out the test-framework I've found that WASM modules compiled with Rust 1.76 assume random_get exists: ```` [host->vm] proxy_on_context_create(root_context_id=1, parent_context_id=0) [vm->host] random_get() -> (...) status: Unexpected ***THIS IS AN...
This is needed to support extensions written using C++ SDK.
I tried this ```~/gh/proxy-wasm/proxy-wasm-rust-sdk$ bazel build //examples:hello_world``` the output looks like this ``` WARNING: Download from https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz failed: class javax.net.ssl.SSLHandshakeException PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification...
Combination calls such as http_request(..) combine individual proxy-wasm callbacks in order: proxy_on_http_request_headers(..), proxy_on_http_request_body(..), proxy_on_http_request_trailers(..). In some cases, one of these functions may not exported across the ABI boundary. To prevent...
Provide high-level expectations, e.g.: ``` http_headers_test .http_request(vec![ (":method", "GET"), (":path", "/hello"), (":authority", "developer"), ], None, // request body None, // request trailers ) .expect_log(LogLevel::Trace, "#1 -> :method: GET") .expect_log(LogLevel::Trace, "#1...
In this mode (or maybe by default?) tests should fail if the extension is making unexpected hostcalls.
The current output is a bit rough and while fine for debugging, it's not very readable output that you want to see when running tests. Consider using something like this:...