authlogic 2.1.11 → 3.0.0

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

Potentially problematic release.


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

Files changed (69) hide show
  1. data/Gemfile +9 -1
  2. data/Gemfile.lock +39 -15
  3. data/LICENSE +1 -1
  4. data/README.rdoc +19 -8
  5. data/Rakefile +19 -0
  6. data/VERSION.yml +4 -4
  7. data/authlogic.gemspec +214 -18
  8. data/lib/authlogic/acts_as_authentic/email.rb +12 -12
  9. data/lib/authlogic/acts_as_authentic/logged_in_status.rb +2 -2
  10. data/lib/authlogic/acts_as_authentic/login.rb +14 -14
  11. data/lib/authlogic/acts_as_authentic/password.rb +2 -2
  12. data/lib/authlogic/acts_as_authentic/perishable_token.rb +15 -15
  13. data/lib/authlogic/acts_as_authentic/persistence_token.rb +1 -1
  14. data/lib/authlogic/acts_as_authentic/session_maintenance.rb +2 -15
  15. data/lib/authlogic/authenticates_many/base.rb +3 -4
  16. data/lib/authlogic/controller_adapters/sinatra_adapter.rb +1 -1
  17. data/lib/authlogic/regex.rb +8 -9
  18. data/lib/authlogic/session/active_record_trickery.rb +9 -1
  19. data/lib/authlogic/session/callbacks.rb +1 -1
  20. data/lib/authlogic/session/cookies.rb +15 -15
  21. data/lib/authlogic/session/foundation.rb +8 -0
  22. data/lib/authlogic/session/validation.rb +2 -2
  23. data/lib/generators/authlogic/USAGE +8 -0
  24. data/lib/generators/authlogic/session_generator.rb +14 -0
  25. data/lib/generators/authlogic/templates/session.rb +2 -0
  26. data/test/acts_as_authentic_test/base_test.rb +1 -1
  27. data/test/acts_as_authentic_test/email_test.rb +26 -22
  28. data/test/acts_as_authentic_test/logged_in_status_test.rb +1 -1
  29. data/test/acts_as_authentic_test/login_test.rb +21 -21
  30. data/test/acts_as_authentic_test/magic_columns_test.rb +1 -1
  31. data/test/acts_as_authentic_test/password_test.rb +1 -1
  32. data/test/acts_as_authentic_test/perishable_token_test.rb +1 -1
  33. data/test/acts_as_authentic_test/persistence_token_test.rb +1 -1
  34. data/test/acts_as_authentic_test/restful_authentication_test.rb +1 -1
  35. data/test/acts_as_authentic_test/session_maintenance_test.rb +1 -1
  36. data/test/acts_as_authentic_test/single_access_test.rb +1 -1
  37. data/test/authenticates_many_test.rb +1 -1
  38. data/test/crypto_provider_test/aes256_test.rb +1 -1
  39. data/test/crypto_provider_test/bcrypt_test.rb +1 -1
  40. data/test/crypto_provider_test/sha1_test.rb +1 -1
  41. data/test/crypto_provider_test/sha256_test.rb +1 -1
  42. data/test/crypto_provider_test/sha512_test.rb +1 -1
  43. data/test/i18n_test.rb +1 -1
  44. data/test/random_test.rb +1 -1
  45. data/test/session_test/activation_test.rb +1 -1
  46. data/test/session_test/active_record_trickery_test.rb +16 -6
  47. data/test/session_test/brute_force_protection_test.rb +1 -1
  48. data/test/session_test/callbacks_test.rb +1 -1
  49. data/test/session_test/cookies_test.rb +43 -21
  50. data/test/session_test/existence_test.rb +1 -1
  51. data/test/session_test/http_auth_test.rb +1 -1
  52. data/test/session_test/id_test.rb +1 -1
  53. data/test/session_test/klass_test.rb +1 -1
  54. data/test/session_test/magic_columns_test.rb +1 -1
  55. data/test/session_test/magic_states_test.rb +1 -1
  56. data/test/session_test/params_test.rb +1 -1
  57. data/test/session_test/password_test.rb +1 -1
  58. data/test/session_test/perishability_test.rb +1 -1
  59. data/test/session_test/persistence_test.rb +1 -1
  60. data/test/session_test/scopes_test.rb +1 -1
  61. data/test/session_test/session_test.rb +1 -1
  62. data/test/session_test/timeout_test.rb +1 -1
  63. data/test/session_test/unauthorized_record_test.rb +1 -1
  64. data/test/session_test/validation_test.rb +1 -1
  65. data/test/test_helper.rb +3 -19
  66. metadata +59 -96
  67. checksums.yaml +0 -7
  68. data/.gitignore +0 -10
  69. data/CHANGELOG.rdoc +0 -345
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  module BruteForceProtectionTest
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  class CallbacksTest < ActiveSupport::TestCase
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  module CookiesTest
@@ -6,84 +6,108 @@ module SessionTest
6
6
  def test_cookie_key
