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

ruby-grape / grape / 25583726063 / 8
97%
master: 97%

Build:
DEFAULT BRANCH: master
Ran 08 May 2026 11:02PM UTC
Files 157
Run time 9s
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

08 May 2026 11:01PM UTC coverage: 95.718% (+0.06%) from 95.657%
25583726063.8

push

github

web-flow
Fix Array/Set custom-type coercer dropping symbolized hash keys (#2699)

The Array/Set branch of `enforce_symbolized_keys` built a symbolized
copy via non-mutating `deep_symbolize_keys` and discarded it, so the
returned collection still carried string-keyed hashes. Switch to
`map!` so the symbolized values replace the originals, matching the
Hash branch's contract.

While here, refactor the class for readability: hoist the
`[Array, Set]` and `[:coerced?, :parsed?]` arrays to private frozen
constants, lift trailing `if/else` chains into guard clauses, extract
`hash_symbolizer` / `collection_symbolizer` / `enumerable_type_check`
helpers, collapse the `infer_coercion_method` + symbolize-wrap chain
into a single `build_coercion_method` entry point, and reorder the
private methods to follow call order from `initialize`.

Add `spec/grape/validations/types/custom_type_coercer_spec.rb`
covering the Array and Set symbolization paths through the public
API. The Array case is the regression test for the bug above.

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

1055 of 1163 branches covered (90.71%)

Branch coverage included in aggregate %.

3371 of 3461 relevant lines covered (97.4%)

1005.42 hits per line

Source Files on job run-3.2-gemfiles/rails_7_2.gemfile - 25583726063.8
  • Tree
  • List 157
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 25583726063
  • ba19b091 on github
  • Prev Job for on master (#25564552185.6)
  • Next Job for on master (#25583959632.23)
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