@@ -442,48 +442,62 @@ def test_performance_warning
442442 def setup
443443 end
444444
445- def test_has_key_with_symbol
445+ def test_has_key_alias
446+ o = OpenStruct . new ( name : "John Smith" , age : 70 )
447+ assert_equal o . include? ( :name ) , o . has_key? ( :name )
448+ assert_equal o . include? ( "name" ) , o . has_key? ( "name" )
449+ assert_equal o . include? ( :missing ) , o . has_key? ( :missing )
450+ end
451+
452+ def test_include_with_symbol
446453 o = OpenStruct . new ( name : "John Smith" , age : 70 , pension : 300 )
447- assert_true o . has_key ?( :name )
448- assert_true o . has_key ?( :age )
449- assert_true o . has_key ?( :pension )
450- assert_false o . has_key ?( :address )
454+ assert_true o . include ?( :name )
455+ assert_true o . include ?( :age )
456+ assert_true o . include ?( :pension )
457+ assert_false o . include ?( :address )
451458 end
452459
453- def test_has_key_with_string
460+ def test_include_with_string
454461 o = OpenStruct . new ( name : "John Smith" , age : 70 , pension : 300 )
455- assert_true o . has_key ?( "name" )
456- assert_true o . has_key ?( "age" )
457- assert_true o . has_key ?( "pension" )
458- assert_false o . has_key ?( "address" )
462+ assert_true o . include ?( "name" )
463+ assert_true o . include ?( "age" )
464+ assert_true o . include ?( "pension" )
465+ assert_false o . include ?( "address" )
459466 end
460467
461- def test_has_key_after_deletion
468+ def test_include_after_deletion
462469 o = OpenStruct . new ( name : "John Smith" , age : 70 , pension : 300 )
463470 o . delete_field ( :name )
464- assert_false o . has_key ?( :name )
471+ assert_false o . include ?( :name )
465472 end
466473
467- def test_has_key_with_nil_value
474+ def test_include_with_nil_value
468475 o = OpenStruct . new ( name : "John Smith" , age : 70 , pension : 300 )
469476 o . pension = nil
470- assert_true o . has_key ?( :pension )
477+ assert_true o . include ?( :pension )
471478 end
472479
473- def test_has_key_with_new_ostruct
480+ def test_include_with_new_ostruct
474481 os = OpenStruct . new
475- assert_false os . has_key ?( :any_key )
482+ assert_false os . include ?( :any_key )
476483 end
477484
478- def test_has_key_after_setting_value
485+ def test_include_after_setting_value
479486 o = OpenStruct . new ( name : "John Smith" , age : 70 , pension : 300 )
480487 o . phone = "123-456-7890"
481- assert_true o . has_key ?( :phone )
488+ assert_true o . include ?( :phone )
482489 end
483490
484- def test_has_key_case_sensitivity
491+ def test_include_case_sensitivity
485492 o = OpenStruct . new ( name : "John Smith" , age : 70 , pension : 300 )
486- assert_true o . has_key? ( :name )
487- assert_false o . has_key? ( :Name )
493+ assert_true o . include? ( :name )
494+ assert_false o . include? ( :Name )
495+ end
496+
497+ def test_key_alias
498+ o = OpenStruct . new ( name : "John Smith" , age : 70 )
499+ assert_equal o . include? ( :name ) , o . key? ( :name )
500+ assert_equal o . include? ( "name" ) , o . key? ( "name" )
501+ assert_equal o . include? ( :missing ) , o . key? ( :missing )
488502 end
489503end
0 commit comments