7
7
  UserSession.cookie_key = "my_cookie_key"
8
8
  assert_equal "my_cookie_key", UserSession.cookie_key
9
-
9
+
10
10
  UserSession.cookie_key "user_credentials"
11
11
  assert_equal "user_credentials", UserSession.cookie_key
12
12
  end
13
-
13
+
14
14
  def test_default_cookie_key
15
15
  assert_equal "user_credentials", UserSession.cookie_key
16
16
  assert_equal "back_office_user_credentials", BackOfficeUserSession.cookie_key
17
17
  end
18
-
18
+
19
19
  def test_remember_me
20
20
  UserSession.remember_me = true
21
21
  assert_equal true, UserSession.remember_me
22
22
  session = UserSession.new
23
23
  assert_equal true, session.remember_me
24
-
24
+
25
25
  UserSession.remember_me false
26
26
  assert_equal false, UserSession.remember_me
27
27
  session = UserSession.new
28
28
  assert_equal false, session.remember_me
29
29
  end
30
-
30
+
31
31
  def test_remember_me_for
32
32
  UserSession.remember_me_for = 3.years
33
33
  assert_equal 3.years, UserSession.remember_me_for
34
34
  session = UserSession.new
35
35
  session.remember_me = true
36
36
  assert_equal 3.years, session.remember_me_for
37
-
37
+
38
38
  UserSession.remember_me_for 3.months
39
39
  assert_equal 3.months, UserSession.remember_me_for
40
40
  session = UserSession.new
41
41
  session.remember_me = true
42
42
  assert_equal 3.months, session.remember_me_for
43
43
  end
44
- end
45
44
 
45
+ def test_secure
46
+ UserSession.secure = true
47
+ assert_equal true, UserSession.secure
48
+ session = UserSession.new
49
+ assert_equal true, session.secure
50
+
51
+ UserSession.secure false
52
+ assert_equal false, UserSession.secure
53
+ session = UserSession.new
54
+ assert_equal false, session.secure
55
+ end
56
+
57
+ def test_httponly
58
+ UserSession.httponly = true
59
+ assert_equal true, UserSession.httponly
60
+ session = UserSession.new
61
+ assert_equal true, session.httponly
62
+
63
+ UserSession.httponly false
64
+ assert_equal false, UserSession.httponly
65
+ session = UserSession.new
66
+ assert_equal false, session.httponly
67
+ end
68
+ end
69
+
46
70
  class InstanceMethodsTest < ActiveSupport::TestCase
47
71
  def test_credentials
48
72
  session = UserSession.new
49
73
  session.credentials = {:remember_me => true}
50
74
  assert_equal true, session.remember_me
51
75
  end
52
-
76
+
53
77
  def test_remember_me
54
78
  session = UserSession.new
55
79
  assert_equal false, session.remember_me
56
80
  assert !session.remember_me?
57
-
81
+
58
82
  session.remember_me = false
59
83
  assert_equal false, session.remember_me
60
84
  assert !session.remember_me?
61
-
85
+
62
86
  session.remember_me = true
63
87
  assert_equal true, session.remember_me
64
88
  assert session.remember_me?
65
-
89
+
66
90
  session.remember_me = nil
67
91
  assert_nil session.remember_me
68
92
  assert !session.remember_me?
69
-
93
+
70
94
  session.remember_me = "1"
71
95
  assert_equal "1", session.remember_me
72
96
  assert session.remember_me?
73
-
97
+
74
98
  session.remember_me = "true"
75
99
  assert_equal "true", session.remember_me
76
100
  assert session.remember_me?
77
101
  end
78
-
102
+
79
103
  def test_remember_me_until
