sorcery 0.5.1 → 0.5.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of sorcery might be problematic. Click here for more details.

Files changed (49) hide show
  1. data/README.rdoc +1 -1
  2. data/VERSION +1 -1
  3. data/lib/sorcery.rb +3 -5
  4. data/lib/sorcery/controller/adapters/sinatra.rb +35 -28
  5. data/lib/sorcery/controller/submodules/http_basic_auth.rb +1 -1
  6. data/lib/sorcery/engine.rb +0 -7
  7. data/lib/sorcery/initializers/initializer.rb +4 -2
  8. data/lib/sorcery/model.rb +2 -3
  9. data/lib/sorcery/test_helpers/internal/rails.rb +1 -0
  10. data/lib/sorcery/test_helpers/internal/sinatra.rb +3 -3
  11. data/lib/sorcery/test_helpers/internal/sinatra_modular.rb +74 -0
  12. data/sorcery.gemspec +54 -2
  13. data/spec/Gemfile.lock +1 -1
  14. data/spec/rails3/Gemfile.lock +1 -1
  15. data/spec/rails3/spec/user_spec.rb +0 -10
  16. data/spec/rails3_mongoid/Gemfile.lock +1 -1
  17. data/spec/rails3_mongoid/spec/user_spec.rb +0 -10
  18. data/spec/sinatra/Gemfile.lock +1 -1
  19. data/spec/sinatra/Rakefile +1 -1
  20. data/spec/sinatra/filters.rb +20 -14
  21. data/spec/sinatra/modular.rb +157 -0
  22. data/spec/sinatra_modular/Gemfile +15 -0
  23. data/spec/sinatra_modular/Gemfile.lock +117 -0
  24. data/spec/sinatra_modular/Rakefile +11 -0
  25. data/spec/sinatra_modular/authentication.rb +3 -0
  26. data/spec/sinatra_modular/db/migrate/activation/20101224223622_add_activation_to_users.rb +17 -0
  27. data/spec/sinatra_modular/db/migrate/activity_logging/20101224223624_add_activity_logging_to_users.rb +17 -0
  28. data/spec/sinatra_modular/db/migrate/brute_force_protection/20101224223626_add_brute_force_protection_to_users.rb +11 -0
  29. data/spec/sinatra_modular/db/migrate/core/20101224223620_create_users.rb +16 -0
  30. data/spec/sinatra_modular/db/migrate/external/20101224223628_create_authentications.rb +14 -0
  31. data/spec/sinatra_modular/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb +15 -0
  32. data/spec/sinatra_modular/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb +13 -0
  33. data/spec/sinatra_modular/filters.rb +27 -0
  34. data/spec/sinatra_modular/modular.rb +157 -0
  35. data/spec/sinatra_modular/myapp.rb +133 -0
  36. data/spec/sinatra_modular/sorcery_mailer.rb +25 -0
  37. data/spec/sinatra_modular/spec_modular/controller_activity_logging_spec.rb +85 -0
  38. data/spec/sinatra_modular/spec_modular/controller_brute_force_protection_spec.rb +70 -0
  39. data/spec/sinatra_modular/spec_modular/controller_http_basic_auth_spec.rb +53 -0
  40. data/spec/sinatra_modular/spec_modular/controller_oauth2_spec.rb +120 -0
  41. data/spec/sinatra_modular/spec_modular/controller_oauth_spec.rb +121 -0
  42. data/spec/sinatra_modular/spec_modular/controller_remember_me_spec.rb +64 -0
  43. data/spec/sinatra_modular/spec_modular/controller_session_timeout_spec.rb +57 -0
  44. data/spec/sinatra_modular/spec_modular/controller_spec.rb +116 -0
  45. data/spec/sinatra_modular/spec_modular/spec.opts +2 -0
  46. data/spec/sinatra_modular/spec_modular/spec_helper.rb +51 -0
  47. data/spec/sinatra_modular/user.rb +6 -0
  48. data/spec/sinatra_modular/views/test_login.erb +4 -0
  49. metadata +54 -2
@@ -29,7 +29,7 @@ Example Rails 3 app using sorcery: https://github.com/NoamB/sorcery-example-app
29
29
 
