[rspec-users] step definitons to check login

Andrew Premdas apremdas at gmail.com
Tue Dec 16 19:48:53 EST 2008


So I can confirm that I'm logged in, that the user is who I say he is, etc.

e.g

Then /^I should be logged in$/ do
  controller.logged_in?.should be_true
end

makes sense?

2008/12/16 Zach Dennis <zach.dennis at gmail.com>

> On Tue, Dec 16, 2008 at 6:47 PM, Andrew Premdas <apremdas at gmail.com>
> wrote:
> > Doing this for Restful-Authentication I add the following in
> > features/support/env.rb
> >
> > # Make visible for testing
> > ApplicationController.send(:public, :logged_in?, :current_user,
> > :authorized?)
>
> Why do you need these available for cucumber scenarios?
>
>
> >
> > Hopefully something similar will work with Authlogic
> >
> > Andrew
> >
> > 2008/12/16 James Byrne <lists at ruby-forum.com>
> >>
> >> I am working with the authlogic gem and trying to create a simple login
> >> test from cucumber features. The feature statement is:
> >>
> >> Given the user is not logged in
> >>
> >> The step definition for this is confounding me.  In the
> >> application_controller the authlogic tutorial recommends the following:
> >>
> >> private
> >>    def require_user
> >>      unless current_user
> >>        store_location
> >>        flash[:notice] = "You must sign in to access this page"
> >>        redirect_to new_user_session_url
> >>        return false
> >>      end
> >>    end
> >>
> >>    def require_no_user
> >>      if current_user
> >>        store_location
> >>        flash[:notice] = "You must be logged out to access this page"
> >>        redirect_to account_url
> >>        return false
> >>      end
> >>
> >> As these are private methods they are not directly accessible from the
> >> step definitions and I am at a loss as to how to proceed.  I could
> >> augment the application controller with a public user_authenticated
> >> method:
> >>
> >>  def user_authenticated
> >>     return true if current_user
> >>     false
> >>  end
> >>
> >> But it seems wrong to alter the application code for no other purpose
> >> than to ease testing.  Is there another approach that I should be using?
> >> --
> >> Posted via http://www.ruby-forum.com/.
> >> _______________________________________________
> >> rspec-users mailing list
> >> rspec-users at rubyforge.org
> >> http://rubyforge.org/mailman/listinfo/rspec-users
> >
> >
> > _______________________________________________
> > rspec-users mailing list
> > rspec-users at rubyforge.org
> > http://rubyforge.org/mailman/listinfo/rspec-users
> >
>
>
>
> --
> Zach Dennis
> http://www.continuousthinking.com
> http://www.mutuallyhuman.com
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/rspec-users/attachments/20081217/bcad24bd/attachment.html>


More information about the rspec-users mailing list