Use nested assert

This commit is contained in:
dearblue
2019-06-28 23:13:29 +09:00
parent 1b9f949f36
commit a215292b6a
5 changed files with 43 additions and 31 deletions
+5 -3
View File
@@ -3,9 +3,11 @@ require 'open3'
def assert_mruby(exp_out, exp_err, exp_success, args)
out, err, stat = Open3.capture3(cmd("mruby"), *args)
assert_operator(exp_out, :===, out, "standard output")
assert_operator(exp_err, :===, err, "standard error")
assert_equal(exp_success, stat.success?, "exit success?")
assert do
assert_operator(exp_out, :===, out, "standard output")
assert_operator(exp_err, :===, err, "standard error")
assert_equal(exp_success, stat.success?, "exit success?")
end
end
assert('regression for #1564') do
+4 -2
View File
@@ -1,6 +1,8 @@
def assert_complex(real, exp)
assert_float real.real, exp.real
assert_float real.imaginary, exp.imaginary
assert do
assert_float real.real, exp.real
assert_float real.imaginary, exp.imaginary
end
end
assert 'Complex' do
+18 -16
View File
@@ -5,24 +5,26 @@ MRubyIOTestUtil.io_test_setup
$cr, $crlf, $cmd = MRubyIOTestUtil.win? ? [1, "\r\n", "cmd /c "] : [0, "\n", ""]
def assert_io_open(meth)
fd = IO.sysopen($mrbtest_io_rfname)
assert_equal Fixnum, fd.class
io1 = IO.__send__(meth, fd)
begin
assert_equal IO, io1.class
assert_equal $mrbtest_io_msg, io1.read
ensure
io1.close
end
io2 = IO.__send__(meth, IO.sysopen($mrbtest_io_rfname))do |io|
if meth == :open
assert_equal $mrbtest_io_msg, io.read
else
flunk "IO.#{meth} does not take block"
assert do
fd = IO.sysopen($mrbtest_io_rfname)
assert_equal Fixnum, fd.class
io1 = IO.__send__(meth, fd)
begin
assert_equal IO, io1.class
assert_equal $mrbtest_io_msg, io1.read
ensure
io1.close
end
io2 = IO.__send__(meth, IO.sysopen($mrbtest_io_rfname))do |io|
if meth == :open
assert_equal $mrbtest_io_msg, io.read
else
flunk "IO.#{meth} does not take block"
end
end
io2.close unless meth == :open
end
io2.close unless meth == :open
end
assert('IO.class', '15.2.20') do
+4 -2
View File
@@ -2,8 +2,10 @@ PACK_IS_LITTLE_ENDIAN = "\x01\00".unpack('S')[0] == 0x01
def assert_pack tmpl, packed, unpacked
t = tmpl.inspect
assert_equal packed, unpacked.pack(tmpl), "#{unpacked.inspect}.pack(#{t})"
assert_equal unpacked, packed.unpack(tmpl), "#{packed.inspect}.unpack(#{t})"
assert do
assert_equal packed, unpacked.pack(tmpl), "#{unpacked.inspect}.pack(#{t})"
assert_equal unpacked, packed.unpack(tmpl), "#{packed.inspect}.unpack(#{t})"
end
end
# pack & unpack 'm' (base64)
+12 -8
View File
@@ -23,17 +23,21 @@ class ComplexLikeNumeric < UserDefinedNumeric
end
def assert_rational(exp, real)
assert_float exp.numerator, real.numerator
assert_float exp.denominator, real.denominator
assert do
assert_float exp.numerator, real.numerator
assert_float exp.denominator, real.denominator
end
end
def assert_equal_rational(exp, o1, o2)
if exp
assert_operator(o1, :==, o2)
assert_not_operator(o1, :!=, o2)
else
assert_not_operator(o1, :==, o2)
assert_operator(o1, :!=, o2)
assert do
if exp
assert_operator(o1, :==, o2)
assert_not_operator(o1, :!=, o2)
else
assert_not_operator(o1, :==, o2)
assert_operator(o1, :!=, o2)
end
end
end