1 use test_programs::p3::wasi; 2 3 struct Component; 4 5 test_programs::p3::export!(Component); 6 7 impl test_programs::p3::exports::wasi::cli::run::Guest for Component { 8 async fn run() -> Result<(), ()> { 9 let (mut stream, result) = wasi::cli::stdin::read_via_stream(); 10 let (sresult, buf) = stream.read(Vec::with_capacity(100)).await; 11 assert_eq!(buf, b"hello!".to_vec()); 12 assert_eq!(sresult, wit_bindgen::StreamResult::Complete(6)); 13 14 let (sresult, buf) = stream.read(Vec::with_capacity(100)).await; 15 assert!(buf.is_empty()); 16 assert_eq!(sresult, wit_bindgen::StreamResult::Dropped); 17 18 result.await.unwrap(); 19 Ok(()) 20 } 21 } 22 23 fn main() { 24 unreachable!(); 25 } 26