Skip to content

Conversation

@marioevz
Copy link
Member

@marioevz marioevz commented Mar 25, 2025

🗒️ Description

Adds more serialization tests.

Requires #1359

🔗 Related Issues

✅ Checklist

  • All: Set appropriate labels for the changes.
  • All: Considered squashing commits to improve commit history.
  • All: Added an entry to CHANGELOG.md.
  • All: Considered updating the online docs in the ./docs/ directory.
  • Tests: All converted JSON/YML tests from ethereum/tests have been added to converted-ethereum-tests.txt.
  • Tests: A PR with removal of converted JSON/YML tests from ethereum/tests have been opened.
  • Tests: Included the type and version of evm t8n tool used to locally execute test cases: e.g., ref with commit hash or geth 1.13.1-stable-3f40e65.
  • Tests: Ran mkdocs serve locally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.

@marioevz marioevz added the scope:tests Scope: Changes EL client test cases in `./tests` label Mar 26, 2025
@marioevz marioevz changed the base branch from main to refactor-rlp March 26, 2025 23:41
Copy link
Collaborator

@spencer-tb spencer-tb left a comment

Choose a reason for hiding this comment

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

LGTM! :D

Some additional RLP ideas:

  • Adding extra items i.e: rlp([chain_id, address, nonce, extra_item]).
  • Truncated RLP, for example missing the last 3 bytes after serialization.
  • RLP as a string byte array, instead of a list of elements.

Should we have invalid cases that modify the value of magic: 0x05?

Can add these to an issue!

@spencer-tb
Copy link
Collaborator

Pre-approved for now assumes #1359 is merged!

Base automatically changed from refactor-rlp to main April 1, 2025 19:46
@marioevz
Copy link
Member Author

marioevz commented Apr 1, 2025

LGTM! :D

Some additional RLP ideas:

* Adding extra items i.e: `rlp([chain_id, address, nonce, extra_item])`.

* Truncated RLP, for example missing the last 3 bytes after serialization.

* RLP as a string byte array, instead of a list of elements.

Should we have invalid cases that modify the value of magic: 0x05?

Can add these to an issue!

Added all to this PR and also the checklist!
7512bff
34a3d65

@marioevz marioevz merged commit 216257e into main Apr 1, 2025
21 checks passed
@marioevz marioevz deleted the type-4-rlp-tests branch April 1, 2025 21:59
felix314159 pushed a commit to felix314159/execution-spec-tests that referenced this pull request May 16, 2025
* refactor(types): remove nonce-as-list from auth list

* new(tests): EIP-7702: Tx serialization tests

* refactor(tests): Use RLP encoding changes

* Change log

* new(tests): EIP-7702: more rlp tests
sonhv0212 pushed a commit to ronin-chain/execution-spec-tests that referenced this pull request May 19, 2025
* refactor(types): remove nonce-as-list from auth list

* new(tests): EIP-7702: Tx serialization tests

* refactor(tests): Use RLP encoding changes

* Change log

* new(tests): EIP-7702: more rlp tests
sonhv0212 pushed a commit to ronin-chain/execution-spec-tests that referenced this pull request May 20, 2025
* refactor(types): remove nonce-as-list from auth list

* new(tests): EIP-7702: Tx serialization tests

* refactor(tests): Use RLP encoding changes

* Change log

