From ab33d44bf6b5f14a128a7c73a9f4d97b47785146 Mon Sep 17 00:00:00 2001 From: Peter Zhu <peter@peterzhu.ca> Date: Wed, 5 Jan 2022 13:12:50 -0500 Subject: [PATCH] DEV: Fix tests broken in 3.0 due to separation of keyword arguments Tests fail in Ruby 3.0 and later due to separation of positional and keyword arguments. RSpec treats the hash at the end of include_examples as keyword arguments when it should be passed as a positional argument. --- spec/requests/topics_controller_spec.rb | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/spec/requests/topics_controller_spec.rb b/spec/requests/topics_controller_spec.rb index 0ecd4d6e0c5..994ca38cbb1 100644 --- a/spec/requests/topics_controller_spec.rb +++ b/spec/requests/topics_controller_spec.rb @@ -1959,7 +1959,7 @@ RSpec.describe TopicsController do let!(:nonexistent_topic_id) { Topic.last.id + 10000 } fab!(:secure_accessible_topic) { Fabricate(:topic, category: accessible_category) } - shared_examples "various scenarios" do |expected, request_json: false| + shared_examples "various scenarios" do |expected, request_json:| expected.each do |key, value| it "returns #{value} for #{key}" do slug = key == :nonexistent ? "garbage-slug" : send(key.to_s).slug @@ -1994,7 +1994,7 @@ RSpec.describe TopicsController do nonexistent: 404, secure_accessible_topic: 404 } - include_examples "various scenarios", expected + include_examples "various scenarios", expected, request_json: false end context 'anonymous with login required' do @@ -2011,7 +2011,7 @@ RSpec.describe TopicsController do nonexistent: 302, secure_accessible_topic: 302 } - include_examples "various scenarios", expected + include_examples "various scenarios", expected, request_json: false end context 'anonymous with login required, requesting json' do @@ -2046,7 +2046,7 @@ RSpec.describe TopicsController do nonexistent: 404, secure_accessible_topic: 404 } - include_examples "various scenarios", expected + include_examples "various scenarios", expected, request_json: false end context 'allowed user' do @@ -2064,7 +2064,7 @@ RSpec.describe TopicsController do nonexistent: 404, secure_accessible_topic: 404 } - include_examples "various scenarios", expected + include_examples "various scenarios", expected, request_json: false end context 'moderator' do @@ -2082,7 +2082,7 @@ RSpec.describe TopicsController do nonexistent: 404, secure_accessible_topic: 404 } - include_examples "various scenarios", expected + include_examples "various scenarios", expected, request_json: false end context 'admin' do @@ -2100,7 +2100,7 @@ RSpec.describe TopicsController do nonexistent: 404, secure_accessible_topic: 200 } - include_examples "various scenarios", expected + include_examples "various scenarios", expected, request_json: false end end @@ -2137,7 +2137,7 @@ RSpec.describe TopicsController do nonexistent: 302, secure_accessible_topic: 302 } - include_examples "various scenarios", expected + include_examples "various scenarios", expected, request_json: false end context 'normal user' do @@ -2173,7 +2173,7 @@ RSpec.describe TopicsController do nonexistent: 404, secure_accessible_topic: 403 } - include_examples "various scenarios", expected + include_examples "various scenarios", expected, request_json: false end context 'moderator' do @@ -2191,7 +2191,7 @@ RSpec.describe TopicsController do nonexistent: 404, secure_accessible_topic: 403 } - include_examples "various scenarios", expected + include_examples "various scenarios", expected, request_json: false end context 'admin' do @@ -2209,7 +2209,7 @@ RSpec.describe TopicsController do nonexistent: 404, secure_accessible_topic: 200 } - include_examples "various scenarios", expected + include_examples "various scenarios", expected, request_json: false end end