mirror of
https://github.com/0xrsydn/idx-cli.git
synced 2026-11-07 09:45:36 +00:00
refactor(core): compile the mock provider only with a testing feature
Phase 3a of docs/DESIGN.md. MockProvider moves to api/mock.rs, and it, the embedded MSN fixture bodies, and the IDX_MOCK_* hooks compile only with idx-core's new `testing` feature. idx-cli enables it as a dev-dependency, so `cargo test` keeps the fixture-backed provider while release binaries no longer embed fixture data or honor IDX_USE_MOCK_PROVIDER. Parser helpers used only by the mock are gated the same way. The packaged-cli flake check no longer relies on the mock; it checks an offline cache miss (JSON CACHEMISS, exit 3) instead. Goldens unchanged; clippy is clean with and without `testing`. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
15947de51a
commit
e78d9fcecd
13 changed files with 214 additions and 161 deletions
|
|
@ -31,7 +31,8 @@ Docs:
|
|||
## Rules
|
||||
1. Keep data access provider-driven; no ad hoc fetches in `cli/`.
|
||||
2. Keep parse/normalize functions pure.
|
||||
3. Tests use fixtures and `IDX_USE_MOCK_PROVIDER=1`; never hit the live network.
|
||||
3. Tests use fixtures and `IDX_USE_MOCK_PROVIDER=1` (needs idx-core's `testing`
|
||||
feature, on under `cargo test`); never hit the live network.
|
||||
4. Output contract: tables on stdout, one JSON document with `-o json`, errors
|
||||
on stderr (JSON-shaped in JSON mode), stdout empty on failure.
|
||||
5. Keep ownership queries (`releases`, `ticker`, `changes`, ...) working across
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue