From c89b1cafdc61e11a4c6a78ced8ec21634b574868 Mon Sep 17 00:00:00 2001 From: Antonio Yang Date: Wed, 8 Oct 2025 11:41:00 +0800 Subject: [PATCH 1/2] update testcase for nestinig name feature --- lib/src/lib.rs | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/lib/src/lib.rs b/lib/src/lib.rs index 72784d4..14cba07 100644 --- a/lib/src/lib.rs +++ b/lib/src/lib.rs @@ -210,7 +210,7 @@ mod tests { #[test] fn test_nested() { - #[derive(PartialEq, Debug, Patch, Deserialize)] + #[derive(PartialEq, Debug, Default, Patch, Deserialize)] #[patch(attribute(derive(PartialEq, Debug, Deserialize)))] struct B { c: u32, @@ -223,10 +223,12 @@ mod tests { #[patch(name = "BPatch")] b: B, } + let mut b = B::default(); + let b_patch: BPatch = serde_json::from_str(r#"{ "d": 1 }"#).unwrap(); + b.apply(b_patch); + assert_eq!(b, B { c: 0, d: 1 }); - let mut a = A { - b: B { c: 0, d: 0 }, - }; + let mut a = A { b }; let data = r#"{ "b": { "c": 1 } }"#; let patch: APatch = serde_json::from_str(data).unwrap(); // assert_eq!( @@ -239,7 +241,7 @@ mod tests { assert_eq!( a, A { - b: B { c: 1, d: 0 } + b: B { c: 1, d: 1 } } ); } @@ -286,7 +288,7 @@ mod tests { #[test] fn test_nested_generic() { - #[derive(PartialEq, Debug, Patch, Deserialize)] + #[derive(PartialEq, Debug, Default, Patch, Deserialize)] #[patch(attribute(derive(PartialEq, Debug, Deserialize)))] struct B where @@ -303,9 +305,12 @@ mod tests { b: B, } - let mut a = A { - b: B { c: 0, d: 0 }, - }; + let mut b = B::default(); + let b_patch: BPatch = serde_json::from_str(r#"{ "d": 1 }"#).unwrap(); + b.apply(b_patch); + assert_eq!(b, B { c: 0, d: 1 }); + + let mut a = A { b }; let data = r#"{ "b": { "c": 1 } }"#; let patch: APatch = serde_json::from_str(data).unwrap(); @@ -313,7 +318,7 @@ mod tests { assert_eq!( a, A { - b: B { c: 1, d: 0 } + b: B { c: 1, d: 1 } } ); } From 973c2ef27a1610a5148604a70c5a8b85fe147769 Mon Sep 17 00:00:00 2001 From: Antonio Yang Date: Wed, 8 Oct 2025 13:39:00 +0800 Subject: [PATCH 2/2] update dependencies --- flake.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/flake.lock b/flake.lock index 9902eb4..d3da23d 100644 --- a/flake.lock +++ b/flake.lock @@ -102,11 +102,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1754725699, - "narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", + "lastModified": 1759733170, + "narHash": "sha256-TXnlsVb5Z8HXZ6mZoeOAIwxmvGHp1g4Dw89eLvIwKVI=", "owner": "nixos", "repo": "nixpkgs", - "rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054", + "rev": "8913c168d1c56dc49a7718685968f38752171c3b", "type": "github" }, "original": { @@ -164,11 +164,11 @@ "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1755052812, - "narHash": "sha256-Tjw2YP7Hz8+ibE8wJ+Ps65vh1lzAe5ozmoo9sdQ7rGg=", + "lastModified": 1759890791, + "narHash": "sha256-KN1xkrQ4x6u8plgg43ZiYbQmESxeCKKOzALKjqbn4LM=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "433023cba5f4fa66b8b0fdbb8f91d420c9cc2527", + "rev": "74fcbc183aa6685f86008606bb7824bf2f40adbd", "type": "github" }, "original": {