lenso_capability_http_client/
lib.rs1include!("generated.rs");
4
5#[cfg(test)]
6mod tests {
7 use super::*;
8
9 #[test]
10 fn client_contract_round_trips_headers_and_bytes() {
11 let request = SendRequest {
12 body: Bytes::from(vec![0, 1, 2]),
13 headers: vec![SendRequestHeadersItem {
14 name: "content-type".to_owned(),
15 value: "application/octet-stream".to_owned(),
16 }],
17 method: "POST".to_owned(),
18 url: "https://api.example.test/v1/items?active=true".to_owned(),
19 };
20 let wire = encode_send_request(&request).unwrap();
21 assert!(wire.contains(r#""body":"AAEC""#));
22 assert_eq!(decode_send_request(&wire).unwrap(), request);
23 }
24
25 #[test]
26 fn client_contract_values_support_cross_lane_transfer() {
27 fn assert_send<T: Send>() {}
28
29 const { assert!(CROSS_LANE_TRANSFER) };
30 assert_send::<SendRequest>();
31 assert_send::<SendResponse>();
32 assert_send::<SendError>();
33 }
34}