lib/cucumber/pickles/steps/check_in/factory.rb in pickles-0.1.10 vs lib/cucumber/pickles/steps/check_in/factory.rb in pickles-0.1.12

- old
+ new

@@ -7,20 +7,35 @@ @value = value @within = within end def call - if !@value.nil? && @value[':'] + if in_quotes? + remove_quotes! + end + + if !@value.nil? && @value[':'] && !in_quotes? step = CheckIn::ComplexInput # return if text_complex_input(label, value, within) elsif @label =~ TAG @label = $1 - tag = $2 - step = Pickles.config.check_step_by_tag(tag) || CheckIn::Input + tag = $2 + step = Pickles.config.check_step_by_tag(tag) || CheckIn::Input else step = CheckIn::Input end step.new(@label, @value, @within) + end + +private + + def in_quotes? + @in_quotes ||= @value && @value[0] == "\"" && @value[-1] == "\"" + end + + def remove_quotes! + @value[0] = '' + @value[-1] = '' end end