feat: workspace service in user crate (#4373)

* refactor: user manager

* feat: implement workspace service

* refactor: migrate user data when sign up

* chore: fmt

* chore: enable beta cloud

* chore: update ci

* chore: trim slash
This commit is contained in:
Nathan.fooo
2024-01-12 14:34:59 +08:00
committed by GitHub
parent 690a3746fa
commit 9500abb363
66 changed files with 879 additions and 1079 deletions

View File

@ -72,17 +72,16 @@ async fn migrate_anon_user_data_to_af_cloud_test() {
// The anon user data will be migrated to the AppFlowy cloud after sign up
let user = test.af_cloud_sign_up().await;
let user_trash = test.get_trash().await;
let workspace = test.get_current_workspace().await;
println!("user workspace: {:?}", workspace.id);
assert_eq!(user.authenticator, AuthenticatorPB::AppFlowyCloud);
let user_first_level_views = test.get_all_workspace_views().await;
// assert_eq!(user_first_level_views.len(), 2);
assert_eq!(user_first_level_views.len(), 2);
println!("user first level views: {:?}", user_first_level_views);
let user_second_level_views = test
.get_view(&user_first_level_views[0].id)
.get_view(&user_first_level_views[1].id)
.await
.child_views;
println!("user second level views: {:?}", user_second_level_views);
@ -94,11 +93,13 @@ async fn migrate_anon_user_data_to_af_cloud_test() {
// check first level
assert_eq!(anon_first_level_views.len(), 1);
assert_eq!(user_first_level_views.len(), 1);
assert_ne!(anon_first_level_views[0].id, user_first_level_views[0].id);
// the first view of user_first_level_views is the default get started view
assert_eq!(user_first_level_views.len(), 2);
assert_ne!(anon_first_level_views[0].id, user_first_level_views[1].id);
assert_eq!(
anon_first_level_views[0].name,
user_first_level_views[0].name
user_first_level_views[1].name
);
// check second level
@ -114,9 +115,5 @@ async fn migrate_anon_user_data_to_af_cloud_test() {
assert_eq!(user_third_level_views[0].name, "Grid1".to_string());
assert_eq!(user_third_level_views[1].name, "Grid2".to_string());
// check the trash
assert_eq!(user_trash.items.len(), 1);
assert_eq!(user_trash.items[0].name, anon_trash.items[0].name);
drop(cleaner);
}