mirror of
https://github.com/ruby/ruby.git
synced 2026-01-27 04:24:23 +00:00
* test/ruby/envutil.rb (assert_pattern_list) Renamed from
assert_regexp_list. Show multiline string in multi lines. * test/-ext-/bug_reporter/test_bug_reporter.rb: Use assert_pattern_list. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
723cee93c4
commit
e1ba2d418a
@ -1,3 +1,12 @@
|
||||
Wed Oct 15 17:53:28 2014 Tanaka Akira <akr@fsij.org>
|
||||
|
||||
* test/ruby/envutil.rb (assert_pattern_list) Renamed from
|
||||
assert_regexp_list.
|
||||
Show multiline string in multi lines.
|
||||
|
||||
* test/-ext-/bug_reporter/test_bug_reporter.rb: Use
|
||||
assert_pattern_list.
|
||||
|
||||
Wed Oct 15 12:26:58 2014 Tanaka Akira <akr@fsij.org>
|
||||
|
||||
* test/ruby/envutil.rb (assert_regexp_list): New assertion method.
|
||||
|
||||
@ -4,13 +4,21 @@ require_relative "../../ruby/envutil"
|
||||
|
||||
class TestBugReporter < Test::Unit::TestCase
|
||||
def test_bug_reporter_add
|
||||
expected_stderr = /Sample bug reporter: 12345/
|
||||
expected_stderr = [
|
||||
:*,
|
||||
/\[BUG\]\sSegmentation\sfault.*\n/,
|
||||
/#{ Regexp.quote(RUBY_DESCRIPTION) }\n\n/,
|
||||
:*,
|
||||
/Sample bug reporter: 12345/,
|
||||
:*
|
||||
]
|
||||
tmpdir = Dir.mktmpdir
|
||||
assert_in_out_err(["--disable-gems", "-r-test-/bug_reporter/bug_reporter",
|
||||
"-C", tmpdir],
|
||||
"register_sample_bug_reporter(12345); Process.kill :SEGV, $$",
|
||||
[],
|
||||
expected_stderr, nil)
|
||||
|
||||
args = ["--disable-gems", "-r-test-/bug_reporter/bug_reporter",
|
||||
"-C", tmpdir]
|
||||
stdin = "register_sample_bug_reporter(12345); Process.kill :SEGV, $$"
|
||||
_, stderr, status = EnvUtil.invoke_ruby(args, stdin, false, true)
|
||||
assert_pattern_list(expected_stderr, stderr)
|
||||
ensure
|
||||
FileUtils.rm_rf(tmpdir) if tmpdir
|
||||
end
|
||||
|
||||
@ -482,7 +482,7 @@ eom
|
||||
#
|
||||
# pattern_list is anchored.
|
||||
# Use [:*, regexp, :*] for non-anchored match.
|
||||
def assert_regexp_list(pattern_list, actual, message=nil)
|
||||
def assert_pattern_list(pattern_list, actual, message=nil)
|
||||
rest = actual
|
||||
anchored = true
|
||||
pattern_list.each {|pattern|
|
||||
@ -495,7 +495,20 @@ eom
|
||||
match = pattern.match(rest)
|
||||
end
|
||||
unless match
|
||||
msg = message(msg) { "Expected #{mu_pp pattern}\nto match #{mu_pp rest}" }
|
||||
msg = message(msg) {
|
||||
expect_msg = "Expected #{mu_pp pattern}\n"
|
||||
if /\n[^\n]+\n/ =~ rest
|
||||
actual_mesg = "to match\n"
|
||||
prefix = " "
|
||||
rest.scan(/.*\n+/) {
|
||||
actual_mesg << ' ' << $&.inspect << "+\n"
|
||||
}
|
||||
actual_mesg.sub!(/\+\n\z/, '')
|
||||
else
|
||||
actual_mesg = "to match #{mu_pp rest}"
|
||||
end
|
||||
expect_msg + actual_mesg
|
||||
}
|
||||
assert false, msg
|
||||
end
|
||||
rest = match.post_match
|
||||
|
||||
@ -562,7 +562,7 @@ class TestRubyOptions < Test::Unit::TestCase
|
||||
EnvUtil.diagnostic_reports(Signal.signame(signo), EnvUtil.rubybin, status.pid, Time.now)
|
||||
end
|
||||
|
||||
assert_regexp_list(SEGVTest::ExpectedStderrList, stderr, message)
|
||||
assert_pattern_list(SEGVTest::ExpectedStderrList, stderr, message)
|
||||
|
||||
status
|
||||
end
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user