We're trying to verify XML REST API's and would like to write Cucumber specs of the following type:
Scenario: Create a phrase Given I have an authenticated session for user with login "steve" When I send a POST to /phrases with parameters: locale=ca and post body "<?xml version="1.0" encoding="UTF-8"?> <phrase> <uuid>060e985b-0307-4c8f-b43f-c16f0e45196d</uuid> <text>Fake Catalan Source</text> <source_language>ca</source_language> </phrase>" Then I get a 201 (created) status result And I a phrase object with UUID=060e985b-0307-4c8f-b43f-c16f0e45196d exists on the server In other words, we're trying to pass a multi-line value to the parser. We've found this reference: https://rspec.lighthouseapp.com/projects/16211/tickets/4-add-multiline-step-support It's marked as resolved, but we can't seem to get it to work with the "..." syntax. The parser statement is: When /^I send a (GET|POST|PUT|DELETE) to ([\/\w]+)(?: with parameters: )?(.*) and post body (.*)$/m do |method, path, params, body| send(method.downcase.to_sym, path, params) end The error: $ cucumber features/phrases_xml.feature -n /usr/lib/ruby/gems/1.8/gems/cucumber-0.2.3/bin/../lib/cucumber/parser/treetop_ext.rb:42:in `parse_or_fail': features/phrases_xml.feature:9:6: Parse error, expected one of "|", "\n", "\r", "\"\"\"", "#", "Given", "When", "Then", "And", "But", "@", "Scenario", "Scenario Outline". (Cucumber::Parser::SyntaxError) from /usr/lib/ruby/gems/1.8/gems/cucumber-0.2.3/bin/../lib/cucumber/parser/treetop_ext.rb:28:in `parse_file' from /usr/lib/ruby/gems/1.8/gems/cucumber-0.2.3/bin/../lib/cucumber/parser/treetop_ext.rb:33:in `open' from /usr/lib/ruby/gems/1.8/gems/cucumber-0.2.3/bin/../lib/cucumber/parser/treetop_ext.rb:33:in `parse_file' from /usr/lib/ruby/gems/1.8/gems/cucumber-0.2.3/bin/../lib/cucumber/cli/main.rb:55:in `load_plain_text_features' from /usr/lib/ruby/gems/1.8/gems/cucumber-0.2.3/bin/../lib/cucumber/cli/main.rb:54:in `each' from /usr/lib/ruby/gems/1.8/gems/cucumber-0.2.3/bin/../lib/cucumber/cli/main.rb:54:in `load_plain_text_features' from /usr/lib/ruby/gems/1.8/gems/cucumber-0.2.3/bin/../lib/cucumber/cli/main.rb:37:in `execute!' from /usr/lib/ruby/gems/1.8/gems/cucumber-0.2.3/bin/../lib/cucumber/cli/main.rb:20:in `execute' from /usr/lib/ruby/gems/1.8/gems/cucumber-0.2.3/bin/cucumber:6 from /usr/bin/cucumber:19:in `load' from /usr/bin/cucumber:19 -- Posted via http://www.ruby-forum.com/. _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users