mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-05-31 02:51:01 +00:00
add integration tests to xcm-builder (#3537)
* add integration tests to xcm-builder * add an integration test for reserve_transfer_assets * add query holding and teleport tests * formatting * add to barrier doc comments and fix doc tests warnings * use more realistic barrier for integration tests * improve imports * adjust base xcm weight and existential deposit to be in line with Kusama * remove AnyNetwork Co-authored-by: Amar Singh <asinghchrony@protonmail.com> * add more comments and remove unnecessary code * move mock into separate file * reduce imports * update cargo.lock * remove reserve transfer test from xcm builder integration tests * reword barrier doc comment * elaborate on QueryHolding test scenario * add an integration test for reserve based transfers from parachain to parachain * add teleport tests * fix failing teleport filter tests * Update xcm/xcm-builder/src/integration_tests.rs Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com> * Update xcm/xcm-builder/src/integration_tests.rs Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com> * Update xcm/xcm-builder/src/integration_tests.rs Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com> * Move integration tests to tests/ directory * Fix merge * Replace All wildcard with a concrete seed amount * Rename SEED_AMOUNT to REGISTER_AMOUNT * Fix compilation error * Check for teleport destination first before checking out assets * Fix unit test * Do not run tests in integration mock * Add a permissive assets filter for teleportation * Remove check for teleport location in InitiateTeleport XCM * Remove defunct test * Apply suggestions from code review Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com> * Reword comment Co-authored-by: Amar Singh <asinghchrony@protonmail.com> Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com> Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
This commit is contained in:
@@ -23,6 +23,10 @@ use xcm::latest::{Junction, Junctions, MultiLocation, Order, Xcm};
|
||||
use xcm_executor::traits::{OnResponse, ShouldExecute};
|
||||
|
||||
/// Execution barrier that just takes `shallow_weight` from `weight_credit`.
|
||||
///
|
||||
/// Useful to allow XCM execution by local chain users via extrinsics.
|
||||
/// E.g. `pallet_xcm::reserve_asset_transfer` to transfer a reserve asset
|
||||
/// out of the local chain to another one.
|
||||
pub struct TakeWeightCredit;
|
||||
impl ShouldExecute for TakeWeightCredit {
|
||||
fn should_execute<Call>(
|
||||
@@ -39,6 +43,9 @@ impl ShouldExecute for TakeWeightCredit {
|
||||
|
||||
/// Allows execution from `origin` if it is contained in `T` (i.e. `T::Contains(origin)`) taking payments into
|
||||
/// account.
|
||||
///
|
||||
/// Only allows for `TeleportAsset`, `WithdrawAsset` and `ReserveAssetDeposit` XCMs because they are the only ones
|
||||
/// that place assets in the Holding Register to pay for execution.
|
||||
pub struct AllowTopLevelPaidExecutionFrom<T>(PhantomData<T>);
|
||||
impl<T: Contains<MultiLocation>> ShouldExecute for AllowTopLevelPaidExecutionFrom<T> {
|
||||
fn should_execute<Call>(
|
||||
|
||||
Reference in New Issue
Block a user