app_test.rs 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. use flowy_test::workspace::*;
  2. use flowy_workspace::entities::{
  3. app::QueryAppRequest,
  4. trash::{TrashIdentifier, TrashType},
  5. view::*,
  6. };
  7. #[tokio::test]
  8. #[should_panic]
  9. async fn app_delete() {
  10. let test = AppTest::new().await;
  11. delete_app(&test.sdk, &test.app.id).await;
  12. let query = QueryAppRequest {
  13. app_ids: vec![test.app.id.clone()],
  14. };
  15. let _ = read_app(&test.sdk, query).await;
  16. }
  17. #[tokio::test]
  18. async fn app_delete_then_putback() {
  19. let test = AppTest::new().await;
  20. delete_app(&test.sdk, &test.app.id).await;
  21. putback_trash(
  22. &test.sdk,
  23. TrashIdentifier {
  24. id: test.app.id.clone(),
  25. ty: TrashType::App,
  26. },
  27. )
  28. .await;
  29. let query = QueryAppRequest {
  30. app_ids: vec![test.app.id.clone()],
  31. };
  32. let app = read_app(&test.sdk, query).await;
  33. assert_eq!(&app, &test.app);
  34. }
  35. #[tokio::test]
  36. async fn app_read() {
  37. let test = AppTest::new().await;
  38. let query = QueryAppRequest {
  39. app_ids: vec![test.app.id.clone()],
  40. };
  41. let app_from_db = read_app(&test.sdk, query).await;
  42. assert_eq!(app_from_db, test.app);
  43. }
  44. #[tokio::test]
  45. async fn app_create_with_view() {
  46. let test = AppTest::new().await;
  47. let request_a = CreateViewRequest {
  48. belong_to_id: test.app.id.clone(),
  49. name: "View A".to_string(),
  50. desc: "".to_string(),
  51. thumbnail: Some("http://1.png".to_string()),
  52. view_type: ViewType::Doc,
  53. };
  54. let request_b = CreateViewRequest {
  55. belong_to_id: test.app.id.clone(),
  56. name: "View B".to_string(),
  57. desc: "".to_string(),
  58. thumbnail: Some("http://1.png".to_string()),
  59. view_type: ViewType::Doc,
  60. };
  61. let view_a = create_view_with_request(&test.sdk, request_a).await;
  62. let view_b = create_view_with_request(&test.sdk, request_b).await;
  63. let query = QueryAppRequest {
  64. app_ids: vec![test.app.id.clone()],
  65. };
  66. let view_from_db = read_app(&test.sdk, query).await;
  67. assert_eq!(view_from_db.belongings[0], view_a);
  68. assert_eq!(view_from_db.belongings[1], view_b);
  69. }
  70. // #[tokio::test]
  71. // async fn app_set_trash_flag() {
  72. // let test = AppTest::new().await;
  73. // test.delete().await;
  74. //
  75. // let query = QueryAppRequest::new(&test.app.id).trash();
  76. // let _ = read_app(&test.sdk, query);
  77. // }
  78. //
  79. // #[tokio::test]
  80. // #[should_panic]
  81. // async fn app_set_trash_flag_2() {
  82. // let test = AppTest::new().await;
  83. // test.move_app_to_trash().await;
  84. // let query = QueryAppRequest::new(&test.app.id);
  85. // let _ = read_app(&test.sdk, query);
  86. // }