omniauth-linkedin-oauth2 1.0.0 → 1.0.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6d11513de3f678424cce8734f022e66ccbc734287753cb2f0ac36632f8924f49
4
- data.tar.gz: b8bff314c85bc29a8da42eb2e9f31337cf82b1ae79a6004f2757d24e1c2742c8
3
+ metadata.gz: 151e59afd7380045ce96e463e9e1a2c1b859446bd3f4388e73a40755f9f0a07c
4
+ data.tar.gz: 3c43667e50b9ab164dfff8e00259331ec2f201c33385d41043c4f2f25da1e3cf
5
5
  SHA512:
6
- metadata.gz: c8eb5cb6af45018dc4bb6a883582516710033a8ce24d87e13d2b31b72563b04e45676d990be9d864e5f5c3f190f8a0a8b7edf99395f56d931bc21df420212c9e
7
- data.tar.gz: 9a1bb809c54de350c45c0f54acfc9cf14a01a2c0e242fd42b99aecd42170ece335bb6a1447f1c28bcd490eff0dd08d71afcfa34e43872d9064b62c0e5455a0d4
6
+ metadata.gz: da37ff1ca12ada1946a7138b21fac9decf6421fc947563d4a2a0918582472cde222dd4c03edb8ad8426c762088b7f3fef5d08ce35c199497d134c5d3a8d9c4a4
7
+ data.tar.gz: a76483fc87800753f8d39b281e38822ab04535530fb60e3c83aa2110c6f7926e33984b49d1b83871af9306676c2ee2ba509100f21657c9750f4a8dc3e39c3e09
data/README.md CHANGED
@@ -8,13 +8,9 @@ For more details, read the LinkedIn documentation: https://developer.linkedin.co
8
8
 
9
9
  ## Installation
10
10
 
11
- Add this line to your application's Gemfile:
11
+ Add this gem to your application's Gemfile:
12
12
 
13
- gem 'omniauth-linkedin-oauth2'
14
-
15
- And then execute:
16
-
17
- $ bundle
13
+ bundle add omniauth-linkedin-oauth2
18
14
 
19
15
  Or install it yourself as:
20
16
 
@@ -54,7 +50,7 @@ By default, omniauth-linkedin-oauth2 requests the following permissions:
54
50
  You can configure the scope option:
55
51
 
56
52
  ```ruby
57
- provider :linkedin, ENV['LINKEDIN_KEY'], ENV['LINKEDIN_SECRET'], :scope => 'r_literofile'
53
+ provider :linkedin, ENV['LINKEDIN_KEY'], ENV['LINKEDIN_SECRET'], :scope => 'r_liteprofile'
58
54
  ```
59
55
 
60
56
  ## Profile Fields
@@ -42,7 +42,8 @@ module OmniAuth
42
42
  def access_token
43
43
  ::OAuth2::AccessToken.new(client, oauth2_access_token.token, {
44
44
  :expires_in => oauth2_access_token.expires_in,
45
- :expires_at => oauth2_access_token.expires_at
45
+ :expires_at => oauth2_access_token.expires_at,
46
+ :refresh_token => oauth2_access_token.refresh_token
46
47
  })
47
48
  end
48
49
 
@@ -92,9 +93,7 @@ module OmniAuth
92
93
  end
93
94
 
94
95
  def localized_field field_name
95
- return unless localized_field_available? field_name
96
-
97
- raw_info[field_name]['localized'][field_locale(field_name)]
96
+ raw_info.dig(*[field_name, 'localized', field_locale(field_name)])
98
97
  end
99
98
 
100
99
  def field_locale field_name
@@ -102,10 +101,6 @@ module OmniAuth
102
101
  "#{ raw_info[field_name]['preferredLocale']['country'] }"
103
102
  end
104
103
 
105
- def localized_field_available? field_name
106
- raw_info[field_name] && raw_info[field_name]['localized']
107
- end
108
-
109
104
  def picture_url
110
105
  return unless picture_available?
111
106
 
@@ -129,6 +124,12 @@ module OmniAuth
129
124
  def profile_endpoint
130
125
  "/v2/me?projection=(#{ fields.join(',') })"
131
126
  end
127
+
128
+ def token_params
129
+ super.tap do |params|
130
+ params.client_secret = options.client_secret
131
+ end
132
+ end
132
133
  end
133
134
  end
134
135
  end
@@ -1,5 +1,5 @@
1
1
  module OmniAuth
2
2
  module LinkedInOAuth2
3
- VERSION = '1.0.0'
3
+ VERSION = '1.0.1'
4
4
  end
5
5
  end
@@ -85,9 +85,10 @@ describe OmniAuth::Strategies::LinkedIn do
85
85
  let(:expires_in) { 3600 }
86
86
  let(:expires_at) { 946688400 }
87
87
  let(:token) { 'token' }
88
+ let(:refresh_token) { 'refresh_token' }
88
89
  let(:access_token) do
89
90
  instance_double OAuth2::AccessToken, :expires_in => expires_in,
90
- :expires_at => expires_at, :token => token
91
+ :expires_at => expires_at, :token => token, :refresh_token => refresh_token
91
92
  end
92
93
 
93
94
  before :each do
@@ -109,4 +110,23 @@ describe OmniAuth::Strategies::LinkedIn do
109
110
  end
110
111
  end
111
112
  end
113
+
114
+ describe '#localized_field' do
115
+ let(:raw_info) do
116
+ {
117
+ 'foo' => {
118
+ 'preferredLocale' => {
119
+ 'language' => 'bar',
120
+ 'country' => 'BAZ'
121
+ }
122
+ }
123
+ }
124
+ end
125
+
126
+ before :each do
127
+ allow(subject).to receive(:raw_info).and_return raw_info
128
+ end
129
+
130
+ specify { expect(subject.send(:field_locale,'foo')).to eq 'bar_BAZ' }
131
+ end
112
132
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: omniauth-linkedin-oauth2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Décio Ferreira
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-01-09 00:00:00.000000000 Z
11
+ date: 2023-08-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: omniauth-oauth2
@@ -106,7 +106,7 @@ homepage: https://github.com/decioferreira/omniauth-linkedin-oauth2
106
106
  licenses:
107
107
  - MIT
108
108
  metadata: {}
109
- post_install_message:
109
+ post_install_message:
110
110
  rdoc_options: []
111
111
  require_paths:
112
112
  - lib
@@ -121,8 +121,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
121
121
  - !ruby/object:Gem::Version
122
122
  version: '0'
123
123
  requirements: []
124
- rubygems_version: 3.0.1
125
- signing_key:
124
+ rubygems_version: 3.2.22
125
+ signing_key:
126
126
  specification_version: 4
127
127
  summary: A LinkedIn OAuth2 strategy for OmniAuth.
128
128
  test_files: