Skip to content

Commit 2a22847

Browse files
committed
ICS transfer test with background auto relayer is working
1 parent 1b220fb commit 2a22847

File tree

1 file changed

+9
-28
lines changed
  • relayer/crates/starknet-integration-tests/src/tests

1 file changed

+9
-28
lines changed

relayer/crates/starknet-integration-tests/src/tests/ics20.rs

Lines changed: 9 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,7 @@ use std::time::SystemTime;
66

77
use cgp::extra::run::CanRun;
88
use cgp::prelude::*;
9-
use hermes_chain_components::traits::queries::chain_status::{
10-
CanQueryChainHeight, CanQueryChainStatus,
11-
};
9+
use hermes_chain_components::traits::queries::chain_status::CanQueryChainStatus;
1210
use hermes_chain_components::traits::queries::client_state::CanQueryClientStateWithLatestHeight;
1311
use hermes_chain_components::traits::types::chain_id::HasChainId;
1412
use hermes_cosmos_chain_components::types::channel::CosmosInitChannelOptions;
@@ -27,7 +25,6 @@ use hermes_relayer_components::chain::traits::send_message::CanSendSingleMessage
2725
use hermes_relayer_components::relay::impls::channel::bootstrap::CanBootstrapChannel;
2826
use hermes_relayer_components::relay::impls::connection::bootstrap::CanBootstrapConnection;
2927
use hermes_relayer_components::relay::traits::client_creator::CanCreateClient;
30-
use hermes_relayer_components::relay::traits::event_relayer::CanRelayEvent;
3128
use hermes_relayer_components::relay::traits::target::{DestinationTarget, SourceTarget};
3229
use hermes_relayer_components::transaction::traits::poll_tx_response::CanPollTxResponse;
3330
use hermes_runtime_components::traits::fs::read_file::CanReadFileAsString;
@@ -459,8 +456,10 @@ fn test_starknet_ics20_contract() -> Result<(), Error> {
459456
balance_cosmos_a_step_1.quantity + transfer_quantity
460457
);
461458

462-
// Wait for background relayer to relay packet
463-
runtime.sleep(Duration::from_secs(5)).await;
459+
// Wait for background relayer to relay packet.
460+
// We cannot poll the balance here, because the IBC denom will only
461+
// be relayed after the first token transfer.
462+
runtime.sleep(Duration::from_secs(2)).await;
464463

465464
let ics20_token_address: Felt = {
466465
let ibc_prefixed_denom = PrefixedDenom {
@@ -599,14 +598,11 @@ fn test_starknet_ics20_contract() -> Result<(), Error> {
599598

600599
info!("erc20 token address: {:?}", erc20_token_address);
601600

602-
let balance_starknet_relayer_step_0 = starknet_chain
601+
let balance_starknet_step_0 = starknet_chain
603602
.query_token_balance(erc20_token_address, address_starknet_b)
604603
.await?;
605604

606-
info!(
607-
"erc20 balance on starknet: {}",
608-
balance_starknet_relayer_step_0
609-
);
605+
info!("erc20 balance on starknet: {}", balance_starknet_step_0);
610606

611607
{
612608
// approve ics20 contract to spend the tokens for address_starknet_b
@@ -689,19 +685,6 @@ fn test_starknet_ics20_contract() -> Result<(), Error> {
689685
let tx_hash = execution.send().await?.transaction_hash;
690686

691687
starknet_chain.poll_tx_response(&tx_hash).await?;
692-
693-
// info!("ICS20 send packet response: {:?}", response);
694-
695-
// let height = starknet_chain.query_chain_height().await?;
696-
697-
// for event in response.events {
698-
// <StarknetToCosmosRelay as CanRelayEvent<SourceTarget>>::relay_chain_event(
699-
// &starknet_to_cosmos_relay,
700-
// &height,
701-
// &event,
702-
// )
703-
// .await?;
704-
// }
705688
};
706689

707690
let cosmos_ibc_denom = derive_ibc_denom(
@@ -730,7 +713,7 @@ fn test_starknet_ics20_contract() -> Result<(), Error> {
730713

731714
assert_eq!(
732715
balance_starknet_relayer_step_3.quantity,
733-
balance_starknet_relayer_step_0.quantity - transfer_quantity.into()
716+
balance_starknet_step_0.quantity - transfer_quantity.into()
734717
);
735718

736719
// send the tokens back to starknet
@@ -746,8 +729,6 @@ fn test_starknet_ics20_contract() -> Result<(), Error> {
746729
)
747730
.await?;
748731

749-
// cosmos_to_starknet_relay.relay_packet(&packet).await?;
750-
751732
let balance_cosmos_a_step_4 = cosmos_chain
752733
.query_balance(address_cosmos_a, &cosmos_ibc_denom)
753734
.await?;
@@ -760,7 +741,7 @@ fn test_starknet_ics20_contract() -> Result<(), Error> {
760741
assert_eq!(balance_cosmos_a_step_4.quantity, 0u64.into());
761742

762743
starknet_chain
763-
.assert_eventual_amount(erc20_token_address, &balance_starknet_relayer_step_0)
744+
.assert_eventual_amount(address_starknet_b, &balance_starknet_step_0)
764745
.await?;
765746

766747
Ok(())

0 commit comments

Comments
 (0)