summaryrefslogtreecommitdiff
path: root/test/-ext-/st/test_numhash.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/-ext-/st/test_numhash.rb')
-rw-r--r--test/-ext-/st/test_numhash.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/test/-ext-/st/test_numhash.rb b/test/-ext-/st/test_numhash.rb
index 53dbfedaaf..24dc87c1d9 100644
--- a/test/-ext-/st/test_numhash.rb
+++ b/test/-ext-/st/test_numhash.rb
@@ -32,5 +32,18 @@ class Bug::StNumHash
assert_equal(up - 1, tbl.size, "delete_safe doesn't change size from #{up} to #{up-1}")
end
end
+
+ def test_delete_safe_on_iteration
+ 10.downto(1) do |up|
+ tbl = Bug::StNumHash.new
+ 1.upto(up){|i| tbl[i] = i}
+ assert_nothing_raised("delete_safe forces iteration to fail with size #{up}") do
+ tbl.each do |k, v, t|
+ assert_equal k, t.delete_safe(k)
+ true
+ end
+ end
+ end
+ end
end
end