Skip to content

Commit e43a1dd

Browse files
authored
feat: add additional logs to DSTest abi (#1916)
* feat: add additional logs to DSTest abi * fix: properly decode named array logs
1 parent 6859f04 commit e43a1dd

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

evm/src/decode.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,8 @@ pub fn decode_console_log(log: &Log) -> Option<String> {
4444
format!("{}: 0x{}", inner.key, hex::encode(inner.val))
4545
}
4646
LogNamedStringFilter(inner) => format!("{}: {}", inner.key, inner.val),
47+
LogNamedArray1Filter(inner) => format!("{}: {:?}", inner.key, inner.val),
48+
LogNamedArray2Filter(inner) => format!("{}: {:?}", inner.key, inner.val),
4749

4850
e => e.to_string(),
4951
};

evm/src/executor/abi.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,8 @@ pub static HARDHAT_CONSOLE_ADDRESS: Address = H160([
8080
0x2e, 0x6c, 0x6f, 0x67,
8181
]);
8282

83-
// Bindings for DS-style event logs
83+
// Bindings for DS-style event logs. Note that the array logs below are not actually part of DSTest,
84+
// but are part of forge-std, so are included here to ensure they are decoded in output logs.
8485
ethers::contract::abigen!(
8586
Console,
8687
r#"[
@@ -92,6 +93,8 @@ ethers::contract::abigen!(
9293
event log_uint (uint)
9394
event log_bytes (bytes)
9495
event log_string (string)
96+
event log_array (uint256[] val)
97+
event log_array (int256[] val)
9598
event log_named_address (string key, address val)
9699
event log_named_bytes32 (string key, bytes32 val)
97100
event log_named_decimal_int (string key, int val, uint decimals)
@@ -100,6 +103,8 @@ ethers::contract::abigen!(
100103
event log_named_uint (string key, uint val)
101104
event log_named_bytes (string key, bytes val)
102105
event log_named_string (string key, string val)
106+
event log_named_array (string key, uint256[] val)
107+
event log_named_array (string key, int256[] val)
103108
]"#
104109
);
105110
pub use console_mod::{ConsoleEvents, CONSOLE_ABI};

0 commit comments

Comments
 (0)