use env.rb and grep.rb in test
to avoid depending on some env.exe and grep.exe on Windows.
This commit is contained in:
parent
6c14d32cce
commit
67a662f1c6
@ -9,34 +9,36 @@ class CMDTEST_setenv < Cmdtest::Testcase
|
||||
def test_setenv
|
||||
#----------
|
||||
create_CMDTEST_foo [
|
||||
'cmd "env | grep TESTVAR1" do',
|
||||
' exit_nonzero', # no match in grep
|
||||
'cmd "env.rb | grep.rb TESTVAR1" do',
|
||||
' exit_nonzero', # no match in grep.rb
|
||||
'end',
|
||||
]
|
||||
cmd_cmdtest do
|
||||
comment "TESTVAR1 not set"
|
||||
stdout_equal [
|
||||
"### env | grep TESTVAR1",
|
||||
"### env.rb | grep.rb TESTVAR1",
|
||||
]
|
||||
end
|
||||
|
||||
#----------
|
||||
create_CMDTEST_foo [
|
||||
'setenv "TESTVAR1", "123456"',
|
||||
'cmd "env | grep TESTVAR1" do',
|
||||
'cmd "env.rb | grep.rb TESTVAR1" do',
|
||||
' stdout_equal "TESTVAR1=123456\\n"',
|
||||
'end',
|
||||
]
|
||||
cmd_cmdtest do
|
||||
comment "TESTVAR1 set by setenv"
|
||||
stdout_equal [
|
||||
"### env | grep TESTVAR1",
|
||||
"### env.rb | grep.rb TESTVAR1",
|
||||
]
|
||||
end
|
||||
|
||||
cmd("env | grep TESTVAR1") do
|
||||
prepend_path 't/bin'
|
||||
|
||||
cmd("env.rb | grep.rb TESTVAR1") do
|
||||
comment "TESTVAR1 still unset on level1"
|
||||
exit_nonzero # no match in grep
|
||||
exit_nonzero # no match in grep.rb
|
||||
end
|
||||
end
|
||||
|
||||
@ -46,32 +48,34 @@ class CMDTEST_setenv < Cmdtest::Testcase
|
||||
ENV['TESTVAR2'] = '987654'
|
||||
#----------
|
||||
create_CMDTEST_foo [
|
||||
'cmd "env | grep TESTVAR2" do',
|
||||
'cmd "env.rb | grep.rb TESTVAR2" do',
|
||||
' stdout_equal "TESTVAR2=987654\\n"',
|
||||
'end',
|
||||
]
|
||||
cmd_cmdtest do
|
||||
comment "TESTVAR2 set from start"
|
||||
stdout_equal [
|
||||
"### env | grep TESTVAR2",
|
||||
"### env.rb | grep.rb TESTVAR2",
|
||||
]
|
||||
end
|
||||
|
||||
#----------
|
||||
create_CMDTEST_foo [
|
||||
'unsetenv "TESTVAR2"',
|
||||
'cmd "env | grep TESTVAR2" do',
|
||||
' exit_nonzero', # no match in grep
|
||||
'cmd "env.rb | grep.rb TESTVAR2" do',
|
||||
' exit_nonzero', # no match in grep.rb
|
||||
'end',
|
||||
]
|
||||
cmd_cmdtest do
|
||||
comment "TESTVAR2 unset by unsetenv"
|
||||
stdout_equal [
|
||||
"### env | grep TESTVAR2",
|
||||
"### env.rb | grep.rb TESTVAR2",
|
||||
]
|
||||
end
|
||||
|
||||
cmd("env | grep TESTVAR2") do
|
||||
prepend_path 't/bin'
|
||||
|
||||
cmd("env.rb | grep.rb TESTVAR2") do
|
||||
comment "TESTVAR2 still set on level1"
|
||||
stdout_equal [
|
||||
"TESTVAR2=987654",
|
||||
|
6
t/bin/env.rb
Executable file
6
t/bin/env.rb
Executable file
@ -0,0 +1,6 @@
|
||||
#!/usr/bin/ruby
|
||||
|
||||
for k in ENV.keys.sort
|
||||
puts("%s=%s" % [k, ENV[k]])
|
||||
end
|
||||
|
13
t/bin/grep.rb
Executable file
13
t/bin/grep.rb
Executable file
@ -0,0 +1,13 @@
|
||||
#!/usr/bin/ruby
|
||||
|
||||
pattern = Regexp.new(ARGV[0])
|
||||
|
||||
n = 0
|
||||
for line in STDIN
|
||||
if line =~ pattern
|
||||
puts line
|
||||
n += 1
|
||||
end
|
||||
end
|
||||
|
||||
exit(n == 0 ? 1 : 0)
|
Loading…
x
Reference in New Issue
Block a user