Description
cargo test --package integration_tests builds 9 test targets. ci.yml runs 4 of them. The other 5 have never executed in CI, so 83 tests provide no signal.
Verified with cargo test --package integration_tests --no-run, which lists all 9 executables.
Running today: basic and accounts (via --test), plus latest and historical (via the seven test_{latest,historical}_* name filters).
Never run:
| Target |
Tests |
What it needs to run |
chain_config |
10 |
Nothing. The tests are plain #[test], no HTTP client, no server. |
capabilities |
1 |
A running server (API_URL). Any chain. |
use_rc_block |
7 |
A running server (API_URL). Asset Hub, with a relay chain configured. |
relay_chain_connection |
4 |
An Asset Hub server with a relay chain configured. |
coretime |
61 |
A separate server pointed at a coretime chain (Broker pallet), e.g. wss://kusama-coretime-rpc.polkadot.io. |
Why it matters
coretime alone is 61 tests, the second largest suite in the repo after accounts. The coretime endpoints have no CI coverage of any kind.
chain_config is the odd one out and the clearest gap: it needs no server and no network, so it could join the existing unit test job as-is. There is no cost argument for leaving it out.
Why it happened
The same reason as #391: adding a test file does not wire it into CI, and nothing fails when you skip that step. ci.yml names each suite explicitly, so a new target is silently absent until someone notices.
Suggested fix
Do not wire all 5 in one PR. They need different setups and some may have their own drift, exactly as accounts did (#391 found 4 broken tests in a suite nobody had run).
Suggested order, cheapest first:
chain_config: no server needed, add to the existing unit test job.
capabilities and use_rc_block: add to the Asset Hub Polkadot job, reusing the server already started there.
relay_chain_connection: same job, but confirm the relay chain is configured in that step.
coretime: needs its own server and chain; the largest piece of work.
Run each suite locally before wiring it, and expect failures. Budget is not the obstacle: the Asset Hub Polkadot job already spends around 400s on test_historical_asset_hub_polkadot.
Related
Description
cargo test --package integration_testsbuilds 9 test targets.ci.ymlruns 4 of them. The other 5 have never executed in CI, so 83 tests provide no signal.Verified with
cargo test --package integration_tests --no-run, which lists all 9 executables.Running today:
basicandaccounts(via--test), pluslatestandhistorical(via the seventest_{latest,historical}_*name filters).Never run:
chain_config#[test], no HTTP client, no server.capabilitiesAPI_URL). Any chain.use_rc_blockAPI_URL). Asset Hub, with a relay chain configured.relay_chain_connectioncoretimewss://kusama-coretime-rpc.polkadot.io.Why it matters
coretimealone is 61 tests, the second largest suite in the repo afteraccounts. The coretime endpoints have no CI coverage of any kind.chain_configis the odd one out and the clearest gap: it needs no server and no network, so it could join the existing unit test job as-is. There is no cost argument for leaving it out.Why it happened
The same reason as #391: adding a test file does not wire it into CI, and nothing fails when you skip that step.
ci.ymlnames each suite explicitly, so a new target is silently absent until someone notices.Suggested fix
Do not wire all 5 in one PR. They need different setups and some may have their own drift, exactly as
accountsdid (#391 found 4 broken tests in a suite nobody had run).Suggested order, cheapest first:
chain_config: no server needed, add to the existing unit test job.capabilitiesanduse_rc_block: add to the Asset Hub Polkadot job, reusing the server already started there.relay_chain_connection: same job, but confirm the relay chain is configured in that step.coretime: needs its own server and chain; the largest piece of work.Run each suite locally before wiring it, and expect failures. Budget is not the obstacle: the Asset Hub Polkadot job already spends around 400s on
test_historical_asset_hub_polkadot.Related
accounts, the sixth unwired target, and fixed the 4 tests that had broken while nobody was running it.test_config.jsonand the fixtures directory by endpoint type. Different concern, but it touches the same files, so the two are worth sequencing together.