зеркало из https://github.com/github/ruby.git
test_sprintf_comb.rb: split tests
* test/ruby/test_sprintf_comb.rb (test_format_integer), (test_format_float): split huge tests by the formats. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
3914cedda3
Коммит
326980f6fd
|
@ -107,7 +107,9 @@ class TestSprintfComb < Test::Unit::TestCase
|
||||||
]
|
]
|
||||||
VS.reverse!
|
VS.reverse!
|
||||||
|
|
||||||
def combination(*args, &b)
|
FLAGS = [['', ' '], ['', '#'], ['', '+'], ['', '-'], ['', '0']]
|
||||||
|
|
||||||
|
def self.combination(*args, &b)
|
||||||
#AllPairs.exhaustive_each(*args, &b)
|
#AllPairs.exhaustive_each(*args, &b)
|
||||||
AllPairs.each(*args, &b)
|
AllPairs.each(*args, &b)
|
||||||
end
|
end
|
||||||
|
@ -268,17 +270,8 @@ class TestSprintfComb < Test::Unit::TestCase
|
||||||
str
|
str
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_format_integer
|
def self.assertions_format_integer(format)
|
||||||
combination(
|
proc {
|
||||||
%w[B b d o X x],
|
|
||||||
[nil, 0, 5, 20],
|
|
||||||
["", ".", ".0", ".8", ".20"],
|
|
||||||
['', ' '],
|
|
||||||
['', '#'],
|
|
||||||
['', '+'],
|
|
||||||
['', '-'],
|
|
||||||
['', '0']) {|type, width, precision, sp, hs, pl, mi, zr|
|
|
||||||
format = "%#{sp}#{hs}#{pl}#{mi}#{zr}#{width}#{precision}#{type}"
|
|
||||||
VS.each {|v|
|
VS.each {|v|
|
||||||
r = sprintf format, v
|
r = sprintf format, v
|
||||||
e = emu_int format, v
|
e = emu_int format, v
|
||||||
|
@ -293,6 +286,14 @@ class TestSprintfComb < Test::Unit::TestCase
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
combination(%w[B b d o X x],
|
||||||
|
[nil, 0, 5, 20],
|
||||||
|
["", ".", ".0", ".8", ".20"],
|
||||||
|
*FLAGS) {|type, width, precision, sp, hs, pl, mi, zr|
|
||||||
|
format = "%#{sp}#{hs}#{pl}#{mi}#{zr}#{width}#{precision}#{type}"
|
||||||
|
define_method("test_format_integer(#{format})", assertions_format_integer(format))
|
||||||
|
}
|
||||||
|
|
||||||
FLOAT_VALUES = [
|
FLOAT_VALUES = [
|
||||||
-1e100,
|
-1e100,
|
||||||
-123456789.0,
|
-123456789.0,
|
||||||
|
@ -526,17 +527,8 @@ class TestSprintfComb < Test::Unit::TestCase
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_format_float
|
def self.assertions_format_float(format)
|
||||||
combination(
|
proc {
|
||||||
%w[e E f g G],
|
|
||||||
[nil, 0, 5, 20],
|
|
||||||
["", ".", ".0", ".8", ".20", ".200"],
|
|
||||||
['', ' '],
|
|
||||||
['', '#'],
|
|
||||||
['', '+'],
|
|
||||||
['', '-'],
|
|
||||||
['', '0']) {|type, width, precision, sp, hs, pl, mi, zr|
|
|
||||||
format = "%#{sp}#{hs}#{pl}#{mi}#{zr}#{width}#{precision}#{type}"
|
|
||||||
FLOAT_VALUES.each {|v|
|
FLOAT_VALUES.each {|v|
|
||||||
r = sprintf format, v
|
r = sprintf format, v
|
||||||
e = emu_float format, v
|
e = emu_float format, v
|
||||||
|
@ -550,4 +542,12 @@ class TestSprintfComb < Test::Unit::TestCase
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
combination(%w[e E f g G],
|
||||||
|
[nil, 0, 5, 20],
|
||||||
|
["", ".", ".0", ".8", ".20", ".200"],
|
||||||
|
*FLAGS) {|type, width, precision, sp, hs, pl, mi, zr|
|
||||||
|
format = "%#{sp}#{hs}#{pl}#{mi}#{zr}#{width}#{precision}#{type}"
|
||||||
|
define_method("test_format_float(#{format})", assertions_format_float(format))
|
||||||
|
}
|
||||||
end
|
end
|
||||||
|
|
Загрузка…
Ссылка в новой задаче