1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#![allow(clippy::type_complexity)]
#[macro_use]
extern crate log;
mod client;
mod connection;
mod server;
pub use client::{WebsocketClientTransport, WebsocketRequest};
pub use server::WebsocketServerTransport;
#[cfg(test)]
mod test_websocket {
use super::*;
use rsocket_rust::prelude::*;
#[ignore]
#[tokio::test]
async fn test_client() {
let req: WebsocketRequest = WebsocketRequest::builder()
.uri("ws://127.0.0.1:8080/hello")
.header("x-foo-bar", "42")
.method("GET")
.body(())
.unwrap();
let tp = WebsocketClientTransport::from(req);
let c = RSocketFactory::connect()
.transport(tp)
.start()
.await
.expect("connect failed");
let res = c
.request_response(Payload::builder().set_data_utf8("foo").build())
.await
.expect("request failed")
.unwrap();
println!("response: {:?}", res);
}
}