* new(tests): EIP-7702: more rlp tests
sonhv0212 added a commit to ronin-chain/execution-spec-tests that referenced this pull request May 21, 2025
* feat(tests): EIP-2537: add bls12 audit test cases (ethereum#1275)

* fix(test): remove test violating EIP-7523 (ethereum#1257)

* fix(test): remove test violating EIP-7523

* Simplify the test by removing parameterization

* chore(tests): update bls12 test vectors (ethereum#1289)

* new(tests): add state test with empty 7702 authorization list (ethereum#1224)

* new(tests): add state test with empty 7702 authorization list

* fix(clis): Add exception to EELS

---------

Co-authored-by: Mario Vega <marioevz@gmail.com>

* new(tests): EIP-7702: Sender not EOA test

* Add self-sponsored variant

* apply comments

* fix(test): improve EIP-7702 test for type 4 transaction with empty to (ethereum#1337)

* fix(tests): EIP-7702 verification/merge issue (ethereum#1358)

* new(tests): EIP-7702: More RLP tests (ethereum#1347)

* refactor(types): remove nonce-as-list from auth list

* new(tests): EIP-7702: Tx serialization tests

* refactor(tests): Use RLP encoding changes

* Change log

* new(tests): EIP-7702: more rlp tests

* 🧹 chore(EIP-7623): Remove duplicate fixture (ethereum#1381)

Co-authored-by: raxhvl <raxhvl@users.noreply.github.com>

* feat(tests): Additional EIP-2935 coverage (ethereum#1379)

Update CHANGELOG.md

* new(tests): EIP-7702: Delegation Designation as Initcode, max-fee-per-gas tests (ethereum#1372)

* new(tests): EIP-7702: Delegation designation as initcode

* new(tests): EIP-7702: Invalid max_fee_per_gas/max_priority_fee_per_gas

* docs: changelog

* refactor(tests): Combine similar cases into one

Co-Authored-By: spencer <spencer.taylor-brown@ethereum.org>

---------

Co-authored-by: spencer <spencer.taylor-brown@ethereum.org>

* fix(execute,tests): EIP-7702: send tx of eoa after setcode tx is mined (ethereum#1411)

* fix(tests): EIP-7702: send transaction of an EOA after setcode tx is mined

* refactor(execute): send batch of txs by block

* fix(tests): Parametrize instead of change

* refactor(execution): Change error check to per-block basis

---------

Co-authored-by: Mario Vega <marioevz@gmail.com>

* feat(tests): update 7702 precompile test cases (ethereum#1431)

- Add a test case that calls the delegated precompile acct directly from
  the same transaction as the auth. Supply enough gas only to cover the
  intrinsic cost of the call, with no extra gas for any precompile
  code execution.

- Update the test case for all call opcodes to use all of the call opcodes.

* feat(tests): eip7623 - parametrize `test_transaction_validity_type_*` with a tx to an eoa (ethereum#1422)

* feat(tests): EIP-2537: extra BLS12-381 coverage (ethereum#1350)

* feat(tests): bls point generator and extra coverage.

* chore(tests): remove bls msm duplicates.

* chore: fix tox issues.

* feat(tests): Add more msm invalid tests

---------

Co-authored-by: Mario Vega <marioevz@gmail.com>

* new(tests): EIP-7702 - ensure DELEGATECALLing a 7702 target works (ethereum#1485)

Co-authored-by: Mario Vega <marioevz@gmail.com>

* feat(tests): add bls map to curve on identity cases (ethereum#1505)

* fix(tests): EIP-7702: use penultimate block number instead of fixing block 0 (ethereum#1390)

* fix(tests): EIP-7702: use penultimate block number instead of fixing block 0

* fix(tests): EIP-7702: use contract code to get blocknumber instead of rpc

* Update uv.lock

* Update uv.lock

* Update uv.lock

* Update uv.lock

* Update pyproject.toml

* refactor(base_types,types,tests): Create RLP Serialization Classes (ethereum#1359)

* fix(types): tests: Add serialization unit tests

* fix(types): tests: Fix unit tests

* feat(base_types): Implement serialization RLP types

* feat(base_types,types,fixtures): Apply serialization RLP types

* fix(types): Auth tuple defaults

* fix(fixtures,rpc,specs,types,tests): Transaction.rlp is a function

* fix(base_types,types,rpc): fixes

* refactor(base_types,types): Network wrapped transaction

* fix(tests): Network wrapped transactions

* fix(types): Fix NetworkWrappedTransaction rlp prefix

* docs: Changelog

* Apply suggestions from code review

Co-authored-by: spencer <spencer.taylor-brown@ethereum.org>

* Add network wrapper explanation

* fix: tox

* Update docs/CHANGELOG.md

Co-authored-by: spencer <spencer.taylor-brown@ethereum.org>

* Add comment

---------

Co-Authored-By: spencer <spencer.taylor-brown@ethereum.org>

* fix(tests): EIP-2537: mark slow

* fix(tests): EIP-7623: remove blob in blob tx

* fix(dependency): update prague execution specs

* new(dependency): add joblib

---------

Co-authored-by: spencer <spencer.taylor-brown@ethereum.org>
Co-authored-by: Andrei Maiboroda <andrei@ethereum.org>
Co-authored-by: Paweł Bylica <pawel@ethereum.org>
Co-authored-by: Mario Vega <marioevz@gmail.com>
Co-authored-by: Dimitry Kh <dimitry@ethereum.org>
Co-authored-by: raxhvl <10168946+raxhvl@users.noreply.github.com>
Co-authored-by: raxhvl <raxhvl@users.noreply.github.com>
Co-authored-by: Stuart Reed <stuart.reed@ethereum.org>
Co-authored-by: felipe <fselmo2@gmail.com>
Co-authored-by: danceratopz <danceratopz@gmail.com>
Co-authored-by: pdobacz <5735525+pdobacz@users.noreply.github.com>
kclowes pushed a commit to kclowes/execution-spec-tests that referenced this pull request Oct 20, 2025
* refactor(types): remove nonce-as-list from auth list

* new(tests): EIP-7702: Tx serialization tests

* refactor(tests): Use RLP encoding changes

* Change log

* new(tests): EIP-7702: more rlp tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

scope:tests Scope: Changes EL client test cases in `./tests`

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants