summaryrefslogtreecommitdiff
path: root/test/ruby/test_pattern_matching.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/ruby/test_pattern_matching.rb')
-rw-r--r--test/ruby/test_pattern_matching.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/test/ruby/test_pattern_matching.rb b/test/ruby/test_pattern_matching.rb
index 0338f90a91..9af091a5e5 100644
--- a/test/ruby/test_pattern_matching.rb
+++ b/test/ruby/test_pattern_matching.rb
@@ -1230,6 +1230,30 @@ END
true
end
end
+
+ s = Struct.new(:a, :b, keyword_init: true)
+ assert_block do
+ case s[a: 0, b: 1]
+ in **r
+ r == {a: 0, b: 1}
+ end
+ end
+ assert_block do
+ s = Struct.new(:a, :b, keyword_init: true)
+ case s[a: 0, b: 1]
+ in a:, b:
+ a == 0 && b == 1
+ end
+ end
+ assert_block do
+ s = Struct.new(:a, :b, keyword_init: true)
+ case s[a: 0, b: 1]
+ in a:, c:
+ flunk
+ in b:
+ b == 1
+ end
+ end
end
################################################################