summaryrefslogtreecommitdiffstats
path: root/debian/vendor-h2o/deps/mruby-require/test/require.rb
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--debian/vendor-h2o/deps/mruby-require/test/require.rb28
1 files changed, 28 insertions, 0 deletions
diff --git a/debian/vendor-h2o/deps/mruby-require/test/require.rb b/debian/vendor-h2o/deps/mruby-require/test/require.rb
new file mode 100644
index 0000000..95e1ef0
--- /dev/null
+++ b/debian/vendor-h2o/deps/mruby-require/test/require.rb
@@ -0,0 +1,28 @@
+assert("Kernel.require") do
+ # see d/required.rb
+ $gvar1 = 0
+ lvar1 = 0
+ class MrubyRequireClass; end
+
+ assert_true require(File.join(File.dirname(__FILE__), "d", "required.rb"))
+
+ # Kernel.require can create a global variable
+ assert_equal 1, $gvar0
+
+ # Kernel.require can change value of a global variable
+ assert_equal 1, $gvar1
+
+ # Kernel.require cannot create a local variable
+ assert_raise(NoMethodError) do
+ lvar0
+ end
+
+ # Kernel.require cannot change value of a local variable
+ assert_equal 0, lvar1
+
+ # Kernel.require can define a toplevel procedure
+ assert_equal :proc0, proc0
+
+ # Kernel.require can add a method to an existing class
+ assert_equal :foo, MrubyRequireClass.new.foo
+end