1*6f6a514bSRoman Volosatovs use test_programs::p3::wasi::http::types::{Method, Scheme};
2*6f6a514bSRoman Volosatovs 
3*6f6a514bSRoman Volosatovs struct Component;
4*6f6a514bSRoman Volosatovs 
5*6f6a514bSRoman Volosatovs test_programs::p3::export!(Component);
6*6f6a514bSRoman Volosatovs 
7*6f6a514bSRoman Volosatovs impl test_programs::p3::exports::wasi::cli::run::Guest for Component {
run() -> Result<(), ()>8*6f6a514bSRoman Volosatovs     async fn run() -> Result<(), ()> {
9*6f6a514bSRoman Volosatovs         let res = test_programs::p3::http::request(
10*6f6a514bSRoman Volosatovs             Method::Other("bad\nmethod".to_owned()),
11*6f6a514bSRoman Volosatovs             Scheme::Http,
12*6f6a514bSRoman Volosatovs             "localhost:3000",
13*6f6a514bSRoman Volosatovs             "/",
14*6f6a514bSRoman Volosatovs             None,
15*6f6a514bSRoman Volosatovs             None,
16*6f6a514bSRoman Volosatovs             None,
17*6f6a514bSRoman Volosatovs             None,
18*6f6a514bSRoman Volosatovs             None,
19*6f6a514bSRoman Volosatovs         )
20*6f6a514bSRoman Volosatovs         .await;
21*6f6a514bSRoman Volosatovs 
22*6f6a514bSRoman Volosatovs         // This error arises from input validation in the `set_method` function on `OutgoingRequest`.
23*6f6a514bSRoman Volosatovs         assert_eq!(res.unwrap_err().to_string(), "failed to set method");
24*6f6a514bSRoman Volosatovs         Ok(())
25*6f6a514bSRoman Volosatovs     }
26*6f6a514bSRoman Volosatovs }
27*6f6a514bSRoman Volosatovs 
main()28*6f6a514bSRoman Volosatovs fn main() {}
29