|
@@ -482,6 +482,20 @@ mod tests {
|
|
assert_eq!(folder, folder_from_delta);
|
|
assert_eq!(folder, folder_from_delta);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ #[test]
|
|
|
|
+ fn folder_deserialize_invalid_json_test() {
|
|
|
|
+ for json in vec![
|
|
|
|
+ // No timestamp
|
|
|
|
+ r#"{"workspaces":[{"id":"1","name":"first workspace","desc":"","apps":[]}],"trash":[]}"#,
|
|
|
|
+ // Trailing characters
|
|
|
|
+ r#"{"workspaces":[{"id":"1","name":"first workspace","desc":"","apps":[]}],"trash":[]}123"#,
|
|
|
|
+ ] {
|
|
|
|
+ let mut deserializer = serde_json::Deserializer::from_reader(json.as_bytes());
|
|
|
|
+ let folder_rev = FolderRevision::deserialize(&mut deserializer).unwrap();
|
|
|
|
+ assert_eq!(folder_rev.workspaces.first().as_ref().unwrap().name, "first workspace");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
#[test]
|
|
#[test]
|
|
fn folder_update_workspace() {
|
|
fn folder_update_workspace() {
|
|
let (mut folder, initial_delta, workspace) = test_folder();
|
|
let (mut folder, initial_delta, workspace) = test_folder();
|