row_util.rs 985 B

1234567891011121314151617181920212223242526272829303132
  1. use crate::grid::script::GridEditorTest;
  2. use flowy_grid::services::row::{CreateRowRevisionBuilder, CreateRowRevisionPayload};
  3. use flowy_grid_data_model::entities::FieldType;
  4. use flowy_grid_data_model::revision::FieldRevision;
  5. use strum::EnumCount;
  6. pub struct GridRowTestBuilder<'a> {
  7. test: &'a GridEditorTest,
  8. inner_builder: CreateRowRevisionBuilder<'a>,
  9. }
  10. impl<'a> GridRowTestBuilder<'a> {
  11. pub fn new(test: &'a GridEditorTest) -> Self {
  12. assert_eq!(test.field_revs.len(), FieldType::COUNT);
  13. let inner_builder = CreateRowRevisionBuilder::new(&test.field_revs);
  14. Self { test, inner_builder }
  15. }
  16. pub fn update_text_cell(&mut self) -> Self {
  17. let text_field = self
  18. .test
  19. .field_revs
  20. .iter()
  21. .find(|field_rev| field_rev.field_type == FieldType::RichText);
  22. // self.inner_builder
  23. }
  24. pub fn build(self) -> CreateRowRevisionPayload {
  25. self.inner_builder.build()
  26. }
  27. }