diff options
Diffstat (limited to 'bootstraptest/test_load.rb')
| -rw-r--r-- | bootstraptest/test_load.rb | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/bootstraptest/test_load.rb b/bootstraptest/test_load.rb new file mode 100644 index 0000000000..fa8d31c098 --- /dev/null +++ b/bootstraptest/test_load.rb @@ -0,0 +1,27 @@ +assert_equal 'ok', %q{ + File.write("require-lock-test.rb", <<-END) + sleep 0.1 + module M + end + END + $:.unshift Dir.pwd + vs = (1..2).map {|i| + Thread.start { + require "require-lock-test" + M + } + }.map {|t| t.value } + vs[0] == M && vs[1] == M ? :ok : :ng +}, '[ruby-dev:32048]' + +assert_equal 'ok', %q{ + %w[a a/foo b].each {|d| Dir.mkdir(d)} + File.write("b/foo", "$ok = :ok\n") + $:.replace(%w[a b]) + begin + load "foo" + $ok + rescue => e + e.message + end +}, '[ruby-dev:38097]' |
