[Feature] XCM-Emulator (#2447)

* [Feature] XCM-Emulator

* ".git/.scripts/commands/fmt/fmt.sh"

* rename

* readme

* more rename

* rename directory

* implement AssetTransactor

* Update xcm/xcm-emulator/README.md

Co-authored-by: Muharem Ismailov <ismailov.m.h@gmail.com>

* address review comments (#2502)

* Update xcm/xcm-emulator/example/src/lib.rs

Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>

* Update xcm/xcm-emulator/README.md

* Use 2d weights.

* Point out nearer the failure why it should fail

* Move test-runtime to under examples

* Walk through how to use it

* proof needs to be non-zero

* Apply suggestions from code review

* Update xcm/xcm-emulator/README.md

Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>

* Improve xcm emulator (#2593)

* folder restructutre

* common created

* make macros repetitions

* messenger traits for relay and para

* default Messenger impls

* messenger traits refactor

* declared two networks

* init network approach works

* queues use HashMap but relay block number

* init and reset refactor

* messengers trait name changed

* relay block number suboptimal

* fix reset hashmap keys

* genesis added

* test ext added for parachains

* genesis added relay chains

* genesis to storage

* new_ext replaced by on_init

* new relay block number approach

* ext_wrapper added

* added types to Parachain trait

* relay chain with types

* restructure

* para_ids working

* replace para_id getter

* replace para_id getter 2

* tests restructure + common variables

* added sovereign and balances helpers

* more helpers + tess pass

* expected events macro added

* added events trait method

* expect_events macro improve

* expect_events macro done

* network traits added

* reserve_transfer test added

* para & relay macro inputs redefined

* added collectives & BH paras

* test restructure

* statemine removed

* nitpick

* rename test folder + events logs

* clean

* weight threshold helper

* update readme

* remove cumulus-test-service dependancy

* fmt

* comment docs

* update e2e tests to xcm v3

* clippy + runtime-benchmark + clean docs

---------

Co-authored-by: command-bot <>
Co-authored-by: Muharem Ismailov <ismailov.m.h@gmail.com>
Co-authored-by: Squirrel <gilescope@gmail.com>
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>
Co-authored-by: Ignacio Palacios <ignacio.palacios.santos@gmail.com>
This commit is contained in:
Roman Useinov
2023-05-19 19:53:41 +02:00
committed by GitHub
parent 8425e2a5c0
commit 944ab483d5
40 changed files with 3848 additions and 1859 deletions
@@ -0,0 +1,71 @@
[relaychain]
default_command = "./bin/polkadot"
default_args = [ "-lparachain=debug", "-lxcm=trace" ]
chain = "polkadot-local"
[[relaychain.nodes]]
name = "alice"
ws_port = 9800
validator = true
[[relaychain.nodes]]
name = "bob"
ws_port = 9801
validator = true
[[relaychain.nodes]]
name = "charlie"
ws_port = 9802
validator = true
[[relaychain.nodes]]
name = "dave"
ws_port = 9803
validator = true
[[parachains]]
id = 1000
chain = "statemint-local"
cumulus_based = true
[[parachains.collators]]
name = "collator1"
ws_port = 9810
command = "./bin/polkadot-parachain"
args = [ "-lxcm=trace" ]
[[parachains.collators]]
name = "collator2"
ws_port = 9811
command = "./bin/polkadot-parachain"
args = [ "-lxcm=trace" ]
[[parachains]]
id = 2000
chain = "penpal-polkadot-2000"
cumulus_based = true
[[parachains.collators]]
name = "collator3"
ws_port = 9820
command = "./bin/polkadot-parachain"
args = [ "-lxcm=trace" ]
[[parachains.collators]]
name = "collator4"
ws_port = 9821
command = "./bin/polkadot-parachain"
args = [ "-lxcm=trace" ]
# [[hrmpChannels]]
# sender = 1000
# recipient = 2000
# maxCapacity = 8
# maxMessageSize = 8192
# [[hrmpChannels]]
# sender = 2000
# recipient = 1000
# maxCapacity = 8
# maxMessageSize = 8192