Skip to content

test: Collect the test files in one place - #1680

Open
chfast wants to merge 1 commit into
masterfrom
test/collect-test-files
Open

test: Collect the test files in one place#1680
chfast wants to merge 1 commit into
masterfrom
test/collect-test-files

Conversation

@chfast

@chfast chfast commented Aug 28, 2026

Copy link
Copy Markdown
Member

evmone-statetest and evmone-blockchaintest each walked the test directory themselves, and the
two walks were the same code: the recursive search, the .json filter, the index.json skip, the
sort, and the suite name taken from the file's directory relative to the root. Only the
registration call at the end differed. collect_test_files() in testutils does it once and
returns each file with the suite it belongs to, which also gives the flags planned next
(--ignore, --collect-only) a single list to work from.

Nothing about the registered tests changes. --gtest_list_tests over the EEST fixtures is
byte-identical to master — 20245 names for the state tool, 21333 for the blockchain one, in the
same order — which is what the CI filters and the integration tests' expected output depend on.
The walk was previously unreachable from a unit test; four tests now pin the suite naming, the
index.json skip and the ordering.

Both drivers walked the directory themselves, with the same recursive
search, the same index.json skip, the same sort and the same suite naming
written out twice. Only the registration at the end differed.

collect_test_files() in testutils does the walk once and returns each file
with the suite it belongs to. The listed tests are unchanged, name for
name: 20245 for the state tool and 21333 for the blockchain one, in the
same order.
@codspeed-hq

codspeed-hq Bot commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Merging this PR will not alter performance

✅ 129 untouched benchmarks


Comparing test/collect-test-files (7ac5e0b) with master (aa9ca51)

Open in CodSpeed

@codecov

codecov Bot commented Aug 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.89%. Comparing base (aa9ca51) to head (7ac5e0b).

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1680      +/-   ##
==========================================
+ Coverage   97.86%   97.89%   +0.02%     
==========================================
  Files         176      178       +2     
  Lines       15995    16026      +31     
  Branches     3666     3671       +5     
==========================================
+ Hits        15654    15689      +35     
  Misses        255      255              
+ Partials       86       82       -4     
Flag Coverage Δ
eest-develop 87.69% <87.50%> (+0.02%) ⬆️
eest-develop-gmp 26.06% <24.00%> (-0.03%) ⬇️
eest-legacy 16.82% <24.00%> (-0.01%) ⬇️
eest-libsecp256k1 28.28% <24.00%> (-0.03%) ⬇️
eest-stable 87.69% <87.50%> (+0.02%) ⬆️
evmone-unittests 93.95% <96.00%> (+0.06%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
core 96.19% <ø> (ø)
tooling 93.10% <100.00%> (+0.20%) ⬆️
tests 99.81% <100.00%> (+<0.01%) ⬆️
Files with missing lines Coverage Δ
test/blockchaintest/blockchaintest.cpp 90.90% <100.00%> (+2.19%) ⬆️
test/statetest/statetest.cpp 92.85% <100.00%> (+1.83%) ⬆️
test/unittests/test_files_test.cpp 100.00% <100.00%> (ø)
test/utils/test_files.cpp 100.00% <100.00%> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant