test/cuba.rb in shield-0.1.0 vs test/cuba.rb in shield-1.0.0.rc1

- old
+ new

@@ -1,29 +1,32 @@ require File.expand_path("helper", File.dirname(__FILE__)) require File.expand_path("user", File.dirname(__FILE__)) Cuba.use Rack::Session::Cookie +Cuba.use Shield::Middleware Cuba.plugin Shield::Helpers Cuba.define do on get, "public" do res.write "Public" end on get, "private" do - ensure_authenticated(User) - - res.write "Private" + if authenticated(User) + res.write "Private" + else + res.status = 401 + end end on get, "login" do res.write "Login" end on post, "login", param("login"), param("password") do |u, p| if login(User, u, p, req[:remember_me]) - res.redirect(session[:return_to] || "/") + res.redirect(req[:return] || "/") else res.redirect "/login" end end @@ -48,14 +51,14 @@ end test "successful logging in" do get "/private" - assert_redirected_to "/login" - assert "/private" == session[:return_to] + assert_equal "/login?return=%2Fprivate", redirection_url - post "/login", :login => "quentin", :password => "password" + post "/login", login: "quentin", password: "password", return: "/private" + assert_redirected_to "/private" assert 1001 == session["User"] end @@ -70,10 +73,9 @@ post "/login", :login => "quentin", :password => "password" get "/logout" assert nil == session["User"] - assert nil == session[:return_to] end test "remember functionality" do post "/login", :login => "quentin", :password => "password", :remember_me => "1"