sorcery 0.1.4 → 0.2.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.
Potentially problematic release.
This version of sorcery might be problematic. Click here for more details.
- data/Gemfile +4 -2
- data/Gemfile.lock +16 -13
- data/README.rdoc +28 -27
- data/Rakefile +5 -0
- data/VERSION +1 -1
- data/lib/sorcery.rb +12 -0
- data/lib/sorcery/controller.rb +29 -17
- data/lib/sorcery/controller/submodules/activity_logging.rb +20 -7
- data/lib/sorcery/controller/submodules/brute_force_protection.rb +9 -2
- data/lib/sorcery/controller/submodules/http_basic_auth.rb +8 -3
- data/lib/sorcery/controller/submodules/oauth.rb +95 -0
- data/lib/sorcery/controller/submodules/oauth/oauth1.rb +25 -0
- data/lib/sorcery/controller/submodules/oauth/oauth2.rb +23 -0
- data/lib/sorcery/controller/submodules/oauth/providers/facebook.rb +64 -0
- data/lib/sorcery/controller/submodules/oauth/providers/twitter.rb +61 -0
- data/lib/sorcery/controller/submodules/remember_me.rb +14 -5
- data/lib/sorcery/controller/submodules/session_timeout.rb +6 -1
- data/lib/sorcery/engine.rb +9 -2
- data/lib/sorcery/model.rb +10 -3
- data/lib/sorcery/model/submodules/activity_logging.rb +12 -7
- data/lib/sorcery/model/submodules/brute_force_protection.rb +11 -4
- data/lib/sorcery/model/submodules/oauth.rb +53 -0
- data/lib/sorcery/model/submodules/remember_me.rb +5 -3
- data/lib/sorcery/model/submodules/reset_password.rb +16 -13
- data/lib/sorcery/model/submodules/user_activation.rb +38 -19
- data/lib/sorcery/model/temporary_token.rb +22 -0
- data/lib/sorcery/test_helpers.rb +84 -0
- data/sorcery.gemspec +69 -40
- data/spec/Gemfile +3 -2
- data/spec/Gemfile.lock +15 -2
- data/spec/rails3/app_root/.rspec +1 -0
- data/spec/rails3/{Gemfile → app_root/Gemfile} +5 -3
- data/spec/rails3/{Gemfile.lock → app_root/Gemfile.lock} +25 -2
- data/spec/rails3/{Rakefile → app_root/Rakefile} +0 -0
- data/spec/rails3/app_root/app/controllers/application_controller.rb +42 -1
- data/spec/rails3/app_root/app/models/authentication.rb +3 -0
- data/spec/rails3/app_root/app/models/user.rb +4 -1
- data/spec/rails3/app_root/config/application.rb +1 -3
- data/spec/rails3/app_root/config/routes.rb +1 -10
- data/spec/rails3/app_root/db/migrate/activation/20101224223622_add_activation_to_users.rb +6 -4
- data/spec/rails3/app_root/db/migrate/core/20101224223620_create_users.rb +4 -4
- data/spec/rails3/app_root/db/migrate/oauth/20101224223628_create_authentications.rb +14 -0
- data/spec/rails3/{controller_activity_logging_spec.rb → app_root/spec/controller_activity_logging_spec.rb} +13 -13
- data/spec/rails3/{controller_brute_force_protection_spec.rb → app_root/spec/controller_brute_force_protection_spec.rb} +16 -6
- data/spec/rails3/{controller_http_basic_auth_spec.rb → app_root/spec/controller_http_basic_auth_spec.rb} +3 -3
- data/spec/rails3/app_root/spec/controller_oauth2_spec.rb +117 -0
- data/spec/rails3/app_root/spec/controller_oauth_spec.rb +117 -0
- data/spec/rails3/{controller_remember_me_spec.rb → app_root/spec/controller_remember_me_spec.rb} +4 -4
- data/spec/rails3/{controller_session_timeout_spec.rb → app_root/spec/controller_session_timeout_spec.rb} +4 -4
- data/spec/rails3/{controller_spec.rb → app_root/spec/controller_spec.rb} +20 -13
- data/spec/rails3/app_root/spec/spec_helper.orig.rb +27 -0
- data/spec/rails3/app_root/spec/spec_helper.rb +61 -0
- data/spec/rails3/{user_activation_spec.rb → app_root/spec/user_activation_spec.rb} +60 -20
- data/spec/rails3/{user_activity_logging_spec.rb → app_root/spec/user_activity_logging_spec.rb} +4 -4
- data/spec/rails3/{user_brute_force_protection_spec.rb → app_root/spec/user_brute_force_protection_spec.rb} +7 -7
- data/spec/rails3/app_root/spec/user_oauth_spec.rb +39 -0
- data/spec/rails3/{user_remember_me_spec.rb → app_root/spec/user_remember_me_spec.rb} +4 -4
- data/spec/rails3/{user_reset_password_spec.rb → app_root/spec/user_reset_password_spec.rb} +21 -41
- data/spec/rails3/{user_spec.rb → app_root/spec/user_spec.rb} +68 -38
- metadata +127 -58
- data/spec/rails3/app_root/test/fixtures/users.yml +0 -9
- data/spec/rails3/app_root/test/performance/browsing_test.rb +0 -9
- data/spec/rails3/app_root/test/test_helper.rb +0 -13
- data/spec/rails3/app_root/test/unit/user_test.rb +0 -8
- data/spec/rails3/spec_helper.rb +0 -135
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: sorcery
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.
|
5
|
+
version: 0.2.0
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Noam Ben Ari
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-
|
13
|
+
date: 2011-03-13 00:00:00 +02:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
@@ -21,12 +21,45 @@ dependencies:
|
|
21
21
|
- - ">="
|
22
22
|
- !ruby/object:Gem::Version
|
23
23
|
version: 3.0.0
|
24
|
-
type: :
|
24
|
+
type: :runtime
|
25
25
|
prerelease: false
|
26
26
|
version_requirements: *id001
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: json
|
29
29
|
requirement: &id002 !ruby/object:Gem::Requirement
|
30
|
+
none: false
|
31
|
+
requirements:
|
32
|
+
- - ">="
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: 1.5.1
|
35
|
+
type: :runtime
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: *id002
|
38
|
+
- !ruby/object:Gem::Dependency
|
39
|
+
name: oauth
|
40
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ">="
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 0.4.4
|
46
|
+
type: :runtime
|
47
|
+
prerelease: false
|
48
|
+
version_requirements: *id003
|
49
|
+
- !ruby/object:Gem::Dependency
|
50
|
+
name: oauth2
|
51
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
52
|
+
none: false
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: 0.1.1
|
57
|
+
type: :runtime
|
58
|
+
prerelease: false
|
59
|
+
version_requirements: *id004
|
60
|
+
- !ruby/object:Gem::Dependency
|
61
|
+
name: rspec
|
62
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
30
63
|
none: false
|
31
64
|
requirements:
|
32
65
|
- - ~>
|
@@ -34,10 +67,10 @@ dependencies:
|
|
34
67
|
version: 2.3.0
|
35
68
|
type: :development
|
36
69
|
prerelease: false
|
37
|
-
version_requirements: *
|
70
|
+
version_requirements: *id005
|
38
71
|
- !ruby/object:Gem::Dependency
|
39
72
|
name: rspec-rails
|
40
|
-
requirement: &
|
73
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
41
74
|
none: false
|
42
75
|
requirements:
|
43
76
|
- - ">="
|
@@ -45,10 +78,10 @@ dependencies:
|
|
45
78
|
version: "0"
|
46
79
|
type: :development
|
47
80
|
prerelease: false
|
48
|
-
version_requirements: *
|
81
|
+
version_requirements: *id006
|
49
82
|
- !ruby/object:Gem::Dependency
|
50
83
|
name: ruby-debug19
|
51
|
-
requirement: &
|
84
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
52
85
|
none: false
|
53
86
|
requirements:
|
54
87
|
- - ">="
|
@@ -56,10 +89,10 @@ dependencies:
|
|
56
89
|
version: "0"
|
57
90
|
type: :development
|
58
91
|
prerelease: false
|
59
|
-
version_requirements: *
|
92
|
+
version_requirements: *id007
|
60
93
|
- !ruby/object:Gem::Dependency
|
61
94
|
name: sqlite3-ruby
|
62
|
-
requirement: &
|
95
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
63
96
|
none: false
|
64
97
|
requirements:
|
65
98
|
- - ">="
|
@@ -67,10 +100,10 @@ dependencies:
|
|
67
100
|
version: "0"
|
68
101
|
type: :development
|
69
102
|
prerelease: false
|
70
|
-
version_requirements: *
|
103
|
+
version_requirements: *id008
|
71
104
|
- !ruby/object:Gem::Dependency
|
72
105
|
name: yard
|
73
|
-
requirement: &
|
106
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
74
107
|
none: false
|
75
108
|
requirements:
|
76
109
|
- - ~>
|
@@ -78,10 +111,10 @@ dependencies:
|
|
78
111
|
version: 0.6.0
|
79
112
|
type: :development
|
80
113
|
prerelease: false
|
81
|
-
version_requirements: *
|
114
|
+
version_requirements: *id009
|
82
115
|
- !ruby/object:Gem::Dependency
|
83
116
|
name: bundler
|
84
|
-
requirement: &
|
117
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
85
118
|
none: false
|
86
119
|
requirements:
|
87
120
|
- - ~>
|
@@ -89,10 +122,10 @@ dependencies:
|
|
89
122
|
version: 1.0.0
|
90
123
|
type: :development
|
91
124
|
prerelease: false
|
92
|
-
version_requirements: *
|
125
|
+
version_requirements: *id010
|
93
126
|
- !ruby/object:Gem::Dependency
|
94
127
|
name: jeweler
|
95
|
-
requirement: &
|
128
|
+
requirement: &id011 !ruby/object:Gem::Requirement
|
96
129
|
none: false
|
97
130
|
requirements:
|
98
131
|
- - ~>
|
@@ -100,10 +133,10 @@ dependencies:
|
|
100
133
|
version: 1.5.2
|
101
134
|
type: :development
|
102
135
|
prerelease: false
|
103
|
-
version_requirements: *
|
136
|
+
version_requirements: *id011
|
104
137
|
- !ruby/object:Gem::Dependency
|
105
138
|
name: simplecov
|
106
|
-
requirement: &
|
139
|
+
requirement: &id012 !ruby/object:Gem::Requirement
|
107
140
|
none: false
|
108
141
|
requirements:
|
109
142
|
- - ">="
|
@@ -111,10 +144,10 @@ dependencies:
|
|
111
144
|
version: 0.3.8
|
112
145
|
type: :development
|
113
146
|
prerelease: false
|
114
|
-
version_requirements: *
|
147
|
+
version_requirements: *id012
|
115
148
|
- !ruby/object:Gem::Dependency
|
116
149
|
name: bcrypt-ruby
|
117
|
-
requirement: &
|
150
|
+
requirement: &id013 !ruby/object:Gem::Requirement
|
118
151
|
none: false
|
119
152
|
requirements:
|
120
153
|
- - ~>
|
@@ -122,7 +155,29 @@ dependencies:
|
|
122
155
|
version: 2.1.4
|
123
156
|
type: :runtime
|
124
157
|
prerelease: false
|
125
|
-
version_requirements: *
|
158
|
+
version_requirements: *id013
|
159
|
+
- !ruby/object:Gem::Dependency
|
160
|
+
name: oauth
|
161
|
+
requirement: &id014 !ruby/object:Gem::Requirement
|
162
|
+
none: false
|
163
|
+
requirements:
|
164
|
+
- - ">="
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: 0.4.4
|
167
|
+
type: :runtime
|
168
|
+
prerelease: false
|
169
|
+
version_requirements: *id014
|
170
|
+
- !ruby/object:Gem::Dependency
|
171
|
+
name: oauth2
|
172
|
+
requirement: &id015 !ruby/object:Gem::Requirement
|
173
|
+
none: false
|
174
|
+
requirements:
|
175
|
+
- - ">="
|
176
|
+
- !ruby/object:Gem::Version
|
177
|
+
version: 0.1.1
|
178
|
+
type: :runtime
|
179
|
+
prerelease: false
|
180
|
+
version_requirements: *id015
|
126
181
|
description: Provides common authentication needs such as signing in/out, activating by email and resetting password.
|
127
182
|
email: nbenari@gmail.com
|
128
183
|
executables: []
|
@@ -146,6 +201,11 @@ files:
|
|
146
201
|
- lib/sorcery/controller/submodules/activity_logging.rb
|
147
202
|
- lib/sorcery/controller/submodules/brute_force_protection.rb
|
148
203
|
- lib/sorcery/controller/submodules/http_basic_auth.rb
|
204
|
+
- lib/sorcery/controller/submodules/oauth.rb
|
205
|
+
- lib/sorcery/controller/submodules/oauth/oauth1.rb
|
206
|
+
- lib/sorcery/controller/submodules/oauth/oauth2.rb
|
207
|
+
- lib/sorcery/controller/submodules/oauth/providers/facebook.rb
|
208
|
+
- lib/sorcery/controller/submodules/oauth/providers/twitter.rb
|
149
209
|
- lib/sorcery/controller/submodules/remember_me.rb
|
150
210
|
- lib/sorcery/controller/submodules/session_timeout.rb
|
151
211
|
- lib/sorcery/crypto_providers/aes256.rb
|
@@ -158,23 +218,28 @@ files:
|
|
158
218
|
- lib/sorcery/model.rb
|
159
219
|
- lib/sorcery/model/submodules/activity_logging.rb
|
160
220
|
- lib/sorcery/model/submodules/brute_force_protection.rb
|
221
|
+
- lib/sorcery/model/submodules/oauth.rb
|
161
222
|
- lib/sorcery/model/submodules/remember_me.rb
|
162
223
|
- lib/sorcery/model/submodules/reset_password.rb
|
163
224
|
- lib/sorcery/model/submodules/user_activation.rb
|
225
|
+
- lib/sorcery/model/temporary_token.rb
|
226
|
+
- lib/sorcery/test_helpers.rb
|
164
227
|
- sorcery.gemspec
|
165
228
|
- spec/Gemfile
|
166
229
|
- spec/Gemfile.lock
|
167
230
|
- spec/Rakefile
|
168
231
|
- spec/rails3/.rspec
|
169
|
-
- spec/rails3/Gemfile
|
170
|
-
- spec/rails3/Gemfile.lock
|
171
|
-
- spec/rails3/Rakefile
|
172
232
|
- spec/rails3/app_root/.gitignore
|
233
|
+
- spec/rails3/app_root/.rspec
|
234
|
+
- spec/rails3/app_root/Gemfile
|
235
|
+
- spec/rails3/app_root/Gemfile.lock
|
173
236
|
- spec/rails3/app_root/README
|
237
|
+
- spec/rails3/app_root/Rakefile
|
174
238
|
- spec/rails3/app_root/Rakefile.unused
|
175
239
|
- spec/rails3/app_root/app/controllers/application_controller.rb
|
176
240
|
- spec/rails3/app_root/app/helpers/application_helper.rb
|
177
241
|
- spec/rails3/app_root/app/mailers/sorcery_mailer.rb
|
242
|
+
- spec/rails3/app_root/app/models/authentication.rb
|
178
243
|
- spec/rails3/app_root/app/models/user.rb
|
179
244
|
- spec/rails3/app_root/app/views/layouts/application.html.erb
|
180
245
|
- spec/rails3/app_root/app/views/sorcery_mailer/activation_email.html.erb
|
@@ -203,6 +268,7 @@ files:
|
|
203
268
|
- spec/rails3/app_root/db/migrate/activity_logging/20101224223624_add_activity_logging_to_users.rb
|
204
269
|
- spec/rails3/app_root/db/migrate/brute_force_protection/20101224223626_add_brute_force_protection_to_users.rb
|
205
270
|
- spec/rails3/app_root/db/migrate/core/20101224223620_create_users.rb
|
271
|
+
- spec/rails3/app_root/db/migrate/oauth/20101224223628_create_authentications.rb
|
206
272
|
- spec/rails3/app_root/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb
|
207
273
|
- spec/rails3/app_root/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb
|
208
274
|
- spec/rails3/app_root/db/schema.rb
|
@@ -223,24 +289,24 @@ files:
|
|
223
289
|
- spec/rails3/app_root/public/robots.txt
|
224
290
|
- spec/rails3/app_root/public/stylesheets/.gitkeep
|
225
291
|
- spec/rails3/app_root/script/rails
|
226
|
-
- spec/rails3/app_root/
|
227
|
-
- spec/rails3/app_root/
|
228
|
-
- spec/rails3/app_root/
|
229
|
-
- spec/rails3/app_root/
|
292
|
+
- spec/rails3/app_root/spec/controller_activity_logging_spec.rb
|
293
|
+
- spec/rails3/app_root/spec/controller_brute_force_protection_spec.rb
|
294
|
+
- spec/rails3/app_root/spec/controller_http_basic_auth_spec.rb
|
295
|
+
- spec/rails3/app_root/spec/controller_oauth2_spec.rb
|
296
|
+
- spec/rails3/app_root/spec/controller_oauth_spec.rb
|
297
|
+
- spec/rails3/app_root/spec/controller_remember_me_spec.rb
|
298
|
+
- spec/rails3/app_root/spec/controller_session_timeout_spec.rb
|
299
|
+
- spec/rails3/app_root/spec/controller_spec.rb
|
300
|
+
- spec/rails3/app_root/spec/spec_helper.orig.rb
|
301
|
+
- spec/rails3/app_root/spec/spec_helper.rb
|
302
|
+
- spec/rails3/app_root/spec/user_activation_spec.rb
|
303
|
+
- spec/rails3/app_root/spec/user_activity_logging_spec.rb
|
304
|
+
- spec/rails3/app_root/spec/user_brute_force_protection_spec.rb
|
305
|
+
- spec/rails3/app_root/spec/user_oauth_spec.rb
|
306
|
+
- spec/rails3/app_root/spec/user_remember_me_spec.rb
|
307
|
+
- spec/rails3/app_root/spec/user_reset_password_spec.rb
|
308
|
+
- spec/rails3/app_root/spec/user_spec.rb
|
230
309
|
- spec/rails3/app_root/vendor/plugins/.gitkeep
|
231
|
-
- spec/rails3/controller_activity_logging_spec.rb
|
232
|
-
- spec/rails3/controller_brute_force_protection_spec.rb
|
233
|
-
- spec/rails3/controller_http_basic_auth_spec.rb
|
234
|
-
- spec/rails3/controller_remember_me_spec.rb
|
235
|
-
- spec/rails3/controller_session_timeout_spec.rb
|
236
|
-
- spec/rails3/controller_spec.rb
|
237
|
-
- spec/rails3/spec_helper.rb
|
238
|
-
- spec/rails3/user_activation_spec.rb
|
239
|
-
- spec/rails3/user_activity_logging_spec.rb
|
240
|
-
- spec/rails3/user_brute_force_protection_spec.rb
|
241
|
-
- spec/rails3/user_remember_me_spec.rb
|
242
|
-
- spec/rails3/user_reset_password_spec.rb
|
243
|
-
- spec/rails3/user_spec.rb
|
244
310
|
- spec/sorcery_crypto_providers_spec.rb
|
245
311
|
- spec/spec_helper.rb
|
246
312
|
has_rdoc: true
|
@@ -267,7 +333,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
267
333
|
requirements: []
|
268
334
|
|
269
335
|
rubyforge_project:
|
270
|
-
rubygems_version: 1.
|
336
|
+
rubygems_version: 1.6.2
|
271
337
|
signing_key:
|
272
338
|
specification_version: 3
|
273
339
|
summary: Magical authentication for Rails 3 applications
|
@@ -275,6 +341,7 @@ test_files:
|
|
275
341
|
- spec/rails3/app_root/app/controllers/application_controller.rb
|
276
342
|
- spec/rails3/app_root/app/helpers/application_helper.rb
|
277
343
|
- spec/rails3/app_root/app/mailers/sorcery_mailer.rb
|
344
|
+
- spec/rails3/app_root/app/models/authentication.rb
|
278
345
|
- spec/rails3/app_root/app/models/user.rb
|
279
346
|
- spec/rails3/app_root/config/application.rb
|
280
347
|
- spec/rails3/app_root/config/boot.rb
|
@@ -293,25 +360,27 @@ test_files:
|
|
293
360
|
- spec/rails3/app_root/db/migrate/activity_logging/20101224223624_add_activity_logging_to_users.rb
|
294
361
|
- spec/rails3/app_root/db/migrate/brute_force_protection/20101224223626_add_brute_force_protection_to_users.rb
|
295
362
|
- spec/rails3/app_root/db/migrate/core/20101224223620_create_users.rb
|
363
|
+
- spec/rails3/app_root/db/migrate/oauth/20101224223628_create_authentications.rb
|
296
364
|
- spec/rails3/app_root/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb
|
297
365
|
- spec/rails3/app_root/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb
|
298
366
|
- spec/rails3/app_root/db/schema.rb
|
299
367
|
- spec/rails3/app_root/db/seeds.rb
|
300
|
-
- spec/rails3/app_root/
|
301
|
-
- spec/rails3/app_root/
|
302
|
-
- spec/rails3/app_root/
|
303
|
-
- spec/rails3/
|
304
|
-
- spec/rails3/
|
305
|
-
- spec/rails3/
|
306
|
-
- spec/rails3/
|
307
|
-
- spec/rails3/
|
308
|
-
- spec/rails3/
|
309
|
-
- spec/rails3/spec_helper.rb
|
310
|
-
- spec/rails3/user_activation_spec.rb
|
311
|
-
- spec/rails3/user_activity_logging_spec.rb
|
312
|
-
- spec/rails3/user_brute_force_protection_spec.rb
|
313
|
-
- spec/rails3/
|
314
|
-
- spec/rails3/
|
315
|
-
- spec/rails3/
|
368
|
+
- spec/rails3/app_root/spec/controller_activity_logging_spec.rb
|
369
|
+
- spec/rails3/app_root/spec/controller_brute_force_protection_spec.rb
|
370
|
+
- spec/rails3/app_root/spec/controller_http_basic_auth_spec.rb
|
371
|
+
- spec/rails3/app_root/spec/controller_oauth2_spec.rb
|
372
|
+
- spec/rails3/app_root/spec/controller_oauth_spec.rb
|
373
|
+
- spec/rails3/app_root/spec/controller_remember_me_spec.rb
|
374
|
+
- spec/rails3/app_root/spec/controller_session_timeout_spec.rb
|
375
|
+
- spec/rails3/app_root/spec/controller_spec.rb
|
376
|
+
- spec/rails3/app_root/spec/spec_helper.orig.rb
|
377
|
+
- spec/rails3/app_root/spec/spec_helper.rb
|
378
|
+
- spec/rails3/app_root/spec/user_activation_spec.rb
|
379
|
+
- spec/rails3/app_root/spec/user_activity_logging_spec.rb
|
380
|
+
- spec/rails3/app_root/spec/user_brute_force_protection_spec.rb
|
381
|
+
- spec/rails3/app_root/spec/user_oauth_spec.rb
|
382
|
+
- spec/rails3/app_root/spec/user_remember_me_spec.rb
|
383
|
+
- spec/rails3/app_root/spec/user_reset_password_spec.rb
|
384
|
+
- spec/rails3/app_root/spec/user_spec.rb
|
316
385
|
- spec/sorcery_crypto_providers_spec.rb
|
317
386
|
- spec/spec_helper.rb
|
@@ -1,13 +0,0 @@
|
|
1
|
-
ENV["RAILS_ENV"] = "test"
|
2
|
-
require File.expand_path('../../config/environment', __FILE__)
|
3
|
-
require 'rails/test_help'
|
4
|
-
|
5
|
-
class ActiveSupport::TestCase
|
6
|
-
# Setup all fixtures in test/fixtures/*.(yml|csv) for all tests in alphabetical order.
|
7
|
-
#
|
8
|
-
# Note: You'll currently still have to declare fixtures explicitly in integration tests
|
9
|
-
# -- they do not yet inherit this setting
|
10
|
-
fixtures :all
|
11
|
-
|
12
|
-
# Add more helper methods to be used by all tests here...
|
13
|
-
end
|
data/spec/rails3/spec_helper.rb
DELETED
@@ -1,135 +0,0 @@
|
|
1
|
-
$: << File.join(File.dirname(__FILE__), '..', '..', 'lib' )
|
2
|
-
|
3
|
-
# require 'simplecov'
|
4
|
-
# SimpleCov.root File.join(File.dirname(__FILE__), "app_root" )
|
5
|
-
# SimpleCov.start do
|
6
|
-
# add_filter "/config/"
|
7
|
-
#
|
8
|
-
# add_group 'Controllers', 'app/controllers'
|
9
|
-
# add_group 'Models', 'app/models'
|
10
|
-
# add_group 'Helpers', 'app/helpers'
|
11
|
-
# add_group 'Libraries', 'lib'
|
12
|
-
# add_group 'Plugins', 'vendor/plugins'
|
13
|
-
# add_group 'Migrations', 'db/migrate'
|
14
|
-
# end
|
15
|
-
|
16
|
-
# Set the default environment to sqlite3's in_memory database
|
17
|
-
ENV['RAILS_ENV'] ||= 'in_memory'
|
18
|
-
ENV['RAILS_ROOT'] = 'app_root'
|
19
|
-
|
20
|
-
# Load the Rails environment and testing framework
|
21
|
-
require "#{File.dirname(__FILE__)}/app_root/config/environment"
|
22
|
-
#require "#{File.dirname(__FILE__)}/../../init" # for plugins
|
23
|
-
require 'rspec/rails'
|
24
|
-
#require 'sorcery'
|
25
|
-
|
26
|
-
# Undo changes to RAILS_ENV
|
27
|
-
silence_warnings {RAILS_ENV = ENV['RAILS_ENV']}
|
28
|
-
|
29
|
-
RSpec.configure do |config|
|
30
|
-
config.use_transactional_fixtures = true
|
31
|
-
config.use_instantiated_fixtures = false
|
32
|
-
config.include RSpec::Rails::ControllerExampleGroup, :example_group => { :file_path => /controller(.)*_spec.rb$/ }#:file_path => /\bspec[\\\/]controllers[\\\/]/ }
|
33
|
-
|
34
|
-
config.before(:suite) do
|
35
|
-
ActiveRecord::Migrator.migrate("#{Rails.root}/db/migrate/core")
|
36
|
-
end
|
37
|
-
|
38
|
-
config.after(:suite) do
|
39
|
-
ActiveRecord::Migrator.rollback("#{Rails.root}/db/migrate/core")
|
40
|
-
end
|
41
|
-
end
|
42
|
-
|
43
|
-
#----------------------------------------------------------------
|
44
|
-
# needed when running individual specs
|
45
|
-
require File.join(File.dirname(__FILE__), 'app_root','app','models','user')
|
46
|
-
|
47
|
-
class TestUser < ActiveRecord::Base
|
48
|
-
activate_sorcery!
|
49
|
-
end
|
50
|
-
|
51
|
-
class TestMailer < ActionMailer::Base
|
52
|
-
|
53
|
-
end
|
54
|
-
|
55
|
-
module Sorcery
|
56
|
-
module Model
|
57
|
-
module Submodules
|
58
|
-
module TestSubmodule
|
59
|
-
def my_instance_method
|
60
|
-
end
|
61
|
-
end
|
62
|
-
end
|
63
|
-
end
|
64
|
-
end
|
65
|
-
|
66
|
-
SUBMODUELS_AUTO_ADDED_CONTROLLER_FILTERS = [:register_last_activity_time_to_db, :deny_banned_user, :validate_session]
|
67
|
-
|
68
|
-
def create_new_user(attributes_hash = nil)
|
69
|
-
user_attributes_hash = attributes_hash || {:username => 'gizmo', :email => "bla@bla.com", :password => 'secret'}
|
70
|
-
@user = User.new(user_attributes_hash)
|
71
|
-
@user.save!
|
72
|
-
@user
|
73
|
-
end
|
74
|
-
|
75
|
-
def login_user(user = nil)
|
76
|
-
user ||= @user
|
77
|
-
subject.send(:login_user,user)
|
78
|
-
subject.send(:after_login!,user,[user.username,'secret'])
|
79
|
-
end
|
80
|
-
|
81
|
-
def logout_user
|
82
|
-
subject.send(:logout)
|
83
|
-
end
|
84
|
-
|
85
|
-
def clear_user_without_logout
|
86
|
-
subject.instance_variable_set(:@logged_in_user,nil)
|
87
|
-
end
|
88
|
-
|
89
|
-
# TODO: rename to sorcery_reload!(subs = [], model_opts = {}, controller_opts = {})
|
90
|
-
def plugin_model_configure(submodules = [], options = {})
|
91
|
-
reload_user_class
|
92
|
-
|
93
|
-
# return to no-module configuration
|
94
|
-
::Sorcery::Controller::Config.init!
|
95
|
-
::Sorcery::Controller::Config.reset!
|
96
|
-
|
97
|
-
# remove all plugin before_filters so they won't fail other tests.
|
98
|
-
# I don't like this way, but I didn't find another.
|
99
|
-
# hopefully it won't break until Rails 4.
|
100
|
-
ApplicationController._process_action_callbacks.delete_if {|c| SUBMODUELS_AUTO_ADDED_CONTROLLER_FILTERS.include?(c.filter) }
|
101
|
-
|
102
|
-
# configure
|
103
|
-
::Sorcery::Controller::Config.submodules = submodules
|
104
|
-
::Sorcery::Controller::Config.user_class = nil # the next line will reset it to User
|
105
|
-
ActionController::Base.send(:include,::Sorcery::Controller)
|
106
|
-
|
107
|
-
User.activate_sorcery! do |config|
|
108
|
-
options.each do |property,value|
|
109
|
-
config.send(:"#{property}=", value)
|
110
|
-
end
|
111
|
-
end
|
112
|
-
end
|
113
|
-
|
114
|
-
# TODO: rename to sorcery_model_property_set(prop, val)
|
115
|
-
def plugin_set_model_config_property(property, *values)
|
116
|
-
User.class_eval do
|
117
|
-
sorcery_config.send(:"#{property}=", *values)
|
118
|
-
end
|
119
|
-
end
|
120
|
-
|
121
|
-
# TODO: rename to sorcery_controller_property_set(prop, val)
|
122
|
-
def plugin_set_controller_config_property(property, value)
|
123
|
-
ApplicationController.activate_sorcery! do |config|
|
124
|
-
config.send(:"#{property}=", value)
|
125
|
-
end
|
126
|
-
end
|
127
|
-
|
128
|
-
private
|
129
|
-
|
130
|
-
# reload user class between specs
|
131
|
-
# so it will be possible to test the different submodules in isolation
|
132
|
-
def reload_user_class
|
133
|
-
Object.send(:remove_const,:User)
|
134
|
-
load 'user.rb'
|
135
|
-
end
|