minimal test of stdout_contain/stderr_contain
This commit is contained in:
parent
b18b462328
commit
d6e6189cb3
75
t/CMDTEST_stdxxx_contain.rb
Normal file
75
t/CMDTEST_stdxxx_contain.rb
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
|
||||||
|
require "selftest_utils"
|
||||||
|
|
||||||
|
class CMDTEST_stdxxx_contain < Cmdtest::Testcase
|
||||||
|
|
||||||
|
include SelftestUtils
|
||||||
|
|
||||||
|
#========================================
|
||||||
|
# Using "define_method" to avoid duplicating definitions of
|
||||||
|
# stderr/stdout methods. The follwing section tests:
|
||||||
|
#
|
||||||
|
# stderr_contain
|
||||||
|
# stdout_contain
|
||||||
|
#
|
||||||
|
|
||||||
|
def self._define_stdxxx_methods(stdxxx)
|
||||||
|
|
||||||
|
#----------------------------------------
|
||||||
|
# stdxxx_contain
|
||||||
|
#----------------------------------------
|
||||||
|
|
||||||
|
## methods: test_stdout_contain_CORRECT_SIMPLE test_stderr_contain_CORRECT_SIMPLE
|
||||||
|
|
||||||
|
define_method("test_#{stdxxx}_contain_CORRECT_SIMPLE") do
|
||||||
|
create_CMDTEST_foo [
|
||||||
|
"cmd 'lines.rb --#{stdxxx} 11 22' do",
|
||||||
|
" #{stdxxx}_contain ['11', '22']",
|
||||||
|
" #{stdxxx}_contain ['22']",
|
||||||
|
" #{stdxxx}_contain ['11']",
|
||||||
|
"end",
|
||||||
|
]
|
||||||
|
|
||||||
|
cmd_cmdtest do
|
||||||
|
stdout_equal [
|
||||||
|
"### lines.rb --#{stdxxx} 11 22",
|
||||||
|
]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
#----------------------------------------
|
||||||
|
## methods: test_stdout_contain_INCORRECT_SIMPLE test_stderr_contain_INCORRECT_SIMPLE
|
||||||
|
|
||||||
|
define_method("test_#{stdxxx}_contain_INCORRECT_SIMPLE") do
|
||||||
|
create_CMDTEST_foo [
|
||||||
|
"cmd 'lines.rb --#{stdxxx} hello world' do",
|
||||||
|
" #{stdxxx}_contain ['HELLO']",
|
||||||
|
" #{stdxxx}_contain ['hello', 'WORLD']",
|
||||||
|
"end",
|
||||||
|
]
|
||||||
|
|
||||||
|
cmd_cmdtest do
|
||||||
|
stdout_equal [
|
||||||
|
"### lines.rb --#{stdxxx} hello world",
|
||||||
|
"--- ERROR: not found in #{stdxxx}:",
|
||||||
|
"--- HELLO",
|
||||||
|
"--- ERROR: found only part in #{stdxxx}:",
|
||||||
|
"--- hello",
|
||||||
|
"--- ERROR: should have been followed by:",
|
||||||
|
"--- WORLD",
|
||||||
|
"--- ERROR: instead followed by:",
|
||||||
|
"--- world",
|
||||||
|
]
|
||||||
|
exit_nonzero
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end # _define_stdxxx_methods
|
||||||
|
|
||||||
|
#----------------------------------------
|
||||||
|
|
||||||
|
for stdxxx in ["stderr", "stdout"]
|
||||||
|
_define_stdxxx_methods(stdxxx)
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
Loading…
x
Reference in New Issue
Block a user