doorkeeper 0.3.0 → 0.4.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.
Files changed (176) hide show
  1. data/.gitignore +12 -0
  2. data/.rspec +1 -0
  3. data/.travis.yml +8 -0
  4. data/CHANGELOG.md +98 -0
  5. data/Gemfile +6 -0
  6. data/README.md +42 -6
  7. data/app/controllers/doorkeeper/application_controller.rb +4 -11
  8. data/app/controllers/doorkeeper/applications_controller.rb +7 -1
  9. data/app/controllers/doorkeeper/authorizations_controller.rb +11 -1
  10. data/app/controllers/doorkeeper/authorized_applications_controller.rb +3 -3
  11. data/app/controllers/doorkeeper/tokens_controller.rb +19 -5
  12. data/app/models/doorkeeper/access_grant.rb +28 -0
  13. data/app/models/doorkeeper/access_token.rb +65 -0
  14. data/app/models/doorkeeper/application.rb +54 -0
  15. data/app/views/doorkeeper/applications/index.html.erb +1 -1
  16. data/app/views/doorkeeper/authorizations/error.html.erb +1 -1
  17. data/app/views/doorkeeper/authorizations/new.html.erb +15 -15
  18. data/app/views/doorkeeper/authorized_applications/index.html.erb +1 -2
  19. data/config/locales/en.yml +3 -0
  20. data/doorkeeper.gemspec +28 -0
  21. data/gemfiles/gemfile.rails-3.1.x +7 -0
  22. data/gemfiles/gemfile.rails-3.2.x +7 -0
  23. data/lib/doorkeeper/config.rb +73 -12
  24. data/lib/doorkeeper/doorkeeper_for.rb +19 -15
  25. data/lib/doorkeeper/engine.rb +28 -0
  26. data/lib/doorkeeper/models/scopes.rb +13 -0
  27. data/lib/doorkeeper/oauth/access_token_request.rb +9 -20
  28. data/lib/doorkeeper/oauth/authorization/code.rb +1 -1
  29. data/lib/doorkeeper/oauth/authorization/token.rb +2 -2
  30. data/lib/doorkeeper/oauth/authorization_request.rb +18 -23
  31. data/lib/doorkeeper/oauth/client/credentials.rb +21 -0
  32. data/lib/doorkeeper/oauth/client/methods.rb +18 -0
  33. data/lib/doorkeeper/oauth/client.rb +27 -0
  34. data/lib/doorkeeper/oauth/client_credentials/creator.rb +29 -0
  35. data/lib/doorkeeper/oauth/client_credentials/issuer.rb +35 -0
  36. data/lib/doorkeeper/oauth/client_credentials/response.rb +42 -0
  37. data/lib/doorkeeper/oauth/client_credentials/validation.rb +33 -0
  38. data/lib/doorkeeper/oauth/client_credentials_request.rb +46 -0
  39. data/lib/doorkeeper/oauth/error.rb +9 -0
  40. data/lib/doorkeeper/oauth/error_response.rb +30 -0
  41. data/lib/doorkeeper/oauth/helpers/scope_checker.rb +2 -2
  42. data/lib/doorkeeper/oauth/password_access_token_request.rb +130 -0
  43. data/lib/doorkeeper/oauth/scopes.rb +60 -0
  44. data/lib/doorkeeper/version.rb +1 -1
  45. data/lib/doorkeeper.rb +23 -3
  46. data/lib/generators/doorkeeper/install_generator.rb +1 -0
  47. data/lib/generators/doorkeeper/templates/initializer.rb +12 -7
  48. data/lib/generators/doorkeeper/templates/migration.rb +1 -1
  49. data/lib/generators/doorkeeper/views_generator.rb +15 -0
  50. data/script/rails +6 -0
  51. data/script/run_all +11 -0
  52. data/spec/controllers/applications_controller_spec.rb +18 -0
  53. data/spec/controllers/authorizations_controller_spec.rb +131 -0
  54. data/spec/controllers/protected_resources_controller_spec.rb +308 -0
  55. data/spec/controllers/tokens_controller_spec.rb +34 -0
  56. data/spec/dummy/Rakefile +7 -0
  57. data/spec/dummy/app/assets/javascripts/application.js +9 -0
  58. data/spec/dummy/app/assets/stylesheets/application.css +7 -0
  59. data/spec/dummy/app/controllers/application_controller.rb +3 -0
  60. data/spec/dummy/app/controllers/full_protected_resources_controller.rb +12 -0
  61. data/spec/dummy/app/controllers/home_controller.rb +17 -0
  62. data/spec/dummy/app/controllers/semi_protected_resources_controller.rb +11 -0
  63. data/spec/dummy/app/helpers/application_helper.rb +5 -0
  64. data/spec/dummy/app/models/user.rb +11 -0
  65. data/spec/dummy/app/views/home/index.html.erb +0 -0
  66. data/spec/dummy/app/views/layouts/application.html.erb +16 -0
  67. data/spec/dummy/config/application.rb +53 -0
  68. data/spec/dummy/config/boot.rb +10 -0
  69. data/spec/dummy/config/database.yml +15 -0
  70. data/spec/dummy/config/environment.rb +5 -0
  71. data/spec/dummy/config/environments/development.rb +30 -0
  72. data/spec/dummy/config/environments/production.rb +60 -0
  73. data/spec/dummy/config/environments/test.rb +39 -0
  74. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  75. data/spec/dummy/config/initializers/doorkeeper.rb +41 -0
  76. data/spec/dummy/config/initializers/secret_token.rb +7 -0
  77. data/spec/dummy/config/initializers/session_store.rb +8 -0
  78. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  79. data/spec/dummy/config/locales/doorkeeper.en.yml +5 -0
  80. data/spec/dummy/config/routes.rb +8 -0
  81. data/spec/dummy/config.ru +4 -0
  82. data/spec/dummy/db/migrate/20111122132257_create_users.rb +9 -0
  83. data/spec/dummy/db/migrate/20120312140401_add_password_to_users.rb +5 -0
  84. data/spec/dummy/db/migrate/20120524202412_create_doorkeeper_tables.rb +42 -0
  85. data/spec/dummy/db/schema.rb +62 -0
  86. data/spec/dummy/public/404.html +26 -0
  87. data/spec/dummy/public/422.html +26 -0
  88. data/spec/dummy/public/500.html +26 -0
  89. data/spec/dummy/public/favicon.ico +0 -0
  90. data/spec/dummy/script/rails +6 -0
  91. data/spec/factories/access_grant.rb +9 -0
  92. data/spec/factories/access_token.rb +7 -0
  93. data/spec/factories/application.rb +6 -0
  94. data/spec/generators/install_generator_spec.rb +35 -0
  95. data/spec/generators/templates/routes.rb +3 -0
  96. data/spec/generators/views_generator_spec.rb +27 -0
  97. data/spec/lib/config_spec.rb +87 -0
  98. data/spec/lib/models/expirable_spec.rb +49 -0
  99. data/spec/lib/models/revocable_spec.rb +31 -0
  100. data/spec/lib/models/scopes_spec.rb +32 -0
  101. data/spec/lib/oauth/access_token_request_spec.rb +240 -0
  102. data/spec/lib/oauth/authorization/uri_builder_spec.rb +37 -0
  103. data/spec/lib/oauth/authorization_request_spec.rb +286 -0
  104. data/spec/lib/oauth/client/credentials_spec.rb +47 -0
  105. data/spec/lib/oauth/client/methods_spec.rb +54 -0
  106. data/spec/lib/oauth/client_credentials/creator_spec.rb +47 -0
  107. data/spec/lib/oauth/client_credentials/issuer_spec.rb +57 -0
  108. data/spec/lib/oauth/client_credentials/response_spec.rb +58 -0
  109. data/spec/lib/oauth/client_credentials/validation_spec.rb +29 -0
  110. data/spec/lib/oauth/client_credentials_integration_spec.rb +27 -0
  111. data/spec/lib/oauth/client_credentials_request_spec.rb +60 -0
  112. data/spec/lib/oauth/client_spec.rb +42 -0
  113. data/spec/lib/oauth/error_response_spec.rb +40 -0
  114. data/spec/lib/oauth/error_spec.rb +19 -0
  115. data/spec/lib/oauth/helpers/scope_checker_spec.rb +74 -0
  116. data/spec/lib/oauth/helpers/unique_token_spec.rb +38 -0
  117. data/spec/lib/oauth/helpers/uri_checker_spec.rb +64 -0
  118. data/spec/lib/oauth/password_access_token_request_spec.rb +152 -0
  119. data/spec/lib/oauth/scopes_spec.rb +115 -0
  120. data/spec/models/doorkeeper/access_grant_spec.rb +36 -0
  121. data/spec/models/doorkeeper/access_token_spec.rb +113 -0
  122. data/spec/models/doorkeeper/application_spec.rb +129 -0
  123. data/spec/requests/applications/applications_request_spec.rb +92 -0
  124. data/spec/requests/applications/authorized_applications_spec.rb +30 -0
  125. data/spec/requests/endpoints/authorization_spec.rb +63 -0
  126. data/spec/requests/endpoints/token_spec.rb +29 -0
  127. data/spec/requests/flows/authorization_code_errors_spec.rb +111 -0
  128. data/spec/requests/flows/authorization_code_spec.rb +125 -0
  129. data/spec/requests/flows/client_credentials_spec.rb +56 -0
  130. data/spec/requests/flows/implicit_grant_errors_spec.rb +31 -0
  131. data/spec/requests/flows/implicit_grant_spec.rb +19 -0
  132. data/spec/requests/flows/password_spec.rb +52 -0
  133. data/spec/requests/flows/refresh_token_spec.rb +66 -0
  134. data/spec/requests/flows/skip_authorization_spec.rb +40 -0
  135. data/spec/requests/protected_resources/private_api_spec.rb +43 -0
  136. data/spec/spec_helper.rb +1 -0
  137. data/spec/spec_helper_integration.rb +28 -0
  138. data/spec/support/dependencies/database_cleaner.rb +16 -0
  139. data/spec/support/dependencies/factory_girl.rb +5 -0
  140. data/spec/support/helpers/access_token_request_helper.rb +11 -0
  141. data/spec/support/helpers/authorization_request_helper.rb +32 -0
  142. data/spec/support/helpers/config_helper.rb +9 -0
  143. data/spec/support/helpers/model_helper.rb +45 -0
  144. data/spec/support/helpers/request_spec_helper.rb +72 -0
  145. data/spec/support/helpers/url_helper.rb +51 -0
  146. data/spec/support/shared/controllers_shared_context.rb +60 -0
  147. data/spec/support/shared/models_shared_examples.rb +44 -0
  148. metadata +163 -57
  149. data/app/controllers/doorkeeper/application_controller.rbc +0 -675
  150. data/app/controllers/doorkeeper/applications_controller.rbc +0 -954
  151. data/app/controllers/doorkeeper/authorizations_controller.rbc +0 -659
  152. data/app/controllers/doorkeeper/authorized_applications_controller.rbc +0 -393
  153. data/app/controllers/doorkeeper/tokens_controller.rbc +0 -423
  154. data/app/helpers/doorkeeper/application_helper.rbc +0 -127
  155. data/app/models/access_grant.rb +0 -31
  156. data/app/models/access_grant.rbc +0 -821
  157. data/app/models/access_token.rb +0 -70
  158. data/app/models/access_token.rbc +0 -979
  159. data/app/models/application.rb +0 -45
  160. data/app/models/application.rbc +0 -753
  161. data/config/initializers/form_errors.rbc +0 -272
  162. data/config/routes.rbc +0 -366
  163. data/lib/doorkeeper/config/scope.rb +0 -11
  164. data/lib/doorkeeper/config/scopes.rb +0 -61
  165. data/lib/doorkeeper/config/scopes_builder.rb +0 -18
  166. data/lib/doorkeeper/config.rbc +0 -1385
  167. data/lib/doorkeeper/doorkeeper_for.rbc +0 -1029
  168. data/lib/doorkeeper/engine.rbc +0 -318
  169. data/lib/doorkeeper/oauth/access_token_request.rbc +0 -2042
  170. data/lib/doorkeeper/oauth/authorization_request.rbc +0 -2272
  171. data/lib/doorkeeper/oauth/random_string.rbc +0 -437
  172. data/lib/doorkeeper/validations.rbc +0 -774
  173. data/lib/doorkeeper/version.rbc +0 -130
  174. data/lib/doorkeeper.rbc +0 -407
  175. data/lib/generators/doorkeeper/install_generator.rbc +0 -453
  176. data/lib/tasks/doorkeeper_tasks.rake.compiled.rbc +0 -40
