git.delta.rocks / unique-network / refs/commits / b7f8a6b82ee9

difftreelog

misc: add test for StructCollect generation

Trubnikov Sergey2022-11-21parent: #9e32437.patch.diff
in: master

2 files changed

modifiedcrates/evm-coder/procedural/src/abi_derive.rsdiffbeforeafterboth
306 let doc = doc.trim();306 let doc = doc.trim();
307 let dev = if i == 0 { " @dev" } else { "" };307 let dev = if i == 0 { " @dev" } else { "" };
308 quote! {308 quote! {
309 writeln!(str, "///{} {}", #dev, #doc).unwrap();309 writeln!(str, "\t///{} {}", #dev, #doc).unwrap();
310 }310 }
311 }),311 }),
312 Err(e) => unreachable!("{:?}", e),312 Err(e) => unreachable!("{:?}", e),
modifiedcrates/evm-coder/tests/abi_derive_generation.rsdiffbeforeafterboth
--- a/crates/evm-coder/tests/abi_derive_generation.rs
+++ b/crates/evm-coder/tests/abi_derive_generation.rs
@@ -63,6 +63,8 @@
 #[derive(AbiCoder, PartialEq, Debug)]
 struct TypeStruct3DerivedMixedParam {
 	/// Docs for A
+	/// multi
+	/// line
 	_a: TypeStruct1SimpleParam,
 	/// Docs for B
 	_b: TypeStruct2DynamicParam,
@@ -71,7 +73,30 @@
 }
 
 #[test]
-fn empty() {}
+#[cfg(feature = "stubgen")]
+fn struct_collect_TypeStruct3DerivedMixedParam() {
+	assert_eq!(
+		<TypeStruct3DerivedMixedParam as ::evm_coder::solidity::StructCollect>::name(),
+		"TypeStruct3DerivedMixedParam"
+	);
+	assert_eq!(
+		<TypeStruct3DerivedMixedParam as ::evm_coder::solidity::StructCollect>::declaration(),
+		r#"/// @dev Some docs
+/// At multi
+/// line
+struct TypeStruct3DerivedMixedParam {
+	/// @dev Docs for A
+	/// multi
+	/// line
+	TypeStruct1SimpleParam _a;
+	/// @dev Docs for B
+	TypeStruct2DynamicParam _b;
+	/// @dev Docs for C
+	TypeStruct2MixedParam _c;
+}
+"#
+	);
+}
 
 #[test]
 fn impl_abi_type_signature() {