You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<!--
Please read and fill out this form before submitting your PR.
Please make sure you have reviewed our contributors guide before
submitting your
first PR.
NOTE: PR titles should follow semantic commits:
https://www.conventionalcommits.org/en/v1.0.0/
-->
## Overview
Adds tests 1, 2, 3, 4, 9, 10, 11 from #2351
Sequencer tests added:
1. `TestEvmMultipleTransactionInclusionE2E` - High-throughput processing
with 200 transactions (can bump it up but kept it lower for ligher CI
load)
2. `TestEvmDoubleSpendNonceHandlingE2E` - Double-spend prevention with
duplicate nonces
3. `TestEvmInvalidTransactionRejectionE2E` - Various invalid transaction
type rejections
4. `TestEvmSequencerRestartRecoveryE2E` - Able to switch modes between
restarts and recovery validation
- `StandardRestart`: Normal start -> Normal restart
- `LazyModeRestart`: Normal start -> Lazy restart
- `LazyToStandardRestart`: Lazy start -> Normal restart
- `LazyToLazyRestart`: Lazy start -> Lazy restart
Full node tests added:
1. `TestEvmSequencerWithFullNodeE2E` - Full node P2P sync with sequencer
2. `TestEvmFullNodeBlockPropagationE2E` - Block propagation across
multiple nodes (simulated)
3. `TestEvmLazyModeSequencerE2E` - Lazy mode sequencer with full node
P2P sync
4. `TestEvmSequencerFullNodeRestartE2E` - Able to switch modes between
restarts and recovery testing
- `StandardRestart`: Normal start -> Normal restart
- `LazyModeRestart`: Normal start -> Lazy restart
- `LazyToStandardRestart`: Lazy start -> Normal restart
- `LazyToLazyRestart`: Lazy start -> Lazy restart
<!--
Please provide an explanation of the PR, including the appropriate
context,
background, goal, and rationale. If there is an issue with this
information,
please provide a tl;dr and link the issue.
Ex: Closes #<issue number>
-->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Documentation**
* Clarified command-line flag usage and updated example paths for
improved accuracy and usability.
* **New Features**
* Introduced comprehensive end-to-end tests for EVM sequencer and full
node integration, covering block propagation, transaction consistency,
lazy mode, restart recovery, and invalid transaction handling.
* Added shared utilities and setup functions to streamline EVM test
workflows.
* **Tests**
* Replaced and expanded EVM aggregator end-to-end tests with detailed
scenarios for sequencer and full node operation, including
high-throughput, double-spend, invalid transaction, and recovery cases.
* **Chores**
* Updated test dependencies to be direct requirements for improved
dependency management.
* Renamed test target from "test-e2e" to "test-integration" to better
reflect test scope.
* Migrated logging framework from `github.com/ipfs/go-log/v2` to
`cosmossdk.io/log` across codebase and tests for consistent and improved
logging.
* **Bug Fixes**
* Improved timestamp handling in transaction execution to ensure block
timestamps are strictly increasing, enhancing chain consistency.
* **Refactor**
* Removed execution mode concept and related code simplifying block
creation, validation, and application logic.
* Simplified transaction execution flow to always execute during block
application.
* Updated logging initialization and usage to adopt structured logging
with module context and new logger interfaces.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
0 commit comments