From 72da5913d27068b96f06f03db4488445a5951d7a Mon Sep 17 00:00:00 2001 From: Matthias Seitz Date: Thu, 24 Feb 2022 21:07:58 +0100 Subject: [PATCH] test(abigen): add etherscan test case (#964) --- ethers-contract/tests/abigen.rs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/ethers-contract/tests/abigen.rs b/ethers-contract/tests/abigen.rs index 556879a1..1aa57525 100644 --- a/ethers-contract/tests/abigen.rs +++ b/ethers-contract/tests/abigen.rs @@ -5,7 +5,7 @@ use ethers_core::{ abi::{AbiDecode, AbiEncode, Address, Tokenizable}, types::{transaction::eip2718::TypedTransaction, Eip1559TransactionRequest, U256}, }; -use ethers_providers::Provider; +use ethers_providers::{MockProvider, Provider}; use ethers_solc::Solc; use std::{convert::TryFrom, sync::Arc}; @@ -472,3 +472,15 @@ async fn can_abiencoderv2_output() { let res = contract.default_person().call().await.unwrap(); assert_eq!(res, person); } + +#[test] +fn can_gen_multi_etherscan() { + abigen!( + MyContract, "etherscan:0xdAC17F958D2ee523a2206206994597C13D831ec7"; + MyContract2, "etherscan:0x8418bb725b3ac45ec8fff3791dd8b4e0480cc2a2"; + ); + + let provider = Arc::new(Provider::new(MockProvider::new())); + let _contract = MyContract::new(Address::default(), Arc::clone(&provider)); + let _contract = MyContract2::new(Address::default(), provider); +}