Skip to content

test: add end-to-end testing framework#5435

Merged
mergify[bot] merged 19 commits intomasterfrom
erik/e2e-tests
Oct 5, 2020
Merged

test: add end-to-end testing framework#5435
mergify[bot] merged 19 commits intomasterfrom
erik/e2e-tests

Conversation

@erikgrinaker
Copy link
Contributor

@erikgrinaker erikgrinaker commented Sep 30, 2020

Partial fix for #5291. For details, see README.md and RFC-001.

This only includes a single test case under test/e2e/tests/, as a proof of concept - additional test cases will be submitted separately. A randomized testnet generator will also be submitted separately, there a currently just a handful of static testnets under test/e2e/networks/. This will eventually replace the current P2P tests and run in CI.

@codecov
Copy link

codecov bot commented Sep 30, 2020

Codecov Report

Merging #5435 into master will increase coverage by 1.54%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master    #5435      +/-   ##
==========================================
+ Coverage   59.78%   61.33%   +1.54%     
==========================================
  Files         202      259      +57     
  Lines       17514    23456    +5942     
==========================================
+ Hits        10471    14387    +3916     
- Misses       5981     7614    +1633     
- Partials     1062     1455     +393     
Impacted Files Coverage Δ
privval/file.go 68.68% <100.00%> (ø)
blockchain/v2/reactor.go 32.94% <0.00%> (-3.11%) ⬇️
blockchain/v0/pool.go 76.01% <0.00%> (-2.59%) ⬇️
blockchain/v0/reactor.go 60.59% <0.00%> (-0.99%) ⬇️
statesync/syncer.go 78.48% <0.00%> (-0.85%) ⬇️
consensus/reactor.go 74.33% <0.00%> (-0.26%) ⬇️
p2p/conn/conn_go110.go 100.00% <0.00%> (ø)
privval/signer_dialer_endpoint.go 92.30% <0.00%> (ø)
light/store/db/db.go 61.93% <0.00%> (ø)
light/rpc/client.go 0.00% <0.00%> (ø)
... and 55 more

@erikgrinaker erikgrinaker force-pushed the erik/e2e-tests branch 2 times, most recently from 1216b1d to 785e521 Compare October 1, 2020 09:49
Copy link
Contributor

@melekes melekes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

incredible work 💪 🏗️ 🧑‍🏭

