diff options
author | headius <headius@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-03-08 14:38:22 +0000 |
---|---|---|
committer | headius <headius@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-03-08 14:38:22 +0000 |
commit | 4c0e360dd9f8bb7efa654a810391613d04515379 (patch) | |
tree | ff4c5e5fd358aef32242ad520546fb19e5ae01aa /test | |
parent | 1b49df0b3d0a08f450a475eafdb5a80c614d85bb (diff) | |
download | ruby-4c0e360dd9f8bb7efa654a810391613d04515379.tar.gz |
test/ruby/test_array.rb: split permute + stack error tests out.
* test/ruby/test_array.rb: split out the test for no stack error
on large input for test_permutation, test_repeated_permutation,
and test_repeated_combination, and make them all timeout:30.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-rw-r--r-- | test/ruby/test_array.rb | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/test/ruby/test_array.rb b/test/ruby/test_array.rb index dc276e035b..9364a2731a 100644 --- a/test/ruby/test_array.rb +++ b/test/ruby/test_array.rb @@ -1819,7 +1819,9 @@ class TestArray < Test::Unit::TestCase bug3708 = '[ruby-dev:42067]' assert_equal(b, @cls[0, 1, 2, 3, 4][1, 4].permutation.to_a, bug3708) + end + def test_permutation_stack_error bug9932 = '[ruby-core:63103] [Bug #9932]' assert_separately([], <<-"end;", timeout: 30) # do assert_nothing_raised(SystemStackError, "#{bug9932}") do @@ -1851,8 +1853,10 @@ class TestArray < Test::Unit::TestCase a = @cls[0, 1, 2, 3, 4][1, 4].repeated_permutation(2) assert_empty(a.reject {|x| !x.include?(0)}) + end - assert_separately([], <<-"end;") # do + def test_repeated_permutation_stack_error + assert_separately([], <<-"end;", timeout: 30) # do assert_nothing_raised(SystemStackError) do assert_equal(:ok, Array.new(100_000, nil).repeated_permutation(500_000) {break :ok}) end @@ -1886,8 +1890,10 @@ class TestArray < Test::Unit::TestCase a = @cls[0, 1, 2, 3, 4][1, 4].repeated_combination(2) assert_empty(a.reject {|x| !x.include?(0)}) + end - assert_separately([], <<-"end;") # do + def test_repeated_combination_stack_error + assert_separately([], <<-"end;", timeout: 20) # do assert_nothing_raised(SystemStackError) do assert_equal(:ok, Array.new(100_000, nil).repeated_combination(500_000) {break :ok}) end |