omniauth-idnet 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ MWMxNDQ0MTFjZTA2ODU1NjU5YmRmZjJiMTBiMGZkZDEyOTk4Yzc4MA==
5
+ data.tar.gz: !binary |-
6
+ ODVjNWU3MTFkZjExYzdlODMyYzVkZGRlNzVlYjk1OGIzZmFmYzc5MA==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ OWM3MTIxMjkwN2JiMTI1NjY4ZDJhMTQzMzIwZTcyYmY1ZmRiNzVhNjQ4OWJh
10
+ NDlmNWMxNjgxYTIwMzA5YjcxMGQwMmIwNjM1N2FkOGRjNWQ2ZWQ0ZTIzNzI4
11
+ YWI3ZmM2OWNiNjIyNGJkMmI1ZTIyNWYxMTJiNzJmZTYyMTkzNTM=
12
+ data.tar.gz: !binary |-
13
+ MmI5Njc2YTUzMjM4YzVhODJlNzUxMDQ2NjJkNjVhYzBhYzJlZTcyOTY4ZGQ2
14
+ MzViNGIzNDZhYTE4NjRlZDgxMTQwOTlhNzU5Y2YxNTNiY2RmMzU5NGFmZjAz
15
+ MDdkMWVkMGMzMzQ4MTY4MDIyNjk1N2ExMmE0MWMxZGU3YWVkMTc=
data/Gemfile ADDED
@@ -0,0 +1,13 @@
1
+ source 'http://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in omniauth-idnet.gemspec
4
+ gemspec
5
+
6
+ group :development, :test do
7
+ gem 'rake'
8
+ gem 'guard'
9
+ gem 'guard-rspec'
10
+ gem 'guard-bundler'
11
+ gem 'rb-fsevent'
12
+ gem 'growl'
13
+ end
data/Gemfile.lock ADDED
@@ -0,0 +1,103 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ omniauth-idnet (0.0.7)
5
+ omniauth (~> 1.1)
6
+ omniauth-oauth2 (~> 1.1)
7
+
8
+ GEM
9
+ remote: http://rubygems.org/
10
+ specs:
11
+ addressable (2.3.4)
12
+ coderay (1.0.9)
13
+ crack (0.4.0)
14
+ safe_yaml (~> 0.9.0)
15
+ diff-lcs (1.2.4)
16
+ faraday (0.8.7)
17
+ multipart-post (~> 1.1)
18
+ ffi (1.9.0)
19
+ formatador (0.2.4)
20
+ growl (1.0.3)
21
+ guard (1.8.0)
22
+ formatador (>= 0.2.4)
23
+ listen (>= 1.0.0)
24
+ lumberjack (>= 1.0.2)
25
+ pry (>= 0.9.10)
26
+ thor (>= 0.14.6)
27
+ guard-bundler (1.0.0)
28
+ bundler (~> 1.0)
29
+ guard (~> 1.1)
30
+ guard-rspec (3.0.1)
31
+ guard (>= 1.8)
32
+ rspec (~> 2.13)
33
+ hashie (2.0.5)
34
+ httpauth (0.2.0)
35
+ jwt (0.1.8)
36
+ multi_json (>= 1.5)
37
+ listen (1.1.6)
38
+ rb-fsevent (>= 0.9.3)
39
+ rb-inotify (>= 0.9)
40
+ rb-kqueue (>= 0.2)
41
+ lumberjack (1.0.3)
42
+ method_source (0.8.1)
43
+ multi_json (1.7.6)
44
+ multipart-post (1.2.0)
45
+ oauth2 (0.8.1)
46
+ faraday (~> 0.8)
47
+ httpauth (~> 0.1)
48
+ jwt (~> 0.1.4)
49
+ multi_json (~> 1.0)
50
+ rack (~> 1.2)
51
+ omniauth (1.1.4)
52
+ hashie (>= 1.2, < 3)
53
+ rack
54
+ omniauth-oauth2 (1.1.1)
55
+ oauth2 (~> 0.8.0)
56
+ omniauth (~> 1.0)
57
+ pry (0.9.12.2)
58
+ coderay (~> 1.0.5)
59
+ method_source (~> 0.8)
60
+ slop (~> 3.4)
61
+ rack (1.5.2)
62
+ rack-test (0.6.2)
63
+ rack (>= 1.0)
64
+ rake (10.0.4)
65
+ rb-fsevent (0.9.3)
66
+ rb-inotify (0.9.0)
67
+ ffi (>= 0.5.0)
68
+ rb-kqueue (0.2.0)
69
+ ffi (>= 0.5.0)
70
+ rspec (2.13.0)
71
+ rspec-core (~> 2.13.0)
72
+ rspec-expectations (~> 2.13.0)
73
+ rspec-mocks (~> 2.13.0)
74
+ rspec-core (2.13.1)
75
+ rspec-expectations (2.13.0)
76
+ diff-lcs (>= 1.1.3, < 2.0)
77
+ rspec-mocks (2.13.1)
78
+ safe_yaml (0.9.3)
79
+ simplecov (0.7.1)
80
+ multi_json (~> 1.0)
81
+ simplecov-html (~> 0.7.1)
82
+ simplecov-html (0.7.1)
83
+ slop (3.4.5)
84
+ thor (0.18.1)
85
+ webmock (1.11.0)
86
+ addressable (>= 2.2.7)
87
+ crack (>= 0.3.2)
88
+
89
+ PLATFORMS
90
+ ruby
91
+
92
+ DEPENDENCIES
93
+ growl
94
+ guard
95
+ guard-bundler
96
+ guard-rspec
97
+ omniauth-idnet!
98
+ rack-test
99
+ rake
100
+ rb-fsevent
101
+ rspec (~> 2.7)
102
+ simplecov
103
+ webmock
data/Guardfile ADDED
@@ -0,0 +1,10 @@
1
+ guard 'rspec', :version => 2 do
2
+ watch(%r{^spec/.+_spec\.rb$})
3
+ watch(%r{^lib/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
4
+ watch('spec/spec_helper.rb') { "spec" }
5
+ end
6
+
7
+ guard 'bundler' do
8
+ watch('Gemfile')
9
+ watch('omniauth-idnet.gemspec')
10
+ end
data/README.md ADDED
@@ -0,0 +1,100 @@
1
+ # OmniAuth IdNet (0.0.6)
2
+
3
+ This is the official OmniAuth strategy for authenticating to [Id.net](https://www.id.net). To
4
+ use it, you'll need Id.net consumer application ID and SECRET.
5
+
6
+ ## Basic Usage
7
+ Currently, you have to initialize OmniAuth (with Id.net strategy) like this:
8
+
9
+ provider :idnet, APP_CONFIG[:app_id], APP_CONFIG[:app_secret]
10
+
11
+ This way, Id.net strategy will be initialized with the set of default fields:
12
+
13
+ ```ruby
14
+ DEFAULT =
15
+ [
16
+ "nickname",
17
+ "first_name",
18
+ "last_name",
19
+ "email",
20
+ "language",
21
+ "gender",
22
+ "street_address",
23
+ "city",
24
+ "country",
25
+ "state_or_province",
26
+ "zip",
27
+ "dob",
28
+ "level"
29
+ ]
30
+ ```
31
+
32
+ Where,
33
+ ```ruby
34
+ APP_CONFIG[:app_id] - application ID
35
+ APP_CONFIG[:app_secret] - application SECRET
36
+ ```
37
+
38
+ Also, you may (if you know what to pass there, in this example, it's `http://custom.idnet.server.org/`) use custom provider URL:
39
+
40
+ See [OAuth2::Client description](https://github.com/intridea/oauth2/blob/master/lib/oauth2/client.rb) for more details
41
+
42
+ ```ruby
43
+ Rails.application.config.middleware.use OmniAuth::Builder do
44
+ provider :idnet, APP_CONFIG[:app_id], APP_CONFIG[:app_secret],
45
+ :client_options => {:site => "http://custom.idnet.server.org/",
46
+ :authorize_url => "http://custom.idnet.server.org/oauth/authorize",
47
+ :token_url => "http://custom.idnet.server.org/oauth/token",
48
+ :ssl => false # if your provider does not use ssl
49
+ }
50
+ end
51
+ ```
52
+ If no `:client_options` passed, default `https://www.id.net/` provider URL will be used.
53
+
54
+ This should be placed, for example, into `config/initializers/omniauth.rb`.
55
+
56
+ ### Authentication popup
57
+ To invoke authentication popup, id.net provides a handy Javascrip available at:
58
+ ```
59
+ https://www.id.net/api/popup.js
60
+ ```
61
+
62
+ For example, for Ruby on Rails it could be included like this:
63
+ ```ruby
64
+ <%= javascript_include_tag "http://#{APP_CONFIG[:idnet][:server]}/api/popup.js" %>
65
+ ```
66
+ Then you may use jQuery to handle id.net authorization button clicks:
67
+
68
+ ```javascript
69
+ var set_idnet_handlers = function () {
70
+ $(".js-idnet-link.login").click(function() {
71
+ open_idnet_signin_signup(this.href);
72
+ return false;
73
+ });
74
+
75
+ $(".js-idnet-link.register").click(function() {
76
+ var href = this.href;
77
+ if (!href.match(/\?/)) href += '?';
78
+ open_idnet_register(href + '&popup_window=true');
79
+ return false;
80
+ });
81
+ }
82
+ ```
83
+
84
+ And HTML for button:
85
+ ```html
86
+ <a class="js-idnet-link login" href="/auth/idnet">
87
+ <img src="/images/id.net-logo.png" alt="Id.net-logo">
88
+ <span class="id-net-link-label">Login with id.net</span>
89
+ </a>
90
+ ```
91
+
92
+ ## License
93
+
94
+ Copyright (c) 2013 Heliostech.fr
95
+
96
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
97
+
98
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
99
+
100
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/Rakefile ADDED
@@ -0,0 +1,12 @@
1
+ #!/usr/bin/env rake
2
+ require "bundler/gem_tasks"
3
+ require 'rspec/core/rake_task'
4
+
5
+ desc 'Default: run specs.'
6
+ task :default => :spec
7
+
8
+ desc "Run specs"
9
+ RSpec::Core::RakeTask.new
10
+
11
+ desc 'Run specs'
12
+ task :default => :spec
@@ -0,0 +1,47 @@
1
+ require 'omniauth-oauth2'
2
+
3
+ module OmniAuth
4
+ module Strategies
5
+ class Idnet < OmniAuth::Strategies::OAuth2
6
+
7
+ option :name, "idnet"
8
+
9
+ option :fields, OmniAuth::Idnet::DEFAULT
10
+
11
+ option :client_options, {
12
+ :site => "https://www.id.net",
13
+ :ssl => true
14
+ }
15
+
16
+ option :authorize_options, [:scope, :display]
17
+
18
+ uid { raw_info['pid'] }
19
+
20
+ info do
21
+ options.fields.inject({}) do |hash, field|
22
+ hash[field] = raw_info[field.to_s]
23
+ hash
24
+ end
25
+ end
26
+
27
+ def raw_info
28
+ @raw_info ||= access_token.get('/api/profile').parsed
29
+ end
30
+
31
+ def authorize_params
32
+ super.tap do |params|
33
+ if Enumerable === request.params['prefill']
34
+ request.params['prefill'].each do |key, value|
35
+ params.merge!(("prefill[" + key.to_s + "]").to_sym => value)
36
+ end
37
+ end
38
+ if Enumerable === request.params['meta']
39
+ request.params['meta'].each do |key, value|
40
+ params.merge!(("meta[" + key.to_s + "]").to_sym => value)
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,20 @@
1
+ module OmniAuth
2
+ module Idnet
3
+ DEFAULT =
4
+ [
5
+ "nickname",
6
+ "first_name",
7
+ "last_name",
8
+ "email",
9
+ "language",
10
+ "gender",
11
+ "street_address",
12
+ "city",
13
+ "country",
14
+ "state_or_province",
15
+ "zip",
16
+ "dob",
17
+ "level"
18
+ ]
19
+ end
20
+ end
@@ -0,0 +1,5 @@
1
+ module OmniAuth
2
+ module Idnet
3
+ VERSION = "0.0.7"
4
+ end
5
+ end
@@ -0,0 +1,3 @@
1
+ require "omniauth-idnet/version"
2
+ require "omniauth-idnet/default_fields"
3
+ require 'omniauth/strategies/idnet'
@@ -0,0 +1,24 @@
1
+ # -*- encoding: utf-8 -*-
2
+ require File.expand_path('../lib/omniauth-idnet/version', __FILE__)
3
+
4
+ Gem::Specification.new do |gem|
5
+ gem.authors = ["Vlad Shvedov", "Hery Ramihajamalala"]
6
+ gem.email = ["vshvedov@heliostech.hk", "hery@heliostech.fr"]
7
+ gem.description = %q{Official OmniAuth strategy for IdNet.}
8
+ gem.summary = %q{Official OmniAuth strategy for IdNet.}
9
+ gem.homepage = "https://github.com/idnet/omniauth-idnet"
10
+
11
+ gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
12
+ gem.files = `git ls-files`.split("\n")
13
+ gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
14
+ gem.name = "omniauth-idnet"
15
+ gem.require_paths = ["lib"]
16
+ gem.version = OmniAuth::Idnet::VERSION
17
+
18
+ gem.add_dependency 'omniauth', '~> 1.1'
19
+ gem.add_dependency 'omniauth-oauth2', '~> 1.1'
20
+ gem.add_development_dependency 'rspec', '~> 2.7'
21
+ gem.add_development_dependency 'rack-test'
22
+ gem.add_development_dependency 'simplecov'
23
+ gem.add_development_dependency 'webmock'
24
+ end
@@ -0,0 +1,114 @@
1
+ require 'spec_helper'
2
+
3
+ describe OmniAuth::Strategies::Idnet do
4
+
5
+ before do
6
+ OmniAuth.config.test_mode = true
7
+ end
8
+
9
+ after do
10
+ OmniAuth.config.test_mode = false
11
+ end
12
+
13
+ subject do
14
+ OmniAuth::Strategies::Idnet.new({})
15
+ end
16
+
17
+ context 'client options' do
18
+ it 'should have correct name' do
19
+ expect(subject.options.name).to eq('idnet')
20
+ end
21
+
22
+ it 'should have correct site' do
23
+ expect(subject.options.client_options.site).to eq('https://www.id.net')
24
+ end
25
+
26
+ it 'should have correct authorize url' do
27
+ expect(subject.client.options[:authorize_url]).to eq('/oauth/authorize')
28
+ expect(subject.client.authorize_url).to eq('https://www.id.net/oauth/authorize')
29
+ end
30
+
31
+ it 'should have correct token url' do
32
+ expect(subject.client.options[:token_url]).to eq("/oauth/token")
33
+ expect(subject.client.token_url).to eq('https://www.id.net/oauth/token')
34
+ end
35
+
36
+ it 'should have correct authorize options' do
37
+ expect(subject.options.authorize_options).to eq [:scope, :display]
38
+ end
39
+ end
40
+
41
+ describe '#raw_info' do
42
+ let(:access_token) { stub('AccessToken', :options => {}) }
43
+ let(:parsed_response) { stub('ParsedResponse') }
44
+ let(:response) { stub('Response', :parsed => parsed_response) }
45
+
46
+ before do
47
+ subject.stub!(:access_token).and_return(access_token)
48
+ end
49
+
50
+ it 'should fetch info from /api/profile' do
51
+ access_token.should_receive(:get).with('/api/profile').and_return(response)
52
+ expect(subject.raw_info).to eq(parsed_response)
53
+ end
54
+ end
55
+
56
+ describe 'auth_hash' do
57
+ let(:info) do
58
+ {
59
+ 'email' => 'you@example.com',
60
+ 'level' => 5,
61
+ 'city' => nil,
62
+ 'country' => nil,
63
+ 'dob' => nil,
64
+ 'gender' => nil,
65
+ 'language' => nil,
66
+ 'first_name' => nil,
67
+ 'last_name' => nil,
68
+ "nickname" => nil,
69
+ "state_or_province" => nil,
70
+ "street_address" => nil,
71
+ "zip" => nil
72
+ }
73
+ end
74
+
75
+ before do
76
+ subject.stub!(:raw_info).and_return(info.select{|k,v| ['email', 'level'].include?(k)}.merge('pid' => '123456'))
77
+ end
78
+
79
+ it 'should return email in info' do
80
+ expect(subject.info['email']).to eq('you@example.com')
81
+ end
82
+
83
+ it 'should return correct uid' do
84
+ expect(subject.uid).to eq('123456')
85
+ end
86
+
87
+ it 'should return correct level' do
88
+ expect(subject.info['level']).to eq(5)
89
+ end
90
+
91
+ it 'should return info' do
92
+ expect(subject.info).to eq(info)
93
+ end
94
+ end
95
+
96
+ describe 'authorize_params' do
97
+ let!(:request) do
98
+ Rack::Request.new({
99
+ 'QUERY_STRING' => 'client_id=123456&prefill[alternate]=Site&meta[nickname]=john',
100
+ 'rack.input' => ''
101
+ })
102
+ end
103
+
104
+ it 'should include meta' do
105
+ expect(request.params).to eq({'client_id' => '123456', 'prefill' => {'alternate' => 'Site'}, 'meta' => {'nickname' => 'john'}})
106
+ subject.stub!(:request).and_return(request)
107
+ expect(subject.authorize_params).to eq({
108
+ 'meta[nickname]' => 'john',
109
+ 'state' => subject.options.authorize_params[:state],
110
+ 'prefill[alternate]' => 'Site'
111
+ })
112
+ end
113
+ end
114
+ end
@@ -0,0 +1,19 @@
1
+ $:.unshift File.expand_path('..', __FILE__)
2
+ $:.unshift File.expand_path('../../lib', __FILE__)
3
+ require 'simplecov'
4
+ SimpleCov.start
5
+ require 'rspec'
6
+ require 'rack/test'
7
+ require 'webmock/rspec'
8
+ require 'omniauth'
9
+ require 'omniauth-idnet'
10
+
11
+ RSpec.configure do |config|
12
+ config.include WebMock::API
13
+ config.include Rack::Test::Methods
14
+ config.extend OmniAuth::Test::StrategyMacros, :type => :strategy
15
+ config.expect_with :rspec do |c|
16
+ c.syntax = :expect
17
+ end
18
+ end
19
+
metadata ADDED
@@ -0,0 +1,143 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: omniauth-idnet
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.7
5
+ platform: ruby
6
+ authors:
7
+ - Vlad Shvedov
8
+ - Hery Ramihajamalala
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-10-23 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: omniauth
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ~>
19
+ - !ruby/object:Gem::Version
20
+ version: '1.1'
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ~>
26
+ - !ruby/object:Gem::Version
27
+ version: '1.1'
28
+ - !ruby/object:Gem::Dependency
29
+ name: omniauth-oauth2
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - ~>
33
+ - !ruby/object:Gem::Version
34
+ version: '1.1'
35
+ type: :runtime
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ~>
40
+ - !ruby/object:Gem::Version
41
+ version: '1.1'
42
+ - !ruby/object:Gem::Dependency
43
+ name: rspec
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ~>
47
+ - !ruby/object:Gem::Version
48
+ version: '2.7'
49
+ type: :development
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ~>
54
+ - !ruby/object:Gem::Version
55
+ version: '2.7'
56
+ - !ruby/object:Gem::Dependency
57
+ name: rack-test
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ! '>='
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ - !ruby/object:Gem::Dependency
71
+ name: simplecov
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ! '>='
82
+ - !ruby/object:Gem::Version
83
+ version: '0'
84
+ - !ruby/object:Gem::Dependency
85
+ name: webmock
86
+ requirement: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - ! '>='
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
91
+ type: :development
92
+ prerelease: false
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ! '>='
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
98
+ description: Official OmniAuth strategy for IdNet.
99
+ email:
100
+ - vshvedov@heliostech.hk
101
+ - hery@heliostech.fr
102
+ executables: []
103
+ extensions: []
104
+ extra_rdoc_files: []
105
+ files:
106
+ - Gemfile
107
+ - Gemfile.lock
108
+ - Guardfile
109
+ - README.md
110
+ - Rakefile
111
+ - lib/omniauth-idnet.rb
112
+ - lib/omniauth-idnet/default_fields.rb
113
+ - lib/omniauth-idnet/version.rb
114
+ - lib/omniauth/strategies/idnet.rb
115
+ - omniauth-idnet.gemspec
116
+ - spec/omniauth/strategies/idnet_spec.rb
117
+ - spec/spec_helper.rb
118
+ homepage: https://github.com/idnet/omniauth-idnet
119
+ licenses: []
120
+ metadata: {}
121
+ post_install_message:
122
+ rdoc_options: []
123
+ require_paths:
124
+ - lib
125
+ required_ruby_version: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - ! '>='
128
+ - !ruby/object:Gem::Version
129
+ version: '0'
130
+ required_rubygems_version: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - ! '>='
133
+ - !ruby/object:Gem::Version
134
+ version: '0'
135
+ requirements: []
136
+ rubyforge_project:
137
+ rubygems_version: 2.1.8
138
+ signing_key:
139
+ specification_version: 4
140
+ summary: Official OmniAuth strategy for IdNet.
141
+ test_files:
142
+ - spec/omniauth/strategies/idnet_spec.rb
143
+ - spec/spec_helper.rb