J. Pablo Fernández
2009-Sep-29 06:02 UTC
Is it possible to follow redirects outside of Rails on an integration test?
Hello, Is it possible to follow redirects outside of Rails on an integration test? I''m trying to test my whole log in procedure and part of it includes authenticating with OpenID. I have rots running locally but when I''m suppose do be redirected to the localhost:1123/server (the rots server) I end up being redirected to localhost:3000/server (the rails server with an url that doesn''t exist). It is like if the code that follows the redirection on integration tests is ignoring the URL. Is there any way to enable external redirections? Thanks. -- J. Pablo Fernández <pupeno-GAtDADarczzQT0dZR+AlfA@public.gmane.org> (http://pupeno.com) --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
bill walton
2009-Sep-29 19:43 UTC
Re: Is it possible to follow redirects outside of Rails on an integration test?
Hi Pablo, On Tue, 2009-09-29 at 08:02 +0200, J. Pablo Fernández wrote:> Hello, > > > Is it possible to follow redirects outside of Rails on an integration > test? > > > I''m trying to test my whole log in procedure and part of it includes > authenticating with OpenID. I have rots running locally but when I''m > suppose do be redirected to the localhost:1123/server (the rots > server) I end up being redirected to localhost:3000/server (the rails > server with an url that doesn''t exist). It is like if the code that > follows the redirection on integration tests is ignoring the URL. Is > there any way to enable external redirections? >I haven''t tested this, but are you using the fully qualified url (''http://localhost:1123/server'') in your redirect? Best regards, Bill
J. Pablo Fernández
2009-Sep-30 11:57 UTC
Re: Is it possible to follow redirects outside of Rails on an integration test?
Hello Bill, Thanks for the reply. As far as I know the full URL is being used for the redirect. I remember seeing the url in the debugger and also, the URL is being generated by ruby-openid, so if it wasn''t using the full URL, ruby-openid would be broken for everybody. I can''t check it right now, as soon as I can I''ll do it and post the result. Thanks. On Tue, Sep 29, 2009 at 21:43, bill walton <bwalton.im-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> > Hi Pablo, > > On Tue, 2009-09-29 at 08:02 +0200, J. Pablo Fernández wrote: > > Hello, > > > > > > Is it possible to follow redirects outside of Rails on an integration > > test? > > > > > > I''m trying to test my whole log in procedure and part of it includes > > authenticating with OpenID. I have rots running locally but when I''m > > suppose do be redirected to the localhost:1123/server (the rots > > server) I end up being redirected to localhost:3000/server (the rails > > server with an url that doesn''t exist). It is like if the code that > > follows the redirection on integration tests is ignoring the URL. Is > > there any way to enable external redirections? > > > > I haven''t tested this, but are you using the fully qualified url > (''http://localhost:1123/server'') in your redirect? > > Best regards, > Bill > > > > >-- J. Pablo Fernández <pupeno-GAtDADarczzQT0dZR+AlfA@public.gmane.org> (http://pupeno.com) --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
J. Pablo Fernández
2009-Sep-30 18:28 UTC
Re: Is it possible to follow redirects outside of Rails on an integration test?
Confirmed that it doesn''t work, this is the test: # Replace this with your real tests. test "log in" do # Submit open id identifier to log in. post "/users/start", :openid_identifier => " http://localhost:1123/john.doe?openid.success=true" # We get redirected to the authentication page at the OpenID provider assert redirect? # which is on http://localhost:1123/server. assert @response.redirected_to.start_with? "http://localhost:1123/server " # Go. follow_redirect! # The OpenID server automatically approves any request, it''s a test server # called rots, it should redirect us back to the application assert redirect? # to http://localhost:3000/users/complete assert @response.redirected_to.start_with? " http://localhost:3000/users/complete" end At the second assert redirect? in which the OpenID server should be redirecting me back, I get a failure. If I look at the logs, the OpenID server, running on port 1123 never gets a request, while the Rails server running on 3000 get''s a request to the path the OpenID server was supposed to get the request for: /server/... Thanks. 2009/9/30 J. Pablo Fernández <pupeno-GAtDADarczzQT0dZR+AlfA@public.gmane.org>> Hello Bill, > Thanks for the reply. As far as I know the full URL is being used for the > redirect. I remember seeing the url in the debugger and also, the URL is > being generated by ruby-openid, so if it wasn''t using the full URL, > ruby-openid would be broken for everybody. > > I can''t check it right now, as soon as I can I''ll do it and post the > result. > > Thanks. > > On Tue, Sep 29, 2009 at 21:43, bill walton <bwalton.im-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > >> >> Hi Pablo, >> >> On Tue, 2009-09-29 at 08:02 +0200, J. Pablo Fernández wrote: >> > Hello, >> > >> > >> > Is it possible to follow redirects outside of Rails on an integration >> > test? >> > >> > >> > I''m trying to test my whole log in procedure and part of it includes >> > authenticating with OpenID. I have rots running locally but when I''m >> > suppose do be redirected to the localhost:1123/server (the rots >> > server) I end up being redirected to localhost:3000/server (the rails >> > server with an url that doesn''t exist). It is like if the code that >> > follows the redirection on integration tests is ignoring the URL. Is >> > there any way to enable external redirections? >> > >> >> I haven''t tested this, but are you using the fully qualified url >> (''http://localhost:1123/server'') in your redirect? >> >> Best regards, >> Bill >> >> >> >> >> > > > -- > J. Pablo Fernández <pupeno-GAtDADarczzQT0dZR+AlfA@public.gmane.org> (http://pupeno.com) >-- J. Pablo Fernández <pupeno-GAtDADarczzQT0dZR+AlfA@public.gmane.org> (http://pupeno.com) --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---