omniauth-paypal-oauth2 1.4.13 → 1.4.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/CHANGELOG.md +10 -0
- data/README.md +108 -64
- data/lib/omniauth/paypal_oauth2/version.rb +1 -1
- metadata +28 -21
- data/.gitignore +0 -20
- data/Gemfile +0 -8
- data/Rakefile +0 -6
- data/_config.yml +0 -1
- data/examples/shared_examples.rb +0 -36
- data/omniauth-paypal-oauth2.gemspec +0 -24
- data/spec/omniauth/strategies/paypal_oauth2_spec.rb +0 -49
- data/spec/spec_helper.rb +0 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 12c2999b4af5ff0ac88422ec09126eccf6c8815f7524cb891f10ea9915d11c9e
|
4
|
+
data.tar.gz: 2da82c21ffa65e20c8b18edb9decf7c69728f1ff9c83c8aeed416bf97bb74f8b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 99700535c14d5efda09a5d1843464b145115d5392d10ec2d4df65ca473cf0006cb6421eda57e1eee2db3e8fd735176be396360eb73ae4f4dceda3bee48fd58ef
|
7
|
+
data.tar.gz: 9438dc31f7abbb189a9586fd5251813dd399b1ff703ec8959da34a60fc9b6eea7f390f32d212fd6132820d463abc889b9a0086ba438a2286102d082b9e1da411
|
data/CHANGELOG.md
ADDED
data/README.md
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
# OmniAuth PayPal OAuth2 Strategy
|
2
2
|
|
3
|
+
[](https://badge.fury.io/rb/omniauth-paypal-oauth2) <img src="https://travis-ci.org/jonhue/omniauth-paypal-oauth2.svg?branch=master" />
|
4
|
+
|
3
5
|
Strategy to authenticate with PayPal via OmniAuth.
|
4
6
|
|
5
7
|
Get your API key at: https://developer.paypal.com/developer/applications/ in the section **RESTApps**. Note the Client ID and the Client Secret.
|
@@ -9,6 +11,24 @@ Use the [config Gem](https://rubygems.org/gems/config) to organize your keys and
|
|
9
11
|
|
10
12
|
For more details, read the PayPal docs: https://developer.paypal.com/docs/integration/direct/identity/
|
11
13
|
|
14
|
+
---
|
15
|
+
|
16
|
+
## Table of Contents
|
17
|
+
|
18
|
+
* [Installation](#installation)
|
19
|
+
* [Usage](#usage)
|
20
|
+
* [PayPal API Setup](#paypal-api-setup)
|
21
|
+
* [Rails middleware](#rails-middleware)
|
22
|
+
* [Devise](#Devise)
|
23
|
+
* [Configuration](#configuration)
|
24
|
+
* [Auth hash](#auth-hash)
|
25
|
+
* [To Do](#to-do)
|
26
|
+
* [Contributing](#contributing)
|
27
|
+
* [Contributors](#contributors)
|
28
|
+
* [Semantic versioning](#semantic-versioning)
|
29
|
+
* [License](#license)
|
30
|
+
|
31
|
+
---
|
12
32
|
|
13
33
|
## Installation
|
14
34
|
|
@@ -26,8 +46,11 @@ Or install it yourself as:
|
|
26
46
|
|
27
47
|
$ gem install omniauth-paypal-oauth2
|
28
48
|
|
49
|
+
---
|
29
50
|
|
30
|
-
##
|
51
|
+
## Usage
|
52
|
+
|
53
|
+
### PayPal API Setup
|
31
54
|
|
32
55
|
* Go to 'https://developer.paypal.com/developer/applications/'
|
33
56
|
* Select your project.
|
@@ -37,8 +60,7 @@ Or install it yourself as:
|
|
37
60
|
* Go to Credentials, then select the "OAuth consent screen" tab on top, and provide an 'EMAIL ADDRESS' and a 'PRODUCT NAME'
|
38
61
|
* Wait 10 minutes for changes to take effect.
|
39
62
|
|
40
|
-
|
41
|
-
## Usage
|
63
|
+
### Rails middleware
|
42
64
|
|
43
65
|
Here's an example for adding the middleware to a Rails app in `config/initializers/omniauth.rb`:
|
44
66
|
|
@@ -52,8 +74,76 @@ You can now access the OmniAuth PayPal OAuth2 URL: `/auth/paypal_oauth2`
|
|
52
74
|
|
53
75
|
**Note**: While developing your application, if you change the scope in the initializer you will need to restart your app server. Remember that either the 'email' or 'profile' scope is required!
|
54
76
|
|
77
|
+
### Devise
|
78
|
+
|
79
|
+
First define your application id and secret in `config/initializers/devise.rb`. Do not use the snippet mentioned in the [Usage](https://github.com/jonhue/omniauth-paypal-oauth2#usage) section.
|
80
|
+
|
81
|
+
```ruby
|
82
|
+
require "omniauth-paypal-oauth2"
|
83
|
+
config.omniauth :paypal_oauth2, "PAYPAL_CLIENT_ID", "PAYPAL_CLIENT_SECRET"
|
84
|
+
```
|
85
|
+
|
86
|
+
Then add the following to 'config/routes.rb' so the callback routes are defined.
|
87
|
+
|
88
|
+
```ruby
|
89
|
+
devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks" }
|
90
|
+
```
|
91
|
+
|
92
|
+
Make sure your model is omniauthable. Generally this is "/app/models/user.rb"
|
93
|
+
|
94
|
+
```ruby
|
95
|
+
devise :omniauthable, :omniauth_providers => [:paypal_oauth2]
|
96
|
+
```
|
97
|
+
|
98
|
+
Then make sure your callbacks controller is setup.
|
99
|
+
|
100
|
+
```ruby
|
101
|
+
class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
|
102
|
+
def paypal_oauth2
|
103
|
+
# You need to implement the method below in your model (e.g. app/models/user.rb)
|
104
|
+
@user = User.from_omniauth(request.env["omniauth.auth"])
|
105
|
+
|
106
|
+
if @user.persisted?
|
107
|
+
flash[:notice] = I18n.t "devise.omniauth_callbacks.success", :kind => "PayPal"
|
108
|
+
sign_in_and_redirect @user, :event => :authentication
|
109
|
+
else
|
110
|
+
session["devise.paypal_data"] = request.env["omniauth.auth"]
|
111
|
+
redirect_to new_user_registration_url
|
112
|
+
end
|
113
|
+
end
|
114
|
+
end
|
115
|
+
```
|
116
|
+
|
117
|
+
and bind to or create the user
|
118
|
+
|
119
|
+
```ruby
|
120
|
+
def self.from_omniauth(access_token)
|
121
|
+
data = access_token.info
|
122
|
+
user = User.where(:email => data["email"]).first
|
123
|
+
|
124
|
+
# Uncomment the section below if you want users to be created if they don't exist
|
125
|
+
# unless user
|
126
|
+
# user = User.create(name: data["name"],
|
127
|
+
# email: data["email"],
|
128
|
+
# password: Devise.friendly_token[0,20]
|
129
|
+
# )
|
130
|
+
# end
|
131
|
+
user
|
132
|
+
end
|
133
|
+
```
|
55
134
|
|
56
|
-
|
135
|
+
For your views you can login using:
|
136
|
+
|
137
|
+
```erb
|
138
|
+
<%= link_to "Sign in with PayPal", user_paypal_oauth2_omniauth_authorize_path %>
|
139
|
+
|
140
|
+
<%# Devise prior 4.1.0: %>
|
141
|
+
<%= link_to "Sign in with PayPal", user_omniauth_authorize_path(:paypal_oauth2) %>
|
142
|
+
```
|
143
|
+
|
144
|
+
An overview is available at https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview
|
145
|
+
|
146
|
+
### Configuration
|
57
147
|
|
58
148
|
If you click from your [Applications Dashboard](https://developer.paypal.com/developer/applications/) in your Application on "Advanced Options" in the "APP SETTINGS" section and "Log In with PayPal" subsection, you can configure several options:
|
59
149
|
|
@@ -81,8 +171,7 @@ If you click from your [Applications Dashboard](https://developer.paypal.com/dev
|
|
81
171
|
* `Locale`: Permits a locale string which indicates where the PayPal customer is.
|
82
172
|
* `Language`: Permits the language the customer uses on PayPal.
|
83
173
|
|
84
|
-
|
85
|
-
## Auth Hash
|
174
|
+
### Auth Hash
|
86
175
|
|
87
176
|
Here's an example of an authentication hash available in the callback by accessing `request.env["omniauth.auth"]`:
|
88
177
|
|
@@ -129,76 +218,31 @@ Here's an example of an authentication hash available in the callback by accessi
|
|
129
218
|
|
130
219
|
For more details see the PayPal [List Of Attributes](https://developer.paypal.com/webapps/developer/docs/integration/direct/log-in-with-paypal/detailed/#attributes).
|
131
220
|
|
221
|
+
---
|
132
222
|
|
133
|
-
|
223
|
+
## To Do
|
134
224
|
|
135
|
-
|
225
|
+
[Here](https://github.com/jonhue/omniauth-paypal-oauth2/projects/1) is the full list of current projects.
|
136
226
|
|
137
|
-
|
138
|
-
require "omniauth-paypal-oauth2"
|
139
|
-
config.omniauth :paypal_oauth2, "PAYPAL_CLIENT_ID", "PAYPAL_CLIENT_SECRET"
|
140
|
-
```
|
227
|
+
To propose your ideas, initiate the discussion by adding a [new issue](https://github.com/jonhue/omniauth-paypal-oauth2/issues/new).
|
141
228
|
|
142
|
-
|
229
|
+
---
|
143
230
|
|
144
|
-
|
145
|
-
devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks" }
|
146
|
-
```
|
231
|
+
## Contributing
|
147
232
|
|
148
|
-
|
233
|
+
We hope that you will consider contributing to omniauth-paypal-oauth2. Please read this short overview for some information about how to get started:
|
149
234
|
|
150
|
-
|
151
|
-
devise :omniauthable, :omniauth_providers => [:paypal_oauth2]
|
152
|
-
```
|
235
|
+
[Learn more about contributing to this repository](https://github.com/jonhue/omniauth-paypal-oauth2/blob/master/CONTRIBUTING.md), [Code of Conduct](https://github.com/jonhue/omniauth-paypal-oauth2/blob/master/CODE_OF_CONDUCT.md)
|
153
236
|
|
154
|
-
|
237
|
+
### Contributors
|
155
238
|
|
156
|
-
|
157
|
-
class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
|
158
|
-
def paypal_oauth2
|
159
|
-
# You need to implement the method below in your model (e.g. app/models/user.rb)
|
160
|
-
@user = User.from_omniauth(request.env["omniauth.auth"])
|
239
|
+
Give the people some :heart: who are working on this project. See them all at:
|
161
240
|
|
162
|
-
|
163
|
-
flash[:notice] = I18n.t "devise.omniauth_callbacks.success", :kind => "PayPal"
|
164
|
-
sign_in_and_redirect @user, :event => :authentication
|
165
|
-
else
|
166
|
-
session["devise.paypal_data"] = request.env["omniauth.auth"]
|
167
|
-
redirect_to new_user_registration_url
|
168
|
-
end
|
169
|
-
end
|
170
|
-
end
|
171
|
-
```
|
241
|
+
https://github.com/jonhue/omniauth-paypal-oauth2/graphs/contributors
|
172
242
|
|
173
|
-
|
174
|
-
|
175
|
-
```ruby
|
176
|
-
def self.from_omniauth(access_token)
|
177
|
-
data = access_token.info
|
178
|
-
user = User.where(:email => data["email"]).first
|
179
|
-
|
180
|
-
# Uncomment the section below if you want users to be created if they don't exist
|
181
|
-
# unless user
|
182
|
-
# user = User.create(name: data["name"],
|
183
|
-
# email: data["email"],
|
184
|
-
# password: Devise.friendly_token[0,20]
|
185
|
-
# )
|
186
|
-
# end
|
187
|
-
user
|
188
|
-
end
|
189
|
-
```
|
190
|
-
|
191
|
-
For your views you can login using:
|
192
|
-
|
193
|
-
```erb
|
194
|
-
<%= link_to "Sign in with PayPal", user_paypal_oauth2_omniauth_authorize_path %>
|
195
|
-
|
196
|
-
<%# Devise prior 4.1.0: %>
|
197
|
-
<%= link_to "Sign in with PayPal", user_omniauth_authorize_path(:paypal_oauth2) %>
|
198
|
-
```
|
199
|
-
|
200
|
-
An overview is available at https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview
|
243
|
+
### Semantic Versioning
|
201
244
|
|
245
|
+
omniauth-paypal-oauth2 follows Semantic Versioning 2.0 as defined at http://semver.org.
|
202
246
|
|
203
247
|
## License
|
204
248
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: omniauth-paypal-oauth2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.14
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonas Hübotter
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-01-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: omniauth-oauth2
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '1.
|
19
|
+
version: '1.5'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '1.
|
26
|
+
version: '1.5'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: json
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -38,55 +38,62 @@ dependencies:
|
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '1.7'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rake
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '12.3'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '12.3'
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: rspec
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
44
58
|
requirements:
|
45
59
|
- - "~>"
|
46
60
|
- !ruby/object:Gem::Version
|
47
|
-
version: '3'
|
61
|
+
version: '3.7'
|
48
62
|
type: :development
|
49
63
|
prerelease: false
|
50
64
|
version_requirements: !ruby/object:Gem::Requirement
|
51
65
|
requirements:
|
52
66
|
- - "~>"
|
53
67
|
- !ruby/object:Gem::Version
|
54
|
-
version: '3'
|
68
|
+
version: '3.7'
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
70
|
+
name: rubocop
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
58
72
|
requirements:
|
59
|
-
- - "
|
73
|
+
- - "~>"
|
60
74
|
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
75
|
+
version: '0.52'
|
62
76
|
type: :development
|
63
77
|
prerelease: false
|
64
78
|
version_requirements: !ruby/object:Gem::Requirement
|
65
79
|
requirements:
|
66
|
-
- - "
|
80
|
+
- - "~>"
|
67
81
|
- !ruby/object:Gem::Version
|
68
|
-
version: '0'
|
82
|
+
version: '0.52'
|
69
83
|
description: A PayPal OAuth2 strategy for OmniAuth
|
70
84
|
email:
|
71
|
-
- jonas@
|
85
|
+
- jonas.huebotter@gmail.com
|
72
86
|
executables: []
|
73
87
|
extensions: []
|
74
88
|
extra_rdoc_files: []
|
75
89
|
files:
|
76
|
-
-
|
77
|
-
- Gemfile
|
90
|
+
- CHANGELOG.md
|
78
91
|
- LICENSE
|
79
92
|
- README.md
|
80
|
-
- Rakefile
|
81
|
-
- _config.yml
|
82
|
-
- examples/shared_examples.rb
|
83
93
|
- lib/omniauth-paypal-oauth2.rb
|
84
94
|
- lib/omniauth/paypal_oauth2.rb
|
85
95
|
- lib/omniauth/paypal_oauth2/version.rb
|
86
96
|
- lib/omniauth/strategies/paypal_oauth2.rb
|
87
|
-
- omniauth-paypal-oauth2.gemspec
|
88
|
-
- spec/omniauth/strategies/paypal_oauth2_spec.rb
|
89
|
-
- spec/spec_helper.rb
|
90
97
|
homepage: https://github.com/jonhue/omniauth-paypal-oauth2
|
91
98
|
licenses:
|
92
99
|
- MIT
|
@@ -107,7 +114,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
107
114
|
version: '0'
|
108
115
|
requirements: []
|
109
116
|
rubyforge_project:
|
110
|
-
rubygems_version: 2.
|
117
|
+
rubygems_version: 2.7.4
|
111
118
|
signing_key:
|
112
119
|
specification_version: 4
|
113
120
|
summary: A PayPal OAuth2 strategy for OmniAuth
|
data/.gitignore
DELETED
data/Gemfile
DELETED
data/Rakefile
DELETED
data/_config.yml
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
theme: jekyll-theme-minimal
|
data/examples/shared_examples.rb
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
shared_examples 'an oauth2 strategy' do
|
2
|
-
describe '#client' do
|
3
|
-
it 'should be initialized with symbolized client_options' do
|
4
|
-
@options = { client_options: { 'authorize_url' => 'https://example.com' } }
|
5
|
-
expect(subject.client.options[:authorize_url]).to eq('https://example.com')
|
6
|
-
end
|
7
|
-
end
|
8
|
-
|
9
|
-
describe '#authorize_params' do
|
10
|
-
it 'should include any authorize params passed in the :authorize_params option' do
|
11
|
-
@options = { authorize_params: { foo: 'bar', baz: 'zip' } }
|
12
|
-
expect(subject.authorize_params['foo']).to eq('bar')
|
13
|
-
expect(subject.authorize_params['baz']).to eq('zip')
|
14
|
-
end
|
15
|
-
|
16
|
-
it 'should include top-level options that are marked as :authorize_options' do
|
17
|
-
@options = { authorize_options: [:scope, :foo], scope: 'bar', foo: 'baz' }
|
18
|
-
expect(subject.authorize_params['scope']).to eq('bar')
|
19
|
-
expect(subject.authorize_params['foo']).to eq('baz')
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
describe '#token_params' do
|
24
|
-
it 'should include any token params passed in the :token_params option' do
|
25
|
-
@options = { token_params: { foo: 'bar', baz: 'zip' } }
|
26
|
-
expect(subject.token_params['foo']).to eq('bar')
|
27
|
-
expect(subject.token_params['baz']).to eq('zip')
|
28
|
-
end
|
29
|
-
|
30
|
-
it 'should include top-level options that are marked as :token_options' do
|
31
|
-
@options = { token_options: [:scope, :foo], scope: 'bar', foo: 'baz' }
|
32
|
-
expect(subject.token_params['scope']).to eq('bar')
|
33
|
-
expect(subject.token_params['foo']).to eq('baz')
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
require File.expand_path(File.join('..', 'lib', 'omniauth', 'paypal_oauth2', 'version'), __FILE__)
|
3
|
-
|
4
|
-
Gem::Specification.new do |gem|
|
5
|
-
gem.name = 'omniauth-paypal-oauth2'
|
6
|
-
gem.version = OmniAuth::PaypalOauth2::VERSION
|
7
|
-
gem.license = 'MIT'
|
8
|
-
gem.summary = 'A PayPal OAuth2 strategy for OmniAuth'
|
9
|
-
gem.description = 'A PayPal OAuth2 strategy for OmniAuth'
|
10
|
-
gem.authors = ['Jonas Hübotter']
|
11
|
-
gem.email = ['jonas@slooob.com']
|
12
|
-
gem.homepage = 'https://github.com/jonhue/omniauth-paypal-oauth2'
|
13
|
-
|
14
|
-
gem.files = `git ls-files`.split("\n")
|
15
|
-
gem.require_paths = ['lib']
|
16
|
-
|
17
|
-
gem.required_ruby_version = '>= 2.0'
|
18
|
-
|
19
|
-
gem.add_runtime_dependency 'omniauth-oauth2', '~> 1.4'
|
20
|
-
gem.add_runtime_dependency 'json', '~> 1.7'
|
21
|
-
|
22
|
-
gem.add_development_dependency 'rspec', '~> 3'
|
23
|
-
gem.add_development_dependency 'rake'
|
24
|
-
end
|
@@ -1,49 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
require 'omniauth-paypal-oauth2'
|
3
|
-
|
4
|
-
describe OmniAuth::Strategies::PaypalOauth2 do
|
5
|
-
subject do
|
6
|
-
OmniAuth::Strategies::PaypalOauth2.new(nil, @options || {})
|
7
|
-
end
|
8
|
-
|
9
|
-
it_should_behave_like 'an oauth2 strategy'
|
10
|
-
|
11
|
-
describe '#client' do
|
12
|
-
it 'has correct PayPal site' do
|
13
|
-
expect(subject.client.site).to eq('https://api.paypal.com')
|
14
|
-
end
|
15
|
-
|
16
|
-
it 'has correct PayPal sandbox site' do
|
17
|
-
@options = { sandbox: true }
|
18
|
-
subject.setup_phase
|
19
|
-
expect(subject.client.site).to eq('https://api.sandbox.paypal.com')
|
20
|
-
end
|
21
|
-
|
22
|
-
it 'has correct authorize url' do
|
23
|
-
expect(subject.client.options[:authorize_url]).to eq('https://www.paypal.com/webapps/auth/protocol/openidconnect/v1/authorize')
|
24
|
-
end
|
25
|
-
|
26
|
-
it 'has correct sandbox authorize url' do
|
27
|
-
@options = { sandbox: true }
|
28
|
-
subject.setup_phase
|
29
|
-
expect(subject.client.options[:authorize_url]).to eq('https://www.sandbox.paypal.com/webapps/auth/protocol/openidconnect/v1/authorize')
|
30
|
-
end
|
31
|
-
|
32
|
-
it 'has correct token url' do
|
33
|
-
expect(subject.client.options[:token_url]).to eq('/v1/identity/openidconnect/tokenservice')
|
34
|
-
end
|
35
|
-
|
36
|
-
it 'runs the setup block if passed one' do
|
37
|
-
counter = ''
|
38
|
-
@options = { setup: proc { counter = 'ok' } }
|
39
|
-
subject.setup_phase
|
40
|
-
expect(counter).to eq('ok')
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
describe '#callback_path' do
|
45
|
-
it 'has the correct callback path' do
|
46
|
-
expect(subject.callback_path).to eq('/auth/paypal_oauth2/callback')
|
47
|
-
end
|
48
|
-
end
|
49
|
-
end
|