30
30
  Example Sinatra app using sorcery: https://github.com/NoamB/sorcery-example-app-sinatra
31
31
 
32
- Documentation: http://rubydoc.info/gems/sorcery/0.5.1/frames
32
+ Documentation: http://rubydoc.info/gems/sorcery/0.5.2/frames
33
33
 
34
34
  Check out the tutorials in the github wiki!
35
35
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.1
1
+ 0.5.2
@@ -56,28 +56,26 @@ module Sorcery
56
56
  module Internal
57
57
  autoload :Rails, 'sorcery/test_helpers/internal/rails'
58
58
  autoload :Sinatra, 'sorcery/test_helpers/internal/sinatra'
59
+ autoload :SinatraModular, 'sorcery/test_helpers/internal/sinatra_modular'
59
60
  end
60
61
 
61
62
  end
62
63
 
63
64
  if defined?(ActiveRecord)
64
65
  ActiveRecord::Base.send(:include, Sorcery::Model)
65
- ActiveRecord::Base.send(:include, ::Sorcery::Model::Adapters::ActiveRecord)
66
+ ActiveRecord::Base.send(:include, Sorcery::Model::Adapters::ActiveRecord)
66
67
  end
67
68
 
68
69
  if defined?(Mongoid)
69
70
  Mongoid::Document.module_eval do
70
71
  included do
71
72
  attr_reader :new_record
72
- include Sorcery::Model::Adapters::Mongoid
73
73
  include Sorcery::Model
74
+ include Sorcery::Model::Adapters::Mongoid
74
75
  end
75
76
  end
76
77
  end
77
78
 
78
79
  require 'sorcery/engine' if defined?(Rails) && Rails::VERSION::MAJOR == 3
79
80
  require 'sorcery/sinatra' if defined?(Sinatra)
80
-
81
-
82
-
83
81
  end
@@ -16,7 +16,7 @@ module Sorcery
16
16
  process_route(*arguments) { instance_eval(&block) }
17
17
  end
18
18
  end
19
-
19
+
20
20
  def after_filter(filter)
21
21
  after do
22
22
  send(filter)
@@ -24,66 +24,73 @@ module Sorcery
24
24
  end
25
25
  end
26
26
  end
27
-
27
+
28
28
  ::Sinatra::Request.class_eval do
29
29
  def authorization
30
- env['HTTP_AUTHORIZATION'] ||
31
- env['X-HTTP_AUTHORIZATION'] ||
32
- env['X_HTTP_AUTHORIZATION'] ||
33
- env['REDIRECT_X_HTTP_AUTHORIZATION'] || nil
30
+ env['HTTP_AUTHORIZATION'] ||
31
+ env['X-HTTP_AUTHORIZATION'] ||
32
+ env['X_HTTP_AUTHORIZATION'] ||
33
+ env['REDIRECT_X_HTTP_AUTHORIZATION'] || nil
34
34
  end
35
35
  end
36
-
36
+
37
+ base.send(:include, SorceryHelpers)
37
38
  base.send(:include, InstanceMethods)
38
39
  base.extend(ClassMethods)
39
40
  end
40
-
41
+
42
+ module SorceryHelpers
43
+
44
+ def request_http_basic_authentication(realm)
45
+ response.header['WWW-Authenticate'] = %(Basic realm="#{realm}")
46
+ response.status = 401
47
+ end
48
+
49
+ def authenticate_with_http_basic(&blk)
50
+ @auth ||= Rack::Auth::Basic::Request.new(request.env)
51
+ yield @auth.credentials if (@auth.provided? && @auth.basic? && @auth.credentials)
52
+ end
53
+
54
+ end
55
+
41
56
  module InstanceMethods
42
57
  def reset_session
43
58
  session.clear
44
59
  end
45
-
60
+
46
61
  def redirect_to(*args)
47
62
  args.pop if args.last.is_a?(Hash)
48
63
  redirect(*args)
49
64
  end
50
-
65
+
51
66
  def root_path
52
67
  '/'
53
68
  end
54
-
55
- helpers do
56
- def request_http_basic_authentication(realm)
57
- response.header['WWW-Authenticate'] = %(Basic realm="#{realm}")
58
- response.status = 401
59
- end
60
-
61
- def authenticate_with_http_basic(&blk)
62
- @auth ||= Rack::Auth::Basic::Request.new(request.env)
63
- yield @auth.credentials if ( @auth.provided? && @auth.basic? && @auth.credentials )
64
- end
69
+
70
+ ::Sinatra.helpers do
71
+ include SorceryHelpers
65
72
  end
66
-
73
+
67
74
  def cookies
68
- @cookie_proxy ||= CookieProxy.new(request,response)
75
+ @cookie_proxy ||= CookieProxy.new(request, response)
69
76
  end
70
77
  end
71
-
78
+
72
79
  class CookieProxy
73
- def initialize(request,response)
80
+ def initialize(request, response)
74
81
  @request = request
75
82
  @response = response
76
83
  end
77
-
84
+
78
85
  def [](key)
79
86
  @request.cookies[key.to_s]
80
87
  end
81
-
88
+
82
89
  def []=(key, value)
83
90
  @response.set_cookie(key, value)
84
91
  end
85
92
  end
86
-
93
+
87
94
  module ClassMethods
88
95
  def prepend_before_filter(filter)
89
96
  prepend_filter(:before) do
@@ -21,7 +21,7 @@ module Sorcery
21
21
  end
22
22
 
23
23
  module InstanceMethods
24
-
24
+
25
25
  protected
26
26
 
27
27
  # to be used as a before_filter.
@@ -12,13 +12,6 @@ module Sorcery
12
12
  ActionController::Base.helper_method :current_user
13
13
  end
14
14
 
15
- initializer "attempt to preload user model" do |app|
16
- begin
17
- require Rails.root + "app/models/user.rb"
18
- rescue LoadError
19
- end
20
- end
21
-
22
15
  rake_tasks do
23
16
  load "sorcery/railties/tasks.rake"
24
17
  end
@@ -9,8 +9,7 @@ Rails.application.config.sorcery.configure do |config|
9
9
  # config.not_authenticated_action = :not_authenticated # what controller action to call for non-authenticated users. You can also override 'not_authenticated' instead.
10
10
  # config.save_return_to_url = true # when a non logged in user tries to enter a page that requires login, save the URL he wanted to reach,
11
11
  # and send him there after login, using 'redirect_back_or_to'.
12
- # subclasses_inherit_config = false # make this configuration inheritable for subclasses. Useful for ActiveRecord's STI.
13
-
12
+
14
13
  # -- session timeout --
15
14
  # config.session_timeout = 3600 # how long in seconds to keep the session alive.
16
15
  # config.session_timeout_from_last_action = false # use the last action as the beginning of session timeout.
@@ -84,4 +83,7 @@ Rails.application.config.sorcery.configure do |config|
84
83
  # user.provider_attribute_name = :provider # provider's identifier in authentications class.
85
84
  # user.provider_uid_attribute_name = :uid # user's external unique identifier in authentications class.
86
85
  end
86
+
87
+ # This line must come after the 'user config' block.
88
+ config.user_class_name = User # define which model authenticates with sorcery.
87
89
  end
@@ -14,9 +14,7 @@ module Sorcery
14
14
  self.class_eval do
15
15
  extend ClassMethods # included here, before submodules, so they can be overriden by them.
16
16
  include InstanceMethods
17
-
18
- # set the user_class for the controller methods which call it
19
- ::Sorcery::Controller::Config.user_class = self
17
+
20
18
  @sorcery_config.submodules = ::Sorcery::Controller::Config.submodules
21
19
  @sorcery_config.submodules.each do |mod|
22
20
  begin
@@ -30,6 +28,7 @@ module Sorcery
30
28
  # This runs the options block set in the initializer on the model class.
31
29
  ::Sorcery::Controller::Config.user_config.tap{|blk| blk.call(@sorcery_config) if blk}
32
30
 
31
+ # Mongoid support
33
32
  self.class_eval do
34
33
  field sorcery_config.username_attribute_name, type: String
35
34
  #field sorcery_config.password_attribute_name, type: String
@@ -22,6 +22,7 @@ module Sorcery
22
22
  ::Sorcery::Controller::Config.submodules = submodules
