Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

Adding integration tests #1426

Merged
merged 13 commits into from
Jul 5, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,4 @@ polkadot_argument_parsing
**/chains/
*.iml
.env
NachoPal marked this conversation as resolved.
Show resolved Hide resolved
bin
49 changes: 49 additions & 0 deletions parachains/integration-tests/statemine/config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
[relaychain]
default_command = "./bin/polkadot"
default_args = [ "-lparachain=debug" ]
chain = "kusama-local"

[[relaychain.nodes]]
name = "alice"
ws_port = 9900
validator = true

[[relaychain.nodes]]
name = "bob"
validator = true

[[relaychain.nodes]]
name = "charlie"
validator = true

[[relaychain.nodes]]
name = "dave"
validator = true

[[parachains]]
id = 1000
chain = "statemine-local"
cumulus_based = true

[[parachains.collators]]
name = "collator1"
ws_port = 9910
command = "./bin/polkadot-parachain"

[[parachains.collators]]
name = "collator2"
command = "./bin/polkadot-parachain"

[[parachains]]
id = 2000
chain = "penpal-kusama-2000"
cumulus_based = true

[[parachains.collators]]
name = "collator3"
ws_port = 9920
command = "./bin/polkadot-parachain"

[[parachains.collators]]
name = "collator4"
command = "./bin/polkadot-parachain"
144 changes: 144 additions & 0 deletions parachains/integration-tests/statemine/xcm/0_init.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
---
settings:
chains:
relay_chain: &relay_chain
wsPort: 9900
assets_parachain: &assets_parachain
wsPort: 9910
paraId: &ap_id 1000
penpal_parachain: &penpal_parachain
wsPort: 9920
paraId: &pp_id 2000
variables:
common:
xcm_verison: &xcm_version '2'
require_weight_at_most: &weight_at_most 1000000000
chains:
relay_chain:
signer: &rc_signer //Alice
assets_parachain_destination: &ap_dest { v1: { 0, interior: { x1: { parachain: *ap_id }}}}
penpal_parachain:
signer: &pp_signer //Alice
decodedCalls:
ap_force_xcm_version:
chain: *assets_parachain
pallet: polkadotXcm
call: forceXcmVersion
args: [
{ # location
parents: 1,
interior: Here
},
*xcm_version # xcmVersion
]

tests:
- name: Initialize Chains
its:
- name: XCM supported versions between chains
actions:
- extrinsics: # Relay Chain sets supported version for Assset Parachain
- chain: *relay_chain
sudo: true
signer: *rc_signer
pallet: xcmPallet
call: forceXcmVersion
args: [
{ # location
parents: 0,
interior: {
X1: {
Parachain: *ap_id
}
}
},
*xcm_version # xcmVersion
]
events:
- name: sudo.Sudid
attributes:
type: Result<Null, SpRuntimeDispatchError>
value: Ok
- name: xcmPallet.SupportedVersionChanged
attribute:
type: u32
value: *xcm_version
- extrinsics: # Relay Chain sets supported version for Penpal Parachain
- chain: *relay_chain
sudo: true
signer: *rc_signer
pallet: xcmPallet
call: forceXcmVersion
args: [
{ # location
parents: 0,
interior: {
X1: {
Parachain: *pp_id
}
}
},
*xcm_version # xcmVersion
]
events:
- name: sudo.Sudid
attributes:
type: Result<Null, SpRuntimeDispatchError>
value: Ok
- name: xcmPallet.SupportedVersionChanged
attribute:
type: u32
value: *xcm_version
- extrinsics: # Assset Parachain sets supported version for Relay Chain through it
- chain: *relay_chain
signer: *rc_signer
sudo: true
pallet: xcmPallet
call: send
args: [
*ap_dest, # destination
{
v2: [ #message
{
Transact: {
originType: Superuser,
requireWeightAtMost: *weight_at_most,
call: $ap_force_xcm_version
}
}
]
}
]
events:
- name: sudo.Sudid
attribute:
type: Result<Null, SpRuntimeDispatchError>
value: Ok
- name: xcmPallet.Sent
- name: polkadotXcm.SupportedVersionChanged
chain: *assets_parachain
attribute:
type: u32
value: *xcm_version
- extrinsics: # Penpal Parachain sets supported version for Relay Chain
- chain: *penpal_parachain
signer: *pp_signer
sudo: true
pallet: polkadotXcm
call: forceXcmVersion
args: [
{ # location
parents: 1,
interior: Here
},
*xcm_version # xcmVersion
]
events:
- name: sudo.Sudid
attribute:
type: Result<Null, SpRuntimeDispatchError>
value: Ok
- name: polkadotXcm.SupportedVersionChanged
attribute:
type: u32
value: *xcm_version
Loading