omniauth-redbooth 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: dd1b6e76da446495b5e3f2f35e5e1a32e0a595e3
4
+ data.tar.gz: 59a6462b9e0f28a91427e23183cdb264bba915c2
5
+ SHA512:
6
+ metadata.gz: 616d8e34622c105607380c814a3178bcd5d918744025978ccc060939c03613b76da3b4541845a1d97e6bd89a81e2bac0e41bed12c39293bc10d260d33ff7364d
7
+ data.tar.gz: 849ef5baed9c922cc8b0d5896a62b1ba9574b546b4b4219aa2ba10910b6b637410fbe4ca23999db6ef7f9c6d7041ed513909e53d59656f885492cce5e3a896ff
data/.gitignore ADDED
@@ -0,0 +1,16 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ InstalledFiles
7
+ _yardoc
8
+ coverage
9
+ doc/
10
+ lib/bundler/man
11
+ /pkg
12
+ rdoc
13
+ spec/reports
14
+ test/tmp
15
+ test/version_tmp
16
+ tmp
data/.travis.yml ADDED
@@ -0,0 +1,4 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.9.3
4
+ - 2.0.0
data/Gemfile ADDED
@@ -0,0 +1,17 @@
1
+ source 'http://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in omniauth-copy.gemspec
4
+ gemspec
5
+
6
+ gem 'rake'
7
+ gem 'coveralls', require: false
8
+ gem 'rspec'
9
+
10
+ group :development, :test do
11
+ gem 'guard'
12
+ gem 'guard-rspec'
13
+ gem 'guard-bundler'
14
+ gem 'rb-fsevent'
15
+ gem 'growl'
16
+ gem 'sinatra'
17
+ end
data/Gemfile.lock ADDED
@@ -0,0 +1,134 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ omniauth-signnow (0.0.1)
5
+ omniauth (~> 1.0)
6
+ omniauth-oauth2 (~> 1.1.1)
7
+
8
+ GEM
9
+ remote: http://rubygems.org/
10
+ specs:
11
+ addressable (2.3.5)
12
+ celluloid (0.15.2)
13
+ timers (~> 1.1.0)
14
+ celluloid-io (0.15.0)
15
+ celluloid (>= 0.15.0)
16
+ nio4r (>= 0.5.0)
17
+ coderay (1.1.0)
18
+ coveralls (0.7.0)
19
+ multi_json (~> 1.3)
20
+ rest-client
21
+ simplecov (>= 0.7)
22
+ term-ansicolor
23
+ thor
24
+ crack (0.4.2)
25
+ safe_yaml (~> 1.0.0)
26
+ diff-lcs (1.2.5)
27
+ docile (1.1.3)
28
+ faraday (0.9.0)
29
+ multipart-post (>= 1.2, < 3)
30
+ ffi (1.9.3)
31
+ formatador (0.2.4)
32
+ growl (1.0.3)
33
+ guard (2.4.0)
34
+ formatador (>= 0.2.4)
35
+ listen (~> 2.1)
36
+ lumberjack (~> 1.0)
37
+ pry (>= 0.9.12)
38
+ thor (>= 0.18.1)
39
+ guard-bundler (2.0.0)
40
+ bundler (~> 1.0)
41
+ guard (~> 2.2)
42
+ guard-rspec (4.2.6)
43
+ guard (~> 2.1)
44
+ rspec (>= 2.14, < 4.0)
45
+ hashie (2.0.5)
46
+ jwt (0.1.11)
47
+ multi_json (>= 1.5)
48
+ listen (2.5.0)
49
+ celluloid (>= 0.15.2)
50
+ celluloid-io (>= 0.15.0)
51
+ rb-fsevent (>= 0.9.3)
52
+ rb-inotify (>= 0.9)
53
+ lumberjack (1.0.4)
54
+ method_source (0.8.2)
55
+ mime-types (2.1)
56
+ multi_json (1.8.4)
57
+ multi_xml (0.5.5)
58
+ multipart-post (2.0.0)
59
+ nio4r (1.0.0)
60
+ oauth2 (0.9.3)
61
+ faraday (>= 0.8, < 0.10)
62
+ jwt (~> 0.1.8)
63
+ multi_json (~> 1.3)
64
+ multi_xml (~> 0.5)
65
+ rack (~> 1.2)
66
+ omniauth (1.2.1)
67
+ hashie (>= 1.2, < 3)
68
+ rack (~> 1.0)
69
+ omniauth-oauth2 (1.1.2)
70
+ faraday (>= 0.8, < 0.10)
71
+ multi_json (~> 1.3)
72
+ oauth2 (~> 0.9.3)
73
+ omniauth (~> 1.2)
74
+ pry (0.9.12.6)
75
+ coderay (~> 1.0)
76
+ method_source (~> 0.8)
77
+ slop (~> 3.4)
78
+ rack (1.5.2)
79
+ rack-protection (1.5.2)
80
+ rack
81
+ rack-test (0.6.2)
82
+ rack (>= 1.0)
83
+ rake (10.1.1)
84
+ rb-fsevent (0.9.4)
85
+ rb-inotify (0.9.3)
86
+ ffi (>= 0.5.0)
87
+ rest-client (1.6.7)
88
+ mime-types (>= 1.16)
89
+ rspec (2.14.1)
90
+ rspec-core (~> 2.14.0)
91
+ rspec-expectations (~> 2.14.0)
92
+ rspec-mocks (~> 2.14.0)
93
+ rspec-core (2.14.7)
94
+ rspec-expectations (2.14.5)
95
+ diff-lcs (>= 1.1.3, < 2.0)
96
+ rspec-mocks (2.14.5)
97
+ safe_yaml (1.0.1)
98
+ simplecov (0.8.2)
99
+ docile (~> 1.1.0)
100
+ multi_json
101
+ simplecov-html (~> 0.8.0)
102
+ simplecov-html (0.8.0)
103
+ sinatra (1.4.4)
104
+ rack (~> 1.4)
105
+ rack-protection (~> 1.4)
106
+ tilt (~> 1.3, >= 1.3.4)
107
+ slop (3.4.7)
108
+ term-ansicolor (1.3.0)
109
+ tins (~> 1.0)
110
+ thor (0.18.1)
111
+ tilt (1.4.1)
112
+ timers (1.1.0)
113
+ tins (1.0.0)
114
+ webmock (1.17.2)
115
+ addressable (>= 2.2.7)
116
+ crack (>= 0.3.2)
117
+
118
+ PLATFORMS
119
+ ruby
120
+
121
+ DEPENDENCIES
122
+ coveralls
123
+ growl
124
+ guard
125
+ guard-bundler
126
+ guard-rspec
127
+ omniauth-signnow!
128
+ rack-test
129
+ rake
130
+ rb-fsevent
131
+ rspec
132
+ simplecov
133
+ sinatra
134
+ 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-redbooth.gemspec')
10
+ end
data/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ (The MIT License)
2
+
3
+ Copyright (c) 2012 Redbooth
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
20
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,26 @@
1
+ # OmniAuth Redbooth.com
2
+
3
+ An official OmniAuth strategy for authenticating to Redbooth.com using OAuth2. To use it, you'll
4
+ need to have a Redbooth.com [developer account](https://redbooth.com/oauth_clients/).
5
+
6
+ ## Installation
7
+
8
+ Add to your `Gemfile`:
9
+
10
+ ```ruby
11
+ gem "omniauth-redbooth"
12
+ ```
13
+
14
+ Then `bundle install`.
15
+
16
+ ## Usage
17
+
18
+ Here's an example for adding the middleware to a Rails app in `config/initializers/omniauth.rb`:
19
+
20
+ ```ruby
21
+ Rails.application.config.middleware.use OmniAuth::Builder do
22
+ provider :redbooth, ENV['REDBOOTH_APP_ID'], ENV['REDBOOTH_APP_SECRET']
23
+ end
24
+ ```
25
+
26
+ You can now access the URL: `/auth/redbooth`
data/Rakefile ADDED
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env rake
2
+ require 'bundler/gem_tasks'
3
+ require 'rspec/core/rake_task'
4
+
5
+ RSpec::Core::RakeTask.new
6
+
7
+ desc 'Run specs'
8
+ task :default => :spec
@@ -0,0 +1,55 @@
1
+ require 'sinatra/base'
2
+ require 'omniauth-redbooth'
3
+ require 'multi_json'
4
+
5
+ class OmniauthRedbooth < Sinatra::Base
6
+
7
+ before do
8
+ content_type 'application/json'
9
+ end
10
+
11
+ get '/' do
12
+ content_type 'text/html'
13
+ <<-HTML
14
+ <a href="/auth/redbooth">Sign in with Redbooth</a>
15
+ HTML
16
+ end
17
+
18
+ get '/auth/:provider/callback' do
19
+ MultiJson.encode(request.env)
20
+ end
21
+
22
+ get '/auth/failure' do
23
+ MultiJson.encode(request.env)
24
+ end
25
+
26
+ get '/refresh_token' do
27
+ client_id = ENV['CONSUMER_KEY']
28
+ client_secret = ENV['CONSUMER_SECRET']
29
+ oauth2_urls = {
30
+ site: 'http://localhost:3000/api/2',
31
+ token_url: 'http://localhost:3000/oauth2/token',
32
+ authorize_url: 'http://localhost:3000/oauth2/authorize'
33
+ }
34
+
35
+ @oauth2_client = OAuth2::Client.new(client_id, client_secret, oauth2_urls)
36
+ @access_token = OAuth2::AccessToken.new(@oauth2_client, params[:access_token])
37
+ refresh_access_token_obj = OAuth2::AccessToken.new(@oauth2_client, @access_token.token, {'refresh_token' => params[:refresh_token]})
38
+ @access_token = refresh_access_token_obj.refresh!
39
+
40
+ @access_token.inspect
41
+ end
42
+ end
43
+
44
+ use Rack::Session::Cookie, :secret => 'secret identity'
45
+
46
+ use OmniAuth::Builder do
47
+ provider :redbooth, ENV['CONSUMER_KEY'], ENV['CONSUMER_SECRET'],
48
+ client_options: {
49
+ site: 'http://localhost:3000/api/2',
50
+ token_url: 'http://localhost:3000/oauth2/token',
51
+ authorize_url: 'http://localhost:3000/oauth2/authorize'
52
+ }
53
+ end
54
+
55
+ run OmniauthRedbooth.new
@@ -0,0 +1,48 @@
1
+ require 'omniauth-oauth2'
2
+
3
+ module OmniAuth
4
+ module Strategies
5
+ class Redbooth < OmniAuth::Strategies::OAuth2
6
+ # Give your strategy a name.
7
+ option :name, 'redbooth'
8
+
9
+ option :provider_ignores_state, true
10
+
11
+ # This is where you pass the options you would pass when
12
+ # initializing your consumer from the OAuth gem.
13
+ option :client_options, {
14
+ site: 'https://redbooth.com/api/3',
15
+ authorize_url: 'https://redbooth.com/oauth/authorize',
16
+ token_url: 'https://redbooth.com/oauth/token'
17
+ }
18
+
19
+ option :authorize_params, {
20
+ response_type: 'code'
21
+ }
22
+
23
+ # These are called after authentication has succeeded. If
24
+ # possible, you should try to set the UID without making
25
+ # additional calls (if the user id is returned with the token
26
+ # or as a URI parameter). This may not be possible with all
27
+ # providers.
28
+ uid{ raw_info['id'] }
29
+
30
+ info do
31
+ {
32
+ :name => [ raw_info['first_name'], raw_info['last_name'] ].join(' '),
33
+ :email => raw_info['email']
34
+ }
35
+ end
36
+
37
+ extra do
38
+ {
39
+ 'raw_info' => raw_info
40
+ }
41
+ end
42
+
43
+ def raw_info
44
+ @raw_info ||= access_token.get("#{options[:client_options][:site]}/account").parsed
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,5 @@
1
+ module OmniAuth
2
+ module Redbooth
3
+ VERSION = '0.0.1'
4
+ end
5
+ end
@@ -0,0 +1,2 @@
1
+ require 'omniauth-redbooth/version'
2
+ require 'omniauth/strategies/redbooth'
@@ -0,0 +1,23 @@
1
+ require File.expand_path('../lib/omniauth-redbooth/version', __FILE__)
2
+
3
+ Gem::Specification.new do |gem|
4
+ gem.authors = ["Andres Bravo", "Carlos Saura", "Pau Ramon"]
5
+ gem.email = ["support@redbooth.com"]
6
+ gem.description = %q{Official OmniAuth strategy for Redbooth.com.}
7
+ gem.licenses = ['MIT']
8
+ gem.summary = gem.description
9
+ gem.homepage = "https://github.com/redbooth/omniauth-redbooth"
10
+
11
+ gem.files = `git ls-files`.split("\n")
12
+ gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
13
+ gem.name = "omniauth-redbooth"
14
+ gem.require_paths = ["lib"]
15
+ gem.version = OmniAuth::Redbooth::VERSION
16
+
17
+ gem.add_dependency 'omniauth', '~> 1.0'
18
+ gem.add_dependency 'omniauth-oauth2', '~> 1.1.1'
19
+ gem.add_development_dependency 'rspec', '~> 2.7'
20
+ gem.add_development_dependency 'rack-test'
21
+ gem.add_development_dependency 'simplecov'
22
+ gem.add_development_dependency 'webmock'
23
+ end
@@ -0,0 +1,102 @@
1
+ require 'spec_helper'
2
+
3
+ describe OmniAuth::Strategies::Redbooth do
4
+ let(:app) do
5
+ lambda do |env|
6
+ [200, {}, ["Hello."]]
7
+ end
8
+ end
9
+ let(:request) { double('Request', :params => {}, :cookies => {}, :env => {}) }
10
+ let(:fresh_strategy){ Class.new(OmniAuth::Strategies::Redbooth) }
11
+
12
+ let(:redbooth_strategy) do
13
+ fresh_strategy.new(app, '_your_app_id_', '_your_app_secret_', @options || {}).tap do |strategy|
14
+ strategy.stub(:request) {
15
+ request
16
+ }
17
+ end
18
+ end
19
+
20
+ subject { redbooth_strategy }
21
+
22
+ before do
23
+ OmniAuth.config.test_mode = true
24
+ end
25
+
26
+ after do
27
+ OmniAuth.config.test_mode = false
28
+ end
29
+
30
+ describe '#client_options' do
31
+
32
+ it 'should be initialized with correct authorize url' do
33
+ expect(subject.client.options[:authorize_url]).to eql 'https://redbooth.com/oauth/authorize'
34
+ end
35
+
36
+ it 'should be initialized with correct token url' do
37
+ expect(subject.client.options[:token_url]).to eql 'https://redbooth.com/oauth/token'
38
+ end
39
+
40
+ describe "overrides" do
41
+ it 'should allow overriding the site' do
42
+ @options = {:client_options => {'site' => 'https://example.com'}}
43
+ subject.client.site.should == 'https://example.com'
44
+ end
45
+
46
+ it 'should allow overriding the authorize_url' do
47
+ @options = {:client_options => {'authorize_url' => 'https://example.com'}}
48
+ subject.client.options[:authorize_url].should == 'https://example.com'
49
+ end
50
+
51
+ it 'should allow overriding the token_url' do
52
+ @options = {:client_options => {'token_url' => 'https://example.com'}}
53
+ subject.client.options[:token_url].should == 'https://example.com'
54
+ end
55
+ end
56
+ end
57
+
58
+ describe '#authorize_params' do
59
+
60
+ it 'should include any authorize params passed in the :authorize_params option' do
61
+ @options = {:authorize_params => {:request_visible_actions => 'something', :foo => 'bar', :baz => 'zip'}, :bad => 'not_included'}
62
+ subject.authorize_params['request_visible_actions'].should eq('something')
63
+ subject.authorize_params['foo'].should eq('bar')
64
+ subject.authorize_params['baz'].should eq('zip')
65
+ subject.authorize_params['bad'].should eq(nil)
66
+ end
67
+
68
+ it 'should include :response_type option' do
69
+ expect(subject.authorize_params).to include('response_type')
70
+ expect(subject.authorize_params['response_type']).to eql('code')
71
+ end
72
+
73
+ it 'should include random state in the authorize params' do
74
+ expect(subject.authorize_params).to include('state')
75
+ subject.session['omniauth.state'].should_not be_empty
76
+ end
77
+ end
78
+
79
+ describe '#token_params' do
80
+ it 'should include any token params passed in the :token_params option' do
81
+ @options = {:token_params => {:foo => 'bar', :baz => 'zip'}}
82
+ subject.token_params['foo'].should eq('bar')
83
+ subject.token_params['baz'].should eq('zip')
84
+ end
85
+ end
86
+
87
+ describe "#token_options" do
88
+ it 'should include top-level options that are marked as :token_options' do
89
+ @options = {:token_options => [:scope, :foo], :scope => 'bar', :foo => 'baz', :bad => 'not_included'}
90
+ subject.token_params['scope'].should eq('bar')
91
+ subject.token_params['foo'].should eq('baz')
92
+ subject.token_params['bad'].should eq(nil)
93
+ end
94
+ end
95
+
96
+ describe '#callback_path' do
97
+ it 'has the correct callback path' do
98
+ subject.callback_path.should eq('/auth/redbooth/callback')
99
+ end
100
+ end
101
+
102
+ end
@@ -0,0 +1,17 @@
1
+ $:.unshift File.expand_path('..', __FILE__)
2
+ $:.unshift File.expand_path('../../lib', __FILE__)
3
+ require 'simplecov'
4
+ SimpleCov.start
5
+ require 'coveralls'
6
+ Coveralls.wear!
7
+ require 'rspec'
8
+ require 'rack/test'
9
+ require 'webmock/rspec'
10
+ require 'omniauth'
11
+ require 'omniauth-redbooth'
12
+
13
+ RSpec.configure do |config|
14
+ config.include WebMock::API
15
+ config.include Rack::Test::Methods
16
+ config.extend OmniAuth::Test::StrategyMacros, :type => :strategy
17
+ end
metadata ADDED
@@ -0,0 +1,147 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: omniauth-redbooth
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Andres Bravo
8
+ - Carlos Saura
9
+ - Pau Ramon
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2014-04-17 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: omniauth
17
+ requirement: !ruby/object:Gem::Requirement
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '1.0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - ~>
27
+ - !ruby/object:Gem::Version
28
+ version: '1.0'
29
+ - !ruby/object:Gem::Dependency
30
+ name: omniauth-oauth2
31
+ requirement: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - ~>
34
+ - !ruby/object:Gem::Version
35
+ version: 1.1.1
36
+ type: :runtime
37
+ prerelease: false
38
+ version_requirements: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - ~>
41
+ - !ruby/object:Gem::Version
42
+ version: 1.1.1
43
+ - !ruby/object:Gem::Dependency
44
+ name: rspec
45
+ requirement: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ~>
48
+ - !ruby/object:Gem::Version
49
+ version: '2.7'
50
+ type: :development
51
+ prerelease: false
52
+ version_requirements: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - ~>
55
+ - !ruby/object:Gem::Version
56
+ version: '2.7'
57
+ - !ruby/object:Gem::Dependency
58
+ name: rack-test
59
+ requirement: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - '>='
62
+ - !ruby/object:Gem::Version
63
+ version: '0'
64
+ type: :development
65
+ prerelease: false
66
+ version_requirements: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - '>='
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ - !ruby/object:Gem::Dependency
72
+ name: simplecov
73
+ requirement: !ruby/object:Gem::Requirement
74
+ requirements:
75
+ - - '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ type: :development
79
+ prerelease: false
80
+ version_requirements: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - '>='
83
+ - !ruby/object:Gem::Version
84
+ version: '0'
85
+ - !ruby/object:Gem::Dependency
86
+ name: webmock
87
+ requirement: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - '>='
90
+ - !ruby/object:Gem::Version
91
+ version: '0'
92
+ type: :development
93
+ prerelease: false
94
+ version_requirements: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
99
+ description: Official OmniAuth strategy for Redbooth.com.
100
+ email:
101
+ - support@redbooth.com
102
+ executables: []
103
+ extensions: []
104
+ extra_rdoc_files: []
105
+ files:
106
+ - .gitignore
107
+ - .travis.yml
108
+ - Gemfile
109
+ - Gemfile.lock
110
+ - Guardfile
111
+ - LICENSE
112
+ - README.md
113
+ - Rakefile
114
+ - examples/config.ru
115
+ - lib/omniauth-redbooth.rb
116
+ - lib/omniauth-redbooth/version.rb
117
+ - lib/omniauth/strategies/redbooth.rb
118
+ - omniauth-redbooth.gemspec
119
+ - spec/omniauth/strategies/redbooth_spec.rb
120
+ - spec/spec_helper.rb
121
+ homepage: https://github.com/redbooth/omniauth-redbooth
122
+ licenses:
123
+ - MIT
124
+ metadata: {}
125
+ post_install_message:
126
+ rdoc_options: []
127
+ require_paths:
128
+ - lib
129
+ required_ruby_version: !ruby/object:Gem::Requirement
130
+ requirements:
131
+ - - '>='
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
134
+ required_rubygems_version: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - '>='
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ requirements: []
140
+ rubyforge_project:
141
+ rubygems_version: 2.0.3
142
+ signing_key:
143
+ specification_version: 4
144
+ summary: Official OmniAuth strategy for Redbooth.com.
145
+ test_files:
146
+ - spec/omniauth/strategies/redbooth_spec.rb
147
+ - spec/spec_helper.rb