@erikgrinaker erikgrinaker added the S:automerge Automatically merge PR when requirements pass label Oct 5, 2020
@mergify mergify bot merged commit 250c3aa into master Oct 5, 2020
@mergify mergify bot deleted the erik/e2e-tests branch October 5, 2020 09:35
lovincyrus added a commit that referenced this pull request Oct 5, 2020
* docs: specify TM version in go tutorials (#5427)

Closes #5425

* privval: allow passing options to NewSignerDialerEndpoint (#5434)

Required for #5291 to set timeouts for remote signers.

* config: set statesync.rpc_servers when generating config file (#5433)

Required for #5291, to generate configuration files with state sync RPC servers.

* consensus: check block parts don't exceed maximum block bytes (#5431)

* ci: docker remvoe circleci and add github action (#5420)

* privval: fix ping message encoding (#5441)

Fixes #5371.

* docs: revise ADR 56, documenting short term decision around amnesia evidence  (#5440)

* light: expand on errors and docs (#5443)

* test: add end-to-end testing framework (#5435)

Partial fix for #5291. For details, see [README.md](https://github.com/tendermint/tendermint/blob/erik/e2e-tests/test/e2e/README.md) and [RFC-001](https://github.com/tendermint/tendermint/blob/master/docs/rfc/rfc-001-end-to-end-testing.md).

This only includes a single test case under `test/e2e/tests/`, as a proof of concept - additional test cases will be submitted separately. A randomized testnet generator will also be submitted separately, there a currently just a handful of static testnets under `test/e2e/networks/`. This will eventually replace the current P2P tests and run in CI.

* changelog: add missing date to v0.33.5 release, fix indentation (#5454)

I forgot to add the date when we cut 0.33.5. This fixes that. It also fixes a header indentation issue for 0.33.8.

* test: add basic end-to-end test cases (#5450)

Partial fix for #5291.

This adds a basic set of test cases for core network invariants. Although small, it is sufficient to replace and extend the current set of P2P tests. Further test cases can be added later.

* test: add GitHub action for end-to-end tests (#5452)

Partial fix for #5291.

* fix RPC blockresults reutrn (#5459)

## Description

In blocks_results we use the proto definition of abciResponses: https://github.com/tendermint/tendermint/blob/2672b91ab099b8b02f3afabae4a0a745acd93c3f/rpc/core/blocks.go#L152-L155, this leads to the use of the proto definition of the pubkey which is an interface in go (oneof). The interface must be registered with the JSON encoder to have it work correctly.

A clearer divide between proto types and native types is needed.

Closes: #XXX

* circleci: remove Gitian reproducible_builds job (#5462)

* docs: fix links to adr 56 (#5464)

## Description

fix broken link from a previous change

* test: remove P2P tests (#5453)

Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
Co-authored-by: Erik Grinaker <erik@interchain.berlin>
Co-authored-by: Callum Waters <cmwaters19@gmail.com>
Co-authored-by: Marko <marbar3778@yahoo.com>
Co-authored-by: Tess Rinearson <tess.rinearson@gmail.com>
melekes pushed a commit that referenced this pull request Oct 9, 2020
Partial fix for #5291. For details, see [README.md](https://github.com/tendermint/tendermint/blob/erik/e2e-tests/test/e2e/README.md) and [RFC-001](https://github.com/tendermint/tendermint/blob/master/docs/rfc/rfc-001-end-to-end-testing.md).

This only includes a single test case under `test/e2e/tests/`, as a proof of concept - additional test cases will be submitted separately. A randomized testnet generator will also be submitted separately, there a currently just a handful of static testnets under `test/e2e/networks/`. This will eventually replace the current P2P tests and run in CI.
erikgrinaker added a commit that referenced this pull request Oct 20, 2020
Partial fix for #5291. For details, see [README.md](https://github.com/tendermint/tendermint/blob/erik/e2e-tests/test/e2e/README.md) and [RFC-001](https://github.com/tendermint/tendermint/blob/master/docs/rfc/rfc-001-end-to-end-testing.md).

This only includes a single test case under `test/e2e/tests/`, as a proof of concept - additional test cases will be submitted separately. A randomized testnet generator will also be submitted separately, there a currently just a handful of static testnets under `test/e2e/networks/`. This will eventually replace the current P2P tests and run in CI.
erikgrinaker added a commit that referenced this pull request Oct 22, 2020
Partial fix for #5291. For details, see [README.md](https://github.com/tendermint/tendermint/blob/erik/e2e-tests/test/e2e/README.md) and [RFC-001](https://github.com/tendermint/tendermint/blob/master/docs/rfc/rfc-001-end-to-end-testing.md).

This only includes a single test case under `test/e2e/tests/`, as a proof of concept - additional test cases will be submitted separately. A randomized testnet generator will also be submitted separately, there a currently just a handful of static testnets under `test/e2e/networks/`. This will eventually replace the current P2P tests and run in CI.
erikgrinaker added a commit that referenced this pull request Oct 22, 2020
Partial fix for #5291. For details, see [README.md](https://github.com/tendermint/tendermint/blob/erik/e2e-tests/test/e2e/README.md) and [RFC-001](https://github.com/tendermint/tendermint/blob/master/docs/rfc/rfc-001-end-to-end-testing.md).

This only includes a single test case under `test/e2e/tests/`, as a proof of concept - additional test cases will be submitted separately. A randomized testnet generator will also be submitted separately, there a currently just a handful of static testnets under `test/e2e/networks/`. This will eventually replace the current P2P tests and run in CI.
erikgrinaker added a commit that referenced this pull request Oct 22, 2020
Partial fix for #5291. For details, see [README.md](https://github.com/tendermint/tendermint/blob/erik/e2e-tests/test/e2e/README.md) and [RFC-001](https://github.com/tendermint/tendermint/blob/master/docs/rfc/rfc-001-end-to-end-testing.md).

This only includes a single test case under `test/e2e/tests/`, as a proof of concept - additional test cases will be submitted separately. A randomized testnet generator will also be submitted separately, there a currently just a handful of static testnets under `test/e2e/networks/`. This will eventually replace the current P2P tests and run in CI.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S:automerge Automatically merge PR when requirements pass

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants