Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
A0-2671: Add try-state hook to the elections pallet (#1251)
# Description This is the first PR introducing `try-state` hook to our pallets. Hopefully, more to come. ## Why? `try-state` is a similar concept to `try-runtime`. Basically, we can put all (storage) invariant checks into a hook and trigger them from anywhere we need. By default, they can be called from most of `try-runtime` commands, like `follow-chain`. More info: https://forum.polkadot.network/t/testing-complex-frame-pallets-discussion-tools/356#try-runtime-follow-chain-trystate-4 ## Local testing I have broken some of the checks in `ensure_validators_are_ok` function and then: ```shell $ cargo build --release --features try-runtime $ ./scripts/run_nodes.sh -b false $ ./target/release/aleph-node try-runtime --runtime existing --chain /tmp/chainspec.json follow-chain --uri ws://localhost:9944 --keep-connection ``` **Note**: Cardinal-Cryptography/substrate#39 is required for this scenario. ## Type of change - New feature (non-breaking change which adds functionality)
- Loading branch information