101 lines
2.9 KiB
Rust
Raw Normal View History

2021-07-20 15:51:49 +08:00
use crate::helper::*;
2021-09-04 15:12:53 +08:00
use flowy_test::prelude::*;
2021-07-25 08:13:59 +08:00
use flowy_workspace::entities::{
2021-07-31 10:50:56 +08:00
app::{QueryAppRequest, UpdateAppRequest},
view::*,
};
#[test]
2021-08-30 22:44:17 +08:00
fn app_create() {
let sdk = FlowyEnv::setup().sdk;
2021-09-04 15:12:53 +08:00
let workspace = create_workspace(&sdk, "Workspace", "");
let app = create_app(&sdk, "App A", "AppFlowy Github Project", &workspace.id);
2021-07-20 15:51:49 +08:00
dbg!(&app);
}
2021-07-20 14:03:21 +08:00
#[test]
#[should_panic]
2021-08-30 22:44:17 +08:00
fn app_delete() {
let sdk = FlowyEnv::setup().sdk;
2021-09-04 15:12:53 +08:00
let workspace = create_workspace(&sdk, "Workspace", "");
let app = create_app(&sdk, "App A", "AppFlowy Github Project", &workspace.id);
delete_app(&sdk, &app.id);
let query = QueryAppRequest::new(&app.id);
2021-09-04 15:12:53 +08:00
let _ = read_app(&sdk, query);
}
2021-07-20 15:51:49 +08:00
#[test]
2021-08-30 22:44:17 +08:00
fn app_read() {
let sdk = FlowyEnv::setup().sdk;
2021-09-04 15:12:53 +08:00
let workspace = create_workspace(&sdk, "Workspace", "");
let app = create_app(&sdk, "App A", "AppFlowy Github Project", &workspace.id);
let query = QueryAppRequest::new(&app.id);
2021-09-04 15:12:53 +08:00
let app_from_db = read_app(&sdk, query);
2021-07-20 15:51:49 +08:00
assert_eq!(app_from_db, app);
2021-07-20 14:03:21 +08:00
}
#[test]
2021-08-30 22:44:17 +08:00
fn app_create_with_view() {
let sdk = FlowyEnv::setup().sdk;
2021-09-04 15:12:53 +08:00
let workspace = create_workspace(&sdk, "Workspace", "");
let app = create_app(&sdk, "App A", "AppFlowy Github Project", &workspace.id);
2021-07-20 15:51:49 +08:00
let request_a = CreateViewRequest {
2021-07-28 13:41:39 +08:00
belong_to_id: 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-20 15:51:49 +08:00
let request_b = CreateViewRequest {
2021-07-28 13:41:39 +08:00
belong_to_id: 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-04 15:12:53 +08:00
let view_a = create_view_with_request(&sdk, request_a);
let view_b = create_view_with_request(&sdk, request_b);
2021-07-20 15:51:49 +08:00
let query = QueryAppRequest::new(&app.id).set_read_views(true);
2021-09-04 15:12:53 +08:00
let view_from_db = read_app(&sdk, query);
assert_eq!(view_from_db.belongings[0], view_a);
assert_eq!(view_from_db.belongings[1], view_b);
}
#[test]
2021-08-30 22:44:17 +08:00
fn app_set_trash_flag() {
let sdk = FlowyEnv::setup().sdk;
2021-09-04 15:12:53 +08:00
let app_id = create_app_with_trash_flag(&sdk);
let query = QueryAppRequest::new(&app_id).set_is_trash(true);
2021-09-04 15:12:53 +08:00
let _ = read_app(&sdk, query);
}
#[test]
#[should_panic]
2021-08-30 22:44:17 +08:00
fn app_set_trash_flag_2() {
let sdk = FlowyEnv::setup().sdk;
2021-09-04 15:12:53 +08:00
let app_id = create_app_with_trash_flag(&sdk);
let query = QueryAppRequest::new(&app_id);
2021-09-04 15:12:53 +08:00
let _ = read_app(&sdk, query);
}
2021-09-04 15:12:53 +08:00
fn create_app_with_trash_flag(sdk: &FlowyTestSDK) -> String {
let workspace = create_workspace(sdk, "Workspace", "");
let app = create_app(sdk, "App A", "AppFlowy Github Project", &workspace.id);
let request = UpdateAppRequest {
app_id: app.id.clone(),
name: None,
desc: None,
color_style: None,
is_trash: Some(true),
};
2021-09-04 15:12:53 +08:00
update_app(sdk, request);
app.id
}