mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2024-08-30 18:12:39 +00:00
chore: support switch to multi select field
This commit is contained in:
@ -3,7 +3,8 @@ use flowy_grid::entities::{
|
||||
CreateRowParams, FieldChangesetParams, FieldType, GridLayout, GroupPB, MoveGroupParams, MoveGroupRowParams, RowPB,
|
||||
};
|
||||
use flowy_grid::services::cell::{delete_select_option_cell, insert_select_option_cell};
|
||||
use flowy_grid_data_model::revision::RowChangeset;
|
||||
use flowy_grid_data_model::revision::{FieldRevision, RowChangeset};
|
||||
use std::sync::Arc;
|
||||
use std::time::Duration;
|
||||
use tokio::time::interval;
|
||||
|
||||
@ -47,6 +48,9 @@ pub enum GroupScript {
|
||||
UpdateField {
|
||||
changeset: FieldChangesetParams,
|
||||
},
|
||||
GroupField {
|
||||
field_id: String,
|
||||
},
|
||||
}
|
||||
|
||||
pub struct GridGroupTest {
|
||||
@ -179,6 +183,9 @@ impl GridGroupTest {
|
||||
let mut interval = interval(Duration::from_millis(130));
|
||||
interval.tick().await;
|
||||
}
|
||||
GroupScript::GroupField { field_id } => {
|
||||
self.editor.group_field(&field_id).await.unwrap();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -191,6 +198,20 @@ impl GridGroupTest {
|
||||
let groups = self.group_at_index(group_index).await;
|
||||
groups.rows.get(row_index).unwrap().clone()
|
||||
}
|
||||
|
||||
pub async fn get_multi_select_field(&self) -> Arc<FieldRevision> {
|
||||
let field = self
|
||||
.inner
|
||||
.field_revs
|
||||
.iter()
|
||||
.find(|field_rev| {
|
||||
let field_type: FieldType = field_rev.ty.into();
|
||||
field_type.is_multi_select()
|
||||
})
|
||||
.unwrap()
|
||||
.clone();
|
||||
return field;
|
||||
}
|
||||
}
|
||||
|
||||
impl std::ops::Deref for GridGroupTest {
|
||||
|
@ -390,3 +390,12 @@ async fn group_update_field_test() {
|
||||
];
|
||||
test.run_scripts(scripts).await;
|
||||
}
|
||||
|
||||
#[tokio::test]
|
||||
async fn group_multi_select_field_test() {
|
||||
let mut test = GridGroupTest::new().await;
|
||||
let multi_select_field = test.get_multi_select_field().await;
|
||||
|
||||
let scripts = vec![];
|
||||
test.run_scripts(scripts).await;
|
||||
}
|
||||
|
Reference in New Issue
Block a user