summaryrefslogtreecommitdiff
path: root/test/ruby/test_require.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/ruby/test_require.rb')
-rw-r--r--test/ruby/test_require.rb21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/ruby/test_require.rb b/test/ruby/test_require.rb
index 410edbb276..1ff2d78697 100644
--- a/test/ruby/test_require.rb
+++ b/test/ruby/test_require.rb
@@ -604,4 +604,25 @@ class TestRequire < Test::Unit::TestCase
}
}
end
+
+ def test_require_with_loaded_features_pop
+ bug7530 = '[ruby-core:50645]'
+ assert_in_out_err([], <<-INPUT, %w(:ok), [], bug7530)
+ THREADS = 2
+ ITERATIONS_PER_THREAD = 1000
+
+ $: << '.'
+ system 'touch __load_path_bench_script__.rb'
+ THREADS.times.map {
+ Thread.new do
+ ITERATIONS_PER_THREAD.times do
+ require '__load_path_bench_script__'
+ $".pop
+ end
+ end
+ }.each(&:join)
+ system 'rm __load_path_bench_script__.rb'
+ p :ok
+ INPUT
+ end
end