On Thu, Nov 27, 2008 at 12:58 AM, Andrei Erdoss <[EMAIL PROTECTED]> wrote: > Hello, > > I am using Restful Authentication and I would like to login in Cucumber. I > am having trouble keeping the user logged in. I tried finding a solution for > this everywhere. Only source is this article: > http://afreshcup.com/2008/10/09/authentication-in-cucumber-tests/ > > This is how my feature looks like: > > Scenario: Register new place > Given I am logged in as a user > And I am on the new place page with parent place "Georgia" > When I fill in "Name" with "Atlanta" > And I press "Create" > And I should see "Atlanta" > > This is the step: > > Given /I am logged in as a user/ do > @current_user = Factory.define :user do |u| > u.name 'the user' > u.email '[EMAIL PROTECTED]' > u.login 'the_login' > u.password 'password' > u.password_confirmation 'password' > end > visits "/login" > fills_in("login", :with => "the_login") > fills_in("password", :with => "password") > clicks_button("Log in") > end > I don't think Factory.define returns the instance that you defined and defining the factory certainly does not store the instance to the database.
I'd recommend putting your factories in a separate file and require them at the beginning of your step file. You could then do @current_user = Factory(:user), which will actually store the user to the database. HTH, Michael Guterl _______________________________________________ rspec-users mailing list [email protected] http://rubyforge.org/mailman/listinfo/rspec-users
