summaryrefslogtreecommitdiffstats
path: root/web/server/h2o/libh2o/deps/mruby/test/t/nil.rb
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--web/server/h2o/libh2o/deps/mruby/test/t/nil.rb39
1 files changed, 39 insertions, 0 deletions
diff --git a/web/server/h2o/libh2o/deps/mruby/test/t/nil.rb b/web/server/h2o/libh2o/deps/mruby/test/t/nil.rb
new file mode 100644
index 00000000..b49878fc
--- /dev/null
+++ b/web/server/h2o/libh2o/deps/mruby/test/t/nil.rb
@@ -0,0 +1,39 @@
+##
+# NilClass ISO Test
+
+assert('NilClass', '15.2.4') do
+ assert_equal Class, NilClass.class
+end
+
+assert('NilClass', '15.2.4.1') do
+ assert_equal NilClass, nil.class
+ assert_false NilClass.method_defined? :new
+end
+
+assert('NilClass#&', '15.2.4.3.1') do
+ assert_false nil.&(true)
+ assert_false nil.&(nil)
+end
+
+assert('NilClass#^', '15.2.4.3.2') do
+ assert_true nil.^(true)
+ assert_false nil.^(false)
+end
+
+assert('NilClass#|', '15.2.4.3.3') do
+ assert_true nil.|(true)
+ assert_false nil.|(false)
+end
+
+assert('NilClass#nil?', '15.2.4.3.4') do
+ assert_true nil.nil?
+end
+
+assert('NilClass#to_s', '15.2.4.3.5') do
+ assert_equal '', nil.to_s
+end
+
+assert('safe navigation') do
+ assert_nil nil&.size
+ assert_equal 0, []&.size
+end