diff --git a/rust-lib/flowy-dispatch/src/dispatch.rs b/rust-lib/flowy-dispatch/src/dispatch.rs index f6b9a5cfe8..15e5549477 100644 --- a/rust-lib/flowy-dispatch/src/dispatch.rs +++ b/rust-lib/flowy-dispatch/src/dispatch.rs @@ -69,42 +69,6 @@ impl EventDispatch { }) }), } - // match dispatch.read() { - // Ok(dispatch) => { - // let dispatch = dispatch.as_ref().unwrap(); - // let module_map = dispatch.module_map.clone(); - // let service = Box::new(DispatchService { module_map }); - // log::trace!("Async event: {:?}", &request.event); - // let service_ctx = DispatchContext { - // request, - // callback: Some(Box::new(callback)), - // }; - // let join_handle = dispatch.runtime.spawn(async move { - // service - // .call(service_ctx) - // .await - // .unwrap_or_else(|e| - // InternalError::Other(format!("{:?}", e)).as_response()) - // }); - // - // DispatchFuture { - // fut: Box::pin(async move { - // join_handle.await.unwrap_or_else(|e| { - // let error = - // InternalError::JoinError(format!("EVENT_DISPATCH join error: {:?}", - // e)); error.as_response() - // }) - // }), - // } - // }, - // - // Err(e) => { - // let msg = format!("EVENT_DISPATCH read failed. {:?}", e); - // DispatchFuture { - // fut: Box::pin(async { - // InternalError::Lock(msg).as_response() }), } - // }, - // } } pub fn sync_send(dispatch: Arc, request: ModuleRequest) -> EventResponse { diff --git a/rust-lib/flowy-document/tests/editor/doc_test.rs b/rust-lib/flowy-document/tests/editor/doc_test.rs index adbc18ad4d..362a1625e6 100644 --- a/rust-lib/flowy-document/tests/editor/doc_test.rs +++ b/rust-lib/flowy-document/tests/editor/doc_test.rs @@ -1,9 +1,9 @@ use crate::helper::*; -use flowy_test::TestSDKBuilder; +use flowy_test::FlowyEnv; #[test] fn file_create_test() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let doc_desc = create_doc(&sdk, "hello world", "flutter ❤️ rust", "123"); dbg!(&doc_desc); @@ -13,7 +13,7 @@ fn file_create_test() { #[test] fn file_update_text_test() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let doc_desc = create_doc(&sdk, "hello world", "flutter ❤️ rust", ""); dbg!(&doc_desc); diff --git a/rust-lib/flowy-document/tests/editor/helper.rs b/rust-lib/flowy-document/tests/editor/helper.rs index c7ab5bf940..c845adddc7 100644 --- a/rust-lib/flowy-document/tests/editor/helper.rs +++ b/rust-lib/flowy-document/tests/editor/helper.rs @@ -1,4 +1,4 @@ -use flowy_test::builder::DocTestBuilder; +use flowy_test::builder::DocTest; use flowy_document::{entities::doc::*, event::EditorEvent::*}; use flowy_infra::uuid; @@ -12,7 +12,7 @@ pub fn create_doc(sdk: &FlowyTestSDK, name: &str, desc: &str, text: &str) -> Doc text: text.to_owned(), }; - let doc = DocTestBuilder::new(sdk.clone()) + let doc = DocTest::new(sdk.clone()) .event(CreateDoc) .request(request) .sync_send() @@ -28,7 +28,7 @@ pub fn save_doc(sdk: &FlowyTestSDK, desc: &DocInfo, content: &str) { text: Some(content.to_owned()), }; - let _ = DocTestBuilder::new(sdk.clone()).event(UpdateDoc).request(request).sync_send(); + let _ = DocTest::new(sdk.clone()).event(UpdateDoc).request(request).sync_send(); } // #[allow(dead_code)] @@ -52,7 +52,7 @@ pub(crate) fn read_doc_data(sdk: &FlowyTestSDK, doc_id: &str, path: &str) -> Doc path: path.to_string(), }; - let doc = DocTestBuilder::new(sdk.clone()) + let doc = DocTest::new(sdk.clone()) .event(ReadDocData) .request(request) .sync_send() diff --git a/rust-lib/flowy-sdk/src/lib.rs b/rust-lib/flowy-sdk/src/lib.rs index c637fbb06e..9d6cdac234 100644 --- a/rust-lib/flowy-sdk/src/lib.rs +++ b/rust-lib/flowy-sdk/src/lib.rs @@ -22,6 +22,7 @@ impl FlowySDK { init_log(root); init_kv(root); + tracing::info!("🔥 user folder: {}", root); let dispatch = Arc::new(init_dispatch(root)); let root = root.to_owned(); Self { root, dispatch } @@ -31,7 +32,6 @@ impl FlowySDK { } fn init_kv(root: &str) { - tracing::info!("🔥 Root path: {}", root); match flowy_infra::kv::KV::init(root) { Ok(_) => {}, Err(e) => tracing::error!("Init kv store failedL: {}", e), diff --git a/rust-lib/flowy-test/src/builder.rs b/rust-lib/flowy-test/src/builder.rs index 764efad199..89388b7b1b 100644 --- a/rust-lib/flowy-test/src/builder.rs +++ b/rust-lib/flowy-test/src/builder.rs @@ -5,78 +5,27 @@ use std::{ hash::Hash, }; -use crate::helper::{create_default_workspace_if_need, login_email, login_password, random_email}; +use crate::FlowyTestSDK; use flowy_dispatch::prelude::*; use flowy_document::errors::DocError; -pub use flowy_sdk::*; -use flowy_user::{ - errors::UserError, - event::UserEvent::{SignOut, SignUp}, - prelude::*, -}; +use flowy_sdk::*; +use flowy_user::errors::UserError; use flowy_workspace::errors::WorkspaceError; -use std::{marker::PhantomData, sync::Arc}; +use std::{convert::TryFrom, marker::PhantomData, sync::Arc}; -use crate::FlowyTestSDK; -use flowy_user::event::UserEvent::SignIn; -use std::convert::TryFrom; - -pub type DocTestBuilder = Builder; -impl DocTestBuilder { +pub type DocTest = Builder; +impl DocTest { pub fn new(sdk: FlowyTestSDK) -> Self { Builder::test(TestContext::new(sdk)) } } -pub type WorkspaceTestBuilder = Builder; -impl WorkspaceTestBuilder { +pub type WorkspaceTest = Builder; +impl WorkspaceTest { pub fn new(sdk: FlowyTestSDK) -> Self { Builder::test(TestContext::new(sdk)) } } -pub type UserTestBuilder = Builder; -impl UserTestBuilder { +pub type UserTest = Builder; +impl UserTest { pub fn new(sdk: FlowyTestSDK) -> Self { Builder::test(TestContext::new(sdk)) } - - pub fn sign_up(self) -> SignUpContext { - let password = login_password(); - let payload = SignUpRequest { - email: random_email(), - name: "app flowy".to_string(), - password: password.clone(), - } - .into_bytes() - .unwrap(); - - let request = ModuleRequest::new(SignUp).payload(payload); - let user_detail = EventDispatch::sync_send(self.dispatch(), request) - .parse::() - .unwrap() - .unwrap(); - - let _ = create_default_workspace_if_need(self.dispatch(), &user_detail.id); - SignUpContext { user_detail, password } - } - - #[allow(dead_code)] - fn sign_in(mut self) -> Self { - let payload = SignInRequest { - email: login_email(), - password: login_password(), - } - .into_bytes() - .unwrap(); - - let request = ModuleRequest::new(SignIn).payload(payload); - let user_detail = EventDispatch::sync_send(self.dispatch(), request) - .parse::() - .unwrap() - .unwrap(); - - self.user_detail = Some(user_detail); - self - } - - #[allow(dead_code)] - fn logout(&self) { let _ = EventDispatch::sync_send(self.dispatch(), ModuleRequest::new(SignOut)); } - pub fn user_detail(&self) -> &Option { &self.user_detail } } @@ -185,7 +134,3 @@ impl TestContext { } } } -pub struct SignUpContext { - pub user_detail: UserDetail, - pub password: String, -} diff --git a/rust-lib/flowy-test/src/helper.rs b/rust-lib/flowy-test/src/helper.rs index f9844ef0c3..9d62999238 100644 --- a/rust-lib/flowy-test/src/helper.rs +++ b/rust-lib/flowy-test/src/helper.rs @@ -2,7 +2,11 @@ use bytes::Bytes; use flowy_dispatch::prelude::{EventDispatch, ModuleRequest, ToBytes}; use flowy_infra::{kv::KV, uuid}; -use flowy_user::errors::{ErrorBuilder, ErrorCode, UserError}; +use flowy_user::{ + entities::{SignInRequest, SignUpRequest, UserDetail}, + errors::{ErrorBuilder, ErrorCode, UserError}, + event::UserEvent::{SignIn, SignOut, SignUp}, +}; use flowy_workspace::{ entities::workspace::{CreateWorkspaceRequest, QueryWorkspaceRequest, Workspace}, errors::WorkspaceError, @@ -70,3 +74,49 @@ pub(crate) fn create_default_workspace_if_need(dispatch: Arc, use Ok(()) } + +pub struct SignUpContext { + pub user_detail: UserDetail, + pub password: String, +} + +pub fn sign_up(dispatch: Arc) -> SignUpContext { + let password = login_password(); + let payload = SignUpRequest { + email: random_email(), + name: "app flowy".to_string(), + password: password.clone(), + } + .into_bytes() + .unwrap(); + + let request = ModuleRequest::new(SignUp).payload(payload); + let user_detail = EventDispatch::sync_send(dispatch.clone(), request) + .parse::() + .unwrap() + .unwrap(); + + let _ = create_default_workspace_if_need(dispatch.clone(), &user_detail.id); + SignUpContext { user_detail, password } +} + +#[allow(dead_code)] +fn sign_in(dispatch: Arc) -> UserDetail { + let payload = SignInRequest { + email: login_email(), + password: login_password(), + } + .into_bytes() + .unwrap(); + + let request = ModuleRequest::new(SignIn).payload(payload); + let user_detail = EventDispatch::sync_send(dispatch, request) + .parse::() + .unwrap() + .unwrap(); + + user_detail +} + +#[allow(dead_code)] +fn logout(dispatch: Arc) { let _ = EventDispatch::sync_send(dispatch, ModuleRequest::new(SignOut)); } diff --git a/rust-lib/flowy-test/src/lib.rs b/rust-lib/flowy-test/src/lib.rs index cae7a5b08c..23ceaab6b3 100644 --- a/rust-lib/flowy-test/src/lib.rs +++ b/rust-lib/flowy-test/src/lib.rs @@ -1,9 +1,9 @@ pub mod builder; mod helper; -// pub mod workspace_builder; -use crate::{builder::UserTestBuilder, helper::root_dir}; +use crate::helper::*; use flowy_sdk::FlowySDK; +use flowy_user::entities::UserDetail; pub mod prelude { pub use crate::{builder::*, helper::*, *}; @@ -13,19 +13,25 @@ pub mod prelude { pub type FlowyTestSDK = FlowySDK; #[derive(Clone)] -pub struct TestSDKBuilder { - inner: FlowyTestSDK, +pub struct FlowyEnv { + pub sdk: FlowyTestSDK, + pub user: UserDetail, + pub password: String, } -impl TestSDKBuilder { - pub fn new() -> Self { Self { inner: init_test_sdk() } } - - pub fn sign_up(self) -> Self { - let _ = UserTestBuilder::new(self.inner.clone()).sign_up(); - self +impl FlowyEnv { + pub fn setup() -> Self { + let sdk = init_test_sdk(); + let result = sign_up(sdk.dispatch()); + let env = Self { + sdk, + user: result.user_detail, + password: result.password, + }; + env } - pub fn build(self) -> FlowyTestSDK { self.inner } + pub fn sdk(&self) -> FlowyTestSDK { self.sdk.clone() } } pub fn init_test_sdk() -> FlowyTestSDK { diff --git a/rust-lib/flowy-test/src/workspace_builder.rs b/rust-lib/flowy-test/src/workspace_builder.rs deleted file mode 100644 index 80b74518f5..0000000000 --- a/rust-lib/flowy-test/src/workspace_builder.rs +++ /dev/null @@ -1,60 +0,0 @@ -use super::builder::Builder; -use crate::{builder::TestContext, helper::FlowyTestSDK}; -use flowy_workspace::{ - entities::{app::App, view::View, workspace::*}, - errors::WorkspaceError, - event::WorkspaceEvent::*, -}; - -pub enum WorkspaceAction { - CreateWorkspace(CreateWorkspaceRequest), - ReadWorkspace(QueryWorkspaceRequest), -} - -type Inner = Builder; - -pub struct WorkspaceTestBuilder { - workspace: Option, - app: Option, - view: Option, - inner: Builder, -} - -impl WorkspaceTestBuilder { - pub fn new(sdk: FlowyTestSDK) -> Self { - Self { - workspace: None, - app: None, - view: None, - inner: Builder::test(TestContext::new(sdk)), - } - } - - pub fn run(mut self, actions: Vec) { - let inner = self.inner; - for action in actions { - match action { - WorkspaceAction::CreateWorkspace(request) => { - let workspace = inner - .clone() - .event(CreateWorkspace) - .request(request) - .sync_send() - .parse::(); - self.workspace = Some(workspace); - }, - WorkspaceAction::ReadWorkspace(request) => { - let mut repeated_workspace = inner - .clone() - .event(ReadWorkspaces) - .request(request) - .sync_send() - .parse::(); - - debug_assert_eq!(repeated_workspace.len(), 1, "Default workspace not found"); - repeated_workspace.drain(..1).collect::>().pop() - }, - } - } - } -} diff --git a/rust-lib/flowy-user/src/services/user/user_session.rs b/rust-lib/flowy-user/src/services/user/user_session.rs index 89011700fd..85a2c2e7d6 100644 --- a/rust-lib/flowy-user/src/services/user/user_session.rs +++ b/rust-lib/flowy-user/src/services/user/user_session.rs @@ -142,7 +142,8 @@ impl UserSession { log::info!("{:?}", e); }, } - }); + }) + .await; let user = dsl::user_table .filter(user_table::id.eq(&session.user_id)) diff --git a/rust-lib/flowy-user/tests/event/auth_test.rs b/rust-lib/flowy-user/tests/event/auth_test.rs index cce8ce6190..e9f8863472 100644 --- a/rust-lib/flowy-user/tests/event/auth_test.rs +++ b/rust-lib/flowy-user/tests/event/auth_test.rs @@ -1,5 +1,5 @@ use crate::helper::*; -use flowy_test::{builder::UserTestBuilder, init_test_sdk}; +use flowy_test::{builder::UserTest, init_test_sdk, FlowyEnv}; use flowy_user::{errors::ErrorCode, event::UserEvent::*, prelude::*}; use serial_test::*; @@ -15,7 +15,7 @@ fn sign_up_with_invalid_email() { }; assert_eq!( - UserTestBuilder::new(sdk).event(SignUp).request(request).sync_send().error().code, + UserTest::new(sdk).event(SignUp).request(request).sync_send().error().code, ErrorCode::EmailFormatInvalid ); } @@ -31,23 +31,22 @@ fn sign_up_with_invalid_password() { password, }; - UserTestBuilder::new(sdk).event(SignUp).request(request).sync_send().assert_error(); + UserTest::new(sdk).event(SignUp).request(request).sync_send().assert_error(); } } #[test] #[serial] fn sign_in_success() { - let sdk = init_test_sdk(); - let context = UserTestBuilder::new(sdk.clone()).sign_up(); - let _ = UserTestBuilder::new(sdk.clone()).event(SignOut).sync_send(); + let env = FlowyEnv::setup(); + let _ = UserTest::new(env.sdk()).event(SignOut).sync_send(); let request = SignInRequest { - email: context.user_detail.email, - password: context.password, + email: env.user.email.clone(), + password: env.password.clone(), }; - let response = UserTestBuilder::new(sdk) + let response = UserTest::new(env.sdk()) .event(SignIn) .request(request) .sync_send() @@ -66,7 +65,7 @@ fn sign_in_with_invalid_email() { }; assert_eq!( - UserTestBuilder::new(sdk).event(SignIn).request(request).sync_send().error().code, + UserTest::new(sdk).event(SignIn).request(request).sync_send().error().code, ErrorCode::EmailFormatInvalid ); } @@ -82,6 +81,6 @@ fn sign_in_with_invalid_password() { password, }; - UserTestBuilder::new(sdk).event(SignIn).request(request).sync_send().assert_error(); + UserTest::new(sdk).event(SignIn).request(request).sync_send().assert_error(); } } diff --git a/rust-lib/flowy-user/tests/event/user_profile_test.rs b/rust-lib/flowy-user/tests/event/user_profile_test.rs index eb4fddb64f..6b3d2afedf 100644 --- a/rust-lib/flowy-user/tests/event/user_profile_test.rs +++ b/rust-lib/flowy-user/tests/event/user_profile_test.rs @@ -1,6 +1,6 @@ use crate::helper::*; use flowy_infra::uuid; -use flowy_test::{builder::UserTestBuilder, init_test_sdk}; +use flowy_test::{builder::UserTest, init_test_sdk, FlowyEnv}; use flowy_user::{errors::ErrorCode, event::UserEvent::*, prelude::*}; use serial_test::*; @@ -8,31 +8,30 @@ use serial_test::*; #[serial] fn user_profile_get_failed() { let sdk = init_test_sdk(); - let result = UserTestBuilder::new(sdk).event(GetUserProfile).assert_error().sync_send(); + let result = UserTest::new(sdk).event(GetUserProfile).assert_error().sync_send(); assert!(result.user_detail().is_none()) } #[test] #[serial] fn user_profile_get() { - let sdk = init_test_sdk(); - let user_detail = UserTestBuilder::new(sdk.clone()).sign_up().user_detail; - - let user_detail2 = UserTestBuilder::new(sdk).event(GetUserProfile).sync_send().parse::(); - - assert_eq!(user_detail, user_detail2); + let env = FlowyEnv::setup(); + let user = UserTest::new(env.sdk.clone()) + .event(GetUserProfile) + .sync_send() + .parse::(); + assert_eq!(env.user, user); } #[test] #[serial] fn user_update_with_name() { - let sdk = init_test_sdk(); - let user_detail = UserTestBuilder::new(sdk.clone()).sign_up().user_detail; + let env = FlowyEnv::setup(); let new_name = "hello_world".to_owned(); - let request = UpdateUserRequest::new(&user_detail.id).name(&new_name); - let _ = UserTestBuilder::new(sdk.clone()).event(UpdateUser).request(request).sync_send(); + let request = UpdateUserRequest::new(&env.user.id).name(&new_name); + let _ = UserTest::new(env.sdk()).event(UpdateUser).request(request).sync_send(); - let user_detail = UserTestBuilder::new(sdk) + let user_detail = UserTest::new(env.sdk()) .event(GetUserProfile) .assert_error() .sync_send() @@ -44,14 +43,11 @@ fn user_update_with_name() { #[test] #[serial] fn user_update_with_email() { - let sdk = init_test_sdk(); - let user_detail = UserTestBuilder::new(sdk.clone()).sign_up().user_detail; + let env = FlowyEnv::setup(); let new_email = format!("{}@gmai.com", uuid()); - let request = UpdateUserRequest::new(&user_detail.id).email(&new_email); - - let _ = UserTestBuilder::new(sdk.clone()).event(UpdateUser).request(request).sync_send(); - - let user_detail = UserTestBuilder::new(sdk) + let request = UpdateUserRequest::new(&env.user.id).email(&new_email); + let _ = UserTest::new(env.sdk()).event(UpdateUser).request(request).sync_send(); + let user_detail = UserTest::new(env.sdk()) .event(GetUserProfile) .assert_error() .sync_send() @@ -63,12 +59,11 @@ fn user_update_with_email() { #[test] #[serial] fn user_update_with_password() { - let sdk = init_test_sdk(); - let user_detail = UserTestBuilder::new(sdk.clone()).sign_up().user_detail; + let env = FlowyEnv::setup(); let new_password = "H123world!".to_owned(); - let request = UpdateUserRequest::new(&user_detail.id).password(&new_password); + let request = UpdateUserRequest::new(&env.user.id).password(&new_password); - let _ = UserTestBuilder::new(sdk) + let _ = UserTest::new(env.sdk()) .event(UpdateUser) .request(request) .sync_send() @@ -78,17 +73,11 @@ fn user_update_with_password() { #[test] #[serial] fn user_update_with_invalid_email() { - let sdk = init_test_sdk(); - let user_detail = UserTestBuilder::new(sdk.clone()).sign_up().user_detail; + let env = FlowyEnv::setup(); for email in invalid_email_test_case() { - let request = UpdateUserRequest::new(&user_detail.id).email(&email); + let request = UpdateUserRequest::new(&env.user.id).email(&email); assert_eq!( - UserTestBuilder::new(sdk.clone()) - .event(UpdateUser) - .request(request) - .sync_send() - .error() - .code, + UserTest::new(env.sdk()).event(UpdateUser).request(request).sync_send().error().code, ErrorCode::EmailFormatInvalid ); } @@ -97,12 +86,11 @@ fn user_update_with_invalid_email() { #[test] #[serial] fn user_update_with_invalid_password() { - let sdk = init_test_sdk(); - let user_detail = UserTestBuilder::new(sdk.clone()).sign_up().user_detail; + let env = FlowyEnv::setup(); for password in invalid_password_test_case() { - let request = UpdateUserRequest::new(&user_detail.id).password(&password); + let request = UpdateUserRequest::new(&env.user.id).password(&password); - UserTestBuilder::new(sdk.clone()) + UserTest::new(env.sdk()) .event(UpdateUser) .request(request) .sync_send() @@ -113,11 +101,9 @@ fn user_update_with_invalid_password() { #[test] #[serial] fn user_update_with_invalid_name() { - let sdk = init_test_sdk(); - let user_detail = UserTestBuilder::new(sdk.clone()).sign_up().user_detail; - let request = UpdateUserRequest::new(&user_detail.id).name(""); - - UserTestBuilder::new(sdk) + let env = FlowyEnv::setup(); + let request = UpdateUserRequest::new(&env.user.id).name(""); + UserTest::new(env.sdk()) .event(UpdateUser) .request(request) .sync_send() diff --git a/rust-lib/flowy-workspace/tests/workspace/app_test.rs b/rust-lib/flowy-workspace/tests/workspace/app_test.rs index 671b85077f..e4abe3281d 100644 --- a/rust-lib/flowy-workspace/tests/workspace/app_test.rs +++ b/rust-lib/flowy-workspace/tests/workspace/app_test.rs @@ -8,7 +8,7 @@ use flowy_workspace::entities::{ #[test] fn app_create() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let workspace = create_workspace(&sdk, "Workspace", ""); let app = create_app(&sdk, "App A", "AppFlowy Github Project", &workspace.id); dbg!(&app); @@ -17,7 +17,7 @@ fn app_create() { #[test] #[should_panic] fn app_delete() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let workspace = create_workspace(&sdk, "Workspace", ""); let app = create_app(&sdk, "App A", "AppFlowy Github Project", &workspace.id); delete_app(&sdk, &app.id); @@ -27,7 +27,7 @@ fn app_delete() { #[test] fn app_read() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let workspace = create_workspace(&sdk, "Workspace", ""); let app = create_app(&sdk, "App A", "AppFlowy Github Project", &workspace.id); @@ -38,7 +38,7 @@ fn app_read() { #[test] fn app_create_with_view() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let workspace = create_workspace(&sdk, "Workspace", ""); let app = create_app(&sdk, "App A", "AppFlowy Github Project", &workspace.id); let request_a = CreateViewRequest { @@ -69,7 +69,7 @@ fn app_create_with_view() { #[test] fn app_set_trash_flag() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let app_id = create_app_with_trash_flag(&sdk); let query = QueryAppRequest::new(&app_id).set_is_trash(true); let _ = read_app(&sdk, query); @@ -78,7 +78,7 @@ fn app_set_trash_flag() { #[test] #[should_panic] fn app_set_trash_flag_2() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let app_id = create_app_with_trash_flag(&sdk); let query = QueryAppRequest::new(&app_id); let _ = read_app(&sdk, query); diff --git a/rust-lib/flowy-workspace/tests/workspace/helper.rs b/rust-lib/flowy-workspace/tests/workspace/helper.rs index 5117d5eb2b..6f5402055a 100644 --- a/rust-lib/flowy-workspace/tests/workspace/helper.rs +++ b/rust-lib/flowy-workspace/tests/workspace/helper.rs @@ -17,7 +17,7 @@ pub fn create_workspace(sdk: &FlowyTestSDK, name: &str, desc: &str) -> Workspace desc: desc.to_owned(), }; - let workspace = WorkspaceTestBuilder::new(sdk.clone()) + let workspace = WorkspaceTest::new(sdk.clone()) .event(CreateWorkspace) .request(request) .sync_send() @@ -26,7 +26,7 @@ pub fn create_workspace(sdk: &FlowyTestSDK, name: &str, desc: &str) -> Workspace } pub fn read_workspaces(sdk: &FlowyTestSDK, request: QueryWorkspaceRequest) -> Option { - let mut repeated_workspace = WorkspaceTestBuilder::new(sdk.clone()) + let mut repeated_workspace = WorkspaceTest::new(sdk.clone()) .event(ReadWorkspaces) .request(request) .sync_send() @@ -44,7 +44,7 @@ pub fn create_app(sdk: &FlowyTestSDK, name: &str, desc: &str, workspace_id: &str color_style: Default::default(), }; - let app = WorkspaceTestBuilder::new(sdk.clone()) + let app = WorkspaceTest::new(sdk.clone()) .event(CreateApp) .request(create_app_request) .sync_send() @@ -57,18 +57,18 @@ pub fn delete_app(sdk: &FlowyTestSDK, app_id: &str) { app_id: app_id.to_string(), }; - WorkspaceTestBuilder::new(sdk.clone()) + WorkspaceTest::new(sdk.clone()) .event(DeleteApp) .request(delete_app_request) .sync_send(); } pub fn update_app(sdk: &FlowyTestSDK, request: UpdateAppRequest) { - WorkspaceTestBuilder::new(sdk.clone()).event(UpdateApp).request(request).sync_send(); + WorkspaceTest::new(sdk.clone()).event(UpdateApp).request(request).sync_send(); } pub fn read_app(sdk: &FlowyTestSDK, request: QueryAppRequest) -> App { - let app = WorkspaceTestBuilder::new(sdk.clone()) + let app = WorkspaceTest::new(sdk.clone()) .event(ReadApp) .request(request) .sync_send() @@ -78,7 +78,7 @@ pub fn read_app(sdk: &FlowyTestSDK, request: QueryAppRequest) -> App { } pub fn create_view_with_request(sdk: &FlowyTestSDK, request: CreateViewRequest) -> View { - let view = WorkspaceTestBuilder::new(sdk.clone()) + let view = WorkspaceTest::new(sdk.clone()) .event(CreateView) .request(request) .sync_send() @@ -101,14 +101,11 @@ pub fn create_view(sdk: &FlowyTestSDK, workspace_id: &str) -> View { } pub fn update_view(sdk: &FlowyTestSDK, request: UpdateViewRequest) { - WorkspaceTestBuilder::new(sdk.clone()) - .event(UpdateView) - .request(request) - .sync_send(); + WorkspaceTest::new(sdk.clone()).event(UpdateView).request(request).sync_send(); } pub fn read_view(sdk: &FlowyTestSDK, request: QueryViewRequest) -> View { - WorkspaceTestBuilder::new(sdk.clone()) + WorkspaceTest::new(sdk.clone()) .event(ReadView) .request(request) .sync_send() diff --git a/rust-lib/flowy-workspace/tests/workspace/view_test.rs b/rust-lib/flowy-workspace/tests/workspace/view_test.rs index 17f7d0cc8e..f0f251d1b4 100644 --- a/rust-lib/flowy-workspace/tests/workspace/view_test.rs +++ b/rust-lib/flowy-workspace/tests/workspace/view_test.rs @@ -1,18 +1,18 @@ use crate::helper::*; -use flowy_test::{FlowyTestSDK, TestSDKBuilder}; +use flowy_test::{FlowyEnv, FlowyTestSDK}; use flowy_workspace::entities::view::*; #[test] fn view_create() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let workspace = create_workspace(&sdk, "Workspace", ""); let _ = create_view(&sdk, &workspace.id); } #[test] fn view_set_trash_flag() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let view_id = create_view_with_trash_flag(&sdk); let query = QueryViewRequest::new(&view_id).set_is_trash(true); let _ = read_view(&sdk, query); @@ -21,7 +21,7 @@ fn view_set_trash_flag() { #[test] #[should_panic] fn view_set_trash_flag2() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let view_id = create_view_with_trash_flag(&sdk); let query = QueryViewRequest::new(&view_id); diff --git a/rust-lib/flowy-workspace/tests/workspace/workspace_test.rs b/rust-lib/flowy-workspace/tests/workspace/workspace_test.rs index a102372d3b..32eb6b5caf 100644 --- a/rust-lib/flowy-workspace/tests/workspace/workspace_test.rs +++ b/rust-lib/flowy-workspace/tests/workspace/workspace_test.rs @@ -1,5 +1,5 @@ use crate::helper::*; -use flowy_test::{builder::*, TestSDKBuilder}; +use flowy_test::{builder::*, FlowyEnv}; use flowy_workspace::{ entities::workspace::{CreateWorkspaceRequest, QueryWorkspaceRequest, RepeatedWorkspace}, event::WorkspaceEvent::*, @@ -8,16 +8,16 @@ use flowy_workspace::{ #[test] fn workspace_create_success() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let _ = create_workspace(&sdk, "First workspace", ""); } #[test] fn workspace_read_all() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let _ = create_workspace(&sdk, "Workspace A", "workspace_create_and_then_get_workspace_success"); - let workspaces = WorkspaceTestBuilder::new(sdk.clone()) + let workspaces = WorkspaceTest::new(sdk.clone()) .event(ReadWorkspaces) .request(QueryWorkspaceRequest::new()) .sync_send() @@ -28,7 +28,7 @@ fn workspace_read_all() { #[test] fn workspace_create_and_then_get_workspace() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let workspace = create_workspace(&sdk, "Workspace A", "workspace_create_and_then_get_workspace_success"); let request = QueryWorkspaceRequest::new().workspace_id(&workspace.id); let workspace_from_db = read_workspaces(&sdk, request).unwrap(); @@ -37,7 +37,7 @@ fn workspace_create_and_then_get_workspace() { #[test] fn workspace_create_with_apps() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; let workspace = create_workspace(&sdk, "Workspace", ""); let app = create_app(&sdk, "App A", "AppFlowy Github Project", &workspace.id); @@ -48,12 +48,11 @@ fn workspace_create_with_apps() { #[test] fn workspace_create_with_invalid_name() { - let sdk = TestSDKBuilder::new().sign_up().build(); for name in invalid_workspace_name_test_case() { - let _ = UserTestBuilder::new(sdk.clone()).sign_up(); + let sdk = FlowyEnv::setup().sdk; let request = CreateWorkspaceRequest { name, desc: "".to_owned() }; assert_eq!( - WorkspaceTestBuilder::new(sdk.clone()) + WorkspaceTest::new(sdk) .event(CreateWorkspace) .request(request) .sync_send() @@ -66,11 +65,11 @@ fn workspace_create_with_invalid_name() { #[test] fn workspace_update_with_invalid_name() { - let sdk = TestSDKBuilder::new().sign_up().build(); + let sdk = FlowyEnv::setup().sdk; for name in invalid_workspace_name_test_case() { let request = CreateWorkspaceRequest { name, desc: "".to_owned() }; assert_eq!( - WorkspaceTestBuilder::new(sdk.clone()) + WorkspaceTest::new(sdk.clone()) .event(CreateWorkspace) .request(request) .sync_send()