Skip to content
Extraits de code Groupes Projets
sessions_controller_spec.rb 1,48 ko
Newer Older
  • Learn to ignore specific revisions
  • danielgrippi's avatar
    danielgrippi a validé
    #   Copyright (c) 2010-2011, Diaspora Inc.  This file is
    
    #   licensed under the Affero General Public License version 3 or later.  See
    #   the COPYRIGHT file.
    
    
    describe SessionsController, type: :controller do
    
      include Devise::TestHelpers
    
      let(:mock_access_token) { Object.new }
    
      before do
    
        @request.env["devise.mapping"] = Devise.mappings[:user]
    
        @user = alice
    
        @user.password = "evankorth"
        @user.password_confirmation = "evankorth"
    
        it "redirects to /stream for a non-mobile user" do
    
          post :create, {"user" => {"remember_me" => "0", "username" => @user.username, "password" => "evankorth"}}
    
          expect(response).to be_redirect
          expect(response.location).to match /^#{stream_url}\??$/
    
    danielgrippi's avatar
    danielgrippi a validé
        it "redirects to /stream for a mobile user" do
    
          request.headers["X_MOBILE_DEVICE"] = true
    
          post :create, {"user" => {"remember_me" => "0", "username" => @user.username, "password" => "evankorth"}}
    
          expect(response).to be_redirect
          expect(response.location).to match /^#{stream_url}\??$/
    
      end
    
      describe "#destroy" do
        before do
          sign_in :user, @user
        end
        it "redirects to / for a non-mobile user" do
          delete :destroy
    
          expect(response).to redirect_to new_user_session_path
    
        end
    
        it "redirects to / for a mobile user" do
    
          request.headers["X_MOBILE_DEVICE"] = true
    
          expect(response).to redirect_to root_path