Skip to content

Commit

Permalink
IT: more support for router tests (#1885)
Browse files Browse the repository at this point in the history
* move routers to its own module

* remove outdated markers

* for all runtimes

* remove previous tests

* minor fixes
  • Loading branch information
lemunozm authored Jun 25, 2024
1 parent de2886f commit 1cc426c
Show file tree
Hide file tree
Showing 9 changed files with 208 additions and 356 deletions.
1 change: 0 additions & 1 deletion pallets/liquidity-pools-gateway/routers/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -234,7 +234,6 @@ where
T: frame_system::Config + pallet_xcm_transactor::Config,
{
pub xcm_domain: XcmDomain<T::CurrencyId>,
pub _marker: PhantomData<T>,
}

impl<T> XCMRouter<T>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ use scale_info::{
TypeInfo,
};
use sp_core::{bounded::BoundedVec, ConstU32, H160};
use sp_std::{collections::btree_map::BTreeMap, marker::PhantomData, vec, vec::Vec};
use sp_std::{collections::btree_map::BTreeMap, vec, vec::Vec};

use crate::{
AccountIdOf, EVMRouter, MessageOf, AXELAR_DESTINATION_CHAIN_PARAM,
Expand All @@ -44,7 +44,6 @@ where
pub router: EVMRouter<T>,
pub evm_chain: BoundedVec<u8, ConstU32<MAX_AXELAR_EVM_CHAIN_SIZE>>,
pub liquidity_pools_contract_address: H160,
pub _marker: PhantomData<T>,
}

impl<T> AxelarEVMRouter<T>
Expand All @@ -66,7 +65,6 @@ where
router,
evm_chain,
liquidity_pools_contract_address,
_marker: Default::default(),
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ use parity_scale_codec::{Decode, Encode, MaxEncodedLen};
use scale_info::TypeInfo;
use sp_core::{bounded::BoundedVec, ConstU32, H160};
use sp_runtime::DispatchError;
use sp_std::marker::PhantomData;

use crate::{
axelar_evm::get_axelar_encoded_msg, AccountIdOf, CurrencyIdOf, MessageOf, XCMRouter, XcmDomain,
Expand All @@ -37,7 +36,6 @@ where
pub router: XCMRouter<T>,
pub axelar_target_chain: BoundedVec<u8, ConstU32<MAX_AXELAR_EVM_CHAIN_SIZE>>,
pub axelar_target_contract: H160,
pub _marker: PhantomData<T>,
}

impl<T> AxelarXCMRouter<T>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ use frame_support::{
};
use parity_scale_codec::{Decode, Encode, MaxEncodedLen};
use scale_info::TypeInfo;
use sp_std::{collections::btree_map::BTreeMap, marker::PhantomData, vec, vec::Vec};
use sp_std::{collections::btree_map::BTreeMap, vec, vec::Vec};

use crate::{AccountIdOf, MessageOf, XCMRouter, FUNCTION_NAME, MESSAGE_PARAM};

Expand All @@ -30,7 +30,6 @@ where
+ pallet_liquidity_pools_gateway::Config,
{
pub router: XCMRouter<T>,
pub _marker: PhantomData<T>,
}

impl<T> EthereumXCMRouter<T>
Expand Down
15 changes: 0 additions & 15 deletions pallets/liquidity-pools-gateway/routers/src/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -229,7 +229,6 @@ mod xcm_router {

let router = XCMRouter::<Runtime> {
xcm_domain: test_data.xcm_domain.clone(),
_marker: Default::default(),
};

assert_ok!(router.do_init());
Expand All @@ -247,7 +246,6 @@ mod xcm_router {

let router = XCMRouter::<Runtime> {
xcm_domain: test_data.xcm_domain.clone(),
_marker: Default::default(),
};

assert_ok!(router.do_send(test_data.sender, test_data.msg.clone()));
Expand Down Expand Up @@ -293,7 +291,6 @@ mod xcm_router {

let router = XCMRouter::<Runtime> {
xcm_domain: test_data.xcm_domain.clone(),
_marker: Default::default(),
};

assert_ok!(router.do_init());
Expand Down Expand Up @@ -383,7 +380,6 @@ mod axelar_evm {
evm_chain: TEST_EVM_CHAIN.clone(),
liquidity_pools_contract_address: test_data
.liquidity_pools_contract_address,
_marker: Default::default(),
});

assert_ok!(domain_router.init());
Expand All @@ -404,7 +400,6 @@ mod axelar_evm {
evm_chain: TEST_EVM_CHAIN.clone(),
liquidity_pools_contract_address: test_data
.liquidity_pools_contract_address,
_marker: Default::default(),
});

assert_noop!(
Expand Down Expand Up @@ -453,7 +448,6 @@ mod axelar_evm {
evm_chain: TEST_EVM_CHAIN.clone(),
liquidity_pools_contract_address: test_data
.liquidity_pools_contract_address,
_marker: Default::default(),
});

assert_ok!(domain_router.send(test_data.sender, test_data.msg));
Expand All @@ -474,7 +468,6 @@ mod axelar_evm {
evm_chain: TEST_EVM_CHAIN.clone(),
liquidity_pools_contract_address: test_data
.liquidity_pools_contract_address,
_marker: Default::default(),
});

let res = domain_router.send(test_data.sender, test_data.msg);
Expand Down Expand Up @@ -551,11 +544,9 @@ mod axelar_xcm {
DomainRouter::<Runtime>::AxelarXCM(AxelarXCMRouter::<Runtime> {
router: XCMRouter {
xcm_domain: test_data.xcm_domain.clone(),
_marker: Default::default(),
},
axelar_target_chain: test_data.axelar_target_chain,
axelar_target_contract: test_data.axelar_target_contract,
_marker: Default::default(),
});

assert_ok!(domain_router.init());
Expand All @@ -575,11 +566,9 @@ mod axelar_xcm {
DomainRouter::<Runtime>::AxelarXCM(AxelarXCMRouter::<Runtime> {
router: XCMRouter {
xcm_domain: test_data.xcm_domain.clone(),
_marker: Default::default(),
},
axelar_target_chain: test_data.axelar_target_chain.clone(),
axelar_target_contract: test_data.axelar_target_contract,
_marker: Default::default(),
});

assert_ok!(domain_router.init());
Expand Down Expand Up @@ -694,9 +683,7 @@ mod ethereum_xcm {
DomainRouter::<Runtime>::EthereumXCM(EthereumXCMRouter::<Runtime> {
router: XCMRouter {
xcm_domain: test_data.xcm_domain.clone(),
_marker: Default::default(),
},
_marker: Default::default(),
});

assert_ok!(domain_router.init());
Expand All @@ -716,9 +703,7 @@ mod ethereum_xcm {
DomainRouter::<Runtime>::EthereumXCM(EthereumXCMRouter::<Runtime> {
router: XCMRouter {
xcm_domain: test_data.xcm_domain.clone(),
_marker: Default::default(),
},
_marker: Default::default(),
});

assert_ok!(domain_router.init());
Expand Down
16 changes: 8 additions & 8 deletions runtime/common/src/gateway.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,18 @@

use cfg_primitives::AccountId;
use polkadot_parachain_primitives::primitives::Sibling;
use sp_core::{crypto::AccountId32, Get, H160};
use sp_core::{crypto::AccountId32, H160};
use sp_runtime::traits::AccountIdConversion;

use crate::account_conversion::AccountConverter;

pub fn get_gateway_h160_account<T: staging_parachain_info::Config>() -> H160 {
let para_id = staging_parachain_info::Pallet::<T>::parachain_id();
let sender_account = Sibling::from(para_id).into_account_truncating();
H160::from_slice(&<AccountId32 as AsRef<[u8; 32]>>::as_ref(&sender_account)[0..20])
}

pub fn get_gateway_account<T: pallet_evm_chain_id::Config + staging_parachain_info::Config>(
) -> AccountId {
let sender_account: AccountId =
Sibling::from(staging_parachain_info::Pallet::<T>::get()).into_account_truncating();

let truncated_sender_account =
H160::from_slice(&<AccountId32 as AsRef<[u8; 32]>>::as_ref(&sender_account)[0..20]);

AccountConverter::evm_address_to_account::<T>(truncated_sender_account)
AccountConverter::evm_address_to_account::<T>(get_gateway_h160_account::<T>())
}
Loading

0 comments on commit 1cc426c

Please sign in to comment.