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

kettle-rb / tree_haver / 20630043612
87%

Build:
DEFAULT BRANCH: main
Ran 01 Jan 2026 12:53AM UTC
Jobs 1
Files 25
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

01 Jan 2026 12:51AM UTC coverage: 83.266% (+4.4%) from 78.869%
20630043612

push

github

pboling
♻️ Refactor dependency_tags and backend handling

### Added

- Isolated backend RSpec tags for running tests without loading conflicting backends
  - `:ffi_backend_only` - runs FFI tests without triggering `mri_backend_available?` check
  - `:mri_backend_only` - runs MRI tests without triggering `ffi_available?` check
  - Uses `TreeHaver::Backends::BLOCKED_BY` to dynamically determine which availability checks to skip
  - Enables `rake ffi_specs` to run FFI tests before MRI is loaded
- `DependencyTags.ffi_backend_only_available?` - checks FFI availability without loading MRI
- `DependencyTags.mri_backend_only_available?` - checks MRI availability without checking FFI

### Changed

- Backend availability exclusions in `dependency_tags.rb` are now dynamic
  - Uses `TreeHaver::Backends::BLOCKED_BY` to skip availability checks for blocked backends
  - When running with `--tag ffi_backend_only`, MRI availability is not checked
  - Prevents MRI from being loaded before FFI tests can run
- Rakefile `ffi_specs` task now uses `:ffi_backend_only` tag
  - Ensures FFI tests run without loading MRI backend first

### Fixed

- Rakefile now uses correct RSpec tags for FFI isolation
  - The `ffi_specs` task uses `:ffi_backend_only` to prevent MRI from loading
  - The `remaining_specs` task excludes `:ffi_backend_only` tests
  - Tags in Rakefile align with canonical tags from `dependency_tags.rb`
- RSpec `dependency_tags.rb` now correctly detects `--tag` options during configuration
  - RSpec's `config.inclusion_filter.rules` is empty during configuration phase
  - Now parses `ARGV` directly to detect `--tag ffi_backend_only` and similar tags
  - Skips grammar availability checks (which load MRI) when running isolated backend tests
  - Skips full dependency summary in `before(:suite)` when backends are blocked
- `TreeHaver::Backends::FFI.reset!` now uses consistent pattern with other backends
  - Was using `@ffi_gem_available` with `defined?()` check, which returned t... (continued)

798 of 1122 branches covered (71.12%)

Branch coverage included in aggregate %.

66 of 92 new or added lines in 2 files covered. (71.74%)

31 existing lines in 4 files now uncovered.

2287 of 2583 relevant lines covered (88.54%)

29.01 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
26
67.8
1.03% lib/tree_haver/rspec/dependency_tags.rb

Uncovered Existing Lines

Lines Coverage ∆ File
1
67.8
1.03% lib/tree_haver/rspec/dependency_tags.rb
7
94.86
14.9% lib/tree_haver.rb
9
91.97
-6.02% lib/tree_haver/node.rb
14
66.67
-26.67% lib/tree_haver/tree.rb
Jobs
ID Job ID Ran Files Coverage
1 20630043612.1 01 Jan 2026 12:53AM UTC 25
83.27
GitHub Action Run
Source Files on build 20630043612
  • Tree
  • List 25
  • Changed 6
  • Source Changed 0
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • bc9ce8fe on github
  • Prev Build on main (#20628391751)
  • Next Build on main (#20631272022)
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