From 20458cc9a283cc1eae62b1a318f409defe4d5eb4 Mon Sep 17 00:00:00 2001 From: Christian Bruckmayer Date: Wed, 9 Jul 2025 11:17:17 +0100 Subject: [PATCH] Fix increment_test_failed --- ruby/lib/ci/queue/redis/build_record.rb | 5 +++-- ruby/test/minitest/queue/build_status_recorder_test.rb | 2 ++ ruby/test/minitest/queue/build_status_reporter_test.rb | 4 ++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/ruby/lib/ci/queue/redis/build_record.rb b/ruby/lib/ci/queue/redis/build_record.rb index 9463cfbc..ace9d3c2 100644 --- a/ruby/lib/ci/queue/redis/build_record.rb +++ b/ruby/lib/ci/queue/redis/build_record.rb @@ -57,11 +57,12 @@ def record_warning(type, attributes) end def record_error(id, payload, stats: nil) - redis.pipelined do |pipeline| + acknowledged, _ = redis.pipelined do |pipeline| @queue.acknowledge(id, error: payload, pipeline: pipeline) record_stats(stats, pipeline: pipeline) - @queue.increment_test_failed(pipeline: pipeline) end + + @queue.increment_test_failed if acknowledged == 1 nil end diff --git a/ruby/test/minitest/queue/build_status_recorder_test.rb b/ruby/test/minitest/queue/build_status_recorder_test.rb index ce585d28..3b9f35c6 100644 --- a/ruby/test/minitest/queue/build_status_recorder_test.rb +++ b/ruby/test/minitest/queue/build_status_recorder_test.rb @@ -74,6 +74,7 @@ def test_retrying_test reserve(second_queue, "a") second_reporter.record(result("a")) assert_equal 0, summary.error_reports.size + assert_equal 1, @queue.test_failed end def test_retrying_test_reverse @@ -102,6 +103,7 @@ def test_retrying_test_reverse reserve(second_queue, "a") second_reporter.record(result("a", failure: "Something went wrong")) assert_equal 0, summary.error_reports.size + assert_equal 0, @queue.test_failed end def test_static_queue_record_success diff --git a/ruby/test/minitest/queue/build_status_reporter_test.rb b/ruby/test/minitest/queue/build_status_reporter_test.rb index b1acab49..db2f9059 100644 --- a/ruby/test/minitest/queue/build_status_reporter_test.rb +++ b/ruby/test/minitest/queue/build_status_reporter_test.rb @@ -25,7 +25,7 @@ def test_timing_out_waiting_for_tests @supervisor.instance_variable_set(:@time_left, 0) - out, err = capture_subprocess_io do + out, _ = capture_subprocess_io do exit_status = @reporter.report end @@ -44,7 +44,7 @@ def test_all_workers_died @supervisor.instance_variable_set(:@time_left, 1) @supervisor.instance_variable_set(:@time_left_with_no_workers, 0) - out, err = capture_subprocess_io do + out, _ = capture_subprocess_io do exit_status = @reporter.report end