AppFlowy-Cloud/tests/ws/test.rs

33 lines
734 B
Rust

use crate::util::{spawn_server, TestUser};
use crate::ws::client::spawn_client;
use serde_json::json;
use std::time::Duration;
#[actix_rt::test]
async fn ws_conn_test() {
let server = spawn_server().await;
let test_user = TestUser::generate();
let token = test_user.register(&server).await;
let address = format!("{}/{}", server.ws_addr, token);
let client = spawn_client(1, "1", address).await.unwrap();
wait_a_sec().await;
{
let collab = client.lock();
collab.insert("1", "a");
}
wait_a_sec().await;
let value = server.get_doc("1");
assert_json_diff::assert_json_eq!(
value,
json!({
"1": "a"
})
);
}
async fn wait_a_sec() {
tokio::time::sleep(Duration::from_secs(2)).await;
}