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