diff --git a/Makefile.toml b/Makefile.toml index db4ddc784..ead0f1ca7 100644 --- a/Makefile.toml +++ b/Makefile.toml @@ -329,11 +329,8 @@ category = "Test" command = "${CARGO}" args = [ "test", - "test_silo_connector", "--features", "${CARGO_FEATURES_TEST}", - "--", - "--nocapture" ] [tasks.bench-modexp-test] diff --git a/engine-tests-connector/src/silo.rs b/engine-tests-connector/src/silo.rs index 7b227ef36..8ed039e08 100644 --- a/engine-tests-connector/src/silo.rs +++ b/engine-tests-connector/src/silo.rs @@ -1,4 +1,4 @@ -use crate::utils::eth::{create_eth_acc, set_submit_tx, submit_transaction}; +use crate::utils::eth::{create_eth_acc, prepare_submit_transaction, set_submit_tx}; use crate::utils::{mock_proof, TestContract}; const ETH: u128 = 10u128.pow(18); @@ -7,7 +7,7 @@ const ETH: u128 = 10u128.pow(18); async fn test_silo_connector() { let (addr, sk) = create_eth_acc(); let contract = TestContract::new_silo_contract().await.unwrap(); - let res = contract.add_addr_to_white_list(addr.clone()).await.unwrap(); + let res = contract.add_addr_to_white_list(addr).await.unwrap(); assert!(res.is_success()); let amount = 5 * ETH; @@ -19,6 +19,13 @@ async fn test_silo_connector() { assert_eq!(res, 5 * ETH); let (recv, _) = create_eth_acc(); - let tx = set_submit_tx(0, recv, 30); - submit_transaction(contract, &sk, tx).await; + let tx_args = set_submit_tx(0, recv, ETH); + let tx = prepare_submit_transaction(&sk, tx_args).await; + let res = contract.submit(tx).await.unwrap(); + assert!(res.is_success()); + + let res = contract.get_eth_balance(&addr).await.unwrap(); + assert_eq!(res, 3 * ETH); + let res = contract.get_eth_balance(&recv).await.unwrap(); + assert_eq!(res, ETH); } diff --git a/engine-tests-connector/src/utils.rs b/engine-tests-connector/src/utils.rs index de33d8f0f..2d5dbc5ef 100644 --- a/engine-tests-connector/src/utils.rs +++ b/engine-tests-connector/src/utils.rs @@ -357,6 +357,16 @@ impl TestContract { .await?) } + pub async fn submit(&self, tx: Vec) -> anyhow::Result { + Ok(self + .engine_contract + .call("submit") + .args(tx) + .gas(DEFAULT_GAS) + .transact() + .await?) + } + pub async fn add_addr_to_white_list( &self, address: Address, @@ -554,7 +564,7 @@ pub fn mock_proof( sender: Address::new(H160([0u8; 20])), token_message_data, amount: NEP141Wei::new(deposit_amount), - fee: fee.clone(), + fee, }; let event_schema = ethabi::Event { @@ -585,7 +595,7 @@ pub fn mock_proof( } pub mod eth { - use crate::utils::{Address, TestContract, Wei, DEFAULT_GAS}; + use crate::utils::{Address, Wei}; use aurora_engine_transactions::legacy::{LegacyEthSignedTransaction, TransactionLegacy}; use aurora_engine_types::U256; use libsecp256k1::{Message, PublicKey, SecretKey}; @@ -650,23 +660,9 @@ pub mod eth { } } - pub async fn submit_transaction( - contract: TestContract, - sk: &SecretKey, - transaction: TransactionLegacy, - ) { + pub async fn prepare_submit_transaction(sk: &SecretKey, tx_args: TransactionLegacy) -> Vec { let chain_id = 0; - let signed_tx = sign_transaction(transaction, sk, Some(chain_id)); - let tx = rlp::encode(&signed_tx).to_vec(); - - let res = contract - .engine_contract - .call("submit") - .args(tx) - .gas(DEFAULT_GAS) - .transact() - .await - .unwrap(); - println!("{res:#?}"); + let signed_tx = sign_transaction(tx_args, sk, Some(chain_id)); + rlp::encode(&signed_tx).to_vec() } }