cosmos-sdk/x
Robert Zaremba 8eaf2ececc
Refactor x/staking Validation and Delegation tests based on MsgCreateValidator.Pubkey type change. (#7526)
* testing: refactore Validation and Delegation handling of x/staking

This Changeset introduces set of improvements for writing tests.

The idea is to create a testing subpackage which will provide functions
to make tests more dev-friendly and wrap higher level use-cases.
Here is a show-up of of creating a service for staking module
for tests.

This PR also changes the `x/staking/types.MsgCreateValidator.Pubkey` from string
to types.Any. This change motivated the other change to show the pattern I'm describing here.

* add validator checks

* type change fixes

* use deprecated

* adding test slashing

* new network comment update

* working on tests

* Fix TestMsgPkDecode test

* Add UnpackInterfaces to MsgCreateValidator

* Fix tests

* Convert bech32 pubkey to proto

* Fix test

* fix v039/migrate_test/TestMigrate

* fix tests

* testslashing: rename Service to Helper

* file rename

* update TestMsgDecode

Co-authored-by: blushi <marie.gauthier63@gmail.com>
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: Cory Levinson <cjlevinson@gmail.com>
2020-10-19 13:04:55 +00:00
..
auth Refactor x/staking Validation and Delegation tests based on MsgCreateValidator.Pubkey type change. (#7526) 2020-10-19 13:04:55 +00:00
bank Refactor x/evidence to ADR-031 (#7538) 2020-10-16 16:05:25 +00:00
capability Refactor RegisterQueryServices -> RegisterServices (#7518) 2020-10-12 16:31:51 +00:00
crisis Refactor x/{gov, crisis} according to ADR 031 (#7533) 2020-10-16 13:04:02 +00:00
distribution Refactor x/staking Validation and Delegation tests based on MsgCreateValidator.Pubkey type change. (#7526) 2020-10-19 13:04:55 +00:00
evidence Refactor x/staking Validation and Delegation tests based on MsgCreateValidator.Pubkey type change. (#7526) 2020-10-19 13:04:55 +00:00
genaccounts CLI migrate command follow-up: decode & re-encode (#7464) 2020-10-09 19:09:43 +00:00
genutil Refactor x/staking Validation and Delegation tests based on MsgCreateValidator.Pubkey type change. (#7526) 2020-10-19 13:04:55 +00:00
gov Refactor x/staking Validation and Delegation tests based on MsgCreateValidator.Pubkey type change. (#7526) 2020-10-19 13:04:55 +00:00
ibc Remove ClientType func and update consensus state path (#7573) 2020-10-19 09:59:31 +00:00
mint Refactor RegisterQueryServices -> RegisterServices (#7518) 2020-10-12 16:31:51 +00:00
params Refactor RegisterQueryServices -> RegisterServices (#7518) 2020-10-12 16:31:51 +00:00
simulation LGTM alerts audit (#7440) 2020-10-02 15:13:58 +02:00
slashing Refactor x/staking Validation and Delegation tests based on MsgCreateValidator.Pubkey type change. (#7526) 2020-10-19 13:04:55 +00:00
staking Refactor x/staking Validation and Delegation tests based on MsgCreateValidator.Pubkey type change. (#7526) 2020-10-19 13:04:55 +00:00
upgrade update upgrade query (#7567) 2020-10-15 19:02:45 +00:00
README.md docs: improve IBC guide (#6472) 2020-07-07 06:19:36 -04:00

List of Modules

Here are some production-grade modules that can be used in Cosmos SDK applications, along with their respective documentation:

  • Auth - Authentication of accounts and transactions for Cosmos SDK application.
  • Bank - Token transfer functionalities.
  • Capability - Object capability implementation.
  • Crisis - Halting the blockchain under certain circumstances (e.g. if an invariant is broken).
  • Distribution - Fee distribution, and staking token provision distribution.
  • Evidence - Evidence handling for double signing, misbehaviour, etc.
  • Governance - On-chain proposals and voting.
  • IBC - IBC protocol for transport, authentication adn ordering.
  • IBC Transfer - Cross-chain fungible token transfer implementation through IBC.
  • Mint - Creation of new units of staking token.
  • Params - Globally available parameter store.
  • Slashing - Validator punishment mechanisms.
  • Staking - Proof-of-Stake layer for public blockchains.
  • Upgrade - Software upgrades handling and coordination.

To learn more about the process of building modules, visit the building modules reference documentation.