summaryrefslogtreecommitdiffstats
path: root/debian/vendor-h2o/deps/mruby-require/test/test_nest_loop.rb
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--debian/vendor-h2o/deps/mruby-require/test/test_nest_loop.rb58
1 files changed, 58 insertions, 0 deletions
diff --git a/debian/vendor-h2o/deps/mruby-require/test/test_nest_loop.rb b/debian/vendor-h2o/deps/mruby-require/test/test_nest_loop.rb
new file mode 100644
index 0000000..c5a4b18
--- /dev/null
+++ b/debian/vendor-h2o/deps/mruby-require/test/test_nest_loop.rb
@@ -0,0 +1,58 @@
+$dir = File.join(Dir.tmpdir, "mruby-require-test-#{Time.now.to_i}.#{Time.now.usec}")
+
+def test_setup
+ Dir.mkdir($dir)
+
+ File.open(File.join($dir, "loop1.rb"), "w") do |fp|
+ fp.puts "require 'loop2.rb'"
+ fp.puts "$loop1 = 'loop1'"
+ end
+ File.open(File.join($dir, "loop2.rb"), "w") do |fp|
+ fp.puts "require 'loop1.rb'"
+ fp.puts "$loop2 = 'loop2'"
+ end
+
+ $require_test_count = 10
+ (1..$require_test_count-1).each do |i|
+ File.open(File.join($dir, "#{i+1}.rb"), "w") do |fp|
+ fp.puts "require '#{i}'"
+ fp.puts "s = 0"
+ (0..100).each{|num| fp.puts "s += #{num}" }
+ end
+ end
+ File.open(File.join($dir, "1.rb"), "w") do |fp|
+ fp.puts "$require_test_0 = 123"
+ end
+
+ $LOAD_PATH = [$dir]
+end
+
+def test_cleanup
+ if $dir && File.exist?($dir)
+ Dir.entries($dir).each do |e|
+ next if ['.', '..'].include? e
+ File.unlink File.join($dir,e)
+ end
+ Dir.unlink $dir
+ end
+end
+
+#####
+test_setup
+#####
+
+assert("require loop check") do
+ require 'loop1'
+ assert_equal 'loop1', $loop1
+ assert_equal 'loop2', $loop2
+end
+
+assert("require nest") do
+ before = $".size
+ require "#{$require_test_count}"
+ assert_equal before + $require_test_count, $".size
+end
+
+#####
+test_cleanup
+#####