Merge pull request #2827 from sikachu/extractable_ordered_hash
Make `ActiveSupport::OrderedHash` extractable when using `Array#extract_options!
This commit is contained in:
commit
d50c0acc95
@ -1,5 +1,7 @@
|
|||||||
*Rails 3.2.0 (unreleased)*
|
*Rails 3.2.0 (unreleased)*
|
||||||
|
|
||||||
|
* ActiveSupport::OrderedHash is now marked as extractable when using Array#extract_options! [Prem Sichanugrist]
|
||||||
|
|
||||||
* Added Array#prepend as an alias for Array#unshift and Array#append as an alias for Array#<< [DHH]
|
* Added Array#prepend as an alias for Array#unshift and Array#append as an alias for Array#<< [DHH]
|
||||||
|
|
||||||
* The definition of blank string for Ruby 1.9 has been extended to Unicode whitespace.
|
* The definition of blank string for Ruby 1.9 has been extended to Unicode whitespace.
|
||||||
|
@ -47,6 +47,11 @@ def nested_under_indifferent_access
|
|||||||
self
|
self
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Returns true to make sure that this hash is extractable via <tt>Array#extract_options!</tt>
|
||||||
|
def extractable_options?
|
||||||
|
true
|
||||||
|
end
|
||||||
|
|
||||||
# Hash is ordered in Ruby 1.9!
|
# Hash is ordered in Ruby 1.9!
|
||||||
if RUBY_VERSION < '1.9'
|
if RUBY_VERSION < '1.9'
|
||||||
|
|
||||||
|
@ -329,4 +329,9 @@ def test_invert
|
|||||||
assert_equal expected, @ordered_hash.invert
|
assert_equal expected, @ordered_hash.invert
|
||||||
assert_equal @values.zip(@keys), @ordered_hash.invert.to_a
|
assert_equal @values.zip(@keys), @ordered_hash.invert.to_a
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_extractable
|
||||||
|
@ordered_hash[:rails] = "snowman"
|
||||||
|
assert_equal @ordered_hash, [1, 2, @ordered_hash].extract_options!
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user