lib/test_support/cucumber/support/values.rb in sniff-0.11.5 vs lib/test_support/cucumber/support/values.rb in sniff-0.11.6
- old
+ new
@@ -9,18 +9,20 @@
nil
elsif value == 'true'
true
elsif value == 'false'
false
- elsif value =~ /\d+.*,.*\d/
+ elsif value =~ /\d+.*,.*\d/ # ???
value
- elsif value =~ /\d+\.\d+/
+ elsif value =~ /^\d+\.\d+$/ # float
value.to_f
- elsif value =~ /^0+$/
+ elsif value =~ /^\d+(\.\d+)?\.\.\d+(\.\d+)?$/ # range
+ (value.split('..')[0].to_i)..(value.split('..')[1].to_i)
+ elsif value =~ /^0+$/ # all zeros => 0
0
- elsif value =~ /^0/
+ elsif value =~ /^0/ # zero preceding stuff => the input as a string
value
- elsif value =~ /^\d+$/
+ elsif value =~ /^\d+$/ # integer
value.to_i
elsif value =~ /Address:/
value.sub(/Address:\s*/,'')
elsif value.is_a?(String) and date = Chronic.parse(value)
date