80
104
  session = UserSession.new
81
105
  assert_nil session.remember_me_until
82
-
106
+
83
107
  session.remember_me = true
84
108
  assert 3.months.from_now <= session.remember_me_until
85
109
  end
86
-
110
+
87
111
  def test_persist_persist_by_cookie
88
112
  ben = users(:ben)
89
113
  assert !UserSession.find
@@ -91,16 +115,14 @@ module SessionTest
91
115
  assert session = UserSession.find
92
116
  assert_equal ben, session.record
93
117
  end
94
-
118
+
95
119
  def test_after_save_save_cookie
96
120
  ben = users(:ben)
97
121
  session = UserSession.new(ben)
98
122
  assert session.save
99
- debugger
100
123
  assert_equal "#{ben.persistence_token}::#{ben.id}", controller.cookies["user_credentials"]
101
- assert_equal nil, controller.cookies["httponly"]
102
124
  end
103
-
125
+
104
126
  def test_after_destroy_destroy_cookie
105
127
  ben = users(:ben)
106
128
  set_cookie_for(ben)
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  module ExistenceTest
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  class HttpAuthTest < ActiveSupport::TestCase
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  class IdTest < ActiveSupport::TestCase
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  module KlassTest
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  module MagicColumnsTest
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  module SessionTest
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  module ParamsTest
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  module PasswordTest
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  class PerishabilityTest < ActiveSupport::TestCase
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  class PersistenceTest < ActiveSupport::TestCase
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  class ScopesTest < ActiveSupport::TestCase
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  module SessionTest
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  module TimeoutTest
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  class UnauthorizedRecordTest < ActiveSupport::TestCase
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  module SessionTest
4
4
  class ValidationTest < ActiveSupport::TestCase
@@ -1,27 +1,11 @@
1
1
  require "test/unit"
2
2
  require "rubygems"
3
+ require "ruby-debug"
3
4
  require "active_record"
4
5
  require "active_record/fixtures"
5
6
 
6
- # A temporary fix to bring active record errors up to speed with rails edge.
7
- # I need to remove this once the new gem is released. This is only here so my tests pass.
8
- unless defined?(::ActiveModel.version)
9
- class ActiveRecord::Errors
10
- def [](key)
11
- value = on(key)
12
- value.is_a?(Array) ? value : [value].compact
13
- end
14
- end
15
- end
16
-
17
-
18
- ActiveRecord::Schema.verbose = false
19
-
20
- begin
21
- ActiveRecord::Base.establish_connection(:adapter => "sqlite3", :database => ":memory:")
22
- rescue ArgumentError
23
- ActiveRecord::Base.establish_connection(:adapter => "sqlite3", :dbfile => ":memory:")
24
- end
7
+ #ActiveRecord::Schema.verbose = false
8
+ ActiveRecord::Base.establish_connection(:adapter => "sqlite3", :database => ":memory:")
25
9
 
26
10
  ActiveRecord::Base.configurations = true
27
11
  ActiveRecord::Schema.define(:version => 1) do
metadata CHANGED
@@ -1,94 +1,50 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: authlogic
3
- version: !ruby/object:Gem::Version
4
- version: 2.1.11
3
+ version: !ruby/object:Gem::Version
4
+ prerelease:
5
+ version: 3.0.0
5
6
  platform: ruby
6
- authors:
7
- - Ben Johnson
7
+ authors:
8
+ - Ben Johnson of Binary Logic
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2015-03-01 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
12
+
13
+ date: 2011-04-30 00:00:00 -04:00
14
+ default_executable:
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
14
17
  name: activerecord
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
18
+ requirement: &id001 !ruby/object:Gem::Requirement
19
+ none: false
20
+ requirements:
17
21
  - - ~>
18
- - !ruby/object:Gem::Version
19
- version: 2.3.0
22
+ - !ruby/object:Gem::Version
23
+ version: 3.0.7
20
24
  type: :runtime
21
25
  prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ~>
25
- - !ruby/object:Gem::Version
26
- version: 2.3.0
27
- - !ruby/object:Gem::Dependency
28
- name: activesupport
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
26
+ version_requirements: *id001
27
+ - !ruby/object:Gem::Dependency
28
+ name: activerecord
29
+ requirement: &id002 !ruby/object:Gem::Requirement
30
+ none: false
31
+ requirements:
31
32
  - - ~>
