From 44785befeabd09d5d34f33b33783c0ec54f06a1f Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 5 Sep 2003 15:15:43 +0000 Subject: * lib/optparse.rb (OptionParser#order, #permute, #parse): allow an array as argument. * test/ruby/test_*.rb: moved invariants to left side in assert_equal, and use assert_nil, assert_raises and so on. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4516 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_system.rb | 61 +++++++++++++++++++++--------------------------- 1 file changed, 26 insertions(+), 35 deletions(-) (limited to 'test/ruby/test_system.rb') diff --git a/test/ruby/test_system.rb b/test/ruby/test_system.rb index 4b4eb77126..6865515d44 100644 --- a/test/ruby/test_system.rb +++ b/test/ruby/test_system.rb @@ -3,29 +3,33 @@ require 'test/unit' $KCODE = 'none' class TestSystem < Test::Unit::TestCase + def valid_syntax?(code, fname) + eval("BEGIN {return true}\n#{code}", nil, fname, 0) + end + def test_system if File.exist? "miniruby" or File.exist? "miniruby.exe" ruby = "./miniruby" else ruby = "ruby" end - assert_equal(`echo foobar`, "foobar\n") - assert_equal(`#{ruby} -e 'print "foobar"'`, 'foobar') - + assert_equal("foobar\n", `echo foobar`) + assert_equal('foobar', `#{ruby} -e 'print "foobar"'`) + tmp = open("script_tmp", "w") tmp.print "print $zzz\n"; tmp.close - - assert_equal(`#{ruby} -s script_tmp -zzz`, 'true') - assert_equal(`#{ruby} -s script_tmp -zzz=555`, '555') - + + assert_equal('true', `#{ruby} -s script_tmp -zzz`) + assert_equal('555', `#{ruby} -s script_tmp -zzz=555`) + tmp = open("script_tmp", "w") tmp.print "#! /usr/local/bin/ruby -s\n"; tmp.print "print $zzz\n"; tmp.close - - assert_equal(`#{ruby} script_tmp -zzz=678`, '678') - + + assert_equal('678', `#{ruby} script_tmp -zzz=678`) + tmp = open("script_tmp", "w") tmp.print "this is a leading junk\n"; tmp.print "#! /usr/local/bin/ruby -s\n"; @@ -33,50 +37,37 @@ class TestSystem < Test::Unit::TestCase tmp.print "__END__\n"; tmp.print "this is a trailing junk\n"; tmp.close - - assert_equal(`#{ruby} -x script_tmp`, 'nil') - assert_equal(`#{ruby} -x script_tmp -zzz=555`, '555') - + + assert_equal('nil', `#{ruby} -x script_tmp`) + assert_equal('555', `#{ruby} -x script_tmp -zzz=555`) + tmp = open("script_tmp", "w") for i in 1..5 tmp.print i, "\n" end tmp.close - + `#{ruby} -i.bak -pe 'sub(/^[0-9]+$/){$&.to_i * 5}' script_tmp` - done = true tmp = open("script_tmp", "r") while tmp.gets - if $_.to_i % 5 != 0 - done = false - break - end + assert_equal(0, $_.to_i % 5) end tmp.close - assert(done) - + File.unlink "script_tmp" or `/bin/rm -f "script_tmp"` File.unlink "script_tmp.bak" or `/bin/rm -f "script_tmp.bak"` - + $bad = false if (dir = File.dirname(File.dirname($0))) == '.' dir = "" else dir << "/" end - - def valid_syntax?(code, fname) - eval("BEGIN {return true}\n#{code}", nil, fname, 0) - rescue Exception - puts $!.message - false - end - + for script in Dir["#{dir}{lib,sample,ext}/**/*.rb"] - unless valid_syntax? IO::read(script), script - $bad = true + assert_nothing_raised(Exception) do + valid_syntax? IO::read(script), script end end - assert(!$bad) - end + end end -- cgit v1.2.3