serde_test.rs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. use flowy_grid_data_model::entities::*;
  2. #[test]
  3. fn grid_serde_test() {
  4. let grid_id = "1".to_owned();
  5. let fields = vec![create_field("1")];
  6. let grid = GridMeta {
  7. grid_id,
  8. fields,
  9. rows: vec![],
  10. };
  11. let grid_1_json = serde_json::to_string(&grid).unwrap();
  12. let _: Grid = serde_json::from_str(&grid_1_json).unwrap();
  13. assert_eq!(
  14. grid_1_json,
  15. r#"{"id":"1","fields":[{"id":"1","name":"Text Field","desc":"","field_type":"RichText","frozen":false,"visibility":true,"width":150,"type_options":{"type_id":"","value":[]}}],"rows":[]}"#
  16. )
  17. }
  18. #[test]
  19. fn grid_default_serde_test() {
  20. let grid_id = "1".to_owned();
  21. let grid = GridMeta {
  22. grid_id,
  23. fields: vec![],
  24. rows: vec![],
  25. };
  26. let json = serde_json::to_string(&grid).unwrap();
  27. assert_eq!(json, r#"{"id":"1","fields":[],"row_orders":[]}"#)
  28. }
  29. fn create_field(field_id: &str) -> Field {
  30. Field::new(field_id, "Text Field", "", FieldType::RichText)
  31. }
  32. #[allow(dead_code)]
  33. fn uuid() -> String {
  34. uuid::Uuid::new_v4().to_string()
  35. }