Skip to content

Tests update 11.3: EIP tests, prepare to Shanghai

Compare
Choose a tag to compare
@winsvega winsvega released this 24 Jan 10:16
· 444 commits to develop since this release

The recent tests changes:

Introduces new folder EIPTests in GeneralStateTests that have tests for potential EIPS to be included in Shanghai
Tests in EIPTests folders are not mandatory to pass and can contain errors or outdated specs. Those are early development stage tests that will be transformed into proper tests once the specs are finalized.
This allows us to have coverage for future EIPs that not necesseraly implemented by all clients just yet.

Announcement

The test process diagram: http://tinyurl.com/2ctak8yn
Reminder of a brand new web interface for test debugging: http://retesteth.ethdevops.io/web/
Tests stats on latest builds: http://retesteth.ethdevops.io/
(implement test RPC support or t8ntool protocol to apply for the page. https://ethereum-tests.readthedocs.io/en/latest/t8ntool-ref.html)
Previous release link: https://github.com/ethereum/tests/releases/tag/v11.2

Test format

New test ID tracker system: /src/README.MD contains id tags that can be found in tests that cover the provided test vectors

Tests Fillers

new folder /src/GeneralStateTestsFiller/EIPTests
new folder /src/GeneralStateTestsFiller/EIPTests/stEOF
new folder /src/BlockchainTestsFiller/EIPTests

GeneralStateTests/BlockchainTests Filled

new folder GeneralStateTests/EIPTests
new folder GeneralStateTests/EIPTests/stEOF
new folder BlockchainTests/EIPTests
new folder BlockchainTests/GeneralStateTests/EIPTests
new folder BlockchainTests/GeneralStateTests/EIPTests/stEOF

Test Regeneration

Update all:
Regenerate basefee bug in EIPTests
PR #1141
Update EIPTests to latests specs
PR #1147
PR #1152

  • Documentation
    PR #1121 (Example of new debug options with retesteth)
    PR #1128

  • Shanghai transition tests
    PR #1123
    PR #1134 (switch to timestamp based)

  • **Shanghai Withdrawals tests **
    PR #1118 (example)
    PR #1124
    PR #1129
    PR #1137 (basefee fix)

  • Rare bug with refund on Create OOG during deployment
    PR #1111

  • Move fork+xxx EIP tests to a separate folder
    PR #1110

  • EIP-3855 PUSH0 instruction tests
    PR #1033

  • EIP-3860 Update tests to new specs
    PR #1105 (create/2 init code size)
    PR #1012
    PR #1127
    PR #1125

  • EIP-3860 Transaction tests
    PR #1131

  • Remove JUMP tests from EIP3540
    PR #1107
    PR #1132 (fix 3540 tests to updated specs)
    PR #1126 (EOF code deployment)

  • EOF contract deployment tests from ORI
    PR #1136

  • EIP3670 tests
    PR #1135

Upcoming changes:

EOFTest suite
Implement malicious rlp tests in StateTest or BlockchainTest format (need more debugging with t8n)
Besu retesteth RPC support (web vmtracing support)
Random state test script