script.rs 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. use crate::grid::database_editor::DatabaseEditorTest;
  2. use flowy_database::entities::CellChangesetPB;
  3. pub enum CellScript {
  4. UpdateCell { changeset: CellChangesetPB, is_err: bool },
  5. }
  6. pub struct DatabaseCellTest {
  7. inner: DatabaseEditorTest,
  8. }
  9. impl DatabaseCellTest {
  10. pub async fn new() -> Self {
  11. let inner = DatabaseEditorTest::new_table().await;
  12. Self { inner }
  13. }
  14. pub async fn run_scripts(&mut self, scripts: Vec<CellScript>) {
  15. for script in scripts {
  16. self.run_script(script).await;
  17. }
  18. }
  19. pub async fn run_script(&mut self, script: CellScript) {
  20. // let grid_manager = self.sdk.grid_manager.clone();
  21. // let pool = self.sdk.user_session.db_pool().unwrap();
  22. // let rev_manager = self.editor.rev_manager();
  23. // let _cache = rev_manager.revision_cache().await;
  24. match script {
  25. CellScript::UpdateCell { changeset, is_err } => {
  26. let result = self
  27. .editor
  28. .update_cell_with_changeset(&changeset.row_id, &changeset.field_id, changeset.type_cell_data)
  29. .await;
  30. if is_err {
  31. assert!(result.is_err())
  32. } else {
  33. result.unwrap();
  34. }
  35. } // CellScript::AssertGridRevisionPad => {
  36. // sleep(Duration::from_millis(2 * REVISION_WRITE_INTERVAL_IN_MILLIS)).await;
  37. // let mut grid_rev_manager = grid_manager.make_grid_rev_manager(&self.grid_id, pool.clone()).unwrap();
  38. // let grid_pad = grid_rev_manager.load::<GridPadBuilder>(None).await.unwrap();
  39. // println!("{}", grid_pad.delta_str());
  40. // }
  41. }
  42. }
  43. }
  44. impl std::ops::Deref for DatabaseCellTest {
  45. type Target = DatabaseEditorTest;
  46. fn deref(&self) -> &Self::Target {
  47. &self.inner
  48. }
  49. }
  50. impl std::ops::DerefMut for DatabaseCellTest {
  51. fn deref_mut(&mut self) -> &mut Self::Target {
  52. &mut self.inner
  53. }
  54. }