Buenas gente,
Estoy empezando un proyecto y quiero usar fuertemente RSpec / StoryRunner /
etc. Y en ese camino estoy :P, pero me surge la siguiente duda: Hay alguna
forma de no duplicar (lo más DRY posible) las Stories?
En particular, yo estoy usando restful_authentication para la autenticación
de usuarios. Mi idea es tener 2 stories, una relacionada al loggin de
usuarios (login_story) y otra particular del portal (portal_story). La
segunda story dependería de la primera ya que solo usuarios logeados pueden
ingresar al portal.
#stories/login_story
Story: User logging in
Scenario: User pepe logs in
Given a user with login 'pepe'
And a password 'test'
And is not logged in
When user goes to /
And the user logs in with username and password
Then the user should be logged in
And the request should be redirected to /
..
#stories/portal_story
Story: Portal functionality
Scenario: User pepe check news
GivenScenario User pepe logs in
When following the redirection
Then the user should see the show template of news
And all the news should be shown within the page
La forma en la corro estas stories es la siguiente:
#stories/login_story.rb
require File.dirname(__FILE__) + "/helper"
with_steps_for(:login) do
run File.join(File.dirname(__FILE__), "login_story"), :type => RailsStory
end
#stories/portal_story.rb
require File.dirname(__FILE__) + "/helper"
with_steps_for(:login, :portal) do
run File.join(File.dirname(__FILE__), "portal_story"), :type => RailsStory
end
El problema que estoy teniendo es que de esta forma si ejecuto el
portal_story.rb (*ruby stories/portal_story.rb*), el mismo no encuentra el
Scenario "User pepe logs in".... A menos, que ubique ese Scenario dentro del
mismo archivo stories/portal_story, ahi SI lo encuentra, obviamente. De esta
forma, termino duplicando los Scenarios...there's got to be another way :P
En definitiva, no encontre como se podría hacer mejor, pero dado q me parece
un problema bastante común capaz que alguno tenía experiencia en el tema.
Salutes y Muchas Gracias,
Marcelo.
_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar