Skip to content

Commit 660a1ae

Browse files
authored
Merge pull request #10 from ithacaxyz/fgimenez/add-log-tests
feat: add logs checks for concrete addresses and transfer events
2 parents 5607794 + b70618e commit 660a1ae

File tree

1 file changed

+19
-4
lines changed

1 file changed

+19
-4
lines changed

crates/rpc-tester/src/tester.rs

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
33
use super::{MethodName, TestError};
44
use crate::{get_logs, report::report, rpc, rpc_raw, rpc_with_block};
5-
use alloy_primitives::{Address, BlockHash, BlockNumber, U256};
5+
use alloy_primitives::{Address, BlockHash, BlockNumber, B256, U256};
66
use alloy_provider::{
77
ext::{DebugApi, TraceApi},
88
network::{AnyNetwork, AnyRpcBlock, AnyRpcHeader, TransactionResponse},
@@ -102,7 +102,11 @@ where
102102
rpc_raw!(self, eth_getHeaderByHash, AnyRpcHeader, (block_hash,)),
103103
rpc_raw!(self, reth_getBalanceChangesInBlock, BalanceChanges, (block_id,)),
104104
rpc!(self, trace_block, block_id),
105-
get_logs!(self, &Filter::new().select(block_number))
105+
get_logs!(self, &Filter::new().select(block_number)),
106+
get_logs!(self, &Filter::new().select(block_number).address(vec![
107+
"0x6b175474e89094c44da98b954eedeac495271d0f".parse::<Address>().unwrap(), // dai
108+
"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48".parse::<Address>().unwrap(), // usdc
109+
]))
106110
];
107111

108112
tests.extend(block_calls);
@@ -171,12 +175,23 @@ where
171175
let start = *block_range.start();
172176
let end = *block_range.end();
173177

178+
// ERC-20 Transfer event signature: Transfer(address,address,uint256)
179+
let transfer_event_signature =
180+
"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"
181+
.parse::<B256>()
182+
.unwrap();
183+
174184
#[rustfmt::skip]
175185
report(vec![(
176186
format!("{start}..={end}"),
177187
futures::future::join_all([
178-
get_logs!(self, Filter::new().from_block(start).to_block(end)
179-
)])
188+
get_logs!(self, Filter::new().from_block(start).to_block(end)),
189+
get_logs!(self, Filter::new().from_block(start).to_block(end).address(vec![
190+
"0x6b175474e89094c44da98b954eedeac495271d0f".parse::<Address>().unwrap(), // dai
191+
"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48".parse::<Address>().unwrap(), // usdc
192+
])),
193+
get_logs!(self, Filter::new().from_block(start).to_block(end).event_signature(transfer_event_signature))
194+
])
180195
.await,
181196
)])?;
182197

0 commit comments

Comments
 (0)