diff options
author | Brandon Keepers <brandon@collectiveidea.com> | 2009-01-04 14:01:23 +0000 |
---|---|---|
committer | Pratik Naik <pratiknaik@gmail.com> | 2009-01-16 17:23:43 +0000 |
commit | 452cd74d81ecfa38d0c7d3a4dc83d2b731de9e73 (patch) | |
tree | ded1aa6715a13656e79b40ad054a863fb2bed315 /activesupport/test | |
parent | 5ed119c005864b586a259e9d8def5f7aef8a4e54 (diff) | |
download | rails-452cd74d81ecfa38d0c7d3a4dc83d2b731de9e73.tar.gz rails-452cd74d81ecfa38d0c7d3a4dc83d2b731de9e73.tar.bz2 rails-452cd74d81ecfa38d0c7d3a4dc83d2b731de9e73.zip |
Dup keys in OrderedHash to prevent them from being modified [#1676 state:resolved]
Signed-off-by: Frederick Cheung <frederick.cheung@gmail.com>
Diffstat (limited to 'activesupport/test')
-rw-r--r-- | activesupport/test/ordered_hash_test.rb | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/activesupport/test/ordered_hash_test.rb b/activesupport/test/ordered_hash_test.rb index 0e2aa4543d..fb76ca1ab6 100644 --- a/activesupport/test/ordered_hash_test.rb +++ b/activesupport/test/ordered_hash_test.rb @@ -98,7 +98,8 @@ class OrderedHashTest < Test::Unit::TestCase end def test_delete_if - (copy = @ordered_hash.dup).delete('pink') + copy = @ordered_hash.dup + copy.delete('pink') assert_equal copy, @ordered_hash.delete_if { |k, _| k == 'pink' } assert !@ordered_hash.keys.include?('pink') end @@ -115,6 +116,7 @@ class OrderedHashTest < Test::Unit::TestCase new_ordered_hash = @ordered_hash.reject { |k, _| k == 'pink' } assert_equal copy, @ordered_hash assert !new_ordered_hash.keys.include?('pink') + assert @ordered_hash.keys.include?('pink') end def test_clear @@ -140,4 +142,10 @@ class OrderedHashTest < Test::Unit::TestCase assert_equal [@keys.first, @values.first], pair assert !@ordered_hash.keys.include?(pair.first) end + + def test_keys + original = @ordered_hash.keys.dup + @ordered_hash.keys.pop + assert_equal original, @ordered_hash.keys + end end
\ No newline at end of file |