cfx_executor/internal_contract/
utils.rs1#[cfg(test)]
2#[macro_export]
3macro_rules! check_func_signature {
4 ($interface:ident, $signature:expr) => {
5 assert_eq!(
6 $interface::FUNC_SIG.to_vec(),
7 $signature.from_hex::<Vec<u8>>().unwrap(),
8 "Test solidity signature for {}",
9 $interface::NAME_AND_PARAMS
10 );
11 };
12}
13
14#[cfg(test)]
15#[macro_export]
16macro_rules! check_event_signature {
17 ($interface:ident, $signature:expr) => {
18 assert_eq!(
19 $interface::EVENT_SIG.0.to_vec(),
20 $signature.from_hex::<Vec<u8>>().unwrap(),
21 "Test solidity event signature"
22 );
23 };
24}
25
26#[macro_export]
27macro_rules! internal_bail {
28 ($e:expr) => {
29 return Err(cfx_vm_types::Error::InternalContract($e.into()));
30 };
31 ($fmt:expr, $($arg:tt)+) => {
32 return Err(cfx_vm_types::Error::InternalContract(format!($fmt, $($arg)+)));
33 };
34}