1*b315a0a8SYosh use anyhow::Context;
2*b315a0a8SYosh use test_programs::wasi::http::types::{Method, Scheme};
3*b315a0a8SYosh
main()4*b315a0a8SYosh fn main() {
5*b315a0a8SYosh let addr = std::env::var("HTTP_SERVER").unwrap();
6*b315a0a8SYosh let res = test_programs::http::request(
7*b315a0a8SYosh Method::Post,
8*b315a0a8SYosh Scheme::Http,
9*b315a0a8SYosh &addr,
10*b315a0a8SYosh "/post",
11*b315a0a8SYosh Some(b"{\"foo\": \"bar\"}"),
12*b315a0a8SYosh None,
13*b315a0a8SYosh None,
14*b315a0a8SYosh None,
15*b315a0a8SYosh None,
16*b315a0a8SYosh )
17*b315a0a8SYosh .context("/post")
18*b315a0a8SYosh .unwrap();
19*b315a0a8SYosh
20*b315a0a8SYosh println!("/post: {res:?}");
21*b315a0a8SYosh assert_eq!(res.status, 200);
22*b315a0a8SYosh let method = res.header("x-wasmtime-test-method").unwrap();
23*b315a0a8SYosh assert_eq!(std::str::from_utf8(method).unwrap(), "POST");
24*b315a0a8SYosh let uri = res.header("x-wasmtime-test-uri").unwrap();
25*b315a0a8SYosh assert_eq!(std::str::from_utf8(uri).unwrap(), format!("/post"));
26*b315a0a8SYosh assert_eq!(res.body, b"{\"foo\": \"bar\"}", "invalid body returned");
27*b315a0a8SYosh }
28