Skip to content

Commit

Permalink
Fix ParallelTests::Cucumber::FailuresLogger (#995)
Browse files Browse the repository at this point in the history
  • Loading branch information
nhasselmeyer authored Mar 5, 2025
1 parent 4e7bbfe commit fa52530
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 1 deletion.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
### Added

### Fixed
- Fix Cucumber failures logger when a runner doesn't have any failed examples

## 5.0.0 - 2025-03-01

Expand Down
2 changes: 1 addition & 1 deletion lib/parallel_tests/cucumber/failures_logger.rb
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ def initialize(config)

# Add our own handler
config.on_event :test_run_finished do
return if @failures.empty?
next if @failures.empty?

lock_output do
@failures.each do |file, lines|
Expand Down
2 changes: 2 additions & 0 deletions spec/parallel_tests/cucumber/failure_logger_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,15 @@

let(:logger1) { ParallelTests::Cucumber::FailuresLogger.new(config) }
let(:logger2) { ParallelTests::Cucumber::FailuresLogger.new(config) }
let(:logger3) { ParallelTests::Cucumber::FailuresLogger.new(config) }

it "should produce a list of failing scenarios" do
feature1 = double('feature', file: "feature/one.feature")
feature2 = double('feature', file: "feature/two.feature")

logger1.instance_variable_set("@failures", { feature1.file => [1, 3] })
logger2.instance_variable_set("@failures", { feature2.file => [2, 4] })
logger3.instance_variable_set("@failures", {})

config.event_bus.broadcast(Cucumber::Events::TestRunFinished.new)
parallel_cucumber_failures.rewind
Expand Down

0 comments on commit fa52530

Please sign in to comment.