• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

ruby-grape / grape / 25972968115
97%

Build:
DEFAULT BRANCH: master
Ran 16 May 2026 09:07PM UTC
Jobs 37
Files 163
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

16 May 2026 09:07PM UTC coverage: 96.962% (+0.001%) from 96.961%
25972968115

push

github

web-flow
Move declaration-coherence checks into ValidationsSpec (#2720)

`check_incompatible_option_values` and `validate_value_coercion` were
private methods on `ParamsScope`, invoked from `#validates` right after
building the `ValidationsSpec`. Both are pure cross-field invariants
computed entirely from fields the spec already owns (`default`,
`values`, `except_values`, `coerce_type`).

`ValidationsSpec` already enforced one construction-time invariant (the
`:type` + `:types` mutual-exclusion `ArgumentError`), so concentrating
the rest there makes "you cannot construct an incoherent spec" true by
definition: the invariant no longer depends on a caller remembering to
run the checks after `.from(...)`. `ParamsScope#validates` shrinks to
build-spec → document → dispatch.

- Moved both methods into `ValidationsSpec` as private; a new private
  `validate!` runs them from `initialize`, before `freeze`.
- Removed both from `ParamsScope` and the two call sites in `#validates`.
- `check_coerce_with` deliberately stays in `ParamsScope#validate_coerce`:
  it is gated on the remountable-API skip (`return unless
  coerce_options[:type]`, because a base instance has no resolved type
  until the mounted instance replays) and is therefore not a pure
  construction-time invariant.

Spec fixture update: `params_documentation_spec` built a spec with
`default: 42, values: [1, 2, 3]` purely to exercise `document_params`;
that combination can no longer be constructed, so the fixture now uses a
coherent `default: 1`.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

1082 of 1167 branches covered (92.72%)

Branch coverage included in aggregate %.

17 of 17 new or added lines in 1 file covered. (100.0%)

3514 of 3573 relevant lines covered (98.35%)

32006.46 hits per line

Jobs
ID Job ID Ran Files Coverage
1 run-3.4-gemfiles/rack_3_0.gemfile - 25972968115.1 16 May 2026 09:08PM UTC 162
95.67
GitHub Action Run
2 run-4.0-gemfiles/rack_3_2.gemfile - 25972968115.2 16 May 2026 09:07PM UTC 162
95.67
GitHub Action Run
3 run-3.2-Gemfile - 25972968115.3 16 May 2026 09:07PM UTC 162
95.71
GitHub Action Run
4 run-4.0-gemfiles/grape_entity.gemfile - 25972968115.4 16 May 2026 09:07PM UTC 162
50.23
GitHub Action Run
5 run-3.2-gemfiles/rack_3_1.gemfile - 25972968115.5 16 May 2026 09:07PM UTC 162
95.71
GitHub Action Run
6 run-3.3-gemfiles/rack_3_0.gemfile - 25972968115.6 16 May 2026 09:07PM UTC 162
95.67
GitHub Action Run
7 run-4.0-gemfiles/multi_xml.gemfile - 25972968115.7 16 May 2026 09:07PM UTC 162
36.64
GitHub Action Run
8 run-3.2-gemfiles/rails_8_1.gemfile - 25972968115.8 16 May 2026 09:07PM UTC 163
95.71
GitHub Action Run
9 run-3.3-gemfiles/rails_8_1.gemfile - 25972968115.9 16 May 2026 09:07PM UTC 163
95.67
GitHub Action Run
10 run-3.3-gemfiles/rails_8_0.gemfile - 25972968115.10 16 May 2026 09:07PM UTC 163
95.67
GitHub Action Run
11 run-3.2-gemfiles/rails_7_2.gemfile - 25972968115.11 16 May 2026 09:07PM UTC 163
95.71
GitHub Action Run
12 run-4.0-gemfiles/rails_8_0.gemfile - 25972968115.12 16 May 2026 09:08PM UTC 163
95.67
GitHub Action Run
13 run-3.3-Gemfile - 25972968115.13 16 May 2026 09:08PM UTC 162
95.67
GitHub Action Run
14 run-4.0-Gemfile - 25972968115.14 16 May 2026 09:08PM UTC 162
95.67
GitHub Action Run
15 run-4.0-gemfiles/hashie.gemfile - 25972968115.15 16 May 2026 09:07PM UTC 162
62.6
GitHub Action Run
16 run-3.2-gemfiles/rack_3_2.gemfile - 25972968115.16 16 May 2026 09:08PM UTC 162
95.71
GitHub Action Run
17 run-3.4-Gemfile - 25972968115.17 16 May 2026 09:07PM UTC 162
95.67
GitHub Action Run
18 run-4.0-gemfiles/rack_3_0.gemfile - 25972968115.18 16 May 2026 09:08PM UTC 162
95.67
GitHub Action Run
19 run-3.4-gemfiles/rails_8_1.gemfile - 25972968115.19 16 May 2026 09:08PM UTC 163
95.67
GitHub Action Run
20 run-4.0-gemfiles/rails_8_1.gemfile - 25972968115.20 16 May 2026 09:08PM UTC 163
95.67
GitHub Action Run
21 run-3.2-gemfiles/rack_2_2.gemfile - 25972968115.21 16 May 2026 09:07PM UTC 162
95.67
GitHub Action Run
22 run-3.2-gemfiles/rack_3_0.gemfile - 25972968115.22 16 May 2026 09:07PM UTC 162
95.71
GitHub Action Run
23 run-3.4-gemfiles/rails_7_2.gemfile - 25972968115.23 16 May 2026 09:07PM UTC 163
95.67
GitHub Action Run
24 run-4.0-gemfiles/rack_2_2.gemfile - 25972968115.24 16 May 2026 09:08PM UTC 162
95.62
GitHub Action Run
25 run-3.3-gemfiles/rails_7_2.gemfile - 25972968115.25 16 May 2026 09:07PM UTC 163
95.67
GitHub Action Run
26 run-3.3-gemfiles/rack_2_2.gemfile - 25972968115.26 16 May 2026 09:07PM UTC 162
95.62
GitHub Action Run
27 run-4.0-gemfiles/multi_json.gemfile - 25972968115.27 16 May 2026 09:07PM UTC 162
36.64
GitHub Action Run
28 run-3.4-gemfiles/rails_8_0.gemfile - 25972968115.28 16 May 2026 09:08PM UTC 163
95.67
GitHub Action Run
29 run-3.3-gemfiles/rack_3_2.gemfile - 25972968115.29 16 May 2026 09:08PM UTC 162
95.67
GitHub Action Run
30 run-4.0-gemfiles/rack_3_1.gemfile - 25972968115.30 16 May 2026 09:08PM UTC 162
95.67
GitHub Action Run
31 run-3.4-gemfiles/rack_3_2.gemfile - 25972968115.31 16 May 2026 09:07PM UTC 162
95.67
GitHub Action Run
32 run-3.4-gemfiles/rack_3_1.gemfile - 25972968115.32 16 May 2026 09:08PM UTC 162
95.67
GitHub Action Run
33 run-3.2-gemfiles/rails_8_0.gemfile - 25972968115.33 16 May 2026 09:07PM UTC 163
95.71
GitHub Action Run
34 run-3.4-gemfiles/rack_2_2.gemfile - 25972968115.34 16 May 2026 09:08PM UTC 162
95.62
GitHub Action Run
35 run-4.0-gemfiles/rails_7_2.gemfile - 25972968115.35 16 May 2026 09:08PM UTC 163
95.67
GitHub Action Run
36 run-4.0-gemfiles/dry_validation.gemfile - 25972968115.36 16 May 2026 09:08PM UTC 162
58.27
GitHub Action Run
37 run-3.3-gemfiles/rack_3_1.gemfile - 25972968115.37 16 May 2026 09:07PM UTC 162
95.67
GitHub Action Run
Source Files on build 25972968115
  • Tree
  • List 163
  • Changed 2
  • Source Changed 2
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #25972968115
  • 6eb1cd64 on github
  • Prev Build on master (#25972887409)
  • Next Build on master (#25973033231)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc