omniauth-litmus 0.2.0 → 0.3.0
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/.github/workflows/ci.yml +20 -0
- data/.ruby-version +1 -0
- data/lib/omniauth/litmus/version.rb +1 -1
- data/lib/omniauth/strategies/litmus.rb +4 -0
- data/omniauth-litmus.gemspec +4 -8
- data/spec/omniauth/strategies/litmus_spec.rb +58 -0
- metadata +21 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 1e6f0010f456f60e009384b84a59f50a005bede54464cd8f3ad7b4511e2edb15
|
4
|
+
data.tar.gz: e3b3fbc2422d0ea26a8c103b912d16365b6cbf5a9e7c41ebe65eb77ef64836e0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 18035201fb5fae71a219054efe8943f22e48be061272a0cc17e5b76a22442f6b325d3c9091f4de5f26c7deaa32f90095e981cf662bc8ab549928a4108800843a
|
7
|
+
data.tar.gz: 23dc65bac4d5b004c5c93c0d282e0554df76e5e2de04dbd7cb778496fedac4b23e5813598ab8bf5574c6b30c251dbe16f44abdb7cfe01ce40a37131056960ed0
|
@@ -0,0 +1,20 @@
|
|
1
|
+
name: CI
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches: [ master ]
|
6
|
+
pull_request:
|
7
|
+
branches: [ master ]
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
specs:
|
11
|
+
|
12
|
+
runs-on: ubuntu-latest
|
13
|
+
|
14
|
+
steps:
|
15
|
+
- uses: actions/checkout@v2
|
16
|
+
- uses: ruby/setup-ruby@v1
|
17
|
+
with:
|
18
|
+
bundler-cache: true # this includes bundle install
|
19
|
+
- name: Run tests
|
20
|
+
run: bundle exec rake
|
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
2.7.4
|
data/omniauth-litmus.gemspec
CHANGED
@@ -20,13 +20,9 @@ Gem::Specification.new do |spec|
|
|
20
20
|
spec.name = "omniauth-litmus"
|
21
21
|
spec.require_paths = ["lib"]
|
22
22
|
|
23
|
-
|
24
|
-
# Before rolling on to >= 1.4.x
|
25
|
-
# Essentially Doorkeeper and omniauth don't play well together with OAuth
|
26
|
-
# state param
|
27
|
-
spec.add_dependency 'omniauth-oauth2', '>= 1.1.1', '< 1.4.0'
|
23
|
+
spec.add_dependency 'omniauth-oauth2', '>= 1.1.1', '< 2.0'
|
28
24
|
|
29
|
-
spec.add_development_dependency "bundler"
|
30
|
-
spec.add_development_dependency "rake"
|
31
|
-
spec.add_development_dependency "rspec"
|
25
|
+
spec.add_development_dependency "bundler"
|
26
|
+
spec.add_development_dependency "rake"
|
27
|
+
spec.add_development_dependency "rspec"
|
32
28
|
end
|
@@ -0,0 +1,58 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe OmniAuth::Strategies::Litmus do
|
4
|
+
let(:access_token) { instance_double('AccessToken', :options => {}) }
|
5
|
+
|
6
|
+
subject do
|
7
|
+
OmniAuth::Strategies::Litmus.new({})
|
8
|
+
end
|
9
|
+
|
10
|
+
before(:each) do
|
11
|
+
allow(subject).to receive(:access_token).and_return(access_token)
|
12
|
+
end
|
13
|
+
|
14
|
+
context 'client options' do
|
15
|
+
it 'should have correct site' do
|
16
|
+
expect(subject.options.client_options.site).to eq('https://litmus.com')
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
describe '#raw_info' do
|
21
|
+
let(:user_hash) { double('User')}
|
22
|
+
let(:parsed_response) { instance_double('ParsedResponse', :[] => user_hash) }
|
23
|
+
let(:response) { instance_double('Response', parsed: parsed_response) }
|
24
|
+
|
25
|
+
it 'should use litmus personal API endpoint' do
|
26
|
+
expect(access_token).to receive(:get).with('https://api.litmus.com/v2/users/current').and_return(response)
|
27
|
+
expect(subject.raw_info).to eq(user_hash)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
describe '#info' do
|
32
|
+
before do
|
33
|
+
allow(subject).to receive(:raw_info).and_return({
|
34
|
+
"full_name" => "Mary Poppins",
|
35
|
+
"first_name" => "Mary",
|
36
|
+
"last_name" => "Poppins"
|
37
|
+
})
|
38
|
+
end
|
39
|
+
it 'exposes name' do
|
40
|
+
expect(subject.info['name']).to eq('Mary Poppins')
|
41
|
+
end
|
42
|
+
it 'exposes first_name' do
|
43
|
+
expect(subject.info['first_name']).to eq('Mary')
|
44
|
+
end
|
45
|
+
it 'exposes last_name' do
|
46
|
+
expect(subject.info['last_name']).to eq('Poppins')
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
describe '#callback_url' do
|
51
|
+
it 'is a combination of host and callback path (excludes query params)' do
|
52
|
+
allow(subject).to receive(:full_host).and_return('https://example.com')
|
53
|
+
allow(subject).to receive(:callback_path).and_return('/auth/litmus/callback')
|
54
|
+
allow(subject).to receive(:query_string).and_return('?foo=bar')
|
55
|
+
expect(subject.callback_url).to eq('https://example.com/auth/litmus/callback')
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: omniauth-litmus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rahim Packir Saibo
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-11-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: omniauth-oauth2
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
version: 1.1.1
|
20
20
|
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version:
|
22
|
+
version: '2.0'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -29,49 +29,49 @@ dependencies:
|
|
29
29
|
version: 1.1.1
|
30
30
|
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version:
|
32
|
+
version: '2.0'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: bundler
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
|
-
- - "
|
37
|
+
- - ">="
|
38
38
|
- !ruby/object:Gem::Version
|
39
|
-
version: '
|
39
|
+
version: '0'
|
40
40
|
type: :development
|
41
41
|
prerelease: false
|
42
42
|
version_requirements: !ruby/object:Gem::Requirement
|
43
43
|
requirements:
|
44
|
-
- - "
|
44
|
+
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: '
|
46
|
+
version: '0'
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rake
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
50
50
|
requirements:
|
51
|
-
- - "
|
51
|
+
- - ">="
|
52
52
|
- !ruby/object:Gem::Version
|
53
|
-
version: '
|
53
|
+
version: '0'
|
54
54
|
type: :development
|
55
55
|
prerelease: false
|
56
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
57
|
requirements:
|
58
|
-
- - "
|
58
|
+
- - ">="
|
59
59
|
- !ruby/object:Gem::Version
|
60
|
-
version: '
|
60
|
+
version: '0'
|
61
61
|
- !ruby/object:Gem::Dependency
|
62
62
|
name: rspec
|
63
63
|
requirement: !ruby/object:Gem::Requirement
|
64
64
|
requirements:
|
65
|
-
- - "
|
65
|
+
- - ">="
|
66
66
|
- !ruby/object:Gem::Version
|
67
|
-
version: '
|
67
|
+
version: '0'
|
68
68
|
type: :development
|
69
69
|
prerelease: false
|
70
70
|
version_requirements: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
|
-
- - "
|
72
|
+
- - ">="
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version: '
|
74
|
+
version: '0'
|
75
75
|
description: Official OmniAuth strategy for Litmus
|
76
76
|
email:
|
77
77
|
- rahim@litmus.com
|
@@ -81,8 +81,10 @@ executables:
|
|
81
81
|
extensions: []
|
82
82
|
extra_rdoc_files: []
|
83
83
|
files:
|
84
|
+
- ".github/workflows/ci.yml"
|
84
85
|
- ".gitignore"
|
85
86
|
- ".rspec"
|
87
|
+
- ".ruby-version"
|
86
88
|
- ".travis.yml"
|
87
89
|
- Gemfile
|
88
90
|
- LICENSE.txt
|
@@ -95,6 +97,7 @@ files:
|
|
95
97
|
- lib/omniauth/strategies/litmus.rb
|
96
98
|
- omniauth-litmus.gemspec
|
97
99
|
- spec/omniauth/litmus_spec.rb
|
100
|
+
- spec/omniauth/strategies/litmus_spec.rb
|
98
101
|
- spec/spec_helper.rb
|
99
102
|
homepage: https://github.com/litmus/omniauth-litmus
|
100
103
|
licenses:
|
@@ -115,11 +118,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
115
118
|
- !ruby/object:Gem::Version
|
116
119
|
version: '0'
|
117
120
|
requirements: []
|
118
|
-
|
119
|
-
rubygems_version: 2.5.1
|
121
|
+
rubygems_version: 3.1.6
|
120
122
|
signing_key:
|
121
123
|
specification_version: 4
|
122
124
|
summary: Official OmniAuth strategy for Litmus
|
123
125
|
test_files:
|
124
126
|
- spec/omniauth/litmus_spec.rb
|
127
|
+
- spec/omniauth/strategies/litmus_spec.rb
|
125
128
|
- spec/spec_helper.rb
|