diff options
-rw-r--r-- | NEWS.md | 2 | ||||
-rw-r--r-- | test/ruby/test_struct.rb | 8 |
2 files changed, 10 insertions, 0 deletions
@@ -96,6 +96,8 @@ Outstanding ones only. You need to use a Hash literal to set a Hash to a first member. [[Feature #16806]] + * StructClass#keyword_init? is added [[Feature #18008]] + * Queue * Queue#initialize now accepts an Enumerable of initial values. diff --git a/test/ruby/test_struct.rb b/test/ruby/test_struct.rb index 7426282beb..000d229e17 100644 --- a/test/ruby/test_struct.rb +++ b/test/ruby/test_struct.rb @@ -138,6 +138,14 @@ module TestStruct assert_equal(3, struct.new(a: 1, b: 2).c) end + def test_struct_keyword_init_p + struct = @Struct.new(:a, :b, keyword_init: true) + assert_equal(true, struct.keyword_init?) + + struct = @Struct.new(:a, :b, keyword_init: false) + assert_equal(false, struct.keyword_init?) + end + def test_initialize klass = @Struct.new(:a) assert_raise(ArgumentError) { klass.new(1, 2) } |