Improve Mikyung's Scenario engine
Reported by Fabio Akita | June 1st, 2010 @ 04:16 AM
The current process for Mikyung to simulate a natural language process is to make it concatenate the tokens of each phrase using method_missing.
Problem is, that properly recognizable Ruby tokens such as "for", "not", etc will not work. So we have to tweak the text to avoid using any reserved keyword.
The solution is to use a proper parser, probably the best idea being borrowing it from Cucumber.
Comments and changes to this ticket
-
Fabio Akita June 1st, 2010 @ 04:41 PM
- Milestone set to 0.8.1
- State changed from new to open
For the time being, I did a cosmetic change to Mikyung: make it more modular and organized similar to Cucumber.
So now you will have this structure:
steps/ buying_process.rb scenarios/ buying_process.scenario buying_process.rb
The patch to implement this is here: http://github.com/akitaonrails/restfulie/commit/6f0c1ed17cfe91ae747...
And the example of usage is here:
http://github.com/akitaonrails/restfulie-full-examples/commit/cd549... -
Fabio Akita June 3rd, 2010 @ 04:07 PM
- State changed from resolved to open
Nope. This is different from the reorganization of the steps/scenario files. The current parser is just a concatenator for method missing, which won't work well if you use reserved keyword like "for". I just registered this ticket because I want to investigate adding Cucumber's parser into Mikyung later.
-
Guilherme Silveira June 3rd, 2010 @ 04:40 PM
Thanks, I misread the first description, only reading the second one.
-
Guilherme Silveira June 3rd, 2010 @ 11:24 PM
- Milestone changed from 0.8.1 to v0.9
-
Guilherme Silveira August 6th, 2010 @ 04:32 PM
- Milestone cleared.
- Milestone order changed from 0 to 0
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile »