Improve Penpal runtime + emulated tests#3543
Conversation
|
bot fmt |
|
@NachoPal https://gitlab.parity.io/parity/mirrors/polkadot-sdk/-/jobs/5410423 was started for your command Comment |
|
@NachoPal Command |
...us/parachains/integration-tests/emulated/tests/assets/asset-hub-rococo/src/tests/teleport.rs
Show resolved
Hide resolved
|
bot fmt |
|
@NachoPal https://gitlab.parity.io/parity/mirrors/polkadot-sdk/-/jobs/5426126 was started for your command Comment |
|
@NachoPal Command |
…-sdk into nacho/improve-penpal
cumulus/parachains/integration-tests/emulated/tests/assets/asset-hub-rococo/Cargo.toml
Show resolved
Hide resolved
|
bot fmt |
|
@NachoPal https://gitlab.parity.io/parity/mirrors/polkadot-sdk/-/jobs/5494268 was started for your command Comment |
|
@NachoPal Command |
|
@bkontur Addressed the comments, please take a look. |
| // This asset is added to AH as ForeignAsset and teleported between Penpal and AH | ||
| pub const TELEPORTABLE_ASSET_ID: u32 = 2; | ||
|
|
||
| pub const PENPAL_ID: u32 = 2000; |
There was a problem hiding this comment.
pub const PARA_ID_A: u32 = 2000;
pub const PARA_ID_B: u32 = 2001;
so shouldn't be PenpalTeleportableAssetLocation and PenpalSiblingSovereigAccount specific for A and/or B?
E.g.:
PenpalATeleportableAssetLocation
PenpalBTeleportableAssetLocation
bkontur
left a comment
There was a problem hiding this comment.
lgtm, just one last nit/question: https://github.com/paritytech/polkadot-sdk/pull/3543/files#r1524603274
* master: (65 commits) collator protocol changes for elastic scaling (validator side) (#3302) Contracts use polkavm workspace deps (#3715) Add elastic scaling support in ParaInherent BenchBuilder (#3690) Removes `as [disambiguation_path]` from `derive_impl` usage (#3652) fix(paseo-spec): New Paseo Bootnodes (#3674) Improve Penpal runtime + emulated tests (#3543) Staking ledger bonding fixes (#3639) DescribeAllTerminal for HashedDescription (#3349) Increase timeout for assertions (#3680) Add subsystems regression tests to CI (#3527) Always print connectivity report (#3677) Revert "FRAME: Create `TransactionExtension` as a replacement for `SignedExtension` (#2280)" (#3665) authority-discovery: Add log for debugging DHT authority records (#3668) Construct Runtime v2 (#1378) Support for `keyring` in runtimes (#2044) Add api-name in `cannot query the runtime API version` warning (#3653) Add a PolkaVM-based executor (#3458) Adds default config for assets pallet (#3637) Bump handlebars from 4.3.7 to 5.1.0 (#3248) [Collator Selection] Fix weight refund for `set_candidacy_bond` (#3643) ...
Issues addressed in this PR: - Improve *Penpal* runtime: - Properly handled received assets. Previously, it treated `(1, Here)` as the local native currency, whereas it should be treated as a `ForeignAsset`. This wasn't a great example of standard Parachain behaviour, as no Parachain treats the system asset as the local currency. - Remove `AllowExplicitUnpaidExecutionFrom` the system. Again, this wasn't a great example of standard Parachain behaviour. - Move duplicated `ForeignAssetFeeAsExistentialDepositMultiplierFeeCharger` to `assets_common` crate. - Improve emulated tests: - Update *Penpal* tests to new runtime. - To simplify tests, register the reserve transferred, teleported, and system assets in *Penpal* and *AssetHub* genesis. This saves us from having to create the assets repeatedly for each test - Add missing test case: `reserve_transfer_assets_from_para_to_system_para`. - Cleanup. - Prevent integration tests crates imports from being re-exported, as they were polluting the `polkadot-sdk` docs. There is still a test case missing for reserve transfers: - Reserve transfer of system asset from *Parachain* to *Parachain* trough *AssetHub*. - This is not yet possible with `pallet-xcm` due to the reasons explained in paritytech#3339 --------- Co-authored-by: command-bot <>
Issues addressed in this PR:
(1, Here)as the local native currency, whereas it should be treated as aForeignAsset. This wasn't a great example of standard Parachain behaviour, as no Parachain treats the system asset as the local currency.AllowExplicitUnpaidExecutionFromthe system. Again, this wasn't a great example of standard Parachain behaviour.ForeignAssetFeeAsExistentialDepositMultiplierFeeChargertoassets_commoncrate.reserve_transfer_assets_from_para_to_system_para.polkadot-sdkdocs.There is still a test case missing for reserve transfers:
pallet-xcmdue to the reasons explained in Improve Penpal runtime/emulated tests + AssetHubTokenLocationAsNative#3339