about summary refs log tree commit diff
path: root/spec/controllers/oauth
diff options
context:
space:
mode:
Diffstat (limited to 'spec/controllers/oauth')
-rw-r--r--spec/controllers/oauth/authorized_applications_controller_spec.rb35
1 files changed, 28 insertions, 7 deletions
diff --git a/spec/controllers/oauth/authorized_applications_controller_spec.rb b/spec/controllers/oauth/authorized_applications_controller_spec.rb
index f5d64bd90..2a2b92283 100644
--- a/spec/controllers/oauth/authorized_applications_controller_spec.rb
+++ b/spec/controllers/oauth/authorized_applications_controller_spec.rb
@@ -5,17 +5,38 @@ require 'rails_helper'
 describe Oauth::AuthorizedApplicationsController do
   render_views
 
-  before do
-    sign_in Fabricate(:user), scope: :user
-  end
-
   describe 'GET #index' do
-    before do
+    subject do
       get :index
     end
 
-    it 'returns http success' do
-      expect(response).to have_http_status(:success)
+    shared_examples 'stores location for user' do
+      it 'stores location for user' do
+        subject
+        expect(controller.stored_location_for(:user)).to eq "/oauth/authorized_applications"
+      end
+    end
+
+    context 'when signed in' do
+      before do
+        sign_in Fabricate(:user), scope: :user
+      end
+
+      it 'returns http success' do
+        subject
+        expect(response).to have_http_status(:success)
+      end
+
+      include_examples 'stores location for user'
+    end
+
+    context 'when not signed in' do
+      it 'redirects' do
+        subject
+        expect(response).to redirect_to '/auth/sign_in'
+      end
+
+      include_examples 'stores location for user'
     end
   end
 end