oa-oauth 0.2.3 → 0.2.4
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.
- data/.gemtest +0 -0
- data/.rspec +3 -0
- data/.yardopts +4 -0
- data/Gemfile +3 -0
- data/Rakefile +6 -0
- data/autotest/discover.rb +1 -0
- data/oa-oauth.gemspec +30 -0
- data/spec/fixtures/basecamp_200.xml +24 -0
- data/spec/fixtures/campfire_200.json +10 -0
- data/spec/omniauth/strategies/bitly_spec.rb +5 -0
- data/spec/omniauth/strategies/dailymile_spec.rb +5 -0
- data/spec/omniauth/strategies/doit_spec.rb +5 -0
- data/spec/omniauth/strategies/dopplr_spec.rb +5 -0
- data/spec/omniauth/strategies/evernote_spec.rb +7 -0
- data/spec/omniauth/strategies/facebook_spec.rb +5 -0
- data/spec/omniauth/strategies/foursquare_spec.rb +4 -0
- data/spec/omniauth/strategies/github_spec.rb +5 -0
- data/spec/omniauth/strategies/goodreads_spec.rb +6 -0
- data/spec/omniauth/strategies/google_spec.rb +5 -0
- data/spec/omniauth/strategies/gowalla_spec.rb +5 -0
- data/spec/omniauth/strategies/hyves_spec.rb +5 -0
- data/spec/omniauth/strategies/identica_spec.rb +5 -0
- data/spec/omniauth/strategies/linked_in_spec.rb +5 -0
- data/spec/omniauth/strategies/meetup_spec.rb +14 -0
- data/spec/omniauth/strategies/miso_spec.rb +5 -0
- data/spec/omniauth/strategies/netflix_spec.rb +5 -0
- data/spec/omniauth/strategies/oauth2_spec.rb +0 -0
- data/spec/omniauth/strategies/oauth_spec.rb +77 -0
- data/spec/omniauth/strategies/salesforce_spec.rb +5 -0
- data/spec/omniauth/strategies/smug_mug_spec.rb +5 -0
- data/spec/omniauth/strategies/sound_cloud_spec.rb +5 -0
- data/spec/omniauth/strategies/teambox_spec.rb +5 -0
- data/spec/omniauth/strategies/thirty_seven_signals_spec.rb +5 -0
- data/spec/omniauth/strategies/trade_me_spec.rb +5 -0
- data/spec/omniauth/strategies/trip_it_spec.rb +5 -0
- data/spec/omniauth/strategies/tumblr_spec.rb +5 -0
- data/spec/omniauth/strategies/twitter_spec.rb +20 -0
- data/spec/omniauth/strategies/type_pad_spec.rb +5 -0
- data/spec/omniauth/strategies/vimeo_spec.rb +5 -0
- data/spec/omniauth/strategies/vkontakte_spec.rb +5 -0
- data/spec/omniauth/strategies/yahoo_spec.rb +5 -0
- data/spec/omniauth/strategies/you_tube_spec.rb +5 -0
- data/spec/spec_helper.rb +32 -0
- data/spec/support/shared_examples.rb +29 -0
- metadata +119 -65
data/.gemtest
ADDED
|
File without changes
|
data/.rspec
ADDED
data/.yardopts
ADDED
data/Gemfile
ADDED
data/Rakefile
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Autotest.add_discovery { "rspec2" }
|
data/oa-oauth.gemspec
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
|
2
|
+
require File.expand_path('../../omniauth/lib/omniauth/version', __FILE__)
|
|
3
|
+
|
|
4
|
+
Gem::Specification.new do |gem|
|
|
5
|
+
gem.add_dependency 'oa-core', Omniauth::VERSION.dup
|
|
6
|
+
gem.add_dependency 'multi_json', '>= 0.0.5'
|
|
7
|
+
gem.add_dependency 'nokogiri', '~> 1.4.2'
|
|
8
|
+
gem.add_dependency 'oauth', '~> 0.4.0'
|
|
9
|
+
gem.add_dependency 'faraday', '~> 0.6.1'
|
|
10
|
+
gem.add_dependency 'oauth2', '~> 0.4.1'
|
|
11
|
+
gem.add_development_dependency 'evernote', '~> 0.9'
|
|
12
|
+
gem.add_development_dependency 'rack-test', '~> 0.5'
|
|
13
|
+
gem.add_development_dependency 'rake', '~> 0.8'
|
|
14
|
+
gem.add_development_dependency 'rspec', '~> 2.5'
|
|
15
|
+
gem.add_development_dependency 'webmock', '~> 1.6'
|
|
16
|
+
gem.add_development_dependency 'yard', '~> 0.6'
|
|
17
|
+
gem.name = 'oa-oauth'
|
|
18
|
+
gem.version = Omniauth::VERSION.dup
|
|
19
|
+
gem.summary = %q{OAuth strategies for OmniAuth.}
|
|
20
|
+
gem.description = %q{OAuth strategies for OmniAuth.}
|
|
21
|
+
gem.email = ['michael@intridea.com', 'sferik@gmail.com']
|
|
22
|
+
gem.homepage = 'http://github.com/intridea/omniauth'
|
|
23
|
+
gem.authors = ['Michael Bleigh', 'Erik Michaels-Ober']
|
|
24
|
+
gem.executables = `git ls-files -- bin/*`.split("\n").map{|f| File.basename(f)}
|
|
25
|
+
gem.files = `git ls-files`.split("\n")
|
|
26
|
+
gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
|
27
|
+
gem.require_paths = ['lib']
|
|
28
|
+
gem.required_rubygems_version = Gem::Requirement.new('>= 1.3.6') if gem.respond_to? :required_rubygems_version=
|
|
29
|
+
|
|
30
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<person>
|
|
2
|
+
<client-id type="integer">0</client-id>
|
|
3
|
+
<created-at type="datetime">2008-08-14T00:00:00Z</created-at>
|
|
4
|
+
<id type="integer">1827370</id>
|
|
5
|
+
<im-handle/>
|
|
6
|
+
<im-service>AOL</im-service>
|
|
7
|
+
<phone-number-fax/>
|
|
8
|
+
<phone-number-home/>
|
|
9
|
+
<phone-number-mobile/>
|
|
10
|
+
<phone-number-office/>
|
|
11
|
+
<phone-number-office-ext/>
|
|
12
|
+
<title/>
|
|
13
|
+
<token>5fc2ab4f6c2f9cdf12ed01b88e7554f8ad21bbfb</token>
|
|
14
|
+
<updated-at type="datetime">2010-05-24T11:59:34Z</updated-at>
|
|
15
|
+
<uuid>b11312ca-227d-36fd-e3b5-af2f419-a650</uuid>
|
|
16
|
+
<first-name>Sally</first-name>
|
|
17
|
+
<last-name>Fried</last-name>
|
|
18
|
+
<company-id type="integer">1042368</company-id>
|
|
19
|
+
<user-name/>
|
|
20
|
+
<email-address>sfried@example.org</email-address>
|
|
21
|
+
<avatar-url>
|
|
22
|
+
http://asset3.37img.com/75521bbf128b89b7ec2ab5fe98ad21b4f6ad21e/avatar.png?r=3
|
|
23
|
+
</avatar-url>
|
|
24
|
+
</person>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
|
2
|
+
|
|
3
|
+
describe OmniAuth::Strategies::Meetup do
|
|
4
|
+
it_should_behave_like 'an oauth strategy'
|
|
5
|
+
it 'should use the authenticate (sign in) path by default' do
|
|
6
|
+
s = strategy_class.new(app, 'abc', 'def')
|
|
7
|
+
s.consumer.options[:authorize_path].should == 'http://www.meetup.com/authenticate'
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
it 'should use the authorize path if :sign_in is false' do
|
|
11
|
+
s = strategy_class.new(app, 'abc', 'def', :sign_in => false)
|
|
12
|
+
s.consumer.options[:authorize_path].should == 'http://www.meetup.com/authorize'
|
|
13
|
+
end
|
|
14
|
+
end
|
|
File without changes
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe "OmniAuth::Strategies::OAuth" do
|
|
4
|
+
|
|
5
|
+
def app
|
|
6
|
+
Rack::Builder.new {
|
|
7
|
+
use OmniAuth::Test::PhonySession
|
|
8
|
+
use OmniAuth::Builder do
|
|
9
|
+
provider :oauth, 'example.org', 'abc', 'def', :site => 'https://api.example.org'
|
|
10
|
+
provider :oauth, 'example.org_with_authorize_params', 'abc', 'def', { :site => 'https://api.example.org' }, :authorize_params => {:abc => 'def'}
|
|
11
|
+
end
|
|
12
|
+
run lambda { |env| [404, {'Content-Type' => 'text/plain'}, [env.key?('omniauth.auth').to_s]] }
|
|
13
|
+
}.to_app
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def session
|
|
17
|
+
last_request.env['rack.session']
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
before do
|
|
21
|
+
stub_request(:post, 'https://api.example.org/oauth/request_token').
|
|
22
|
+
to_return(:body => "oauth_token=yourtoken&oauth_token_secret=yoursecret&oauth_callback_confirmed=true")
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
describe '/auth/{name}' do
|
|
26
|
+
before do
|
|
27
|
+
get '/auth/example.org'
|
|
28
|
+
end
|
|
29
|
+
it 'should redirect to authorize_url' do
|
|
30
|
+
last_response.should be_redirect
|
|
31
|
+
last_response.headers['Location'].should == 'https://api.example.org/oauth/authorize?oauth_token=yourtoken'
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
it 'should redirect to authorize_url with authorize_params when set' do
|
|
35
|
+
get '/auth/example.org_with_authorize_params'
|
|
36
|
+
last_response.should be_redirect
|
|
37
|
+
[
|
|
38
|
+
'https://api.example.org/oauth/authorize?abc=def&oauth_token=yourtoken',
|
|
39
|
+
'https://api.example.org/oauth/authorize?oauth_token=yourtoken&abc=def'
|
|
40
|
+
].should be_include(last_response.headers['Location'])
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
it 'should set appropriate session variables' do
|
|
44
|
+
session['oauth'].should == {"example.org" => {'callback_confirmed' => true, 'request_token' => 'yourtoken', 'request_secret' => 'yoursecret'}}
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
describe '/auth/{name}/callback' do
|
|
49
|
+
before do
|
|
50
|
+
stub_request(:post, 'https://api.example.org/oauth/access_token').
|
|
51
|
+
to_return(:body => "oauth_token=yourtoken&oauth_token_secret=yoursecret")
|
|
52
|
+
get '/auth/example.org/callback', {:oauth_verifier => 'dudeman'}, {'rack.session' => {'oauth' => {"example.org" => {'callback_confirmed' => true, 'request_token' => 'yourtoken', 'request_secret' => 'yoursecret'}}}}
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
it 'should exchange the request token for an access token' do
|
|
56
|
+
last_request.env['omniauth.auth']['provider'].should == 'example.org'
|
|
57
|
+
last_request.env['omniauth.auth']['extra']['access_token'].should be_kind_of(OAuth::AccessToken)
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
it 'should call through to the master app' do
|
|
61
|
+
last_response.body.should == 'true'
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
context "bad gateway (or any 5xx) for access_token" do
|
|
65
|
+
before do
|
|
66
|
+
stub_request(:post, 'https://api.example.org/oauth/access_token').
|
|
67
|
+
to_raise(::Net::HTTPFatalError.new(%Q{502 "Bad Gateway"}, nil))
|
|
68
|
+
get '/auth/example.org/callback', {:oauth_verifier => 'dudeman'}, {'rack.session' => {'oauth' => {"example.org" => {'callback_confirmed' => true, 'request_token' => 'yourtoken', 'request_secret' => 'yoursecret'}}}}
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
it 'should call fail! with :service_unavailable' do
|
|
72
|
+
last_request.env['omniauth.error'].should be_kind_of(::Net::HTTPFatalError)
|
|
73
|
+
last_request.env['omniauth.error.type'] = :service_unavailable
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
|
2
|
+
|
|
3
|
+
describe OmniAuth::Strategies::Twitter do
|
|
4
|
+
it_should_behave_like 'an oauth strategy'
|
|
5
|
+
|
|
6
|
+
it 'should use the authenticate (sign in) path by default' do
|
|
7
|
+
s = strategy_class.new(app, 'abc', 'def')
|
|
8
|
+
s.consumer.options[:authorize_path].should == '/oauth/authenticate'
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
it 'should set options[:authorize_params] to { :force_login => "true" } if :force_login is true' do
|
|
12
|
+
s = strategy_class.new(app, 'abc', 'def', :force_login => true)
|
|
13
|
+
s.options[:authorize_params].should == { :force_login => 'true' }
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
it 'should use the authorize path if :sign_in is false' do
|
|
17
|
+
s = strategy_class.new(app, 'abc', 'def', :sign_in => false)
|
|
18
|
+
s.consumer.options[:authorize_path].should == '/oauth/authorize'
|
|
19
|
+
end
|
|
20
|
+
end
|
data/spec/spec_helper.rb
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
require 'rubygems'
|
|
2
|
+
require 'bundler'
|
|
3
|
+
Bundler.setup
|
|
4
|
+
require 'rspec'
|
|
5
|
+
require 'rspec/autorun'
|
|
6
|
+
require 'webmock/rspec'
|
|
7
|
+
require 'rack/test'
|
|
8
|
+
require 'omniauth/core'
|
|
9
|
+
require 'omniauth/test'
|
|
10
|
+
require 'omniauth/oauth'
|
|
11
|
+
|
|
12
|
+
Dir[File.dirname(__FILE__) + "/support/**/*.rb"].each {|f| require f}
|
|
13
|
+
|
|
14
|
+
RSpec.configure do |config|
|
|
15
|
+
config.include WebMock::API
|
|
16
|
+
config.include Rack::Test::Methods
|
|
17
|
+
config.extend OmniAuth::Test::StrategyMacros, :type => :strategy
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def strategy_class
|
|
21
|
+
meta = self.class.metadata
|
|
22
|
+
while meta.key?(:example_group)
|
|
23
|
+
meta = meta[:example_group]
|
|
24
|
+
end
|
|
25
|
+
meta[:describes]
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def app
|
|
29
|
+
lambda{|env| [200, {}, ['Hello']]}
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
WebMock.disable_net_connect!
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
shared_examples_for "an oauth strategy" do
|
|
2
|
+
it 'should be initializable with only three arguments' do
|
|
3
|
+
lambda{ strategy_class.new(lambda{|env| [200, {}, ['Hello World']]}, 'key', 'secret') }.should_not raise_error
|
|
4
|
+
end
|
|
5
|
+
|
|
6
|
+
it 'should be initializable with a block' do
|
|
7
|
+
lambda{ strategy_class.new(lambda{|env| [200, {}, ['Hello World']]}){|s| s.consumer_key = 'abc'} }.should_not raise_error
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
it 'should handle the setting of client options' do
|
|
11
|
+
s = strategy_class.new(lambda{|env| [200, {}, ['Hello World']]}, 'key', 'secret', :client_options => {:abc => 'def'})
|
|
12
|
+
s.consumer.options[:abc].should == 'def'
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
shared_examples_for "an oauth2 strategy" do
|
|
17
|
+
it 'should be initializable with only three arguments' do
|
|
18
|
+
lambda{ strategy_class.new(lambda{|env| [200, {}, ['Hello World']]}, 'key', 'secret') }.should_not raise_error
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
it 'should be initializable with a block' do
|
|
22
|
+
lambda{ strategy_class.new(lambda{|env| [200, {}, ['Hello World']]}){|s| s.client_id = 'abc'} }.should_not raise_error
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
it 'should handle the setting of client options' do
|
|
26
|
+
s = strategy_class.new(lambda{|env| [200, {}, ['Hello World']]}, 'key', 'secret', :client_options => {:abc => 'def'})
|
|
27
|
+
s.client.options[:abc].should == 'def'
|
|
28
|
+
end
|
|
29
|
+
end
|
metadata
CHANGED
|
@@ -2,30 +2,31 @@
|
|
|
2
2
|
name: oa-oauth
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
4
|
prerelease:
|
|
5
|
-
version: 0.2.
|
|
5
|
+
version: 0.2.4
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
8
8
|
- Michael Bleigh
|
|
9
|
+
- Erik Michaels-Ober
|
|
9
10
|
autorequire:
|
|
10
11
|
bindir: bin
|
|
11
12
|
cert_chain: []
|
|
12
13
|
|
|
13
|
-
date: 2011-04-
|
|
14
|
-
default_executable:
|
|
14
|
+
date: 2011-04-22 00:00:00 Z
|
|
15
15
|
dependencies:
|
|
16
16
|
- !ruby/object:Gem::Dependency
|
|
17
17
|
name: oa-core
|
|
18
|
+
prerelease: false
|
|
18
19
|
requirement: &id001 !ruby/object:Gem::Requirement
|
|
19
20
|
none: false
|
|
20
21
|
requirements:
|
|
21
22
|
- - "="
|
|
22
23
|
- !ruby/object:Gem::Version
|
|
23
|
-
version: 0.2.
|
|
24
|
+
version: 0.2.4
|
|
24
25
|
type: :runtime
|
|
25
|
-
prerelease: false
|
|
26
26
|
version_requirements: *id001
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: multi_json
|
|
29
|
+
prerelease: false
|
|
29
30
|
requirement: &id002 !ruby/object:Gem::Requirement
|
|
30
31
|
none: false
|
|
31
32
|
requirements:
|
|
@@ -33,10 +34,10 @@ dependencies:
|
|
|
33
34
|
- !ruby/object:Gem::Version
|
|
34
35
|
version: 0.0.5
|
|
35
36
|
type: :runtime
|
|
36
|
-
prerelease: false
|
|
37
37
|
version_requirements: *id002
|
|
38
38
|
- !ruby/object:Gem::Dependency
|
|
39
39
|
name: nokogiri
|
|
40
|
+
prerelease: false
|
|
40
41
|
requirement: &id003 !ruby/object:Gem::Requirement
|
|
41
42
|
none: false
|
|
42
43
|
requirements:
|
|
@@ -44,10 +45,10 @@ dependencies:
|
|
|
44
45
|
- !ruby/object:Gem::Version
|
|
45
46
|
version: 1.4.2
|
|
46
47
|
type: :runtime
|
|
47
|
-
prerelease: false
|
|
48
48
|
version_requirements: *id003
|
|
49
49
|
- !ruby/object:Gem::Dependency
|
|
50
50
|
name: oauth
|
|
51
|
+
prerelease: false
|
|
51
52
|
requirement: &id004 !ruby/object:Gem::Requirement
|
|
52
53
|
none: false
|
|
53
54
|
requirements:
|
|
@@ -55,10 +56,10 @@ dependencies:
|
|
|
55
56
|
- !ruby/object:Gem::Version
|
|
56
57
|
version: 0.4.0
|
|
57
58
|
type: :runtime
|
|
58
|
-
prerelease: false
|
|
59
59
|
version_requirements: *id004
|
|
60
60
|
- !ruby/object:Gem::Dependency
|
|
61
61
|
name: faraday
|
|
62
|
+
prerelease: false
|
|
62
63
|
requirement: &id005 !ruby/object:Gem::Requirement
|
|
63
64
|
none: false
|
|
64
65
|
requirements:
|
|
@@ -66,109 +67,88 @@ dependencies:
|
|
|
66
67
|
- !ruby/object:Gem::Version
|
|
67
68
|
version: 0.6.1
|
|
68
69
|
type: :runtime
|
|
69
|
-
prerelease: false
|
|
70
70
|
version_requirements: *id005
|
|
71
71
|
- !ruby/object:Gem::Dependency
|
|
72
72
|
name: oauth2
|
|
73
|
+
prerelease: false
|
|
73
74
|
requirement: &id006 !ruby/object:Gem::Requirement
|
|
74
75
|
none: false
|
|
75
76
|
requirements:
|
|
76
77
|
- - ~>
|
|
77
78
|
- !ruby/object:Gem::Version
|
|
78
|
-
version: 0.
|
|
79
|
+
version: 0.4.1
|
|
79
80
|
type: :runtime
|
|
80
|
-
prerelease: false
|
|
81
81
|
version_requirements: *id006
|
|
82
82
|
- !ruby/object:Gem::Dependency
|
|
83
|
-
name:
|
|
83
|
+
name: evernote
|
|
84
|
+
prerelease: false
|
|
84
85
|
requirement: &id007 !ruby/object:Gem::Requirement
|
|
85
86
|
none: false
|
|
86
87
|
requirements:
|
|
87
|
-
- -
|
|
88
|
+
- - ~>
|
|
88
89
|
- !ruby/object:Gem::Version
|
|
89
|
-
version: 0.
|
|
90
|
+
version: "0.9"
|
|
90
91
|
type: :development
|
|
91
|
-
prerelease: false
|
|
92
92
|
version_requirements: *id007
|
|
93
93
|
- !ruby/object:Gem::Dependency
|
|
94
|
-
name:
|
|
94
|
+
name: rack-test
|
|
95
|
+
prerelease: false
|
|
95
96
|
requirement: &id008 !ruby/object:Gem::Requirement
|
|
96
97
|
none: false
|
|
97
98
|
requirements:
|
|
98
|
-
- -
|
|
99
|
+
- - ~>
|
|
99
100
|
- !ruby/object:Gem::Version
|
|
100
|
-
version: "0"
|
|
101
|
+
version: "0.5"
|
|
101
102
|
type: :development
|
|
102
|
-
prerelease: false
|
|
103
103
|
version_requirements: *id008
|
|
104
104
|
- !ruby/object:Gem::Dependency
|
|
105
|
-
name:
|
|
105
|
+
name: rake
|
|
106
|
+
prerelease: false
|
|
106
107
|
requirement: &id009 !ruby/object:Gem::Requirement
|
|
107
108
|
none: false
|
|
108
109
|
requirements:
|
|
109
110
|
- - ~>
|
|
110
111
|
- !ruby/object:Gem::Version
|
|
111
|
-
version: 0.
|
|
112
|
+
version: "0.8"
|
|
112
113
|
type: :development
|
|
113
|
-
prerelease: false
|
|
114
114
|
version_requirements: *id009
|
|
115
115
|
- !ruby/object:Gem::Dependency
|
|
116
116
|
name: rspec
|
|
117
|
+
prerelease: false
|
|
117
118
|
requirement: &id010 !ruby/object:Gem::Requirement
|
|
118
119
|
none: false
|
|
119
120
|
requirements:
|
|
120
121
|
- - ~>
|
|
121
122
|
- !ruby/object:Gem::Version
|
|
122
|
-
version:
|
|
123
|
+
version: "2.5"
|
|
123
124
|
type: :development
|
|
124
|
-
prerelease: false
|
|
125
125
|
version_requirements: *id010
|
|
126
126
|
- !ruby/object:Gem::Dependency
|
|
127
127
|
name: webmock
|
|
128
|
+
prerelease: false
|
|
128
129
|
requirement: &id011 !ruby/object:Gem::Requirement
|
|
129
130
|
none: false
|
|
130
131
|
requirements:
|
|
131
132
|
- - ~>
|
|
132
133
|
- !ruby/object:Gem::Version
|
|
133
|
-
version: 1.
|
|
134
|
+
version: "1.6"
|
|
134
135
|
type: :development
|
|
135
|
-
prerelease: false
|
|
136
136
|
version_requirements: *id011
|
|
137
137
|
- !ruby/object:Gem::Dependency
|
|
138
|
-
name:
|
|
138
|
+
name: yard
|
|
139
|
+
prerelease: false
|
|
139
140
|
requirement: &id012 !ruby/object:Gem::Requirement
|
|
140
141
|
none: false
|
|
141
142
|
requirements:
|
|
142
143
|
- - ~>
|
|
143
144
|
- !ruby/object:Gem::Version
|
|
144
|
-
version: 0.
|
|
145
|
+
version: "0.6"
|
|
145
146
|
type: :development
|
|
146
|
-
prerelease: false
|
|
147
147
|
version_requirements: *id012
|
|
148
|
-
- !ruby/object:Gem::Dependency
|
|
149
|
-
name: json_pure
|
|
150
|
-
requirement: &id013 !ruby/object:Gem::Requirement
|
|
151
|
-
none: false
|
|
152
|
-
requirements:
|
|
153
|
-
- - ~>
|
|
154
|
-
- !ruby/object:Gem::Version
|
|
155
|
-
version: 1.5.1
|
|
156
|
-
type: :development
|
|
157
|
-
prerelease: false
|
|
158
|
-
version_requirements: *id013
|
|
159
|
-
- !ruby/object:Gem::Dependency
|
|
160
|
-
name: evernote
|
|
161
|
-
requirement: &id014 !ruby/object:Gem::Requirement
|
|
162
|
-
none: false
|
|
163
|
-
requirements:
|
|
164
|
-
- - ~>
|
|
165
|
-
- !ruby/object:Gem::Version
|
|
166
|
-
version: 0.9.0
|
|
167
|
-
type: :development
|
|
168
|
-
prerelease: false
|
|
169
|
-
version_requirements: *id014
|
|
170
148
|
description: OAuth strategies for OmniAuth.
|
|
171
|
-
email:
|
|
149
|
+
email:
|
|
150
|
+
- michael@intridea.com
|
|
151
|
+
- sferik@gmail.com
|
|
172
152
|
executables: []
|
|
173
153
|
|
|
174
154
|
extensions: []
|
|
@@ -176,6 +156,14 @@ extensions: []
|
|
|
176
156
|
extra_rdoc_files: []
|
|
177
157
|
|
|
178
158
|
files:
|
|
159
|
+
- .gemtest
|
|
160
|
+
- .rspec
|
|
161
|
+
- .yardopts
|
|
162
|
+
- Gemfile
|
|
163
|
+
- LICENSE
|
|
164
|
+
- README.rdoc
|
|
165
|
+
- Rakefile
|
|
166
|
+
- autotest/discover.rb
|
|
179
167
|
- lib/oa-oauth.rb
|
|
180
168
|
- lib/omniauth/oauth.rb
|
|
181
169
|
- lib/omniauth/strategies/bitly.rb
|
|
@@ -215,9 +203,44 @@ files:
|
|
|
215
203
|
- lib/omniauth/strategies/xauth.rb
|
|
216
204
|
- lib/omniauth/strategies/yahoo.rb
|
|
217
205
|
- lib/omniauth/strategies/you_tube.rb
|
|
218
|
-
-
|
|
219
|
-
-
|
|
220
|
-
|
|
206
|
+
- oa-oauth.gemspec
|
|
207
|
+
- spec/fixtures/basecamp_200.xml
|
|
208
|
+
- spec/fixtures/campfire_200.json
|
|
209
|
+
- spec/omniauth/strategies/bitly_spec.rb
|
|
210
|
+
- spec/omniauth/strategies/dailymile_spec.rb
|
|
211
|
+
- spec/omniauth/strategies/doit_spec.rb
|
|
212
|
+
- spec/omniauth/strategies/dopplr_spec.rb
|
|
213
|
+
- spec/omniauth/strategies/evernote_spec.rb
|
|
214
|
+
- spec/omniauth/strategies/facebook_spec.rb
|
|
215
|
+
- spec/omniauth/strategies/foursquare_spec.rb
|
|
216
|
+
- spec/omniauth/strategies/github_spec.rb
|
|
217
|
+
- spec/omniauth/strategies/goodreads_spec.rb
|
|
218
|
+
- spec/omniauth/strategies/google_spec.rb
|
|
219
|
+
- spec/omniauth/strategies/gowalla_spec.rb
|
|
220
|
+
- spec/omniauth/strategies/hyves_spec.rb
|
|
221
|
+
- spec/omniauth/strategies/identica_spec.rb
|
|
222
|
+
- spec/omniauth/strategies/linked_in_spec.rb
|
|
223
|
+
- spec/omniauth/strategies/meetup_spec.rb
|
|
224
|
+
- spec/omniauth/strategies/miso_spec.rb
|
|
225
|
+
- spec/omniauth/strategies/netflix_spec.rb
|
|
226
|
+
- spec/omniauth/strategies/oauth2_spec.rb
|
|
227
|
+
- spec/omniauth/strategies/oauth_spec.rb
|
|
228
|
+
- spec/omniauth/strategies/salesforce_spec.rb
|
|
229
|
+
- spec/omniauth/strategies/smug_mug_spec.rb
|
|
230
|
+
- spec/omniauth/strategies/sound_cloud_spec.rb
|
|
231
|
+
- spec/omniauth/strategies/teambox_spec.rb
|
|
232
|
+
- spec/omniauth/strategies/thirty_seven_signals_spec.rb
|
|
233
|
+
- spec/omniauth/strategies/trade_me_spec.rb
|
|
234
|
+
- spec/omniauth/strategies/trip_it_spec.rb
|
|
235
|
+
- spec/omniauth/strategies/tumblr_spec.rb
|
|
236
|
+
- spec/omniauth/strategies/twitter_spec.rb
|
|
237
|
+
- spec/omniauth/strategies/type_pad_spec.rb
|
|
238
|
+
- spec/omniauth/strategies/vimeo_spec.rb
|
|
239
|
+
- spec/omniauth/strategies/vkontakte_spec.rb
|
|
240
|
+
- spec/omniauth/strategies/yahoo_spec.rb
|
|
241
|
+
- spec/omniauth/strategies/you_tube_spec.rb
|
|
242
|
+
- spec/spec_helper.rb
|
|
243
|
+
- spec/support/shared_examples.rb
|
|
221
244
|
homepage: http://github.com/intridea/omniauth
|
|
222
245
|
licenses: []
|
|
223
246
|
|
|
@@ -231,25 +254,56 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
231
254
|
requirements:
|
|
232
255
|
- - ">="
|
|
233
256
|
- !ruby/object:Gem::Version
|
|
234
|
-
hash: -2020535135575110083
|
|
235
|
-
segments:
|
|
236
|
-
- 0
|
|
237
257
|
version: "0"
|
|
238
258
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
239
259
|
none: false
|
|
240
260
|
requirements:
|
|
241
261
|
- - ">="
|
|
242
262
|
- !ruby/object:Gem::Version
|
|
243
|
-
|
|
244
|
-
segments:
|
|
245
|
-
- 0
|
|
246
|
-
version: "0"
|
|
263
|
+
version: 1.3.6
|
|
247
264
|
requirements: []
|
|
248
265
|
|
|
249
266
|
rubyforge_project:
|
|
250
|
-
rubygems_version: 1.
|
|
267
|
+
rubygems_version: 1.7.2
|
|
251
268
|
signing_key:
|
|
252
269
|
specification_version: 3
|
|
253
270
|
summary: OAuth strategies for OmniAuth.
|
|
254
|
-
test_files:
|
|
255
|
-
|
|
271
|
+
test_files:
|
|
272
|
+
- spec/fixtures/basecamp_200.xml
|
|
273
|
+
- spec/fixtures/campfire_200.json
|
|
274
|
+
- spec/omniauth/strategies/bitly_spec.rb
|
|
275
|
+
- spec/omniauth/strategies/dailymile_spec.rb
|
|
276
|
+
- spec/omniauth/strategies/doit_spec.rb
|
|
277
|
+
- spec/omniauth/strategies/dopplr_spec.rb
|
|
278
|
+
- spec/omniauth/strategies/evernote_spec.rb
|
|
279
|
+
- spec/omniauth/strategies/facebook_spec.rb
|
|
280
|
+
- spec/omniauth/strategies/foursquare_spec.rb
|
|
281
|
+
- spec/omniauth/strategies/github_spec.rb
|
|
282
|
+
- spec/omniauth/strategies/goodreads_spec.rb
|
|
283
|
+
- spec/omniauth/strategies/google_spec.rb
|
|
284
|
+
- spec/omniauth/strategies/gowalla_spec.rb
|
|
285
|
+
- spec/omniauth/strategies/hyves_spec.rb
|
|
286
|
+
- spec/omniauth/strategies/identica_spec.rb
|
|
287
|
+
- spec/omniauth/strategies/linked_in_spec.rb
|
|
288
|
+
- spec/omniauth/strategies/meetup_spec.rb
|
|
289
|
+
- spec/omniauth/strategies/miso_spec.rb
|
|
290
|
+
- spec/omniauth/strategies/netflix_spec.rb
|
|
291
|
+
- spec/omniauth/strategies/oauth2_spec.rb
|
|
292
|
+
- spec/omniauth/strategies/oauth_spec.rb
|
|
293
|
+
- spec/omniauth/strategies/salesforce_spec.rb
|
|
294
|
+
- spec/omniauth/strategies/smug_mug_spec.rb
|
|
295
|
+
- spec/omniauth/strategies/sound_cloud_spec.rb
|
|
296
|
+
- spec/omniauth/strategies/teambox_spec.rb
|
|
297
|
+
- spec/omniauth/strategies/thirty_seven_signals_spec.rb
|
|
298
|
+
- spec/omniauth/strategies/trade_me_spec.rb
|
|
299
|
+
- spec/omniauth/strategies/trip_it_spec.rb
|
|
300
|
+
- spec/omniauth/strategies/tumblr_spec.rb
|
|
301
|
+
- spec/omniauth/strategies/twitter_spec.rb
|
|
302
|
+
- spec/omniauth/strategies/type_pad_spec.rb
|
|
303
|
+
- spec/omniauth/strategies/vimeo_spec.rb
|
|
304
|
+
- spec/omniauth/strategies/vkontakte_spec.rb
|
|
305
|
+
- spec/omniauth/strategies/yahoo_spec.rb
|
|
306
|
+
- spec/omniauth/strategies/you_tube_spec.rb
|
|
307
|
+
- spec/spec_helper.rb
|
|
308
|
+
- spec/support/shared_examples.rb
|
|
309
|
+
has_rdoc:
|