diff --git a/activesupport/lib/active_support/core_ext/hash/keys.rb b/activesupport/lib/active_support/core_ext/hash/keys.rb index 5934c578ea..3d1fb8e8ee 100644 --- a/activesupport/lib/active_support/core_ext/hash/keys.rb +++ b/activesupport/lib/active_support/core_ext/hash/keys.rb @@ -57,9 +57,9 @@ class Hash end alias_method :to_options!, :symbolize_keys! - # Validate all keys in a hash match *valid_keys, raising ArgumentError - # on a mismatch. Note that keys are NOT treated indifferently, meaning if you - # use strings for keys but assert symbols as keys, this will fail. + # Ensures all the hash's keys are present in the supplied list of *valid_keys. + # Raises an ArgumentError if any unexpected keys are encountered. + # Note that keys are NOT treated indifferently: strings and symbols will not match each other. # # { name: 'Rob', years: '28' }.assert_valid_keys(:name, :age) # => raises "ArgumentError: Unknown key: :years. Valid keys are: :name, :age" # { name: 'Rob', age: '28' }.assert_valid_keys('name', 'age') # => raises "ArgumentError: Unknown key: :name. Valid keys are: 'name', 'age'"