devise_oauth2_providable 1.1.1 → 1.1.2
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/.rvmrc +1 -1
- data/app/models/devise/oauth2_providable/access_token.rb +2 -0
- data/app/models/devise/oauth2_providable/client.rb +2 -0
- data/app/models/devise/oauth2_providable/refresh_token.rb +3 -0
- data/devise_oauth2_providable.gemspec +1 -1
- data/lib/devise/oauth2_providable/expirable_token.rb +2 -1
- data/lib/devise/oauth2_providable/strategies/oauth2_authorization_code_grant_type_strategy.rb +1 -1
- data/lib/devise/oauth2_providable/strategies/oauth2_grant_type_strategy.rb +1 -0
- data/lib/devise/oauth2_providable/strategies/oauth2_password_grant_type_strategy.rb +1 -1
- data/lib/devise/oauth2_providable/strategies/oauth2_providable_strategy.rb +1 -1
- data/lib/devise/oauth2_providable/strategies/oauth2_refresh_token_grant_type_strategy.rb +1 -1
- data/lib/devise/oauth2_providable/version.rb +1 -1
- data/spec/dummy/db/migrate/20111014142838_create_users.rb +2 -1
- data/spec/integration/oauth2_authorization_token_grant_type_strategy_spec.rb +1 -1
- data/spec/models/access_token_spec.rb +2 -0
- data/spec/models/authorization_code_spec.rb +2 -0
- data/spec/models/refresh_token_spec.rb +3 -0
- data/spec/routing/authorizations_routing_spec.rb +3 -6
- data/spec/routing/tokens_routing_spec.rb +1 -4
- data/spec/support/inject_engine_routes_into_application.rb +1 -1
- data/spec/support/match_json.rb +1 -1
- metadata +157 -172
data/.rvmrc
CHANGED
@@ -1 +1 @@
|
|
1
|
-
rvm use
|
1
|
+
rvm use @devise_oauth2_providable --create
|
@@ -4,6 +4,8 @@ class Devise::Oauth2Providable::AccessToken < ActiveRecord::Base
|
|
4
4
|
before_validation :restrict_expires_at, :on => :create, :if => :refresh_token
|
5
5
|
belongs_to :refresh_token
|
6
6
|
|
7
|
+
attr_accessible :refresh_token
|
8
|
+
|
7
9
|
def token_response
|
8
10
|
response = {
|
9
11
|
:access_token => token,
|
@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
|
|
18
18
|
s.add_runtime_dependency(%q<devise>, [">= 1.4.3"])
|
19
19
|
s.add_runtime_dependency(%q<rack-oauth2>, ["~> 0.11.0"])
|
20
20
|
s.add_development_dependency(%q<rspec-rails>, ['2.6.1'])
|
21
|
-
s.add_development_dependency(%q<sqlite3>, ['1.3.
|
21
|
+
s.add_development_dependency(%q<sqlite3>, ['1.3.5'])
|
22
22
|
s.add_development_dependency(%q<shoulda-matchers>, ['1.0.0.beta3'])
|
23
23
|
s.add_development_dependency(%q<pry>, ['0.9.6.2'])
|
24
24
|
s.add_development_dependency(%q<factory_girl>, ['2.2.0'])
|
@@ -14,6 +14,8 @@ module Devise
|
|
14
14
|
belongs_to :user
|
15
15
|
belongs_to :client
|
16
16
|
|
17
|
+
attr_accessible :user, :client
|
18
|
+
|
17
19
|
after_initialize :init_token, :on => :create, :unless => :token?
|
18
20
|
after_initialize :init_expires_at, :on => :create, :unless => :expires_at?
|
19
21
|
validates :expires_at, :presence => true
|
@@ -54,4 +56,3 @@ module Devise
|
|
54
56
|
end
|
55
57
|
|
56
58
|
ActiveRecord::Base.send :include, Devise::Oauth2Providable::ExpirableToken
|
57
|
-
|
@@ -11,7 +11,7 @@ module Devise
|
|
11
11
|
resource = mapping.to.find_for_authentication(mapping.to.authentication_keys.first => params[:username])
|
12
12
|
if validate(resource) { resource.valid_password?(params[:password]) }
|
13
13
|
success! resource
|
14
|
-
|
14
|
+
else
|
15
15
|
oauth_error! :invalid_grant, 'invalid password authentication request'
|
16
16
|
end
|
17
17
|
end
|
@@ -11,7 +11,7 @@ module Devise
|
|
11
11
|
if refresh_token = client.refresh_tokens.find_by_token(params[:refresh_token])
|
12
12
|
env[Devise::Oauth2Providable::REFRESH_TOKEN_ENV_REF] = refresh_token
|
13
13
|
success! refresh_token.user
|
14
|
-
|
14
|
+
else
|
15
15
|
oauth_error! :invalid_grant, 'invalid refresh token'
|
16
16
|
end
|
17
17
|
end
|
@@ -7,7 +7,7 @@ describe Devise::Strategies::Oauth2AuthorizationCodeGrantTypeStrategy do
|
|
7
7
|
with :client
|
8
8
|
with :user
|
9
9
|
before do
|
10
|
-
@authorization_code = user.authorization_codes.create(:
|
10
|
+
@authorization_code = user.authorization_codes.create!(:client => client, :redirect_uri => client.redirect_uri)
|
11
11
|
params = {
|
12
12
|
:grant_type => 'authorization_code',
|
13
13
|
:client_id => client.identifier,
|
@@ -11,7 +11,9 @@ describe Devise::Oauth2Providable::AccessToken do
|
|
11
11
|
it { should validate_presence_of :token }
|
12
12
|
it { should validate_uniqueness_of :token }
|
13
13
|
it { should belong_to :user }
|
14
|
+
it { should allow_mass_assignment_of :user }
|
14
15
|
it { should belong_to :client }
|
16
|
+
it { should allow_mass_assignment_of :client }
|
15
17
|
it { should validate_presence_of :client }
|
16
18
|
it { should validate_presence_of :expires_at }
|
17
19
|
it { should belong_to :refresh_token }
|
@@ -9,7 +9,9 @@ describe Devise::Oauth2Providable::AuthorizationCode do
|
|
9
9
|
it { should validate_presence_of :token }
|
10
10
|
it { should validate_uniqueness_of :token }
|
11
11
|
it { should belong_to :user }
|
12
|
+
it { should allow_mass_assignment_of :user }
|
12
13
|
it { should belong_to :client }
|
14
|
+
it { should allow_mass_assignment_of :client }
|
13
15
|
it { should validate_presence_of :client }
|
14
16
|
it { should validate_presence_of :expires_at }
|
15
17
|
it { should have_db_index :client_id }
|
@@ -11,10 +11,13 @@ describe Devise::Oauth2Providable::RefreshToken do
|
|
11
11
|
it { should validate_presence_of :token }
|
12
12
|
it { should validate_uniqueness_of :token }
|
13
13
|
it { should belong_to :user }
|
14
|
+
it { should allow_mass_assignment_of :user }
|
14
15
|
it { should belong_to :client }
|
16
|
+
it { should allow_mass_assignment_of :client }
|
15
17
|
it { should validate_presence_of :client }
|
16
18
|
it { should validate_presence_of :expires_at }
|
17
19
|
it { should have_many :access_tokens }
|
20
|
+
it { should allow_mass_assignment_of :access_tokens }
|
18
21
|
it { should have_db_index :client_id }
|
19
22
|
it { should have_db_index :user_id }
|
20
23
|
it { should have_db_index(:token).unique(true) }
|
@@ -1,17 +1,14 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe Devise::Oauth2Providable::AuthorizationsController do
|
4
|
-
before :all do
|
5
|
-
Devise::Oauth2Providable::Engine.load_engine_routes
|
6
|
-
end
|
7
4
|
describe 'routing' do
|
8
|
-
|
5
|
+
pending 'routes POST /oauth2/authorizations' do
|
9
6
|
post('/oauth2/authorizations').should route_to('devise/oauth2_providable/authorizations#create')
|
10
7
|
end
|
11
|
-
|
8
|
+
pending 'routes GET /oauth2/authorize' do
|
12
9
|
get('/oauth2/authorize').should route_to('devise/oauth2_providable/authorizations#new')
|
13
10
|
end
|
14
|
-
|
11
|
+
pending 'routes POST /oauth2/authorize' do
|
15
12
|
#FIXME: this is valid, but the route is not being loaded into the test
|
16
13
|
post('/oauth2/authorize').should route_to('devise/oauth2_providable/authorizations#new')
|
17
14
|
end
|
@@ -1,11 +1,8 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe Devise::Oauth2Providable::TokensController do
|
4
|
-
before :all do
|
5
|
-
Devise::Oauth2Providable::Engine.load_engine_routes
|
6
|
-
end
|
7
4
|
describe 'routing' do
|
8
|
-
|
5
|
+
pending 'routes POST /oauth2/token' do
|
9
6
|
post('/oauth2/token').should route_to('devise/oauth2_providable/tokens#create')
|
10
7
|
end
|
11
8
|
end
|
data/spec/support/match_json.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# "{'foo': 'bar'}".should match_json {:foo => :bar}
|
2
2
|
RSpec::Matchers.define :match_json do |expected|
|
3
3
|
match do |actual|
|
4
|
-
ActiveSupport::JSON.backend.
|
4
|
+
ActiveSupport::JSON.backend.load(actual) == ActiveSupport::JSON.backend.load(expected.to_json)
|
5
5
|
end
|
6
6
|
end
|
metadata
CHANGED
@@ -1,196 +1,184 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: devise_oauth2_providable
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.1.2
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 1
|
8
|
-
- 1
|
9
|
-
- 1
|
10
|
-
version: 1.1.1
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Ryan Sonnek
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
12
|
+
date: 2012-07-10 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rails
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
22
17
|
none: false
|
23
|
-
requirements:
|
24
|
-
- -
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
hash: 3
|
27
|
-
segments:
|
28
|
-
- 3
|
29
|
-
- 1
|
30
|
-
- 0
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
31
21
|
version: 3.1.0
|
32
|
-
requirement: *id001
|
33
|
-
prerelease: false
|
34
|
-
name: rails
|
35
22
|
type: :runtime
|
36
|
-
- !ruby/object:Gem::Dependency
|
37
|
-
version_requirements: &id002 !ruby/object:Gem::Requirement
|
38
|
-
none: false
|
39
|
-
requirements:
|
40
|
-
- - ">="
|
41
|
-
- !ruby/object:Gem::Version
|
42
|
-
hash: 1
|
43
|
-
segments:
|
44
|
-
- 1
|
45
|
-
- 4
|
46
|
-
- 3
|
47
|
-
version: 1.4.3
|
48
|
-
requirement: *id002
|
49
23
|
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 3.1.0
|
30
|
+
- !ruby/object:Gem::Dependency
|
50
31
|
name: devise
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: 1.4.3
|
51
38
|
type: :runtime
|
52
|
-
|
53
|
-
version_requirements:
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
54
41
|
none: false
|
55
|
-
requirements:
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 1.4.3
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: rack-oauth2
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
56
51
|
- - ~>
|
57
|
-
- !ruby/object:Gem::Version
|
58
|
-
hash: 51
|
59
|
-
segments:
|
60
|
-
- 0
|
61
|
-
- 11
|
62
|
-
- 0
|
52
|
+
- !ruby/object:Gem::Version
|
63
53
|
version: 0.11.0
|
64
|
-
requirement: *id003
|
65
|
-
prerelease: false
|
66
|
-
name: rack-oauth2
|
67
54
|
type: :runtime
|
68
|
-
- !ruby/object:Gem::Dependency
|
69
|
-
version_requirements: &id004 !ruby/object:Gem::Requirement
|
70
|
-
none: false
|
71
|
-
requirements:
|
72
|
-
- - "="
|
73
|
-
- !ruby/object:Gem::Version
|
74
|
-
hash: 21
|
75
|
-
segments:
|
76
|
-
- 2
|
77
|
-
- 6
|
78
|
-
- 1
|
79
|
-
version: 2.6.1
|
80
|
-
requirement: *id004
|
81
55
|
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 0.11.0
|
62
|
+
- !ruby/object:Gem::Dependency
|
82
63
|
name: rspec-rails
|
83
|
-
|
84
|
-
- !ruby/object:Gem::Dependency
|
85
|
-
version_requirements: &id005 !ruby/object:Gem::Requirement
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
86
65
|
none: false
|
87
|
-
requirements:
|
88
|
-
- -
|
89
|
-
- !ruby/object:Gem::Version
|
90
|
-
|
91
|
-
|
92
|
-
- 1
|
93
|
-
- 3
|
94
|
-
- 4
|
95
|
-
version: 1.3.4
|
96
|
-
requirement: *id005
|
66
|
+
requirements:
|
67
|
+
- - '='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: 2.6.1
|
70
|
+
type: :development
|
97
71
|
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - '='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: 2.6.1
|
78
|
+
- !ruby/object:Gem::Dependency
|
98
79
|
name: sqlite3
|
99
|
-
|
100
|
-
- !ruby/object:Gem::Dependency
|
101
|
-
version_requirements: &id006 !ruby/object:Gem::Requirement
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
102
81
|
none: false
|
103
|
-
requirements:
|
104
|
-
- -
|
105
|
-
- !ruby/object:Gem::Version
|
106
|
-
|
107
|
-
|
108
|
-
- 1
|
109
|
-
- 0
|
110
|
-
- 0
|
111
|
-
- beta
|
112
|
-
- 3
|
113
|
-
version: 1.0.0.beta3
|
114
|
-
requirement: *id006
|
82
|
+
requirements:
|
83
|
+
- - '='
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: 1.3.5
|
86
|
+
type: :development
|
115
87
|
prerelease: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - '='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: 1.3.5
|
94
|
+
- !ruby/object:Gem::Dependency
|
116
95
|
name: shoulda-matchers
|
117
|
-
|
118
|
-
- !ruby/object:Gem::Dependency
|
119
|
-
version_requirements: &id007 !ruby/object:Gem::Requirement
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
120
97
|
none: false
|
121
|
-
requirements:
|
122
|
-
- -
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
|
125
|
-
|
126
|
-
- 0
|
127
|
-
- 9
|
128
|
-
- 6
|
129
|
-
- 2
|
130
|
-
version: 0.9.6.2
|
131
|
-
requirement: *id007
|
98
|
+
requirements:
|
99
|
+
- - '='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: 1.0.0.beta3
|
102
|
+
type: :development
|
132
103
|
prerelease: false
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - '='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: 1.0.0.beta3
|
110
|
+
- !ruby/object:Gem::Dependency
|
133
111
|
name: pry
|
134
|
-
|
135
|
-
- !ruby/object:Gem::Dependency
|
136
|
-
version_requirements: &id008 !ruby/object:Gem::Requirement
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
137
113
|
none: false
|
138
|
-
requirements:
|
139
|
-
- -
|
140
|
-
- !ruby/object:Gem::Version
|
141
|
-
|
142
|
-
|
143
|
-
- 2
|
144
|
-
- 2
|
145
|
-
- 0
|
146
|
-
version: 2.2.0
|
147
|
-
requirement: *id008
|
114
|
+
requirements:
|
115
|
+
- - '='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 0.9.6.2
|
118
|
+
type: :development
|
148
119
|
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - '='
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: 0.9.6.2
|
126
|
+
- !ruby/object:Gem::Dependency
|
149
127
|
name: factory_girl
|
150
|
-
|
151
|
-
- !ruby/object:Gem::Dependency
|
152
|
-
version_requirements: &id009 !ruby/object:Gem::Requirement
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
153
129
|
none: false
|
154
|
-
requirements:
|
155
|
-
- -
|
156
|
-
- !ruby/object:Gem::Version
|
157
|
-
|
158
|
-
|
159
|
-
- 0
|
160
|
-
- 0
|
161
|
-
- 1
|
162
|
-
version: 0.0.1
|
163
|
-
requirement: *id009
|
130
|
+
requirements:
|
131
|
+
- - '='
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: 2.2.0
|
134
|
+
type: :development
|
164
135
|
prerelease: false
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - '='
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: 2.2.0
|
142
|
+
- !ruby/object:Gem::Dependency
|
165
143
|
name: factory_girl_rspec
|
166
|
-
|
167
|
-
- !ruby/object:Gem::Dependency
|
168
|
-
version_requirements: &id010 !ruby/object:Gem::Requirement
|
144
|
+
requirement: !ruby/object:Gem::Requirement
|
169
145
|
none: false
|
170
|
-
requirements:
|
171
|
-
- -
|
172
|
-
- !ruby/object:Gem::Version
|
173
|
-
|
174
|
-
|
175
|
-
- 0
|
176
|
-
- 9
|
177
|
-
- 2
|
178
|
-
- 2
|
179
|
-
version: 0.9.2.2
|
180
|
-
requirement: *id010
|
146
|
+
requirements:
|
147
|
+
- - '='
|
148
|
+
- !ruby/object:Gem::Version
|
149
|
+
version: 0.0.1
|
150
|
+
type: :development
|
181
151
|
prerelease: false
|
152
|
+
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
154
|
+
requirements:
|
155
|
+
- - '='
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: 0.0.1
|
158
|
+
- !ruby/object:Gem::Dependency
|
182
159
|
name: rake
|
160
|
+
requirement: !ruby/object:Gem::Requirement
|
161
|
+
none: false
|
162
|
+
requirements:
|
163
|
+
- - '='
|
164
|
+
- !ruby/object:Gem::Version
|
165
|
+
version: 0.9.2.2
|
183
166
|
type: :development
|
184
|
-
|
185
|
-
|
167
|
+
prerelease: false
|
168
|
+
version_requirements: !ruby/object:Gem::Requirement
|
169
|
+
none: false
|
170
|
+
requirements:
|
171
|
+
- - '='
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: 0.9.2.2
|
174
|
+
description: Rails3 engine that adds OAuth2 Provider support to any application built
|
175
|
+
with Devise authentication
|
176
|
+
email:
|
186
177
|
- ryan@socialcast.com
|
187
178
|
executables: []
|
188
|
-
|
189
179
|
extensions: []
|
190
|
-
|
191
180
|
extra_rdoc_files: []
|
192
|
-
|
193
|
-
files:
|
181
|
+
files:
|
194
182
|
- .gitignore
|
195
183
|
- .rvmrc
|
196
184
|
- CONTRIBUTORS.txt
|
@@ -280,40 +268,37 @@ files:
|
|
280
268
|
- spec/spec_helper.rb
|
281
269
|
- spec/support/inject_engine_routes_into_application.rb
|
282
270
|
- spec/support/match_json.rb
|
283
|
-
homepage:
|
271
|
+
homepage: ''
|
284
272
|
licenses: []
|
285
|
-
|
286
273
|
post_install_message:
|
287
274
|
rdoc_options: []
|
288
|
-
|
289
|
-
require_paths:
|
275
|
+
require_paths:
|
290
276
|
- lib
|
291
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
277
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
292
278
|
none: false
|
293
|
-
requirements:
|
294
|
-
- -
|
295
|
-
- !ruby/object:Gem::Version
|
296
|
-
|
297
|
-
segments:
|
279
|
+
requirements:
|
280
|
+
- - ! '>='
|
281
|
+
- !ruby/object:Gem::Version
|
282
|
+
version: '0'
|
283
|
+
segments:
|
298
284
|
- 0
|
299
|
-
|
300
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
285
|
+
hash: 2996093028811808699
|
286
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
301
287
|
none: false
|
302
|
-
requirements:
|
303
|
-
- -
|
304
|
-
- !ruby/object:Gem::Version
|
305
|
-
|
306
|
-
segments:
|
288
|
+
requirements:
|
289
|
+
- - ! '>='
|
290
|
+
- !ruby/object:Gem::Version
|
291
|
+
version: '0'
|
292
|
+
segments:
|
307
293
|
- 0
|
308
|
-
|
294
|
+
hash: 2996093028811808699
|
309
295
|
requirements: []
|
310
|
-
|
311
296
|
rubyforge_project: devise_oauth2_providable
|
312
|
-
rubygems_version: 1.8.
|
297
|
+
rubygems_version: 1.8.24
|
313
298
|
signing_key:
|
314
299
|
specification_version: 3
|
315
300
|
summary: OAuth2 Provider for Rails3 applications
|
316
|
-
test_files:
|
301
|
+
test_files:
|
317
302
|
- spec/controllers/authorizations_controller_spec.rb
|
318
303
|
- spec/controllers/protected_controller_spec.rb
|
319
304
|
- spec/dummy/Rakefile
|