mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2024-08-30 18:12:39 +00:00
Feat/rename views (#2495)
* refactor: rename belongings to child views * test: fix test
This commit is contained in:
@ -171,7 +171,7 @@ mod tests {
|
||||
date: Some("1653609600".to_owned()),
|
||||
time: Some("11:23 pm".to_owned()),
|
||||
include_time: Some(true),
|
||||
timezone_id: Some("Etc/UTC".to_owned()),
|
||||
timezone_id: Some(chrono_tz::Tz::Etc__UTC.to_string()),
|
||||
},
|
||||
None,
|
||||
"May 27, 2022 11:23 PM",
|
||||
|
@ -84,7 +84,7 @@ impl DateTypeOption {
|
||||
let naive = chrono::NaiveDateTime::from_timestamp_opt(timestamp, 0).unwrap();
|
||||
let offset = match Tz::from_str(&timezone_id) {
|
||||
Ok(timezone) => timezone.offset_from_utc_datetime(&naive).fix(),
|
||||
Err(_) => Local::now().offset().clone(),
|
||||
Err(_) => *Local::now().offset(),
|
||||
};
|
||||
|
||||
let date_time = DateTime::<Local>::from_utc(naive, offset);
|
||||
@ -206,9 +206,8 @@ impl CellDataChangeset for DateTypeOption {
|
||||
.from_utc_datetime(&NaiveDateTime::from_timestamp_opt(timestamp, 0).unwrap())
|
||||
.date_naive(),
|
||||
),
|
||||
None => match previous_datetime {
|
||||
Some(datetime) => Some(timezone.from_utc_datetime(&datetime).date_naive()),
|
||||
None => None,
|
||||
None => {
|
||||
previous_datetime.map(|datetime| timezone.from_utc_datetime(&datetime).date_naive())
|
||||
},
|
||||
};
|
||||
|
||||
@ -231,17 +230,15 @@ impl CellDataChangeset for DateTypeOption {
|
||||
Err(_) => match parsed_time {
|
||||
// same logic as above, but using local time instead of timezone
|
||||
Some(time) => {
|
||||
let offset = Local::now().offset().clone();
|
||||
|
||||
let offset = *Local::now().offset();
|
||||
let local_date = match new_date_timestamp {
|
||||
Some(timestamp) => Some(
|
||||
offset
|
||||
.from_utc_datetime(&NaiveDateTime::from_timestamp_opt(timestamp, 0).unwrap())
|
||||
.date_naive(),
|
||||
),
|
||||
None => match previous_datetime {
|
||||
Some(datetime) => Some(offset.from_utc_datetime(&datetime).date_naive()),
|
||||
None => None,
|
||||
None => {
|
||||
previous_datetime.map(|datetime| offset.from_utc_datetime(&datetime).date_naive())
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -64,8 +64,7 @@ impl From<&Cell> for DateCellData {
|
||||
fn from(cell: &Cell) -> Self {
|
||||
let timestamp = cell
|
||||
.get_str_value(CELL_DATE)
|
||||
.map(|data| data.parse::<i64>().ok())
|
||||
.flatten();
|
||||
.and_then(|data| data.parse::<i64>().ok());
|
||||
|
||||
let include_time = cell.get_bool_value("include_time").unwrap_or_default();
|
||||
let timezone_id = cell.get_str_value("timezone_id").unwrap_or_default();
|
||||
|
@ -46,7 +46,8 @@ impl DatabaseCellTest {
|
||||
&changeset.field_id,
|
||||
changeset.cell_changeset,
|
||||
)
|
||||
.await;
|
||||
.await
|
||||
.unwrap();
|
||||
}, // CellScript::AssertGridRevisionPad => {
|
||||
// sleep(Duration::from_millis(2 * REVISION_WRITE_INTERVAL_IN_MILLIS)).await;
|
||||
// let mut grid_rev_manager = grid_manager.make_grid_rev_manager(&self.grid_id, pool.clone()).unwrap();
|
||||
|
@ -12,6 +12,7 @@ use flowy_database2::services::field::{
|
||||
CheckboxTypeOption, ChecklistTypeOption, DateCellChangeset, MultiSelectTypeOption, SelectOption,
|
||||
SelectOptionCellChangeset, SingleSelectTypeOption,
|
||||
};
|
||||
use flowy_error::FlowyResult;
|
||||
use flowy_test::helper::ViewTest;
|
||||
use flowy_test::FlowySDKTest;
|
||||
|
||||
@ -172,7 +173,7 @@ impl DatabaseEditorTest {
|
||||
field_id: &str,
|
||||
row_id: RowId,
|
||||
cell_changeset: T,
|
||||
) {
|
||||
) -> FlowyResult<()> {
|
||||
let field = self
|
||||
.editor
|
||||
.get_fields(&self.view_id, None)
|
||||
@ -183,10 +184,10 @@ impl DatabaseEditorTest {
|
||||
self
|
||||
.editor
|
||||
.update_cell_with_changeset(&self.view_id, row_id, &field.id, cell_changeset)
|
||||
.await;
|
||||
.await
|
||||
}
|
||||
|
||||
pub(crate) async fn update_text_cell(&mut self, row_id: RowId, content: &str) {
|
||||
pub(crate) async fn update_text_cell(&mut self, row_id: RowId, content: &str) -> FlowyResult<()> {
|
||||
let field = self
|
||||
.editor
|
||||
.get_fields(&self.view_id, None)
|
||||
@ -200,10 +201,14 @@ impl DatabaseEditorTest {
|
||||
|
||||
self
|
||||
.update_cell(&field.id, row_id, content.to_string())
|
||||
.await;
|
||||
.await
|
||||
}
|
||||
|
||||
pub(crate) async fn update_single_select_cell(&mut self, row_id: RowId, option_id: &str) {
|
||||
pub(crate) async fn update_single_select_cell(
|
||||
&mut self,
|
||||
row_id: RowId,
|
||||
option_id: &str,
|
||||
) -> FlowyResult<()> {
|
||||
let field = self
|
||||
.editor
|
||||
.get_fields(&self.view_id, None)
|
||||
@ -216,7 +221,7 @@ impl DatabaseEditorTest {
|
||||
.clone();
|
||||
|
||||
let cell_changeset = SelectOptionCellChangeset::from_insert_option_id(option_id);
|
||||
self.update_cell(&field.id, row_id, cell_changeset).await;
|
||||
self.update_cell(&field.id, row_id, cell_changeset).await
|
||||
}
|
||||
}
|
||||
|
||||
@ -253,12 +258,18 @@ impl TestRowBuilder {
|
||||
number_field.id.clone()
|
||||
}
|
||||
|
||||
pub fn insert_date_cell(&mut self, data: &str) -> String {
|
||||
pub fn insert_date_cell(
|
||||
&mut self,
|
||||
data: &str,
|
||||
time: Option<String>,
|
||||
include_time: Option<bool>,
|
||||
timezone_id: Option<String>,
|
||||
) -> String {
|
||||
let value = serde_json::to_string(&DateCellChangeset {
|
||||
date: Some(data.to_string()),
|
||||
time: None,
|
||||
include_time: Some(false),
|
||||
timezone_id: None,
|
||||
time,
|
||||
include_time,
|
||||
timezone_id,
|
||||
})
|
||||
.unwrap();
|
||||
let date_field = self.field_with_type(&FieldType::DateTime);
|
||||
|
@ -131,12 +131,12 @@ impl DatabaseFilterTest {
|
||||
FilterScript::UpdateTextCell { row_id, text, changed} => {
|
||||
self.recv = Some(self.editor.subscribe_view_changed(&self.view_id()).await.unwrap());
|
||||
self.assert_future_changed(changed).await;
|
||||
self.update_text_cell(row_id, &text).await;
|
||||
self.update_text_cell(row_id, &text).await.unwrap();
|
||||
}
|
||||
FilterScript::UpdateSingleSelectCell { row_id, option_id, changed} => {
|
||||
self.recv = Some(self.editor.subscribe_view_changed(&self.view_id()).await.unwrap());
|
||||
self.assert_future_changed(changed).await;
|
||||
self.update_single_select_cell(row_id, &option_id).await;
|
||||
self.update_single_select_cell(row_id, &option_id).await.unwrap();
|
||||
}
|
||||
FilterScript::InsertFilter { payload } => {
|
||||
self.recv = Some(self.editor.subscribe_view_changed(&self.view_id()).await.unwrap());
|
||||
|
@ -183,7 +183,8 @@ impl DatabaseGroupTest {
|
||||
self
|
||||
.editor
|
||||
.update_cell(&self.view_id, row_id, &field_id, cell)
|
||||
.await;
|
||||
.await
|
||||
.unwrap();
|
||||
},
|
||||
GroupScript::UpdateGroupedCellWithData {
|
||||
from_group_index,
|
||||
@ -205,7 +206,8 @@ impl DatabaseGroupTest {
|
||||
self
|
||||
.editor
|
||||
.update_cell(&self.view_id, row_id, &field_id, cell)
|
||||
.await;
|
||||
.await
|
||||
.unwrap();
|
||||
},
|
||||
GroupScript::MoveGroup {
|
||||
from_group_index,
|
||||
|
@ -119,7 +119,12 @@ pub fn make_test_board() -> DatabaseData {
|
||||
FieldType::RichText => row_builder.insert_text_cell("A"),
|
||||
FieldType::Number => row_builder.insert_number_cell("1"),
|
||||
// 1647251762 => Mar 14,2022
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1647251762"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1647251762",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
FieldType::SingleSelect => {
|
||||
row_builder.insert_single_select_cell(|mut options| options.remove(0))
|
||||
},
|
||||
@ -137,7 +142,12 @@ pub fn make_test_board() -> DatabaseData {
|
||||
FieldType::RichText => row_builder.insert_text_cell("B"),
|
||||
FieldType::Number => row_builder.insert_number_cell("2"),
|
||||
// 1647251762 => Mar 14,2022
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1647251762"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1647251762",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
FieldType::SingleSelect => {
|
||||
row_builder.insert_single_select_cell(|mut options| options.remove(0))
|
||||
},
|
||||
@ -154,7 +164,12 @@ pub fn make_test_board() -> DatabaseData {
|
||||
FieldType::RichText => row_builder.insert_text_cell("C"),
|
||||
FieldType::Number => row_builder.insert_number_cell("3"),
|
||||
// 1647251762 => Mar 14,2022
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1647251762"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1647251762",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
FieldType::SingleSelect => {
|
||||
row_builder.insert_single_select_cell(|mut options| options.remove(1))
|
||||
},
|
||||
@ -174,7 +189,12 @@ pub fn make_test_board() -> DatabaseData {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell("DA"),
|
||||
FieldType::Number => row_builder.insert_number_cell("4"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1668704685"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1668704685",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
FieldType::SingleSelect => {
|
||||
row_builder.insert_single_select_cell(|mut options| options.remove(1))
|
||||
},
|
||||
@ -189,7 +209,12 @@ pub fn make_test_board() -> DatabaseData {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell("AE"),
|
||||
FieldType::Number => row_builder.insert_number_cell(""),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1668359085"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1668359085",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
FieldType::SingleSelect => {
|
||||
row_builder.insert_single_select_cell(|mut options| options.remove(2))
|
||||
},
|
||||
|
@ -46,7 +46,12 @@ pub fn make_test_calendar() -> DatabaseData {
|
||||
for field_type in FieldType::iter() {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell("A"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1678090778"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1678090778",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
_ => "".to_owned(),
|
||||
};
|
||||
}
|
||||
@ -55,7 +60,12 @@ pub fn make_test_calendar() -> DatabaseData {
|
||||
for field_type in FieldType::iter() {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell("B"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1677917978"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1677917978",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
_ => "".to_owned(),
|
||||
};
|
||||
}
|
||||
@ -64,7 +74,12 @@ pub fn make_test_calendar() -> DatabaseData {
|
||||
for field_type in FieldType::iter() {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell("C"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1679213978"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1679213978",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
_ => "".to_owned(),
|
||||
};
|
||||
}
|
||||
@ -73,7 +88,12 @@ pub fn make_test_calendar() -> DatabaseData {
|
||||
for field_type in FieldType::iter() {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell("D"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1678695578"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1678695578",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
_ => "".to_owned(),
|
||||
};
|
||||
}
|
||||
@ -82,7 +102,12 @@ pub fn make_test_calendar() -> DatabaseData {
|
||||
for field_type in FieldType::iter() {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell("E"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1678695578"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1678695578",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
_ => "".to_owned(),
|
||||
};
|
||||
}
|
||||
|
@ -118,7 +118,12 @@ pub fn make_test_grid() -> DatabaseData {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell("A"),
|
||||
FieldType::Number => row_builder.insert_number_cell("1"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1647251762"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1647251762",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
FieldType::MultiSelect => row_builder
|
||||
.insert_multi_select_cell(|mut options| vec![options.remove(0), options.remove(0)]),
|
||||
FieldType::Checklist => row_builder.insert_checklist_cell(|options| options),
|
||||
@ -135,7 +140,12 @@ pub fn make_test_grid() -> DatabaseData {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell(""),
|
||||
FieldType::Number => row_builder.insert_number_cell("2"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1647251762"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1647251762",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
FieldType::MultiSelect => row_builder
|
||||
.insert_multi_select_cell(|mut options| vec![options.remove(0), options.remove(1)]),
|
||||
FieldType::Checkbox => row_builder.insert_checkbox_cell("true"),
|
||||
@ -148,7 +158,12 @@ pub fn make_test_grid() -> DatabaseData {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell("C"),
|
||||
FieldType::Number => row_builder.insert_number_cell("3"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1647251762"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1647251762",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
FieldType::SingleSelect => {
|
||||
row_builder.insert_single_select_cell(|mut options| options.remove(0))
|
||||
},
|
||||
@ -165,7 +180,12 @@ pub fn make_test_grid() -> DatabaseData {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell("DA"),
|
||||
FieldType::Number => row_builder.insert_number_cell("4"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1668704685"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1668704685",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
FieldType::SingleSelect => {
|
||||
row_builder.insert_single_select_cell(|mut options| options.remove(0))
|
||||
},
|
||||
@ -179,7 +199,12 @@ pub fn make_test_grid() -> DatabaseData {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell("AE"),
|
||||
FieldType::Number => row_builder.insert_number_cell(""),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1668359085"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1668359085",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
FieldType::SingleSelect => {
|
||||
row_builder.insert_single_select_cell(|mut options| options.remove(1))
|
||||
},
|
||||
@ -194,7 +219,12 @@ pub fn make_test_grid() -> DatabaseData {
|
||||
match field_type {
|
||||
FieldType::RichText => row_builder.insert_text_cell("AE"),
|
||||
FieldType::Number => row_builder.insert_number_cell("5"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell("1671938394"),
|
||||
FieldType::DateTime => row_builder.insert_date_cell(
|
||||
"1671938394",
|
||||
None,
|
||||
None,
|
||||
Some(chrono_tz::Tz::Etc__GMTPlus8.to_string()),
|
||||
),
|
||||
FieldType::SingleSelect => {
|
||||
row_builder.insert_single_select_cell(|mut options| options.remove(1))
|
||||
},
|
||||
|
@ -126,7 +126,7 @@ impl DatabaseSortTest {
|
||||
.await
|
||||
.unwrap(),
|
||||
);
|
||||
self.update_text_cell(row_id, &text).await;
|
||||
self.update_text_cell(row_id, &text).await.unwrap();
|
||||
},
|
||||
SortScript::AssertSortChanged {
|
||||
new_row_orders,
|
||||
|
@ -184,7 +184,7 @@ async fn sort_date_by_descending_test() {
|
||||
"2022/03/14",
|
||||
"2022/11/17",
|
||||
"2022/11/13",
|
||||
"2022/12/25",
|
||||
"2022/12/24",
|
||||
],
|
||||
},
|
||||
InsertSort {
|
||||
@ -194,7 +194,7 @@ async fn sort_date_by_descending_test() {
|
||||
AssertCellContentOrder {
|
||||
field_id: date_field.id.clone(),
|
||||
orders: vec![
|
||||
"2022/12/25",
|
||||
"2022/12/24",
|
||||
"2022/11/17",
|
||||
"2022/11/13",
|
||||
"2022/03/14",
|
||||
|
Reference in New Issue
Block a user