32
- - !ruby/object:Gem::Version
33
- version: 2.3.0
33
+ - !ruby/object:Gem::Version
34
+ version: 3.0.7
34
35
  type: :runtime
35
36
  prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ~>
39
- - !ruby/object:Gem::Version
40
- version: 2.3.0
41
- - !ruby/object:Gem::Dependency
42
- name: rake
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ! '>='
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ! '>='
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: bcrypt-ruby
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ! '>='
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: sqlite3
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ! '>='
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ! '>='
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- description: A clean, simple, and unobtrusive ruby authentication solution.
84
- email:
85
- - bjohnson@binarylogic.com
37
+ version_requirements: *id002
38
+ description:
39
+ email: bjohnson@binarylogic.com
86
40
  executables: []
41
+
87
42
  extensions: []
88
- extra_rdoc_files: []
89
- files:
90
- - .gitignore
91
- - CHANGELOG.rdoc
43
+
44
+ extra_rdoc_files:
45
+ - LICENSE
46
+ - README.rdoc
47
+ files:
92
48
  - Gemfile
93
49
  - Gemfile.lock
94
50
  - LICENSE
@@ -158,6 +114,9 @@ files:
158
114
  - lib/authlogic/test_case/mock_logger.rb
159
115
  - lib/authlogic/test_case/mock_request.rb
160
116
  - lib/authlogic/test_case/rails_request_adapter.rb
117
+ - lib/generators/authlogic/USAGE
118
+ - lib/generators/authlogic/session_generator.rb
119
+ - lib/generators/authlogic/templates/session.rb
161
120
  - rails/init.rb
162
121
  - shoulda_macros/authlogic.rb
163
122
  - test/acts_as_authentic_test/base_test.rb
@@ -214,30 +173,38 @@ files:
214
173
  - test/session_test/unauthorized_record_test.rb
215
174
  - test/session_test/validation_test.rb
216
175
  - test/test_helper.rb
176
+ has_rdoc: true
217
177
  homepage: http://github.com/binarylogic/authlogic
218
178
  licenses: []
219
- metadata: {}
179
+
220
180
  post_install_message:
221
181
  rdoc_options: []
222
- require_paths:
182
+
183
+ require_paths:
223
184
  - lib
224
- required_ruby_version: !ruby/object:Gem::Requirement
225
- requirements:
226
- - - ! '>='
227
- - !ruby/object:Gem::Version
228
- version: '0'
229
- required_rubygems_version: !ruby/object:Gem::Requirement
230
- requirements:
231
- - - ! '>='
232
- - !ruby/object:Gem::Version
233
- version: '0'
185
+ required_ruby_version: !ruby/object:Gem::Requirement
186
+ none: false
187
+ requirements:
188
+ - - ">="
189
+ - !ruby/object:Gem::Version
190
+ hash: -2697218861956486539
191
+ segments:
192
+ - 0
193
+ version: "0"
194
+ required_rubygems_version: !ruby/object:Gem::Requirement
195
+ none: false
196
+ requirements:
197
+ - - ">="
198
+ - !ruby/object:Gem::Version
199
+ version: "0"
234
200
  requirements: []
201
+
235
202
  rubyforge_project:
236
- rubygems_version: 2.2.2
203
+ rubygems_version: 1.5.2
237
204
  signing_key:
238
- specification_version: 4
205
+ specification_version: 3
239
206
  summary: A clean, simple, and unobtrusive ruby authentication solution.
240
- test_files:
207
+ test_files:
241
208
  - test/acts_as_authentic_test/base_test.rb
242
209
  - test/acts_as_authentic_test/email_test.rb
243
210
  - test/acts_as_authentic_test/logged_in_status_test.rb
@@ -255,10 +222,6 @@ test_files:
255
222
  - test/crypto_provider_test/sha1_test.rb
256
223
  - test/crypto_provider_test/sha256_test.rb
257
224
  - test/crypto_provider_test/sha512_test.rb
258
- - test/fixtures/companies.yml
259
- - test/fixtures/employees.yml
260
- - test/fixtures/projects.yml
261
- - test/fixtures/users.yml
262
225
  - test/i18n_test.rb
263
226
  - test/libs/affiliate.rb
264
227
  - test/libs/company.rb