master
1require "rails_helper"
2
3module Admin
4 describe SessionsController do
5 context "logged in as admin" do
6 let(:admin) { create(:admin) }
7
8 before :each do
9 http_login(admin)
10 end
11
12 describe "#index" do
13 let(:active_session) { create(:user_session) }
14
15 it "loads all the active sessions" do
16 get :index
17 expect(assigns(:user_sessions)).to include(active_session)
18 end
19 end
20
21 describe "#destroy" do
22 let(:user_session) { create(:active_session) }
23
24 before :each do
25 allow(UserSession).to receive(:find).with(user_session.id).and_return(user_session)
26 allow(user_session).to receive(:revoke!).and_return(true)
27 delete :destroy, params: { id: user_session.id }
28 end
29
30 it "revokes the specified session" do
31 expect(user_session).to have_received(:revoke!)
32 end
33
34 it "redirects to the index page" do
35 expect(response).to redirect_to(admin_sessions_path)
36 end
37 end
38 end
39 end
40end