Add missing assert_warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
6c698654bb
commit
7f199d12e0
@ -1,6 +1,7 @@
|
|||||||
require 'test/unit'
|
require 'test/unit'
|
||||||
require 'tmpdir'
|
require 'tmpdir'
|
||||||
require 'timeout'
|
require 'timeout'
|
||||||
|
require 'stringio'
|
||||||
require_relative 'envutil'
|
require_relative 'envutil'
|
||||||
|
|
||||||
class TestIO_M17N < Test::Unit::TestCase
|
class TestIO_M17N < Test::Unit::TestCase
|
||||||
@ -11,6 +12,17 @@ class TestIO_M17N < Test::Unit::TestCase
|
|||||||
Encoding::UTF_8
|
Encoding::UTF_8
|
||||||
]
|
]
|
||||||
|
|
||||||
|
def assert_warning(pat, mesg=nil)
|
||||||
|
begin
|
||||||
|
org_stderr = $stderr
|
||||||
|
$stderr = StringIO.new(warn = '')
|
||||||
|
yield
|
||||||
|
ensure
|
||||||
|
$stderr = org_stderr
|
||||||
|
end
|
||||||
|
assert_match(pat, warn, mesg)
|
||||||
|
end
|
||||||
|
|
||||||
def with_tmpdir
|
def with_tmpdir
|
||||||
Dir.mktmpdir {|dir|
|
Dir.mktmpdir {|dir|
|
||||||
Dir.chdir(dir) {
|
Dir.chdir(dir) {
|
||||||
@ -1064,9 +1076,9 @@ EOT
|
|||||||
bug5567 = '[ruby-core:40726]'
|
bug5567 = '[ruby-core:40726]'
|
||||||
IO.pipe do |r, w|
|
IO.pipe do |r, w|
|
||||||
assert_nothing_raised(bug5567) do
|
assert_nothing_raised(bug5567) do
|
||||||
assert_warn(/Unsupported/, bug5567) {r.set_encoding("fffffffffffxx")}
|
assert_warning(/Unsupported/, bug5567) {r.set_encoding("fffffffffffxx")}
|
||||||
assert_warn(/Unsupported/, bug5567) {r.set_encoding("fffffffffffxx", "us-ascii")}
|
assert_warning(/Unsupported/, bug5567) {r.set_encoding("fffffffffffxx", "us-ascii")}
|
||||||
assert_warn(/Unsupported/, bug5567) {r.set_encoding("us-ascii", "fffffffffffxx")}
|
assert_warning(/Unsupported/, bug5567) {r.set_encoding("us-ascii", "fffffffffffxx")}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
require 'test/unit'
|
require 'test/unit'
|
||||||
require 'stringio'
|
|
||||||
require_relative 'allpairs'
|
require_relative 'allpairs'
|
||||||
|
|
||||||
class TestM17NComb < Test::Unit::TestCase
|
class TestM17NComb < Test::Unit::TestCase
|
||||||
@ -23,62 +22,6 @@ class TestM17NComb < Test::Unit::TestCase
|
|||||||
assert_equal(a(bytes), a(actual), message)
|
assert_equal(a(bytes), a(actual), message)
|
||||||
end
|
end
|
||||||
|
|
||||||
def assert_warning(pat, mesg=nil)
|
|
||||||
begin
|
|
||||||
org_stderr = $stderr
|
|
||||||
$stderr = StringIO.new(warn = '')
|
|
||||||
yield
|
|
||||||
ensure
|
|
||||||
$stderr = org_stderr
|
|
||||||
end
|
|
||||||
assert_match(pat, warn, mesg)
|
|
||||||
end
|
|
||||||
|
|
||||||
def assert_regexp_generic_encoding(r)
|
|
||||||
assert(!r.fixed_encoding?)
|
|
||||||
%w[ASCII-8BIT EUC-JP Shift_JIS UTF-8].each {|ename|
|
|
||||||
# "\xc2\xa1" is a valid sequence for ASCII-8BIT, EUC-JP, Shift_JIS and UTF-8.
|
|
||||||
assert_nothing_raised { r =~ "\xc2\xa1".force_encoding(ename) }
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
def assert_regexp_fixed_encoding(r)
|
|
||||||
assert(r.fixed_encoding?)
|
|
||||||
%w[ASCII-8BIT EUC-JP Shift_JIS UTF-8].each {|ename|
|
|
||||||
enc = Encoding.find(ename)
|
|
||||||
if enc == r.encoding
|
|
||||||
assert_nothing_raised { r =~ "\xc2\xa1".force_encoding(enc) }
|
|
||||||
else
|
|
||||||
assert_raise(ArgumentError) { r =~ "\xc2\xa1".force_encoding(enc) }
|
|
||||||
end
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
def assert_regexp_generic_ascii(r)
|
|
||||||
assert_encoding("ASCII-8BIT", r.encoding)
|
|
||||||
assert_regexp_generic_encoding(r)
|
|
||||||
end
|
|
||||||
|
|
||||||
def assert_regexp_fixed_ascii8bit(r)
|
|
||||||
assert_encoding("ASCII-8BIT", r.encoding)
|
|
||||||
assert_regexp_fixed_encoding(r)
|
|
||||||
end
|
|
||||||
|
|
||||||
def assert_regexp_fixed_eucjp(r)
|
|
||||||
assert_encoding("EUC-JP", r.encoding)
|
|
||||||
assert_regexp_fixed_encoding(r)
|
|
||||||
end
|
|
||||||
|
|
||||||
def assert_regexp_fixed_sjis(r)
|
|
||||||
assert_encoding("Shift_JIS", r.encoding)
|
|
||||||
assert_regexp_fixed_encoding(r)
|
|
||||||
end
|
|
||||||
|
|
||||||
def assert_regexp_fixed_utf8(r)
|
|
||||||
assert_encoding("UTF-8", r.encoding)
|
|
||||||
assert_regexp_fixed_encoding(r)
|
|
||||||
end
|
|
||||||
|
|
||||||
STRINGS = [
|
STRINGS = [
|
||||||
a(""), e(""), s(""), u(""),
|
a(""), e(""), s(""), u(""),
|
||||||
a("a"), e("a"), s("a"), u("a"),
|
a("a"), e("a"), s("a"), u("a"),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user