From eb796b03c580882258d822d2e12c9f4376912e46 Mon Sep 17 00:00:00 2001 From: Herwin Date: Tue, 24 Sep 2024 14:42:21 +0200 Subject: [PATCH] Test multiple arguments in Set#merge References: * https://rubyreferences.github.io/rubychanges/3.3.html#setmerge-accepts-multiple-arguments * https://docs.ruby-lang.org/en/3.3/Set.html#method-i-merge --- library/set/merge_spec.rb | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/library/set/merge_spec.rb b/library/set/merge_spec.rb index a8e3ffc870..3ae0da827c 100644 --- a/library/set/merge_spec.rb +++ b/library/set/merge_spec.rb @@ -16,4 +16,16 @@ -> { Set[1, 2].merge(1) }.should raise_error(ArgumentError) -> { Set[1, 2].merge(Object.new) }.should raise_error(ArgumentError) end + + ruby_version_is ""..."3.3" do + it "accepts only a single argument" do + -> { Set[].merge([], []) }.should raise_error(ArgumentError, "wrong number of arguments (given 2, expected 1)") + end + end + + ruby_version_is "3.3" do + it "accepts multiple arguments" do + Set[:a, :b].merge(Set[:b, :c], [:d]).should == Set[:a, :b, :c, :d] + end + end end