@@ -1,423 +0,0 @@
1
- !RBIX
2
- 9595534255132031488
3
- x
4
- M
5
- 1
6
- n
7
- n
8
- x
9
- 10
10
- __script__
11
- i
12
- 35
13
- 99
14
- 7
15
- 0
16
- 45
17
- 1
18
- 2
19
- 43
20
- 3
21
- 45
22
- 1
23
- 4
24
- 49
25
- 5
26
- 3
27
- 13
28
- 99
29
- 12
30
- 7
31
- 6
32
- 12
33
- 7
34
- 7
35
- 12
36
- 65
37
- 12
38
- 49
39
- 8
40
- 4
41
- 15
42
- 49
43
- 6
44
- 0
45
- 15
46
- 2
47
- 11
48
- I
49
- 6
50
- I
51
- 0
52
- I
53
- 0
54
- I
55
- 0
56
- n
57
- p
58
- 9
59
- x
60
- 16
61
- TokensController
62
- x
63
- 10
64
- Doorkeeper
65
- n
66
- x
67
- 21
68
- ApplicationController
69
- n
70
- x
71
- 16
72
- open_class_under
73
- x
74
- 14
75
- __class_init__
76
- M
77
- 1
78
- n
79
- n
80
- x
81
- 16
82
- TokensController
83
- i
84
- 34
85
- 5
86
- 66
87
- 99
88
- 7
89
- 0
90
- 7
91
- 1
92
- 65
93
- 67
94
- 49
95
- 2
96
- 0
97
- 49
98
- 3
99
- 4
100
- 15
101
- 5
102
- 48
103
- 4
104
- 15
105
- 99
106
- 7
107
- 5
108
- 7
109
- 6
110
- 65
111
- 67
112
- 49
113
- 2
114
- 0
115
- 49
116
- 3
117
- 4
118
- 11
119
- I
120
- 5
121
- I
122
- 0
123
- I
124
- 0
125
- I
126
- 0
127
- n
128
- p
129
- 7
130
- x
131
- 6
132
- create
133
- M
134
- 1
135
- n
136
- n
137
- x
138
- 6
139
- create
140
- i
141
- 61
142
- 5
143
- 48
144
- 0
145
- 49
146
- 1
147
- 0
148
- 9
149
- 35
150
- 5
151
- 44
152
- 43
153
- 2
154
- 79
155
- 49
156
- 3
157
- 1
158
- 13
159
- 7
160
- 4
161
- 5
162
- 48
163
- 0
164
- 49
165
- 5
166
- 0
167
- 49
168
- 6
169
- 2
170
- 15
171
- 47
172
- 49
173
- 7
174
- 1
175
- 8
176
- 60
177
- 5
178
- 44
179
- 43
180
- 2
181
- 79
182
- 49
183
- 3
184
- 1
185
- 13
186
- 7
187
- 4
188
- 5
189
- 48
190
- 0
191
- 49
192
- 8
193
- 0
194
- 49
195
- 6
196
- 2
197
- 15
198
- 47
199
- 49
200
- 7
201
- 1
202
- 11
203
- I
204
- 5
205
- I
206
- 0
207
- I
208
- 0
209
- I
210
- 0
211
- n
212
- p
213
- 9
214
- x
215
- 5
216
- token
217
- x
218
- 9
219
- authorize
220
- x
221
- 4
222
- Hash
223
- x
224
- 16
225
- new_from_literal
226
- x
227
- 4
228
- json
229
- x
230
- 13
231
- authorization
232
- x
233
- 3
234
- []=
235
- x
236
- 6
237
- render
238
- x
239
- 14
240
- error_response
241
- p
242
- 11
243
- I
244
- -1
245
- I
246
- 2
247
- I
248
- 0
249
- I
250
- 3
251
- I
252
- 8
253
- I
254
- 4
255
- I
256
- 23
257
- I
258
- 6
259
- I
260
- 3c
261
- I
262
- 0
263
- I
264
- 3d
265
- x
266
- 87
267
- /Users/felipeelias/Applicake/doorkeeper/app/controllers/doorkeeper/tokens_controller.rb
268
- p
269
- 0
270
- x
271
- 17
272
- method_visibility
273
- x
274
- 15
275
- add_defn_method
276
- x
277
- 7
278
- private
279
- x
280
- 5
281
- token
282
- M
283
- 1
284
- n
285
- n
286
- x
287
- 5
288
- token
289
- i
290
- 43
291
- 39
292
- 0
293
- 13
294
- 10
295
- 42
296
- 15
297
- 45
298
- 1
299
- 2
300
- 43
301
- 3
302
- 43
303
- 4
304
- 13
305
- 71
306
- 5
307
- 47
308
- 9
309
- 34
310
- 47
311
- 49
312
- 6
313
- 0
314
- 13
315
- 5
316
- 48
317
- 7
318
- 47
319
- 49
320
- 8
321
- 1
322
- 15
323
- 8
324
- 40
325
- 5
326
- 48
327
- 7
328
- 49
329
- 5
330
- 1
331
- 38
332
- 0
333
- 11
334
- I
335
- 3
336
- I
337
- 0
338
- I
339
- 0
340
- I
341
- 0
342
- n
343
- p
344
- 9
345
- x
346
- 6
347
- @token
348
- x
349
- 10
350
- Doorkeeper
351
- n
352
- x
353
- 5
354
- OAuth
355
- x
356
- 18
357
- AccessTokenRequest
358
- x
359
- 3
360
- new
361
- x
362
- 8
363
- allocate
364
- x
365
- 6
366
- params
367
- x
368
- 10
369
- initialize
370
- p
371
- 5
372
- I
373
- -1
374
- I
375
- c
376
- I
377
- 0
378
- I
379
- d
380
- I
381
- 2b
382
- x
383
- 87
384
- /Users/felipeelias/Applicake/doorkeeper/app/controllers/doorkeeper/tokens_controller.rb
385
- p
386
- 0
387
- p
388
- 7
389
- I
390
- 2
391
- I
392
- 2
393
- I
394
- 10
395
- I
396
- a
397
- I
398
- 14
399
- I
400
- c
401
- I
402
- 22
403
- x
404
- 87
405
- /Users/felipeelias/Applicake/doorkeeper/app/controllers/doorkeeper/tokens_controller.rb
406
- p
407
- 0
408
- x
409
- 13
410
- attach_method
411
- p
412
- 3
413
- I
414
- 0
415
- I
416
- 1
417
- I
418
- 23
419
- x
420
- 87
421
- /Users/felipeelias/Applicake/doorkeeper/app/controllers/doorkeeper/tokens_controller.rb
422
- p
423
- 0
@@ -1,127 +0,0 @@
1
- !RBIX
2
- 9595534255132031488
3
- x
4
- M
5
- 1
6
- n
7
- n
8
- x
9
- 10
10
- __script__
11
- i
12
- 28
13
- 99
14
- 7
15
- 0
16
- 65
17
- 49
18
- 1
19
- 2
20
- 13
21
- 99
22
- 12
23
- 7
24
- 2
25
- 12
26
- 7
27
- 3
28
- 12
29
- 65
30
- 12
31
- 49
32
- 4
33
- 4
34
- 15
35
- 49
36
- 2
37
- 0
38
- 15
39
- 2
40
- 11
41
- I
42
- 6
43
- I
44
- 0
45
- I
46
- 0
47
- I
48
- 0
49
- n
50
- p
51
- 5
52
- x
53
- 10
54
- Doorkeeper
55
- x
56
- 11
57
- open_module
58
- x
59
- 15
60
- __module_init__
61
- M
62
- 1
63
- n
64
- n
65
- x
66
- 10
67
- Doorkeeper
68
- i
69
- 12
70
- 5
71
- 66
72
- 99
73
- 7
74
- 0
75
- 65
76
- 49
77
- 1
78
- 2
79
- 15
80
- 1
81
- 11
82
- I
83
- 3
84
- I
85
- 0
86
- I
87
- 0
88
- I
89
- 0
90
- n
91
- p
92
- 2
93
- x
94
- 17
95
- ApplicationHelper
96
- x
97
- 11
98
- open_module
99
- p
100
- 3
101
- I
102
- 2
103
- I
104
- 2
105
- I
106
- c
107
- x
108
- 84
109
- /Users/felipeelias/Applicake/doorkeeper/app/helpers/doorkeeper/application_helper.rb
110
- p
111
- 0
112
- x
113
- 13
114
- attach_method
115
- p
116
- 3
117
- I
118
- 0
119
- I
120
- 1
121
- I
122
- 1c
123
- x
124
- 84
125
- /Users/felipeelias/Applicake/doorkeeper/app/helpers/doorkeeper/application_helper.rb
126
- p
127
- 0
@@ -1,31 +0,0 @@
1
- class AccessGrant < ActiveRecord::Base
2
- include Doorkeeper::OAuth::Helpers
3
- include Doorkeeper::Models::Expirable
4
- include Doorkeeper::Models::Revocable
5
-
6
- self.table_name = :oauth_access_grants
7
-
8
- belongs_to :application
9
-
10
- validates :resource_owner_id, :application_id, :token, :expires_in, :redirect_uri, :presence => true
11
-
12
- before_validation :generate_token, :on => :create
13
-
14
- def accessible?
15
- !expired? && !revoked?
16
- end
17
-
18
- def scopes
19
- self[:scopes].split(" ").map(&:to_sym) if self[:scopes]
20
- end
21
-
22
- def scopes_string
23
- self[:scopes]
24
- end
25
-
26
- private
27
-
28
- def generate_token
29
- self.token = UniqueToken.generate_for :token, self.class
30
- end
31
- end