mirror of
https://github.com/ThrowTheSwitch/Unity.git
synced 2026-01-23 00:15:58 +01:00
Merge pull request #556 from erijo/test-range-exclusive-end
Add support for TEST_RANGE with exclusive end
This commit is contained in:
@@ -148,12 +148,13 @@ class UnityTestRunnerGenerator
|
||||
end
|
||||
|
||||
# RANGE
|
||||
args += type_and_args[i + 1].scan(/\[\s*(-?\d+.?\d*)\s*,\s*(-?\d+.?\d*)\s*,\s*(-?\d+.?\d*)\s*\]/m).map do |arg_values_str|
|
||||
arg_values_str.map do |arg_value_str|
|
||||
args += type_and_args[i + 1].scan(/(\[|<)\s*(-?\d+.?\d*)\s*,\s*(-?\d+.?\d*)\s*,\s*(-?\d+.?\d*)\s*(\]|>)/m).map do |arg_values_str|
|
||||
exclude_end = arg_values_str[0] == '<' && arg_values_str[-1] == '>'
|
||||
arg_values_str[1...-1].map do |arg_value_str|
|
||||
arg_value_str.include?('.') ? arg_value_str.to_f : arg_value_str.to_i
|
||||
end
|
||||
end.push(exclude_end)
|
||||
end.map do |arg_values|
|
||||
(arg_values[0]..arg_values[1]).step(arg_values[2]).to_a
|
||||
Range.new(arg_values[0], arg_values[1], arg_values[3]).step(arg_values[2]).to_a
|
||||
end.reduce(nil) do |result, arg_range_expanded|
|
||||
result.nil? ? arg_range_expanded.map { |a| [a] } : result.product(arg_range_expanded)
|
||||
end.map do |arg_combinations|
|
||||
|
||||
Reference in New Issue
Block a user