fix(get): gate dc: tests needing cat/schema on feature_capable (fix qsvdp CI)#3959
Merged
Conversation
The qsvdp (datapusher_plus) build bundles `get`/`slice`/`count`/`frequency` but NOT `cat` or `schema`, so two get tests merged in #3958 failed the qsvdp CI (they pass under all_features, which has every command): - get_dc_works_with_process_input_commands uses `cat` - get_dc_stats_cache_for_smart_commands uses `schema` Gate both on `feature_capable` (the same convention test_profile.rs uses for a schema-using test). The dc: machinery itself stays covered on qsvdp by the other get tests — slice/count still exercise the process_input dc: path, and get_dc_stats_cache_not_shared_across_extensions covers frequency on dc:. Verified: `cargo test --features=datapusher_plus get_` → 26 passed, the two gated tests excluded; `cargo test -F all_features get_dc` → all 3 run and pass. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Up to standards ✅🟢 Issues
|
| Metric | Results |
|---|---|
| Complexity | 0 |
NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.
… (roborev #2782) Addresses the Low finding: gating the whole get_dc_works_with_process_input_commands test on feature_capable also dropped the `slice dc:` regression check from the qsvdp run, even though `slice` is bundled there and is the part that exercises util::process_input (count resolves dc: via Config::new, a different path). Now only the `cat` assertion is feature_capable-gated (qsvdp does not bundle cat); slice + count run on all builds, restoring process_input dc: coverage on reduced binaries. Verified: `cargo test --features=datapusher_plus get_dc` runs and passes get_dc_works_with_process_input_commands (cat excluded); `cargo test -F all_features` passes the full test. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
The qsvdp (
datapusher_plus) CI on master went red after #3958 merged — twogettests fail there (run):test_get::get_dc_works_with_process_input_commands— invokescattest_get::get_dc_stats_cache_for_smart_commands— invokesschemaThe qsvdp binary bundles
get/slice/count/frequency/stats/profilebut notcatorschema, so those commands aren't recognized and the tests fail. They pass underall_featuresbecause that build has every command — which is why this slipped through (the PR was validated with-F all_features, not--features=datapusher_plus).Fix
Gate both tests on
#[cfg(feature = "feature_capable")]— the same conventiontests/test_profile.rsalready uses for a schema-using test ("not qsvdp, which enablesprofilebut notschema"). The change only removes the tests from non-feature_capablebuilds, so it can't introduce a failure anywhere.dc: coverage on qsvdp is preserved by the other get tests:
slice/countstill exercise theprocess_inputdc: path, andget_dc_stats_cache_not_shared_across_extensionscoversfrequencyon dc:.Verification
cargo test --features=datapusher_plus get_→ 26 passed, 0 failed (the two gated tests excluded).cargo test -F all_features get_dc→ all 3 run and pass (gate satisfied — no feature-name typo).qsvmcpincludesfeature_capable, so the tests still run + pass there;litedoesn't includeget, so test_get doesn't compile there.🤖 Generated with Claude Code