On Tue, Apr 21, 2009 at 8:50 PM, Jonathan Linowes <jonat...@parkerhill.com>wrote:
> Without adding a new feature to Cucumber, I'd probably do > > Scenario Outline: Religious menus > Given the customer is a "<Religion>" > When they ask for the menu > Then they should be presented with "<Meats>" > > Examples: > | Religion | Meats | > | Christian | Pork, Lamb, Veal | > | Jewish | Lamb, Veal | > | Muslim | Lamb, Veal | > | Hindu | Lamb | > This certainly would work, but what if we're not dealing with booleans (Lamb/No Lamb), but numbers? |34,76,89| doesn't read so well... Aslak > > and then parse the meat string in the step definition > > meat.split(',') etc > > > On Apr 21, 2009, at 12:39 PM, aslak hellesoy wrote: > > Being the author of Cucumber, some of you might be surprised that I ask > this question: > > How should I go about to implement a Cucumber feature and step definition > with the following data? > http://gist.github.com/99220 (just look at the first file for now) > > Imagine I'm opening a restaurant where customers are asked for their > religion. Based on what they answer, they will be presented with a tailored > menu. (Apologies in advance if I'm ignorant about what different people it). > > In Cucumber, there are several ways to put this table in a feature. It can > be part of a table in a Scenario Outline's Examples section ( > http://wiki.github.com/aslakhellesoy/cucumber/scenario-outlines), or it > can be sent to a Step as a multiline argument ( > http://wiki.github.com/aslakhellesoy/cucumber/multiline-step-arguments). > > In either case, I'm not happy about the feature and step definitions I end > up with. The Scenario Outline version has annoying duplication. I have to > duplicate each meat 3 times! This makes it hard to read and edit. The > multiline step argument version isn't much better. If a menu for a religion > is wrong I'll only get one error, the error won't tell me what's wrong > (unless I explicitly craft my error messages in the step definition) and max > one failure will show (there is only one scenario). > > There should be a better way to express this kind of tests. But I'm not > sure how. Is there a smarter way with the current Cucumber? If not, how > would you *like* to express this sort of problem? > > Cheers, > Aslak > > _______________________________________________ > rspec-users mailing list > rspec-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users > > > > _______________________________________________ > rspec-users mailing list > rspec-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users >
_______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users