14
16
assert_equal("foobar\n", `echo foobar`)
15
17
assert_equal('foobar', `#{ruby} -e 'print "foobar"'`)
17
tmp = open("script_tmp", "w")
18
tmp.print "print $zzz\n";
21
assert_equal('true', `#{ruby} -s script_tmp -zzz`)
22
assert_equal('555', `#{ruby} -s script_tmp -zzz=555`)
24
tmp = open("script_tmp", "w")
25
tmp.print "#! /usr/local/bin/ruby -s\n";
26
tmp.print "print $zzz\n";
29
assert_equal('678', `#{ruby} script_tmp -zzz=678`)
31
tmp = open("script_tmp", "w")
32
tmp.print "this is a leading junk\n";
33
tmp.print "#! /usr/local/bin/ruby -s\n";
34
tmp.print "print $zzz\n";
35
tmp.print "__END__\n";
36
tmp.print "this is a trailing junk\n";
39
assert_equal('', `#{ruby} -x script_tmp`)
40
assert_equal('555', `#{ruby} -x script_tmp -zzz=555`)
42
tmp = open("script_tmp", "w")
48
`#{ruby} -i.bak -pe '$_.sub!(/^[0-9]+$/){$&.to_i * 5}' script_tmp`
49
tmp = open("script_tmp", "r")
51
assert_equal(0, $_.to_i % 5)
55
File.unlink "script_tmp" or `/bin/rm -f "script_tmp"`
56
File.unlink "script_tmp.bak" or `/bin/rm -f "script_tmp.bak"`
19
Dir.mktmpdir("ruby_script_tmp") {|tmpdir|
20
tmpfilename = "#{tmpdir}/ruby_script_tmp.#{$$}"
22
tmp = open(tmpfilename, "w")
23
tmp.print "print $zzz\n";
26
assert_equal('true', `#{ruby} -s #{tmpfilename} -zzz`)
27
assert_equal('555', `#{ruby} -s #{tmpfilename} -zzz=555`)
29
tmp = open(tmpfilename, "w")
30
tmp.print "#! /usr/local/bin/ruby -s\n";
31
tmp.print "print $zzz\n";
34
assert_equal('678', `#{ruby} #{tmpfilename} -zzz=678`)
36
tmp = open(tmpfilename, "w")
37
tmp.print "this is a leading junk\n";
38
tmp.print "#! /usr/local/bin/ruby -s\n";
39
tmp.print "print $zzz\n";
40
tmp.print "__END__\n";
41
tmp.print "this is a trailing junk\n";
44
assert_equal('', `#{ruby} -x #{tmpfilename}`)
45
assert_equal('555', `#{ruby} -x #{tmpfilename} -zzz=555`)
47
tmp = open(tmpfilename, "w")
53
`#{ruby} -i.bak -pe '$_.sub!(/^[0-9]+$/){$&.to_i * 5}' #{tmpfilename}`
54
tmp = open(tmpfilename, "r")
56
assert_equal(0, $_.to_i % 5)
60
File.unlink tmpfilename or `/bin/rm -f "#{tmpfilename}"`
61
File.unlink "#{tmpfilename}.bak" or `/bin/rm -f "#{tmpfilename}.bak"`