Commit c582f67

mo <mo.khan@gmail.com>
2018-09-09 23:29:27
make authorizatoin optional.
1 parent c5e5d9a
app/controllers/oauths_controller.rb
@@ -25,8 +25,8 @@ class OauthsController < ApplicationController
       @access_token, @refresh_token = authorization.exchange
     elsif token_params[:grant_type] == 'refresh_token'
       refresh_token = token_params[:refresh_token]
-      claims = Token.claims_for(refresh_token, token_type: :refresh)
-      @access_token, @refresh_token = Token.find_by!(uuid: claims[:jti]).exchange
+      jti = Token.claims_for(refresh_token, token_type: :refresh)[:jti]
+      @access_token, @refresh_token = Token.find_by!(uuid: jti).exchange
     end
     render formats: :json
   rescue StandardError => error
spec/requests/scim/v2/bulk_spec.rb
@@ -2,7 +2,7 @@ require 'rails_helper'
 
 RSpec.describe "/api/scim/v2/Bulk" do
   let(:user) { create(:user) }
-  let(:token) { create(:access_token, subject: user, authorization: create(:authorization, user: user)).to_jwt }
+  let(:token) { create(:access_token, subject: user).to_jwt }
   let(:headers) do
     {
       'Authorization' => "Bearer #{access_token}",
spec/requests/scim/v2/groups_spec.rb
@@ -3,7 +3,7 @@ require 'rails_helper'
 describe "/scim/v2/groups" do
   context "when authenticated" do
     let(:user) { create(:user) }
-    let(:token) { create(:access_token, subject: user, authorization: create(:authorization, user: user)) }
+    let(:token) { create(:access_token, subject: user) }
     let(:headers) do
       {
         'Authorization' => "Bearer #{token.to_jwt}",
spec/requests/scim/v2/resource_types_spec.rb
@@ -2,7 +2,7 @@ require 'rails_helper'
 
 RSpec.describe "/scim/v2/ResourceTypes" do
   let(:user) { create(:user) }
-  let(:token) { create(:access_token, subject: user, authorization: create(:authorization, user: user)).to_jwt }
+  let(:token) { create(:access_token, subject: user).to_jwt }
   let(:headers) do
     {
       'Accept' => 'application/scim+json',
spec/requests/scim/v2/schemas_spec.rb
@@ -2,7 +2,7 @@ require 'rails_helper'
 
 RSpec.describe "/scim/v2/Schemas" do
   let(:user) { create(:user) }
-  let(:token) { create(:access_token, subject: user, authorization: create(:authorization, user: user)).to_jwt }
+  let(:token) { create(:access_token, subject: user).to_jwt }
   let(:headers) do
     {
       'Accept' => 'application/scim+json',
spec/requests/scim/v2/search_spec.rb
@@ -2,7 +2,7 @@ require 'rails_helper'
 
 describe '/scim/v1/.search' do
   let(:user) { create(:user) }
-  let(:token) { create(:access_token, subject: user, authorization: create(:authorization, user: user)).to_jwt }
+  let(:token) { create(:access_token, subject: user).to_jwt }
   let(:headers) do
     {
       'Authorization' => "Bearer #{token}",
spec/requests/scim/v2/service_provider_config_spec.rb
@@ -2,7 +2,7 @@ require 'rails_helper'
 
 describe "/ServiceProviderConfig" do
   let(:user) { create(:user) }
-  let(:token) { create(:access_token, subject: user, authorization: create(:authorization, user: user)).to_jwt }
+  let(:token) { create(:access_token, subject: user).to_jwt }
   let(:headers) do
     {
       'Authorization' => "Bearer #{token}",
spec/requests/scim/v2/users_spec.rb
@@ -2,7 +2,7 @@ require 'rails_helper'
 
 describe '/scim/v2/users' do
   let(:user) { create(:user) }
-  let(:token) { create(:access_token, subject: user, authorization: create(:authorization, user: user)).to_jwt }
+  let(:token) { create(:access_token, subject: user).to_jwt }
   let(:headers) do
     {
       'Authorization' => "Bearer #{token}",
spec/factories.rb
@@ -1,7 +1,7 @@
 FactoryBot.define do
   factory :token do
     uuid { SecureRandom.uuid }
-    association :authorization
+    authorization { nil }
     association :audience, factory: :client
     association :subject, factory: :user