Add Support for Foreign Assets (#2133)
* add foreign assets to westmint * add foreign assets to statemine * use updated api for ensure origin trait * Assets/ForeignAssets tests and fixes (#2167) * Test for create and transfer `TrustBackedAssets` with AssetTransactor * Test for transfer `local Currency` with AssetTransactor * Test for create foreign assets (covers foreign relaychain currency) * Added `ForeignFungiblesTransactor` and test for transfer `ForeignAssets` with AssetTransactor * Removed unused `pub const Local: MultiLocation` * Changed `ParaId -> Sibling` for `SiblingParachainConvertsVia` * Test for create foreign assets (covers local sibling parachain assets) * Reverted stuff for ForeignCreators from different global consensus (moved to transfer asset branch) * Refactor `weight_limit` for `execute_xcm` * Added test for `set_metadata` by ForeignCreator with `xcm::Transact(set_metadata)` * Renamed `receive_teleported_asset_works` -> `receive_teleported_asset_for_native_asset_works` * Allow `ForeignCreators` only for sibling parachains * Unify ReservedDmpWeight/ReservedXcmpWeight usage * Removed hack - replaced with `MatchedConvertedConcreteId` * Refactor `ForeignCreators` to assets-common * Add `ReceiveTeleportedAsset` test * Change test - `Utility::batch` -> Multiple `xcm::Transact` * Reusing the same deposits as for TrustBackedAssets * missing `try_successful_origin` ? * Finished `ForeignAssets` for westmint (converter, FungiblesApi, tests) * Refactoring tests - receive_teleported_asset_for_native_asset_works * ForeignAssets for statemine + refactored `receive_teleported_asset_from_foreign_creator_works` * Add `ForeignAssets` to statemine `FungiblesApi` * Add `asset_transactor_transfer_with_local_consensus_currency_works` to all runtimes * Added `asset_transactor_transfer_with_trust_backed_assets_works` test * Added `asset_transactor_transfer_with_foreign_assets_works` * Fix `missing `try_successful_origin` in implementation` * Added `create_and_manage_foreign_assets_for_local_consensus_parachain_assets_works` * Added `ExpectTransactStatus` check * Small rename * Extended `test_assets_balances_api_works` with ForeignAssets for `statemine` * PR fixes * Update parachains/runtimes/assets/test-utils/src/test_cases.rs --------- Co-authored-by: parity-processbot <> Co-authored-by:joe petrowski <25483142+joepetrowski@users.noreply.github.com> * Added `StartsWithExplicitGlobalConsensus` to ignores (#2338) * Update parachains/runtimes/assets/common/src/lib.rs Co-authored-by:
Gavin Wood <gavin@parity.io> * include mint and burn in SafeCallFilter * include mint and burn in SafeCallFilter (statemine) * clarify doc * Fix compilation (moved trait `InspectMetadata`) * Fix test * Extended test for `teleport` from/to relaychain + `CheckingAccount` (Part I) * Extended test for `teleport` from/to foreign parachain + `CheckingAccount` (Part II) * Fixed TODO - `NonLocal` for `ForeignAssets` * Changed `NonLocal` to `NoChecking` * Fix weight in test --------- Co-authored-by: parity-processbot <> Co-authored-by:
muharem <ismailov.m.h@gmail.com> Co-authored-by:
Branislav Kontur <bkontur@gmail.com> Co-authored-by:
Gavin Wood <gavin@parity.io>
Showing
- cumulus/Cargo.lock 16 additions, 0 deletionscumulus/Cargo.lock
- cumulus/parachains/common/src/impls.rs 12 additions, 0 deletionscumulus/parachains/common/src/impls.rs
- cumulus/parachains/runtimes/assets/common/Cargo.toml 12 additions, 0 deletionscumulus/parachains/runtimes/assets/common/Cargo.toml
- cumulus/parachains/runtimes/assets/common/src/foreign_creators.rs 56 additions, 0 deletions...parachains/runtimes/assets/common/src/foreign_creators.rs
- cumulus/parachains/runtimes/assets/common/src/fungible_conversion.rs 41 additions, 19 deletions...achains/runtimes/assets/common/src/fungible_conversion.rs
- cumulus/parachains/runtimes/assets/common/src/lib.rs 247 additions, 10 deletionscumulus/parachains/runtimes/assets/common/src/lib.rs
- cumulus/parachains/runtimes/assets/common/src/matching.rs 91 additions, 0 deletionscumulus/parachains/runtimes/assets/common/src/matching.rs
- cumulus/parachains/runtimes/assets/statemine/Cargo.toml 1 addition, 0 deletionscumulus/parachains/runtimes/assets/statemine/Cargo.toml
- cumulus/parachains/runtimes/assets/statemine/src/lib.rs 59 additions, 4 deletionscumulus/parachains/runtimes/assets/statemine/src/lib.rs
- cumulus/parachains/runtimes/assets/statemine/src/xcm_config.rs 93 additions, 8 deletions...us/parachains/runtimes/assets/statemine/src/xcm_config.rs
- cumulus/parachains/runtimes/assets/statemine/tests/tests.rs 197 additions, 58 deletionscumulus/parachains/runtimes/assets/statemine/tests/tests.rs
- cumulus/parachains/runtimes/assets/statemint/Cargo.toml 1 addition, 0 deletionscumulus/parachains/runtimes/assets/statemint/Cargo.toml
- cumulus/parachains/runtimes/assets/statemint/src/xcm_config.rs 1 addition, 2 deletions...us/parachains/runtimes/assets/statemint/src/xcm_config.rs
- cumulus/parachains/runtimes/assets/statemint/tests/tests.rs 73 additions, 58 deletionscumulus/parachains/runtimes/assets/statemint/tests/tests.rs
- cumulus/parachains/runtimes/assets/test-utils/Cargo.toml 28 additions, 1 deletioncumulus/parachains/runtimes/assets/test-utils/Cargo.toml
- cumulus/parachains/runtimes/assets/test-utils/src/lib.rs 259 additions, 8 deletionscumulus/parachains/runtimes/assets/test-utils/src/lib.rs
- cumulus/parachains/runtimes/assets/test-utils/src/test_cases.rs 1323 additions, 0 deletions...s/parachains/runtimes/assets/test-utils/src/test_cases.rs
- cumulus/parachains/runtimes/assets/westmint/Cargo.toml 1 addition, 0 deletionscumulus/parachains/runtimes/assets/westmint/Cargo.toml
- cumulus/parachains/runtimes/assets/westmint/src/lib.rs 59 additions, 5 deletionscumulus/parachains/runtimes/assets/westmint/src/lib.rs
- cumulus/parachains/runtimes/assets/westmint/src/xcm_config.rs 97 additions, 7 deletions...lus/parachains/runtimes/assets/westmint/src/xcm_config.rs
Please register or sign in to comment