2021-09-28 15:29:29 +08:00
|
|
|
use flowy_test::workspace::*;
|
2021-10-30 17:22:47 +08:00
|
|
|
use flowy_workspace::entities::{
|
|
|
|
app::QueryAppRequest,
|
|
|
|
trash::{TrashIdentifier, TrashType},
|
|
|
|
view::*,
|
|
|
|
};
|
2021-07-20 14:03:21 +08:00
|
|
|
|
2021-09-28 15:29:29 +08:00
|
|
|
#[tokio::test]
|
2021-07-29 17:27:59 +08:00
|
|
|
#[should_panic]
|
2021-09-28 15:29:29 +08:00
|
|
|
async fn app_delete() {
|
|
|
|
let test = AppTest::new().await;
|
2021-10-18 22:46:05 +08:00
|
|
|
delete_app(&test.sdk, &test.app.id).await;
|
2021-10-30 17:19:50 +08:00
|
|
|
let query = QueryAppRequest {
|
|
|
|
app_ids: vec![test.app.id.clone()],
|
|
|
|
};
|
2021-10-18 22:46:05 +08:00
|
|
|
let _ = read_app(&test.sdk, query).await;
|
2021-07-29 17:27:59 +08:00
|
|
|
}
|
|
|
|
|
2021-10-30 17:22:47 +08:00
|
|
|
#[tokio::test]
|
|
|
|
async fn app_delete_then_putback() {
|
|
|
|
let test = AppTest::new().await;
|
|
|
|
delete_app(&test.sdk, &test.app.id).await;
|
|
|
|
putback_trash(
|
|
|
|
&test.sdk,
|
|
|
|
TrashIdentifier {
|
|
|
|
id: test.app.id.clone(),
|
|
|
|
ty: TrashType::App,
|
|
|
|
},
|
|
|
|
)
|
|
|
|
.await;
|
|
|
|
|
|
|
|
let query = QueryAppRequest {
|
|
|
|
app_ids: vec![test.app.id.clone()],
|
|
|
|
};
|
|
|
|
let app = read_app(&test.sdk, query).await;
|
|
|
|
assert_eq!(&app, &test.app);
|
|
|
|
}
|
|
|
|
|
2021-09-28 15:29:29 +08:00
|
|
|
#[tokio::test]
|
|
|
|
async fn app_read() {
|
|
|
|
let test = AppTest::new().await;
|
2021-10-30 17:19:50 +08:00
|
|
|
let query = QueryAppRequest {
|
|
|
|
app_ids: vec![test.app.id.clone()],
|
|
|
|
};
|
2021-10-18 22:46:05 +08:00
|
|
|
let app_from_db = read_app(&test.sdk, query).await;
|
2021-09-11 14:26:30 +08:00
|
|
|
assert_eq!(app_from_db, test.app);
|
2021-07-20 14:03:21 +08:00
|
|
|
}
|
|
|
|
|
2021-09-28 15:29:29 +08:00
|
|
|
#[tokio::test]
|
|
|
|
async fn app_create_with_view() {
|
|
|
|
let test = AppTest::new().await;
|
2021-07-20 15:51:49 +08:00
|
|
|
let request_a = CreateViewRequest {
|
2021-09-11 14:26:30 +08:00
|
|
|
belong_to_id: test.app.id.clone(),
|
2021-07-20 15:51:49 +08:00
|
|
|
name: "View A".to_string(),
|
|
|
|
desc: "".to_string(),
|
2021-09-02 23:32:37 +08:00
|
|
|
thumbnail: Some("http://1.png".to_string()),
|
2021-07-22 17:39:44 +08:00
|
|
|
view_type: ViewType::Doc,
|
2021-07-19 21:05:49 +08:00
|
|
|
};
|
|
|
|
|
2021-07-20 15:51:49 +08:00
|
|
|
let request_b = CreateViewRequest {
|
2021-09-11 14:26:30 +08:00
|
|
|
belong_to_id: test.app.id.clone(),
|
2021-07-20 15:51:49 +08:00
|
|
|
name: "View B".to_string(),
|
|
|
|
desc: "".to_string(),
|
2021-09-02 23:32:37 +08:00
|
|
|
thumbnail: Some("http://1.png".to_string()),
|
2021-07-22 17:39:44 +08:00
|
|
|
view_type: ViewType::Doc,
|
2021-07-20 15:51:49 +08:00
|
|
|
};
|
|
|
|
|
2021-09-28 15:29:29 +08:00
|
|
|
let view_a = create_view_with_request(&test.sdk, request_a).await;
|
|
|
|
let view_b = create_view_with_request(&test.sdk, request_b).await;
|
2021-07-20 15:51:49 +08:00
|
|
|
|
2021-10-30 17:19:50 +08:00
|
|
|
let query = QueryAppRequest {
|
|
|
|
app_ids: vec![test.app.id.clone()],
|
|
|
|
};
|
2021-10-18 22:46:05 +08:00
|
|
|
let view_from_db = read_app(&test.sdk, query).await;
|
2021-07-19 21:05:49 +08:00
|
|
|
|
2021-07-29 22:22:35 +08:00
|
|
|
assert_eq!(view_from_db.belongings[0], view_a);
|
|
|
|
assert_eq!(view_from_db.belongings[1], view_b);
|
2021-07-19 21:05:49 +08:00
|
|
|
}
|
|
|
|
|
2021-10-15 17:09:50 +08:00
|
|
|
// #[tokio::test]
|
|
|
|
// async fn app_set_trash_flag() {
|
|
|
|
// let test = AppTest::new().await;
|
2021-10-16 16:45:52 +08:00
|
|
|
// test.delete().await;
|
2021-10-15 17:09:50 +08:00
|
|
|
//
|
|
|
|
// let query = QueryAppRequest::new(&test.app.id).trash();
|
|
|
|
// let _ = read_app(&test.sdk, query);
|
|
|
|
// }
|
2021-10-16 16:45:52 +08:00
|
|
|
//
|
|
|
|
// #[tokio::test]
|
|
|
|
// #[should_panic]
|
|
|
|
// async fn app_set_trash_flag_2() {
|
|
|
|
// let test = AppTest::new().await;
|
|
|
|
// test.move_app_to_trash().await;
|
|
|
|
// let query = QueryAppRequest::new(&test.app.id);
|
|
|
|
// let _ = read_app(&test.sdk, query);
|
|
|
|
// }
|