23
23
  ::Sorcery::Controller::Config.user_class = nil
24
24
  ActionController::Base.send(:include,::Sorcery::Controller)
25
+ ::Sorcery::Controller::Config.user_class = User
25
26
 
26
27
  ::Sorcery::Controller::Config.user_config do |user|
27
28
  options.each do |property,value|
@@ -43,15 +43,15 @@ module Sorcery
43
43
 
44
44
  # clear all filters
45
45
  ::Sinatra::Application.instance_variable_set(:@filters, {:before => [], :after => []})
46
- ::Sinatra::Application.class_eval do
47
- load File.join(File.dirname(__FILE__), '..', '..', '..', '..', 'spec', 'sinatra', 'filters.rb')
48
- end
46
+ load File.join(File.dirname(__FILE__), '..', '..', '..', '..', 'spec', 'sinatra', 'filters.rb')
47
+ ::Sinatra::Application.send(:include, ::Filters)
49
48
 
50
49
  # configure
51
50
  ::Sorcery::Controller::Config.submodules = submodules
52
51
  ::Sorcery::Controller::Config.user_class = nil
53
52
  ::Sinatra::Application.send(:include, Sorcery::Controller::Adapters::Sinatra)
54
53
  ::Sinatra::Application.send(:include, Sorcery::Controller)
54
+ ::Sorcery::Controller::Config.user_class = User
55
55
 
56
56
  ::Sorcery::Controller::Config.user_config do |user|
57
57
  options.each do |property, value|
@@ -0,0 +1,74 @@
1
+ module Sorcery
2
+ module TestHelpers
3
+ module Internal
4
+ module SinatraModular
5
+ include ::Sorcery::TestHelpers::Sinatra::CookieSessionMethods
6
+ include ::Sorcery::TestHelpers::Sinatra::InstanceMethods
7
+
8
+ class ::Modular
9
+ class << self
10
+ attr_accessor :sorcery_vars
11
+ end
12
+ @sorcery_vars = {}
13
+
14
+ # NOTE: see before and after test filters in filters.rb
15
+
16
+ def save_instance_vars
17
+ instance_variables.each do |var|
18
+ self.class.sorcery_vars[:"#{var.to_s.delete("@")}"] = instance_variable_get(var)
19
+ end
20
+ end
21
+ end
22
+
23
+ ::RSpec::Matchers.define :redirect_to do |expected|
24
+ match do |actual|
25
+ actual.status == 302 && actual.location == expected
26
+ end
27
+ end
28
+
29
+ def clear_user_without_logout
30
+ get_sinatra_app(subject).instance_variable_set(:@current_user, nil)
31
+ end
32
+
33
+ def assigns
34
+ ::Modular.sorcery_vars
35
+ end
36
+
37
+ def sorcery_reload!(submodules = [], options = {})
38
+ reload_user_class
39
+
40
+ # return to no-module configuration
41
+ ::Sorcery::Controller::Config.init!
42
+ ::Sorcery::Controller::Config.reset!
43
+
44
+ # clear all filters
45
+ ::Sinatra::Base.instance_variable_set(:@filters, {:before => [], :after => []})
46
+ require File.join(File.dirname(__FILE__), '..', '..', '..', '..', 'spec', 'sinatra', 'filters')
47
+ ::Sinatra::Base.send(:include, ::Filters)
48
+
49
+ # configure
50
+ ::Sorcery::Controller::Config.submodules = submodules
51
+ ::Sorcery::Controller::Config.user_class = nil
52
+ ::Sinatra::Base.send(:include, Sorcery::Controller::Adapters::Sinatra)
53
+ ::Sinatra::Base.send(:include, Sorcery::Controller)
54
+ ::Sorcery::Controller::Config.user_class = User
55
+
56
+ ::Sorcery::Controller::Config.user_config do |user|
57
+ options.each do |property, value|
58
+ user.send(:"#{property}=", value)
59
+ end
60
+ end
61
+ User.authenticates_with_sorcery!
62
+ end
63
+
64
+ def sorcery_controller_property_set(property, value)
65
+ ::Sorcery::Controller::Config.send(:"#{property}=", value)
66
+ end
67
+
68
+ def sorcery_controller_external_property_set(provider, property, value)
69
+ ::Sorcery::Controller::Config.send(provider).send(:"#{property}=", value)
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{sorcery}
8
- s.version = "0.5.1"
8
+ s.version = "0.5.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Noam Ben Ari"]
12
- s.date = %q{2011-05-11}
12
+ s.date = %q{2011-05-19}
13
13
  s.description = %q{Provides common authentication needs such as signing in/out, activating by email and resetting password.}
