mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2025-07-09 18:16:17 +00:00
56 lines
1.9 KiB
Rust
56 lines
1.9 KiB
Rust
![]() |
use collab_database::views::DatabaseLayout;
|
||
|
use flowy_database2::entities::FieldType;
|
||
|
use flowy_database2::entities::FieldVisibility;
|
||
|
use flowy_database2::services::field_settings::default_visibility;
|
||
|
|
||
|
use crate::database::field_settings_test::script::FieldSettingsScript::*;
|
||
|
use crate::database::field_settings_test::script::FieldSettingsTest;
|
||
|
|
||
|
/// Check default field settings for grid, kanban and calendar
|
||
|
#[tokio::test]
|
||
|
async fn get_default_field_settings() {
|
||
|
let mut test = FieldSettingsTest::new_grid().await;
|
||
|
let visibility = default_visibility(DatabaseLayout::Grid);
|
||
|
let scripts = vec![AssertAllFieldSettings { visibility }];
|
||
|
test.run_scripts(scripts).await;
|
||
|
|
||
|
let mut test = FieldSettingsTest::new_board().await;
|
||
|
let visibility = default_visibility(DatabaseLayout::Board);
|
||
|
let scripts = vec![AssertAllFieldSettings { visibility }];
|
||
|
test.run_scripts(scripts).await;
|
||
|
|
||
|
let mut test = FieldSettingsTest::new_calendar().await;
|
||
|
let visibility = default_visibility(DatabaseLayout::Calendar);
|
||
|
let scripts = vec![AssertAllFieldSettings { visibility }];
|
||
|
test.run_scripts(scripts).await;
|
||
|
}
|
||
|
|
||
|
/// Update field settings for a field
|
||
|
#[tokio::test]
|
||
|
async fn update_field_settings_test() {
|
||
|
let mut test = FieldSettingsTest::new_grid().await;
|
||
|
let checkbox_field = test.get_first_field(FieldType::Checkbox);
|
||
|
let text_field = test.get_first_field(FieldType::RichText);
|
||
|
let visibility = default_visibility(DatabaseLayout::Grid);
|
||
|
let new_visibility = FieldVisibility::AlwaysHidden;
|
||
|
|
||
|
let scripts = vec![
|
||
|
AssertAllFieldSettings {
|
||
|
visibility: visibility.clone(),
|
||
|
},
|
||
|
UpdateFieldSettings {
|
||
|
field_id: checkbox_field.id.clone(),
|
||
|
visibility: Some(new_visibility.clone()),
|
||
|
},
|
||
|
AssertFieldSettings {
|
||
|
field_id: checkbox_field.id,
|
||
|
visibility: new_visibility,
|
||
|
},
|
||
|
AssertFieldSettings {
|
||
|
field_id: text_field.id,
|
||
|
visibility,
|
||
|
},
|
||
|
];
|
||
|
test.run_scripts(scripts).await;
|
||
|
}
|