62 lines
1.6 KiB
Rust
Raw Normal View History

2021-12-08 17:33:22 +08:00
pub mod event_builder;
pub mod helper;
2021-07-16 23:18:12 +08:00
use crate::helper::*;
2022-10-22 21:57:44 +08:00
use flowy_document::entities::DocumentVersionPB;
use flowy_net::get_client_server_configuration;
2021-09-05 13:50:23 +08:00
use flowy_sdk::{FlowySDK, FlowySDKConfig};
2022-07-19 14:40:56 +08:00
use flowy_user::entities::UserProfilePB;
2022-04-11 15:27:03 +08:00
use nanoid::nanoid;
2021-07-06 14:14:47 +08:00
pub mod prelude {
2021-12-08 17:33:22 +08:00
pub use crate::{event_builder::*, helper::*, *};
pub use lib_dispatch::prelude::*;
2021-07-06 14:14:47 +08:00
}
2021-09-04 15:12:53 +08:00
#[derive(Clone)]
2022-01-07 17:37:11 +08:00
pub struct FlowySDKTest {
pub inner: FlowySDK,
}
2021-12-08 17:33:22 +08:00
impl std::ops::Deref for FlowySDKTest {
type Target = FlowySDK;
2022-01-23 12:14:00 +08:00
fn deref(&self) -> &Self::Target {
&self.inner
}
2021-09-04 15:12:53 +08:00
}
2022-01-07 17:37:11 +08:00
impl std::default::Default for FlowySDKTest {
fn default() -> Self {
2022-10-22 21:57:44 +08:00
Self::new(DocumentVersionPB::V0)
2021-12-08 17:33:22 +08:00
}
2022-01-07 17:37:11 +08:00
}
2021-12-08 17:33:22 +08:00
2022-01-07 17:37:11 +08:00
impl FlowySDKTest {
2022-10-22 21:57:44 +08:00
pub fn new(document_version: DocumentVersionPB) -> Self {
let server_config = get_client_server_configuration().unwrap();
2022-10-22 21:57:44 +08:00
let config = FlowySDKConfig::new(&root_dir(), &nanoid!(6), server_config)
.with_document_version(document_version)
.log_filter("info");
2022-01-24 16:27:40 +08:00
let sdk = std::thread::spawn(|| FlowySDK::new(config)).join().unwrap();
2022-01-07 17:37:11 +08:00
std::mem::forget(sdk.dispatcher());
Self { inner: sdk }
}
2021-09-27 23:23:23 +08:00
pub async fn sign_up(&self) -> SignUpContext {
2022-01-07 17:37:11 +08:00
let context = async_sign_up(self.inner.dispatcher()).await;
context
2021-09-04 15:12:53 +08:00
}
2022-07-19 14:40:56 +08:00
pub async fn init_user(&self) -> UserProfilePB {
2022-01-07 17:37:11 +08:00
let context = async_sign_up(self.inner.dispatcher()).await;
init_user_setting(self.inner.dispatcher()).await;
context.user_profile
}
2022-10-22 21:57:44 +08:00
pub fn document_version(&self) -> DocumentVersionPB {
self.inner.config.document.version.clone()
}
2021-07-06 14:14:47 +08:00
}