14
14
  s.email = %q{nbenari@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -71,6 +71,7 @@ Gem::Specification.new do |s|
71
71
  "lib/sorcery/test_helpers/internal.rb",
72
72
  "lib/sorcery/test_helpers/internal/rails.rb",
73
73
  "lib/sorcery/test_helpers/internal/sinatra.rb",
74
+ "lib/sorcery/test_helpers/internal/sinatra_modular.rb",
74
75
  "lib/sorcery/test_helpers/rails.rb",
75
76
  "lib/sorcery/test_helpers/sinatra.rb",
76
77
  "sorcery.gemspec",
@@ -229,6 +230,7 @@ Gem::Specification.new do |s|
229
230
  "spec/sinatra/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb",
230
231
  "spec/sinatra/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb",
231
232
  "spec/sinatra/filters.rb",
233
+ "spec/sinatra/modular.rb",
232
234
  "spec/sinatra/myapp.rb",
233
235
  "spec/sinatra/sorcery_mailer.rb",
234
236
  "spec/sinatra/spec/controller_activity_logging_spec.rb",
@@ -243,6 +245,33 @@ Gem::Specification.new do |s|
243
245
  "spec/sinatra/spec/spec_helper.rb",
244
246
  "spec/sinatra/user.rb",
245
247
  "spec/sinatra/views/test_login.erb",
248
+ "spec/sinatra_modular/Gemfile",
249
+ "spec/sinatra_modular/Gemfile.lock",
250
+ "spec/sinatra_modular/Rakefile",
251
+ "spec/sinatra_modular/authentication.rb",
252
+ "spec/sinatra_modular/db/migrate/activation/20101224223622_add_activation_to_users.rb",
253
+ "spec/sinatra_modular/db/migrate/activity_logging/20101224223624_add_activity_logging_to_users.rb",
254
+ "spec/sinatra_modular/db/migrate/brute_force_protection/20101224223626_add_brute_force_protection_to_users.rb",
255
+ "spec/sinatra_modular/db/migrate/core/20101224223620_create_users.rb",
256
+ "spec/sinatra_modular/db/migrate/external/20101224223628_create_authentications.rb",
257
+ "spec/sinatra_modular/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb",
258
+ "spec/sinatra_modular/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb",
259
+ "spec/sinatra_modular/filters.rb",
260
+ "spec/sinatra_modular/modular.rb",
261
+ "spec/sinatra_modular/myapp.rb",
262
+ "spec/sinatra_modular/sorcery_mailer.rb",
263
+ "spec/sinatra_modular/spec_modular/controller_activity_logging_spec.rb",
264
+ "spec/sinatra_modular/spec_modular/controller_brute_force_protection_spec.rb",
265
+ "spec/sinatra_modular/spec_modular/controller_http_basic_auth_spec.rb",
266
+ "spec/sinatra_modular/spec_modular/controller_oauth2_spec.rb",
267
+ "spec/sinatra_modular/spec_modular/controller_oauth_spec.rb",
268
+ "spec/sinatra_modular/spec_modular/controller_remember_me_spec.rb",
269
+ "spec/sinatra_modular/spec_modular/controller_session_timeout_spec.rb",
270
+ "spec/sinatra_modular/spec_modular/controller_spec.rb",
271
+ "spec/sinatra_modular/spec_modular/spec.opts",
272
+ "spec/sinatra_modular/spec_modular/spec_helper.rb",
273
+ "spec/sinatra_modular/user.rb",
274
+ "spec/sinatra_modular/views/test_login.erb",
246
275
  "spec/sorcery_crypto_providers_spec.rb",
247
276
  "spec/spec.opts",
248
277
  "spec/spec_helper.rb"
@@ -335,6 +364,7 @@ Gem::Specification.new do |s|
335
364
  "spec/sinatra/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb",
336
365
  "spec/sinatra/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb",
337
366
  "spec/sinatra/filters.rb",
367
+ "spec/sinatra/modular.rb",
338
368
  "spec/sinatra/myapp.rb",
339
369
  "spec/sinatra/sorcery_mailer.rb",
340
370
  "spec/sinatra/spec/controller_activity_logging_spec.rb",
@@ -347,6 +377,28 @@ Gem::Specification.new do |s|
347
377
  "spec/sinatra/spec/controller_spec.rb",
348
378
  "spec/sinatra/spec/spec_helper.rb",
349
379
  "spec/sinatra/user.rb",
380
+ "spec/sinatra_modular/authentication.rb",
381
+ "spec/sinatra_modular/db/migrate/activation/20101224223622_add_activation_to_users.rb",
382
+ "spec/sinatra_modular/db/migrate/activity_logging/20101224223624_add_activity_logging_to_users.rb",
383
+ "spec/sinatra_modular/db/migrate/brute_force_protection/20101224223626_add_brute_force_protection_to_users.rb",
384
+ "spec/sinatra_modular/db/migrate/core/20101224223620_create_users.rb",
385
+ "spec/sinatra_modular/db/migrate/external/20101224223628_create_authentications.rb",
386
+ "spec/sinatra_modular/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb",
387
+ "spec/sinatra_modular/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb",
388
+ "spec/sinatra_modular/filters.rb",
389
+ "spec/sinatra_modular/modular.rb",
390
+ "spec/sinatra_modular/myapp.rb",
391
+ "spec/sinatra_modular/sorcery_mailer.rb",
392
+ "spec/sinatra_modular/spec_modular/controller_activity_logging_spec.rb",
393
+ "spec/sinatra_modular/spec_modular/controller_brute_force_protection_spec.rb",
394
+ "spec/sinatra_modular/spec_modular/controller_http_basic_auth_spec.rb",
395
+ "spec/sinatra_modular/spec_modular/controller_oauth2_spec.rb",
396
+ "spec/sinatra_modular/spec_modular/controller_oauth_spec.rb",
397
+ "spec/sinatra_modular/spec_modular/controller_remember_me_spec.rb",
398
+ "spec/sinatra_modular/spec_modular/controller_session_timeout_spec.rb",
399
+ "spec/sinatra_modular/spec_modular/controller_spec.rb",
400
+ "spec/sinatra_modular/spec_modular/spec_helper.rb",
401
+ "spec/sinatra_modular/user.rb",
350
402
  "spec/sorcery_crypto_providers_spec.rb",
351
403
  "spec/spec_helper.rb"
352
404
  ]
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ../
3
3
  specs:
