difftreelog
Merge pull request #1069 from UniqueNetwork/fix/ci-polkadot-1.9
in: master
29 files changed
.docker/Dockerfile-acala.j2diffbeforeafterboth--- a/.docker/Dockerfile-acala.j2
+++ b/.docker/Dockerfile-acala.j2
@@ -17,6 +17,7 @@
RUN rustup toolchain install {{ RUST_TOOLCHAIN }} && \
rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }} && \
rustup default {{ RUST_TOOLCHAIN }} && \
+ rustup component add --toolchain {{ RUST_TOOLCHAIN }} rust-src && \
rustup target list --installed && \
rustup show
.docker/Dockerfile-astar.j2diffbeforeafterboth--- a/.docker/Dockerfile-astar.j2
+++ b/.docker/Dockerfile-astar.j2
@@ -17,6 +17,7 @@
RUN rustup toolchain install {{ RUST_TOOLCHAIN }} && \
rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }} && \
rustup default {{ RUST_TOOLCHAIN }} && \
+ rustup component add --toolchain {{ RUST_TOOLCHAIN }} rust-src && \
rustup target list --installed && \
rustup show
.docker/Dockerfile-chain-devdiffbeforeafterboth--- a/.docker/Dockerfile-chain-dev
+++ b/.docker/Dockerfile-chain-dev
@@ -14,6 +14,7 @@
RUN rustup toolchain uninstall $(rustup toolchain list) && \
rustup toolchain install $RUST_TOOLCHAIN && \
rustup default $RUST_TOOLCHAIN && \
+ rustup component add --toolchain $RUST_TOOLCHAIN rust-src && \
rustup target add wasm32-unknown-unknown --toolchain $RUST_TOOLCHAIN
RUN mkdir /dev_chain
.docker/Dockerfile-chain-dev-unitdiffbeforeafterboth--- a/.docker/Dockerfile-chain-dev-unit
+++ b/.docker/Dockerfile-chain-dev-unit
@@ -10,6 +10,7 @@
RUN rustup toolchain uninstall $(rustup toolchain list) && \
rustup toolchain install $RUST_TOOLCHAIN && \
rustup default $RUST_TOOLCHAIN && \
+ rustup component add --toolchain $RUST_TOOLCHAIN rust-src && \
rustup target add wasm32-unknown-unknown --toolchain $RUST_TOOLCHAIN
RUN mkdir /dev_chain
.docker/Dockerfile-collators.j2diffbeforeafterboth--- a/.docker/Dockerfile-collators.j2
+++ b/.docker/Dockerfile-collators.j2
@@ -9,6 +9,7 @@
RUN rustup toolchain uninstall $(rustup toolchain list) && \
rustup toolchain install {{ RUST_TOOLCHAIN }} && \
rustup default {{ RUST_TOOLCHAIN }} && \
+ rustup component add --toolchain {{ RUST_TOOLCHAIN }} rust-src && \
rustup target list --installed && \
rustup show
RUN rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }}
.docker/Dockerfile-cumulus.j2diffbeforeafterboth--- a/.docker/Dockerfile-cumulus.j2
+++ b/.docker/Dockerfile-cumulus.j2
@@ -17,6 +17,7 @@
RUN rustup toolchain install {{ RUST_TOOLCHAIN }} && \
rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }} && \
rustup default {{ RUST_TOOLCHAIN }} && \
+ rustup component add --toolchain {{ RUST_TOOLCHAIN }} rust-src && \
rustup target list --installed && \
rustup show
.docker/Dockerfile-hydradx.j2diffbeforeafterboth--- a/.docker/Dockerfile-hydradx.j2
+++ b/.docker/Dockerfile-hydradx.j2
@@ -17,6 +17,7 @@
RUN rustup toolchain install {{ RUST_TOOLCHAIN }} && \
rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }} && \
rustup default {{ RUST_TOOLCHAIN }} && \
+ rustup component add --toolchain {{ RUST_TOOLCHAIN }} rust-src && \
rustup target list --installed && \
rustup show
.docker/Dockerfile-moonbeam.j2diffbeforeafterboth--- a/.docker/Dockerfile-moonbeam.j2
+++ b/.docker/Dockerfile-moonbeam.j2
@@ -17,6 +17,7 @@
RUN rustup toolchain install {{ RUST_TOOLCHAIN }} && \
rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }} && \
rustup default {{ RUST_TOOLCHAIN }} && \
+ rustup component add --toolchain {{ RUST_TOOLCHAIN }} rust-src && \
rustup target list --installed && \
rustup show
.docker/Dockerfile-parachaindiffbeforeafterboth--- a/.docker/Dockerfile-parachain
+++ b/.docker/Dockerfile-parachain
@@ -12,6 +12,7 @@
RUN rustup toolchain uninstall $(rustup toolchain list) && \
rustup toolchain install $RUST_TOOLCHAIN && \
rustup default $RUST_TOOLCHAIN && \
+ rustup component add --toolchain $RUST_TOOLCHAIN rust-src && \
rustup target list --installed && \
rustup show
RUN rustup target add wasm32-unknown-unknown --toolchain $RUST_TOOLCHAIN
@@ -42,12 +43,12 @@
ARG POLKADOT_LAUNCH_BRANCH=
RUN apt-get -y update && \
- apt-get -y install curl git && \
- curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash && \
- export NVM_DIR="$HOME/.nvm" && \
- [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && \
- nvm install v16.16.0 && \
- nvm use v16.16.0
+ apt-get -y install curl git && \
+ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash && \
+ export NVM_DIR="$HOME/.nvm" && \
+ [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && \
+ nvm install v16.16.0 && \
+ nvm use v16.16.0
RUN git clone https://github.com/uniquenetwork/polkadot-launch -b ${POLKADOT_LAUNCH_BRANCH}
.docker/Dockerfile-parachain-upgrade-data.j2diffbeforeafterboth--- a/.docker/Dockerfile-parachain-upgrade-data.j2
+++ b/.docker/Dockerfile-parachain-upgrade-data.j2
@@ -10,6 +10,7 @@
RUN rustup toolchain uninstall $(rustup toolchain list) && \
rustup toolchain install {{ RUST_TOOLCHAIN }} && \
rustup default {{ RUST_TOOLCHAIN }} && \
+ rustup component add --toolchain {{ RUST_TOOLCHAIN }} rust-src && \
rustup target list --installed && \
rustup show
RUN rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }}
.docker/Dockerfile-parachain-upgrade.j2diffbeforeafterboth--- a/.docker/Dockerfile-parachain-upgrade.j2
+++ b/.docker/Dockerfile-parachain-upgrade.j2
@@ -10,6 +10,7 @@
RUN rustup toolchain uninstall $(rustup toolchain list) && \
rustup toolchain install {{ RUST_TOOLCHAIN }} && \
rustup default {{ RUST_TOOLCHAIN }} && \
+ rustup component add --toolchain {{ RUST_TOOLCHAIN }} rust-src && \
rustup target list --installed && \
rustup show
RUN rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }}
.docker/Dockerfile-polkadex.j2diffbeforeafterboth--- a/.docker/Dockerfile-polkadex.j2
+++ b/.docker/Dockerfile-polkadex.j2
@@ -17,6 +17,7 @@
RUN rustup toolchain install {{ RUST_TOOLCHAIN }} && \
rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }} && \
rustup default {{ RUST_TOOLCHAIN }} && \
+ rustup component add --toolchain {{ RUST_TOOLCHAIN }} rust-src && \
rustup target list --installed && \
rustup show
.docker/Dockerfile-polkadot.j2diffbeforeafterboth--- a/.docker/Dockerfile-polkadot.j2
+++ b/.docker/Dockerfile-polkadot.j2
@@ -17,6 +17,7 @@
RUN rustup toolchain install {{ RUST_TOOLCHAIN }} && \
rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }} && \
rustup default {{ RUST_TOOLCHAIN }} && \
+ rustup component add --toolchain {{ RUST_TOOLCHAIN }} rust-src && \
rustup target list --installed && \
rustup show
.docker/Dockerfile-testnet.j2diffbeforeafterboth--- a/.docker/Dockerfile-testnet.j2
+++ b/.docker/Dockerfile-testnet.j2
@@ -10,6 +10,7 @@
RUN rustup toolchain uninstall $(rustup toolchain list) && \
rustup toolchain install {{ RUST_TOOLCHAIN }} && \
rustup default {{ RUST_TOOLCHAIN }} && \
+ rustup component add --toolchain {{ RUST_TOOLCHAIN }} rust-src && \
rustup target list --installed && \
rustup show
RUN rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }}
.docker/Dockerfile-try-runtime.j2diffbeforeafterboth--- a/.docker/Dockerfile-try-runtime.j2
+++ b/.docker/Dockerfile-try-runtime.j2
@@ -10,6 +10,7 @@
rustup toolchain install {{ RUST_TOOLCHAIN }} && \
rustup default {{ RUST_TOOLCHAIN }} && \
rustup target list --installed && \
+ rustup component add --toolchain {{ RUST_TOOLCHAIN }} rust-src && \
rustup show
RUN rustup target add wasm32-unknown-unknown --toolchain {{ RUST_TOOLCHAIN }}
.docker/Dockerfile-uniquediffbeforeafterboth--- a/.docker/Dockerfile-unique
+++ b/.docker/Dockerfile-unique
@@ -19,6 +19,7 @@
rustup toolchain install $RUST_TOOLCHAIN && \
rustup target add wasm32-unknown-unknown --toolchain ${RUST_TOOLCHAIN} && \
rustup default $RUST_TOOLCHAIN && \
+ rustup component add --toolchain $RUST_TOOLCHAIN rust-src && \
rustup target list --installed && \
rustup show
.docker/Dockerfile-unique-releasediffbeforeafterboth--- a/.docker/Dockerfile-unique-release
+++ b/.docker/Dockerfile-unique-release
@@ -19,6 +19,7 @@
rustup toolchain install $RUST_TOOLCHAIN && \
rustup target add wasm32-unknown-unknown --toolchain ${RUST_TOOLCHAIN} && \
rustup default $RUST_TOOLCHAIN && \
+ rustup component add --toolchain $RUST_TOOLCHAIN rust-src && \
rustup target list --installed && \
rustup show
.envdiffbeforeafterboth1RUST_TOOLCHAIN=nightly-2023-05-222POLKADOT_LAUNCH_BRANCH=unique-network3RELAY_CHAIN_TYPE=westend4CHAINQL=v0.4.15DESTINATION_SPEC_VERSION=v94205767POLKADOT_MAINNET_BRANCH=release-v1.0.08STATEMINT_BUILD_BRANCH=release-parachains-v94309ACALA_BUILD_BRANCH=2.21.010MOONBEAM_BUILD_BRANCH=runtime-250011ASTAR_BUILD_BRANCH=v5.18.012UNIQUE_MAINNET_BRANCH=release-v1001006313UNIQUE_REPLICA_FROM=wss://ws.unique.network:44314POLKADEX_BUILD_BRANCH=v1.1.015HYDRADX_BUILD_BRANCH=v20.1.11617KUSAMA_MAINNET_BRANCH=release-v1.0.018STATEMINE_BUILD_BRANCH=release-parachains-v943019KARURA_BUILD_BRANCH=xnft-poc20MOONRIVER_BUILD_BRANCH=runtime-250021SHIDEN_BUILD_BRANCH=v5.18.022QUARTZ_MAINNET_BRANCH=release-v1001006323QUARTZ_REPLICA_FROM=wss://ws-quartz.unique.network:4432425UNIQUEWEST_MAINNET_BRANCH=release-v1.0.026WESTMINT_BUILD_BRANCH=parachains-v943027OPAL_MAINNET_BRANCH=release-v1001006328OPAL_REPLICA_FROM=wss://ws-opal.unique.network:4432930UNIQUEEAST_MAINNET_BRANCH=release-v1.0.031SAPPHIRE_MAINNET_BRANCH=release-v1001006332SAPPHIRE_REPLICA_FROM=wss://ws-sapphire.unique.network:443331RUST_TOOLCHAIN=nightly-2024-02-212POLKADOT_LAUNCH_BRANCH=unique-network3RELAY_CHAIN_TYPE=westend4CHAINQL=v0.4.15DESTINATION_SPEC_VERSION=v94205767POLKADOT_MAINNET_BRANCH=release-v1.0.08STATEMINT_BUILD_BRANCH=release-parachains-v94309ACALA_BUILD_BRANCH=2.21.010MOONBEAM_BUILD_BRANCH=runtime-250011ASTAR_BUILD_BRANCH=v5.18.012UNIQUE_MAINNET_BRANCH=release-v1001006313UNIQUE_REPLICA_FROM=wss://ws.unique.network:44314POLKADEX_BUILD_BRANCH=v1.1.015HYDRADX_BUILD_BRANCH=v20.1.11617KUSAMA_MAINNET_BRANCH=release-v1.0.018STATEMINE_BUILD_BRANCH=release-parachains-v943019KARURA_BUILD_BRANCH=xnft-poc20MOONRIVER_BUILD_BRANCH=runtime-250021SHIDEN_BUILD_BRANCH=v5.18.022QUARTZ_MAINNET_BRANCH=release-v1001006323QUARTZ_REPLICA_FROM=wss://ws-quartz.unique.network:4432425UNIQUEWEST_MAINNET_BRANCH=release-v1.0.026WESTMINT_BUILD_BRANCH=parachains-v943027OPAL_MAINNET_BRANCH=release-v1001006328OPAL_REPLICA_FROM=wss://ws-opal.unique.network:44329.github/workflows/collator-selection.ymldiffbeforeafterboth--- a/.github/workflows/collator-selection.yml
+++ b/.github/workflows/collator-selection.yml
@@ -42,7 +42,6 @@
matrix: |
network {opal}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}}
network {quartz}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}}
- network {sapphire}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}}
collator-selection:
.github/workflows/forkless-update-data.ymldiffbeforeafterboth--- a/.github/workflows/forkless-update-data.yml
+++ b/.github/workflows/forkless-update-data.yml
@@ -36,7 +36,6 @@
with:
matrix: |
network {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}}, runtime_features {opal-runtime}, wasm_name {opal}, fork_source {${{ env.OPAL_REPLICA_FROM }}}
- network {sapphire}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}}, runtime_features {sapphire-runtime}, wasm_name {quartz}, fork_source {${{ env.SAPPHIRE_REPLICA_FROM }}}
network {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}}, runtime_features {quartz-runtime}, wasm_name {quartz}, fork_source {${{ env.QUARTZ_REPLICA_FROM }}}
network {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}, relay_branch {${{ env.POLKADOT_MAINNET_BRANCH }}}, runtime_features {unique-runtime}, wasm_name {unique}, fork_source {${{ env.UNIQUE_REPLICA_FROM }}}
.github/workflows/forkless-update-nodata.ymldiffbeforeafterboth--- a/.github/workflows/forkless-update-nodata.yml
+++ b/.github/workflows/forkless-update-nodata.yml
@@ -36,7 +36,6 @@
with:
matrix: |
network {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}}, runtime_features {opal-runtime}, wasm_name {opal}
- network {sapphire}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}}, runtime_features {sapphire-runtime}, wasm_name {quartz}
network {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}}, runtime_features {quartz-runtime}, wasm_name {quartz}
network {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}, relay_branch {${{ env.POLKADOT_MAINNET_BRANCH }}}, runtime_features {unique-runtime}, wasm_name {unique}
.github/workflows/governance.ymldiffbeforeafterboth--- a/.github/workflows/governance.yml
+++ b/.github/workflows/governance.yml
@@ -34,7 +34,6 @@
network {unique}, wasm_name {unique}
network {quartz}, wasm_name {quartz}
network {opal}, wasm_name {opal}
- network {sapphire}, wasm_name {quartz}
dev_build_int_tests:
needs: prepare-execution-marix
.github/workflows/node-only-update.ymldiffbeforeafterboth--- a/.github/workflows/node-only-update.yml
+++ b/.github/workflows/node-only-update.yml
@@ -38,7 +38,6 @@
with:
matrix: |
network {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}}, runtime_features {opal-runtime}
- network {sapphire}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}}, runtime_features {sapphire-runtime}
network {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}}, runtime_features {quartz-runtime}
network {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}, relay_branch {${{ env.POLKADOT_MAINNET_BRANCH }}}, runtime_features {unique-runtime}
.github/workflows/polkadot-types.ymldiffbeforeafterboth--- a/.github/workflows/polkadot-types.yml
+++ b/.github/workflows/polkadot-types.yml
@@ -29,8 +29,6 @@
strategy:
matrix:
include:
- - network: "sapphire"
- usage: ""
- network: "opal"
usage: ""
- network: "quartz"
.github/workflows/try-runtime.ymldiffbeforeafterboth--- a/.github/workflows/try-runtime.yml
+++ b/.github/workflows/try-runtime.yml
@@ -34,7 +34,6 @@
with:
matrix: |
network {opal}, wasm_name {opal}, replica_from_address {${{ env.OPAL_REPLICA_FROM }}}
- network {sapphire}, wasm_name {quartz}, replica_from_address {${{ env.SAPPHIRE_REPLICA_FROM }}}
network {quartz}, wasm_name {quartz}, replica_from_address {${{ env.QUARTZ_REPLICA_FROM }}}
network {unique}, wasm_name {unique}, replica_from_address {${{ env.UNIQUE_REPLICA_FROM }}}
.github/workflows/yarn-dev.ymldiffbeforeafterboth--- a/.github/workflows/yarn-dev.yml
+++ b/.github/workflows/yarn-dev.yml
@@ -24,7 +24,6 @@
matrix:
include:
- network: "opal"
- - network: "sapphire"
- network: "quartz"
- network: "unique"
README.mddiffbeforeafterboth--- a/README.md
+++ b/README.md
@@ -52,17 +52,17 @@
2. Remove all installed toolchains with `rustup toolchain list` and `rustup toolchain uninstall <toolchain>`.
-3. Install toolchain nightly-2023-05-22 and make it default:
+3. Install toolchain nightly-2024-02-21 and make it default:
```bash
-rustup toolchain install nightly-2023-05-22
-rustup default nightly-2023-05-22
+rustup toolchain install nightly-2024-02-21
+rustup default nightly-2024-02-21
```
4. Add wasm target for nightly toolchain:
```bash
-rustup target add wasm32-unknown-unknown --toolchain nightly-2023-05-22
+rustup target add wasm32-unknown-unknown --toolchain nightly-2024-02-21
```
5. Build:
js-packages/scripts/generate_types/wait_for_first_block.shdiffbeforeafterboth--- a/js-packages/scripts/generate_types/wait_for_first_block.sh
+++ b/js-packages/scripts/generate_types/wait_for_first_block.sh
@@ -6,38 +6,42 @@
last_block_id=0
block_id=0
+counter=0
function get_block {
- block_id_hex=$(do_rpc chain_getHeader | jq -r .result.number)
- block_id=$((block_id_hex))
- echo Id = $block_id
+ block_id_hex=$(do_rpc chain_getHeader | jq -r .result.number)
+ block_id=$((block_id_hex))
+ echo Id = $block_id
}
function had_new_block {
- last_block_id=$block_id
- get_block
- if (( last_block_id != 0 && block_id > last_block_id )); then
- return 0
- fi
- return 1
+ last_block_id=$block_id
+ get_block
+ if (( last_block_id != 0 && block_id > last_block_id )); then
+ return 0
+ fi
+ return 1
}
function reset_check {
- last_block_id=0
- block_id=0
+ last_block_id=0
+ block_id=0
+ counter=0
}
-while ! had_new_block; do
- echo "Waiting for next block..."
- sleep 12
+while [ ! had_new_block ] && [ $counter -lt 100 ]; do
+ echo "Waiting for next block..."
+ counter=$((counter+1))
+ sleep 12
done
+
reset_check
echo "Chain is running, but lets wait for another block after a minute, to avoid startup flakiness."
sleep 60
while ! had_new_block; do
- echo "Waiting for another block..."
- sleep 12
+ echo "Waiting for another block..."
+ sleep 12
done
echo "Chain is running!"
runtime/common/tests/xcm.rsdiffbeforeafterboth--- a/runtime/common/tests/xcm.rs
+++ b/runtime/common/tests/xcm.rs
@@ -22,7 +22,12 @@
};
use super::{last_events, new_test_ext, AccountId};
-use crate::{PolkadotXcm, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin};
+use crate::{
+ runtime_common::config::xcm::XcmExecutorConfig, PolkadotXcm, Runtime, RuntimeCall,
+ RuntimeEvent, RuntimeOrigin,
+};
+
+type XcmExecutor = staging_xcm_executor::XcmExecutor<XcmExecutorConfig<Runtime>>;
const ALICE: AccountId = AccountId::new([0u8; 32]);
const BOB: AccountId = AccountId::new([1u8; 32]);
@@ -32,35 +37,37 @@
#[test]
pub fn xcm_transact_is_forbidden() {
new_test_ext(vec![(ALICE, INITIAL_BALANCE)]).execute_with(|| {
- PolkadotXcm::execute(
- RuntimeOrigin::signed(ALICE),
- Box::new(VersionedXcm::from(Xcm(vec![Transact {
- origin_kind: OriginKind::Native,
- require_weight_at_most: Weight::from_parts(1000, 1000),
- call: RuntimeCall::Balances(
- pallet_balances::Call::<Runtime>::transfer_keep_alive {
- dest: BOB.into(),
- value: INITIAL_BALANCE / 2,
- },
- )
- .encode()
- .into(),
- }]))),
- Weight::from_parts(1001000, 2000),
- )
- .expect(
- "XCM execute must succeed, the error should be in the `PolkadotXcm::Attempted` event",
- );
+ let max_weight = Weight::from_parts(1001000, 2000);
- let xcm_event = &last_events(1)[0];
- match xcm_event {
- RuntimeEvent::PolkadotXcm(pallet_xcm::Event::<Runtime>::Attempted {
- outcome: Outcome::Incomplete(_weight, Error::NoPermission),
- }) => { /* Pass */ }
- _ => panic!(
- "Expected PolkadotXcm.Attempted(Incomplete(_weight, NoPermission)),\
- found: {xcm_event:#?}"
- ),
+ let origin: Location = AccountId32 {
+ network: None,
+ id: *ALICE.as_ref(),
}
+ .into();
+ let message = Xcm(vec![Transact {
+ origin_kind: OriginKind::Native,
+ require_weight_at_most: Weight::from_parts(1000, 1000),
+ call: RuntimeCall::Balances(pallet_balances::Call::<Runtime>::transfer_keep_alive {
+ dest: BOB.into(),
+ value: INITIAL_BALANCE / 2,
+ })
+ .encode()
+ .into(),
+ }]);
+ let mut hash = message.using_encoded(sp_io::hashing::blake2_256);
+ let weight_limit = max_weight;
+ let weight_credit = max_weight;
+
+ let error = XcmExecutor::prepare_and_execute(
+ origin,
+ message,
+ &mut hash,
+ weight_limit,
+ weight_credit,
+ )
+ .ensure_complete()
+ .expect_err("XCM Transact shouldn't succeed");
+
+ assert_eq!(error, Error::NoPermission);
});
}