test.rs 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. use crate::database::database_ref_test::script::DatabaseRefScript::*;
  2. use crate::database::database_ref_test::script::DatabaseRefTest;
  3. #[tokio::test]
  4. async fn database_ref_number_of_database_test() {
  5. let mut test = DatabaseRefTest::new().await;
  6. test
  7. .run_scripts(vec![
  8. AssertNumberOfDatabase { expected: 1 },
  9. CreateNewGrid,
  10. AssertNumberOfDatabase { expected: 2 },
  11. ])
  12. .await;
  13. }
  14. #[tokio::test]
  15. async fn database_ref_link_with_existing_database_test() {
  16. let mut test = DatabaseRefTest::new().await;
  17. let database = test.all_databases().await.pop().unwrap();
  18. test
  19. .run_scripts(vec![
  20. LinkGridToDatabase {
  21. database_id: database.database_id,
  22. },
  23. AssertNumberOfDatabase { expected: 1 },
  24. ])
  25. .await;
  26. }
  27. #[tokio::test]
  28. async fn database_ref_link_with_existing_database_row_test() {
  29. let mut test = DatabaseRefTest::new().await;
  30. let database = test.all_databases().await.pop().unwrap();
  31. test
  32. .run_scripts(vec![
  33. LinkGridToDatabase {
  34. database_id: database.database_id,
  35. },
  36. AssertNumberOfDatabase { expected: 1 },
  37. ])
  38. .await;
  39. }
  40. #[tokio::test]
  41. async fn database_ref_create_new_row_test() {
  42. let mut test = DatabaseRefTest::new().await;
  43. let database = test.all_databases().await.pop().unwrap();
  44. let database_views = test.all_database_ref_views(&database.database_id).await;
  45. assert_eq!(database_views.len(), 1);
  46. let view_id_1 = database_views.get(0).unwrap().view_id.clone();
  47. test
  48. .run_scripts(vec![
  49. AssertNumberOfRows {
  50. view_id: view_id_1.clone(),
  51. expected: 6,
  52. },
  53. LinkGridToDatabase {
  54. database_id: database.database_id.clone(),
  55. },
  56. AssertNumberOfDatabase { expected: 1 },
  57. ])
  58. .await;
  59. let database_views = test.all_database_ref_views(&database.database_id).await;
  60. assert_eq!(database_views.len(), 2);
  61. let view_id_1 = database_views.get(0).unwrap().view_id.clone();
  62. let view_id_2 = database_views.get(1).unwrap().view_id.clone();
  63. // Create a new row
  64. let mut builder = test.row_builder(&view_id_1).await;
  65. builder.insert_text_cell("hello world");
  66. test
  67. .run_scripts(vec![
  68. CreateRow {
  69. view_id: view_id_1.clone(),
  70. row_rev: builder.build(),
  71. },
  72. AssertNumberOfRows {
  73. view_id: view_id_1,
  74. expected: 7,
  75. },
  76. AssertNumberOfRows {
  77. view_id: view_id_2,
  78. expected: 7,
  79. },
  80. ])
  81. .await;
  82. }