From 1d48ad3ea086d907172155982359e89bb8dfd1bd Mon Sep 17 00:00:00 2001 From: gui Date: Tue, 14 Jan 2025 12:08:19 +0900 Subject: [PATCH 1/6] usage --- substrate/frame/system/src/lib.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/substrate/frame/system/src/lib.rs b/substrate/frame/system/src/lib.rs index 894e1898ed15..832c3e3ceba3 100644 --- a/substrate/frame/system/src/lib.rs +++ b/substrate/frame/system/src/lib.rs @@ -2017,6 +2017,7 @@ impl Pallet { /// /// NOTE: Events not registered at the genesis block and quietly omitted. #[cfg(any(feature = "std", feature = "runtime-benchmarks", test))] + #[track_caller] pub fn assert_has_event(event: T::RuntimeEvent) { let events = Self::events(); assert!( @@ -2029,6 +2030,7 @@ impl Pallet { /// /// NOTE: Events not registered at the genesis block and quietly omitted. #[cfg(any(feature = "std", feature = "runtime-benchmarks", test))] + #[track_caller] pub fn assert_last_event(event: T::RuntimeEvent) { let last_event = Self::events().last().expect("events expected").event.clone(); assert_eq!( From 5da9fceb8716f4e3ff47db9826bc6391b97693d1 Mon Sep 17 00:00:00 2001 From: gui Date: Tue, 14 Jan 2025 12:26:31 +0900 Subject: [PATCH 2/6] improve error message too --- substrate/frame/system/src/lib.rs | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/substrate/frame/system/src/lib.rs b/substrate/frame/system/src/lib.rs index 832c3e3ceba3..a5f6b3c01ec6 100644 --- a/substrate/frame/system/src/lib.rs +++ b/substrate/frame/system/src/lib.rs @@ -2019,10 +2019,16 @@ impl Pallet { #[cfg(any(feature = "std", feature = "runtime-benchmarks", test))] #[track_caller] pub fn assert_has_event(event: T::RuntimeEvent) { + let additional_note = if Self::block_number().is_zero() { + "\nWARNING: block number is zero, and events are not registered at block number zero." + } else { + "" + }; + let events = Self::events(); assert!( events.iter().any(|record| record.event == event), - "expected event {event:?} not found in events {events:?}", + "expected event {event:?} not found in events {events:?}{additional_note}", ); } @@ -2032,10 +2038,20 @@ impl Pallet { #[cfg(any(feature = "std", feature = "runtime-benchmarks", test))] #[track_caller] pub fn assert_last_event(event: T::RuntimeEvent) { - let last_event = Self::events().last().expect("events expected").event.clone(); + let additional_note = if Self::block_number().is_zero() { + "\nWARNING: block number is zero, and events are not registered at block number zero." + } else { + "" + }; + + let last_event = Self::events() + .last() + .expect(&*format!("events expected{additional_note}")) + .event + .clone(); assert_eq!( last_event, event, - "expected event {event:?} is not equal to the last event {last_event:?}", + "expected event {event:?} is not equal to the last event {last_event:?}{additional_note}", ); } From e769abe0dffe58735dc3a8310ca7564aa59963b3 Mon Sep 17 00:00:00 2001 From: gui Date: Tue, 14 Jan 2025 12:30:10 +0900 Subject: [PATCH 3/6] better --- substrate/frame/system/src/lib.rs | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/substrate/frame/system/src/lib.rs b/substrate/frame/system/src/lib.rs index a5f6b3c01ec6..b23f13c2904e 100644 --- a/substrate/frame/system/src/lib.rs +++ b/substrate/frame/system/src/lib.rs @@ -2019,8 +2019,8 @@ impl Pallet { #[cfg(any(feature = "std", feature = "runtime-benchmarks", test))] #[track_caller] pub fn assert_has_event(event: T::RuntimeEvent) { - let additional_note = if Self::block_number().is_zero() { - "\nWARNING: block number is zero, and events are not registered at block number zero." + let warn = if Self::block_number().is_zero() { + "WARNING: block number is zero, and events are not registered at block number zero.\n" } else { "" }; @@ -2028,7 +2028,7 @@ impl Pallet { let events = Self::events(); assert!( events.iter().any(|record| record.event == event), - "expected event {event:?} not found in events {events:?}{additional_note}", + "{warn}expected event {event:?} not found in events {events:?}", ); } @@ -2038,20 +2038,17 @@ impl Pallet { #[cfg(any(feature = "std", feature = "runtime-benchmarks", test))] #[track_caller] pub fn assert_last_event(event: T::RuntimeEvent) { - let additional_note = if Self::block_number().is_zero() { - "\nWARNING: block number is zero, and events are not registered at block number zero." + let warn = if Self::block_number().is_zero() { + "WARNING: block number is zero, and events are not registered at block number zero.\n" } else { "" }; - let last_event = Self::events() - .last() - .expect(&*format!("events expected{additional_note}")) - .event - .clone(); + let last_event = + Self::events().last().expect(&*format!("{warn}events expected")).event.clone(); assert_eq!( last_event, event, - "expected event {event:?} is not equal to the last event {last_event:?}{additional_note}", + "{warn}expected event {event:?} is not equal to the last event {last_event:?}", ); } From dddd591222a760990da9a86bad015d521c8a596b Mon Sep 17 00:00:00 2001 From: gui Date: Tue, 14 Jan 2025 13:06:27 +0900 Subject: [PATCH 4/6] clippy --- substrate/frame/system/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/substrate/frame/system/src/lib.rs b/substrate/frame/system/src/lib.rs index b23f13c2904e..1e7c4e633475 100644 --- a/substrate/frame/system/src/lib.rs +++ b/substrate/frame/system/src/lib.rs @@ -2045,7 +2045,7 @@ impl Pallet { }; let last_event = - Self::events().last().expect(&*format!("{warn}events expected")).event.clone(); + Self::events().last().expect(&format!("{warn}events expected")).event.clone(); assert_eq!( last_event, event, "{warn}expected event {event:?} is not equal to the last event {last_event:?}", From 3a96ee7cabc62887eae64356c2f2a7a14c8046e2 Mon Sep 17 00:00:00 2001 From: gui Date: Tue, 14 Jan 2025 13:07:10 +0900 Subject: [PATCH 5/6] fix no std imports --- substrate/frame/system/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/substrate/frame/system/src/lib.rs b/substrate/frame/system/src/lib.rs index 1e7c4e633475..721c1649e31b 100644 --- a/substrate/frame/system/src/lib.rs +++ b/substrate/frame/system/src/lib.rs @@ -2045,7 +2045,7 @@ impl Pallet { }; let last_event = - Self::events().last().expect(&format!("{warn}events expected")).event.clone(); + Self::events().last().expect(&alloc::format!("{warn}events expected")).event.clone(); assert_eq!( last_event, event, "{warn}expected event {event:?} is not equal to the last event {last_event:?}", From c76445605659d6a8c64557e0143e3c1807531d26 Mon Sep 17 00:00:00 2001 From: gui Date: Tue, 14 Jan 2025 14:38:56 +0900 Subject: [PATCH 6/6] fmt --- substrate/frame/system/src/lib.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/substrate/frame/system/src/lib.rs b/substrate/frame/system/src/lib.rs index 721c1649e31b..6ed7bb3b3a17 100644 --- a/substrate/frame/system/src/lib.rs +++ b/substrate/frame/system/src/lib.rs @@ -2044,8 +2044,11 @@ impl Pallet { "" }; - let last_event = - Self::events().last().expect(&alloc::format!("{warn}events expected")).event.clone(); + let last_event = Self::events() + .last() + .expect(&alloc::format!("{warn}events expected")) + .event + .clone(); assert_eq!( last_event, event, "{warn}expected event {event:?} is not equal to the last event {last_event:?}",