Skip to content

Commit c165d46

Browse files
RUBY-3824 Restore conditional skip logic in transactions spec runner
A rubocop autocorrect in commit 8db6431 flattened the original guarded skips into bare `skip` calls inside a single before(:all) block, so every transactions and transactions_api example was unconditionally pending with "Requirements not satisfied" (or "No reason given") regardless of topology or other requirements. Restore the original behavior: skip on `test.skip_reason` only when one is set, skip on unmet requirements only when `req.satisfied?` is false. Receive `req` from the block instead of `_req`.
1 parent 88ead99 commit c165d46

1 file changed

Lines changed: 3 additions & 4 deletions

File tree

spec/runners/transactions.rb

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ def define_transactions_spec_tests(test_paths, expectations_bson_types: true)
2525
spec = Mongo::Transactions::Spec.new(file)
2626

2727
context(spec.description) do
28-
define_spec_tests_with_requirements(spec) do |_req|
28+
define_spec_tests_with_requirements(spec) do |req|
2929
spec.tests(expectations_bson_types: expectations_bson_types).each do |test|
3030
context(test.description) do
3131
before(:all) do
@@ -38,9 +38,8 @@ def define_transactions_spec_tests(test_paths, expectations_bson_types: true)
3838
skip 'Test does not specify multiple mongoses'
3939
end
4040
end
41-
skip test.skip_reason
42-
43-
skip 'Requirements not satisfied'
41+
skip test.skip_reason if test.skip_reason
42+
skip 'Requirements not satisfied' unless req.satisfied?
4443

4544
test.setup_test
4645
end

0 commit comments

Comments
 (0)