4
- sorcery (0.5.0)
4
+ sorcery (0.5.2)
5
5
  bcrypt-ruby (~> 2.1.4)
6
6
  oauth (>= 0.4.4)
7
7
  oauth (>= 0.4.4)
@@ -2,7 +2,7 @@ PATH
2
2
  remote: ../../../
3
3
  specs:
4
4
  oauth (0.4.4)
5
- sorcery (0.5.0)
5
+ sorcery (0.5.2)
6
6
  bcrypt-ruby (~> 2.1.4)
7
7
  oauth (>= 0.4.4)
8
8
  oauth (>= 0.4.4)
@@ -15,16 +15,6 @@ describe "User with no submodules (core)" do
15
15
  User.should respond_to(:authenticates_with_sorcery!)
16
16
  end
17
17
  end
18
-
19
- # ----------------- PLUGIN ACTIVATION -----------------------
20
- describe TestUser, "Testing activated class self-registration" do
21
- it "should register itself as user_class if activated" do
22
- TestUser.class_eval do
23
- authenticates_with_sorcery!
24
- end
25
- ::Sorcery::Controller::Config.user_class.should == TestUser
26
- end
27
- end
28
18
 
29
19
  # ----------------- PLUGIN CONFIGURATION -----------------------
30
20
  describe User, "loaded plugin configuration" do