binarylogic-authlogic 2.1.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 (119) hide show
  1. data/.gitignore +9 -0
  2. data/CHANGELOG.rdoc +334 -0
  3. data/LICENSE +20 -0
  4. data/README.rdoc +245 -0
  5. data/Rakefile +49 -0
  6. data/VERSION.yml +4 -0
  7. data/generators/session/session_generator.rb +9 -0
  8. data/generators/session/templates/session.rb +2 -0
  9. data/init.rb +1 -0
  10. data/lib/authlogic.rb +55 -0
  11. data/lib/authlogic/acts_as_authentic/base.rb +112 -0
  12. data/lib/authlogic/acts_as_authentic/email.rb +110 -0
  13. data/lib/authlogic/acts_as_authentic/logged_in_status.rb +60 -0
  14. data/lib/authlogic/acts_as_authentic/login.rb +141 -0
  15. data/lib/authlogic/acts_as_authentic/magic_columns.rb +24 -0
  16. data/lib/authlogic/acts_as_authentic/password.rb +344 -0
  17. data/lib/authlogic/acts_as_authentic/perishable_token.rb +105 -0
  18. data/lib/authlogic/acts_as_authentic/persistence_token.rb +68 -0
  19. data/lib/authlogic/acts_as_authentic/restful_authentication.rb +61 -0
  20. data/lib/authlogic/acts_as_authentic/session_maintenance.rb +139 -0
  21. data/lib/authlogic/acts_as_authentic/single_access_token.rb +65 -0
  22. data/lib/authlogic/acts_as_authentic/validations_scope.rb +32 -0
  23. data/lib/authlogic/authenticates_many/association.rb +42 -0
  24. data/lib/authlogic/authenticates_many/base.rb +55 -0
  25. data/lib/authlogic/controller_adapters/abstract_adapter.rb +67 -0
  26. data/lib/authlogic/controller_adapters/merb_adapter.rb +30 -0
  27. data/lib/authlogic/controller_adapters/rails_adapter.rb +38 -0
  28. data/lib/authlogic/crypto_providers/aes256.rb +43 -0
  29. data/lib/authlogic/crypto_providers/bcrypt.rb +89 -0
  30. data/lib/authlogic/crypto_providers/md5.rb +34 -0
  31. data/lib/authlogic/crypto_providers/sha1.rb +35 -0
  32. data/lib/authlogic/crypto_providers/sha512.rb +50 -0
  33. data/lib/authlogic/i18n.rb +63 -0
  34. data/lib/authlogic/random.rb +33 -0
  35. data/lib/authlogic/regex.rb +25 -0
  36. data/lib/authlogic/session/activation.rb +58 -0
  37. data/lib/authlogic/session/active_record_trickery.rb +50 -0
  38. data/lib/authlogic/session/base.rb +37 -0
  39. data/lib/authlogic/session/brute_force_protection.rb +92 -0
  40. data/lib/authlogic/session/callbacks.rb +87 -0
  41. data/lib/authlogic/session/cookies.rb +130 -0
  42. data/lib/authlogic/session/existence.rb +91 -0
  43. data/lib/authlogic/session/foundation.rb +63 -0
  44. data/lib/authlogic/session/http_auth.rb +58 -0
  45. data/lib/authlogic/session/id.rb +41 -0
  46. data/lib/authlogic/session/klass.rb +75 -0
  47. data/lib/authlogic/session/magic_columns.rb +94 -0
  48. data/lib/authlogic/session/magic_states.rb +58 -0
  49. data/lib/authlogic/session/params.rb +100 -0
  50. data/lib/authlogic/session/password.rb +218 -0
  51. data/lib/authlogic/session/perishable_token.rb +18 -0
  52. data/lib/authlogic/session/persistence.rb +70 -0
  53. data/lib/authlogic/session/priority_record.rb +34 -0
  54. data/lib/authlogic/session/scopes.rb +101 -0
  55. data/lib/authlogic/session/session.rb +60 -0
  56. data/lib/authlogic/session/timeout.rb +82 -0
  57. data/lib/authlogic/session/unauthorized_record.rb +50 -0
  58. data/lib/authlogic/session/validation.rb +80 -0
  59. data/lib/authlogic/test_case.rb +114 -0
  60. data/lib/authlogic/test_case/mock_controller.rb +45 -0
  61. data/lib/authlogic/test_case/mock_cookie_jar.rb +14 -0
  62. data/lib/authlogic/test_case/mock_logger.rb +10 -0
  63. data/lib/authlogic/test_case/mock_request.rb +19 -0
  64. data/lib/authlogic/test_case/rails_request_adapter.rb +30 -0
  65. data/rails/init.rb +1 -0
  66. data/shoulda_macros/authlogic.rb +13 -0
  67. data/test/acts_as_authentic_test/base_test.rb +18 -0
  68. data/test/acts_as_authentic_test/email_test.rb +97 -0
  69. data/test/acts_as_authentic_test/logged_in_status_test.rb +36 -0
  70. data/test/acts_as_authentic_test/login_test.rb +109 -0
  71. data/test/acts_as_authentic_test/magic_columns_test.rb +27 -0
  72. data/test/acts_as_authentic_test/password_test.rb +236 -0
  73. data/test/acts_as_authentic_test/perishable_token_test.rb +90 -0
  74. data/test/acts_as_authentic_test/persistence_token_test.rb +55 -0
  75. data/test/acts_as_authentic_test/restful_authentication_test.rb +40 -0
  76. data/test/acts_as_authentic_test/session_maintenance_test.rb +84 -0
  77. data/test/acts_as_authentic_test/single_access_test.rb +44 -0
  78. data/test/authenticates_many_test.rb +16 -0
  79. data/test/crypto_provider_test/aes256_test.rb +14 -0
  80. data/test/crypto_provider_test/bcrypt_test.rb +14 -0
  81. data/test/crypto_provider_test/sha1_test.rb +23 -0
  82. data/test/crypto_provider_test/sha512_test.rb +14 -0
  83. data/test/fixtures/companies.yml +5 -0
  84. data/test/fixtures/employees.yml +17 -0
  85. data/test/fixtures/projects.yml +3 -0
  86. data/test/fixtures/users.yml +24 -0
  87. data/test/libs/affiliate.rb +7 -0
  88. data/test/libs/company.rb +6 -0
  89. data/test/libs/employee.rb +7 -0
  90. data/test/libs/employee_session.rb +2 -0
  91. data/test/libs/ldaper.rb +3 -0
  92. data/test/libs/ordered_hash.rb +9 -0
  93. data/test/libs/project.rb +3 -0
  94. data/test/libs/user.rb +5 -0
  95. data/test/libs/user_session.rb +2 -0
  96. data/test/random_test.rb +49 -0
  97. data/test/session_test/activation_test.rb +43 -0
  98. data/test/session_test/active_record_trickery_test.rb +27 -0
  99. data/test/session_test/brute_force_protection_test.rb +101 -0
  100. data/test/session_test/callbacks_test.rb +6 -0
  101. data/test/session_test/cookies_test.rb +107 -0
  102. data/test/session_test/credentials_test.rb +0 -0
  103. data/test/session_test/existence_test.rb +64 -0
  104. data/test/session_test/http_auth_test.rb +28 -0
  105. data/test/session_test/id_test.rb +17 -0
  106. data/test/session_test/klass_test.rb +35 -0
  107. data/test/session_test/magic_columns_test.rb +62 -0
  108. data/test/session_test/magic_states_test.rb +60 -0
  109. data/test/session_test/params_test.rb +53 -0
  110. data/test/session_test/password_test.rb +92 -0
  111. data/test/session_test/perishability_test.rb +15 -0
  112. data/test/session_test/persistence_test.rb +21 -0
  113. data/test/session_test/scopes_test.rb +60 -0
  114. data/test/session_test/session_test.rb +59 -0
  115. data/test/session_test/timeout_test.rb +52 -0
  116. data/test/session_test/unauthorized_record_test.rb +13 -0
  117. data/test/session_test/validation_test.rb +23 -0
  118. data/test/test_helper.rb +174 -0
  119. metadata +227 -0
@@ -0,0 +1,59 @@
1
+ require File.dirname(__FILE__) + '/../test_helper.rb'
2
+
3
+ module SessionTest
4
+ module SessionTest
5
+ class ConfigTest < ActiveSupport::TestCase
6
+ def test_session_key
7
+ UserSession.session_key = "my_session_key"
8
+ assert_equal "my_session_key", UserSession.session_key
9
+
10
+ UserSession.session_key "user_credentials"
11
+ assert_equal "user_credentials", UserSession.session_key
12
+ end
13
+ end
14
+
15
+ class InstanceMethodsTest < ActiveSupport::TestCase
16
+ def test_persist_persist_by_session
17
+ ben = users(:ben)
18
+ set_session_for(ben)
19
+ assert session = UserSession.find
20
+ assert_equal ben, session.record
21
+ assert_equal ben.persistence_token, controller.session["user_credentials"]
22
+ end
23
+
24
+ def test_persist_persist_by_session_with_token_only
25
+ ben = users(:ben)
26
+ set_session_for(ben)
27
+ controller.session["user_credentials_id"] = nil
28
+ assert session = UserSession.find
29
+ assert_equal ben, session.record
30
+ assert_equal ben.persistence_token, controller.session["user_credentials"]
31
+ end
32
+
33
+ def test_after_save_update_session
34
+ ben = users(:ben)
35
+ session = UserSession.new(ben)
36
+ assert controller.session["user_credentials"].blank?
37
+ assert session.save
38
+ assert_equal ben.persistence_token, controller.session["user_credentials"]
39
+ end
40
+
41
+ def test_after_destroy_update_session
42
+ ben = users(:ben)
43
+ set_session_for(ben)
44
+ assert_equal ben.persistence_token, controller.session["user_credentials"]
45
+ assert session = UserSession.find
46
+ assert session.destroy
47
+ assert controller.session["user_credentials"].blank?
48
+ end
49
+
50
+ def test_after_persisting_update_session
51
+ ben = users(:ben)
52
+ set_cookie_for(ben)
53
+ assert controller.session["user_credentials"].blank?
54
+ assert UserSession.find
55
+ assert_equal ben.persistence_token, controller.session["user_credentials"]
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,52 @@
1
+ require File.dirname(__FILE__) + '/../test_helper.rb'
2
+
3
+ module SessionTest
4
+ module TimeoutTest
5
+ class ConfigTest < ActiveSupport::TestCase
6
+ def test_logout_on_timeout
7
+ UserSession.logout_on_timeout = true
8
+ assert UserSession.logout_on_timeout
9
+
10
+ UserSession.logout_on_timeout false
11
+ assert !UserSession.logout_on_timeout
12
+ end
13
+ end
14
+
15
+ class InstanceMethods < ActiveSupport::TestCase
16
+ def test_stale_state
17
+ UserSession.logout_on_timeout = true
18
+ ben = users(:ben)
19
+ ben.last_request_at = 3.years.ago
20
+ ben.save
21
+ set_session_for(ben)
22
+
23
+ session = UserSession.new
24
+ assert session.persisting?
25
+ assert session.stale?
26
+ assert_equal ben, session.stale_record
27
+ assert_nil session.record
28
+ assert_nil controller.session["user_credentials_id"]
29
+
30
+ set_session_for(ben)
31
+
32
+ ben.last_request_at = Time.now
33
+ ben.save
34
+
35
+ assert session.persisting?
36
+ assert !session.stale?
37
+ assert_nil session.stale_record
38
+
39
+ UserSession.logout_on_timeout = false
40
+ end
41
+
42
+ def test_successful_login
43
+ UserSession.logout_on_timeout = true
44
+ ben = users(:ben)
45
+ assert UserSession.create(:login => ben.login, :password => "benrocks")
46
+ assert session = UserSession.find
47
+ assert_equal ben, session.record
48
+ UserSession.logout_on_timeout = false
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,13 @@
1
+ require File.dirname(__FILE__) + '/../test_helper.rb'
2
+
3
+ module SessionTest
4
+ class UnauthorizedRecordTest < ActiveSupport::TestCase
5
+ def test_credentials
6
+ ben = users(:ben)
7
+ session = UserSession.new
8
+ session.credentials = [ben]
9
+ assert_equal ben, session.unauthorized_record
10
+ assert_equal({:unauthorized_record => "<protected>"}, session.credentials)
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,23 @@
1
+ require File.dirname(__FILE__) + '/../test_helper.rb'
2
+
3
+ module SessionTest
4
+ class ValidationTest < ActiveSupport::TestCase
5
+ def test_errors
6
+ session = UserSession.new
7
+ assert session.errors.is_a?(Authlogic::Session::Validation::Errors)
8
+ end
9
+
10
+ def test_valid
11
+ session = UserSession.new
12
+ assert !session.valid?
13
+ assert_nil session.record
14
+ assert session.errors.count > 0
15
+
16
+ ben = users(:ben)
17
+ session.unauthorized_record = ben
18
+ assert session.valid?
19
+ assert_equal ben, session.attempted_record
20
+ assert session.errors.empty?
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,174 @@
1
+ require "test/unit"
2
+ require "rubygems"
3
+ require "ruby-debug"
4
+ require "active_record"
5
+ require "active_record/fixtures"
6
+
7
+ # A temporary fix to bring active record errors up to speed with rails edge.
8
+ # I need to remove this once the new gem is released. This is only here so my tests pass.
9
+ class ActiveRecord::Errors
10
+ def [](key)
11
+ value = on(key)
12
+ value.is_a?(Array) ? value : [value].compact
13
+ end
14
+ end
15
+
16
+
17
+ ActiveRecord::Schema.verbose = false
18
+ ActiveRecord::Base.establish_connection(:adapter => "sqlite3", :dbfile => ":memory:")
19
+ ActiveRecord::Base.configurations = true
20
+ ActiveRecord::Schema.define(:version => 1) do
21
+ create_table :companies do |t|
22
+ t.datetime :created_at
23
+ t.datetime :updated_at
24
+ t.string :name
25
+ t.boolean :active
26
+ end
27
+
28
+ create_table :projects do |t|
29
+ t.datetime :created_at
30
+ t.datetime :updated_at
31
+ t.string :name
32
+ end
33
+
34
+ create_table :projects_users, :id => false do |t|
35
+ t.integer :project_id
36
+ t.integer :user_id
37
+ end
38
+
39
+ create_table :users do |t|
40
+ t.datetime :created_at
41
+ t.datetime :updated_at
42
+ t.integer :lock_version, :default => 0
43
+ t.integer :company_id
44
+ t.string :login
45
+ t.string :crypted_password
46
+ t.string :password_salt
47
+ t.string :persistence_token
48
+ t.string :single_access_token
49
+ t.string :perishable_token
50
+ t.string :email
51
+ t.string :first_name
52
+ t.string :last_name
53
+ t.integer :login_count, :default => 0, :null => false
54
+ t.integer :failed_login_count, :default => 0, :null => false
55
+ t.datetime :last_request_at
56
+ t.datetime :current_login_at
57
+ t.datetime :last_login_at
58
+ t.string :current_login_ip
59
+ t.string :last_login_ip
60
+ t.boolean :active, :default => true
61
+ t.boolean :approved, :default => true
62
+ t.boolean :confirmed, :default => true
63
+ end
64
+
65
+ create_table :employees do |t|
66
+ t.datetime :created_at
67
+ t.datetime :updated_at
68
+ t.integer :company_id
69
+ t.string :email
70
+ t.string :crypted_password
71
+ t.string :password_salt
72
+ t.string :persistence_token
73
+ t.string :first_name
74
+ t.string :last_name
75
+ t.integer :login_count, :default => 0, :null => false
76
+ t.datetime :last_request_at
77
+ t.datetime :current_login_at
78
+ t.datetime :last_login_at
79
+ t.string :current_login_ip
80
+ t.string :last_login_ip
81
+ end
82
+
83
+ create_table :affiliates do |t|
84
+ t.datetime :created_at
85
+ t.datetime :updated_at
86
+ t.integer :company_id
87
+ t.string :username
88
+ t.string :pw_hash
89
+ t.string :pw_salt
90
+ t.string :persistence_token
91
+ end
92
+
93
+ create_table :ldapers do |t|
94
+ t.datetime :created_at
95
+ t.datetime :updated_at
96
+ t.string :ldap_login
97
+ t.string :persistence_token
98
+ end
99
+ end
100
+
101
+ require File.dirname(__FILE__) + '/../lib/authlogic' unless defined?(Authlogic)
102
+ require File.dirname(__FILE__) + '/../lib/authlogic/test_case'
103
+ require File.dirname(__FILE__) + '/libs/project'
104
+ require File.dirname(__FILE__) + '/libs/affiliate'
105
+ require File.dirname(__FILE__) + '/libs/employee'
106
+ require File.dirname(__FILE__) + '/libs/employee_session'
107
+ require File.dirname(__FILE__) + '/libs/ldaper'
108
+ require File.dirname(__FILE__) + '/libs/user'
109
+ require File.dirname(__FILE__) + '/libs/user_session'
110
+ require File.dirname(__FILE__) + '/libs/company'
111
+
112
+ Authlogic::CryptoProviders::AES256.key = "myafdsfddddddddddddddddddddddddddddddddddddddddddddddd"
113
+
114
+ class ActiveSupport::TestCase
115
+ include ActiveRecord::TestFixtures
116
+ self.fixture_path = File.dirname(__FILE__) + "/fixtures"
117
+ self.use_transactional_fixtures = false
118
+ self.use_instantiated_fixtures = false
119
+ self.pre_loaded_fixtures = false
120
+ fixtures :all
121
+ setup :activate_authlogic
122
+
123
+ private
124
+ def password_for(user)
125
+ case user
126
+ when users(:ben)
127
+ "benrocks"
128
+ when users(:zack)
129
+ "zackrocks"
130
+ end
131
+ end
132
+
133
+ def http_basic_auth_for(user = nil, &block)
134
+ unless user.blank?
135
+ controller.http_user = user.login
136
+ controller.http_password = password_for(user)
137
+ end
138
+ yield
139
+ controller.http_user = controller.http_password = nil
140
+ end
141
+
142
+ def set_cookie_for(user, id = nil)
143
+ controller.cookies["user_credentials"] = {:value => user.persistence_token, :expires => nil}
144
+ end
145
+
146
+ def unset_cookie
147
+ controller.cookies["user_credentials"] = nil
148
+ end
149
+
150
+ def set_params_for(user, id = nil)
151
+ controller.params["user_credentials"] = user.single_access_token
152
+ end
153
+
154
+ def unset_params
155
+ controller.params["user_credentials"] = nil
156
+ end
157
+
158
+ def set_request_content_type(type)
159
+ controller.request_content_type = type
160
+ end
161
+
162
+ def unset_request_content_type
163
+ controller.request_content_type = nil
164
+ end
165
+
166
+ def set_session_for(user, id = nil)
167
+ controller.session["user_credentials"] = user.persistence_token
168
+ controller.session["user_credentials_id"] = user.id
169
+ end
170
+
171
+ def unset_session
172
+ controller.session["user_credentials"] = controller.session["user_credentials_id"] = nil
173
+ end
174
+ end
metadata ADDED
@@ -0,0 +1,227 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: binarylogic-authlogic
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Ben Johnson of Binary Logic
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-06-27 00:00:00 -07:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: activesupport
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ description:
26
+ email: bjohnson@binarylogic.com
27
+ executables: []
28
+
29
+ extensions: []
30
+
31
+ extra_rdoc_files:
32
+ - LICENSE
33
+ - README.rdoc
34
+ files:
35
+ - .gitignore
36
+ - CHANGELOG.rdoc
37
+ - LICENSE
38
+ - README.rdoc
39
+ - Rakefile
40
+ - VERSION.yml
41
+ - generators/session/session_generator.rb
42
+ - generators/session/templates/session.rb
43
+ - init.rb
44
+ - lib/authlogic.rb
45
+ - lib/authlogic/acts_as_authentic/base.rb
46
+ - lib/authlogic/acts_as_authentic/email.rb
47
+ - lib/authlogic/acts_as_authentic/logged_in_status.rb
48
+ - lib/authlogic/acts_as_authentic/login.rb
49
+ - lib/authlogic/acts_as_authentic/magic_columns.rb
50
+ - lib/authlogic/acts_as_authentic/password.rb
51
+ - lib/authlogic/acts_as_authentic/perishable_token.rb
52
+ - lib/authlogic/acts_as_authentic/persistence_token.rb
53
+ - lib/authlogic/acts_as_authentic/restful_authentication.rb
54
+ - lib/authlogic/acts_as_authentic/session_maintenance.rb
55
+ - lib/authlogic/acts_as_authentic/single_access_token.rb
56
+ - lib/authlogic/acts_as_authentic/validations_scope.rb
57
+ - lib/authlogic/authenticates_many/association.rb
58
+ - lib/authlogic/authenticates_many/base.rb
59
+ - lib/authlogic/controller_adapters/abstract_adapter.rb
60
+ - lib/authlogic/controller_adapters/merb_adapter.rb
61
+ - lib/authlogic/controller_adapters/rails_adapter.rb
62
+ - lib/authlogic/crypto_providers/aes256.rb
63
+ - lib/authlogic/crypto_providers/bcrypt.rb
64
+ - lib/authlogic/crypto_providers/md5.rb
65
+ - lib/authlogic/crypto_providers/sha1.rb
66
+ - lib/authlogic/crypto_providers/sha512.rb
67
+ - lib/authlogic/i18n.rb
68
+ - lib/authlogic/random.rb
69
+ - lib/authlogic/regex.rb
70
+ - lib/authlogic/session/activation.rb
71
+ - lib/authlogic/session/active_record_trickery.rb
72
+ - lib/authlogic/session/base.rb
73
+ - lib/authlogic/session/brute_force_protection.rb
74
+ - lib/authlogic/session/callbacks.rb
75
+ - lib/authlogic/session/cookies.rb
76
+ - lib/authlogic/session/existence.rb
77
+ - lib/authlogic/session/foundation.rb
78
+ - lib/authlogic/session/http_auth.rb
79
+ - lib/authlogic/session/id.rb
80
+ - lib/authlogic/session/klass.rb
81
+ - lib/authlogic/session/magic_columns.rb
82
+ - lib/authlogic/session/magic_states.rb
83
+ - lib/authlogic/session/params.rb
84
+ - lib/authlogic/session/password.rb
85
+ - lib/authlogic/session/perishable_token.rb
86
+ - lib/authlogic/session/persistence.rb
87
+ - lib/authlogic/session/priority_record.rb
88
+ - lib/authlogic/session/scopes.rb
89
+ - lib/authlogic/session/session.rb
90
+ - lib/authlogic/session/timeout.rb
91
+ - lib/authlogic/session/unauthorized_record.rb
92
+ - lib/authlogic/session/validation.rb
93
+ - lib/authlogic/test_case.rb
94
+ - lib/authlogic/test_case/mock_controller.rb
95
+ - lib/authlogic/test_case/mock_cookie_jar.rb
96
+ - lib/authlogic/test_case/mock_logger.rb
97
+ - lib/authlogic/test_case/mock_request.rb
98
+ - lib/authlogic/test_case/rails_request_adapter.rb
99
+ - rails/init.rb
100
+ - shoulda_macros/authlogic.rb
101
+ - test/acts_as_authentic_test/base_test.rb
102
+ - test/acts_as_authentic_test/email_test.rb
103
+ - test/acts_as_authentic_test/logged_in_status_test.rb
104
+ - test/acts_as_authentic_test/login_test.rb
105
+ - test/acts_as_authentic_test/magic_columns_test.rb
106
+ - test/acts_as_authentic_test/password_test.rb
107
+ - test/acts_as_authentic_test/perishable_token_test.rb
108
+ - test/acts_as_authentic_test/persistence_token_test.rb
109
+ - test/acts_as_authentic_test/restful_authentication_test.rb
110
+ - test/acts_as_authentic_test/session_maintenance_test.rb
111
+ - test/acts_as_authentic_test/single_access_test.rb
112
+ - test/authenticates_many_test.rb
113
+ - test/crypto_provider_test/aes256_test.rb
114
+ - test/crypto_provider_test/bcrypt_test.rb
115
+ - test/crypto_provider_test/sha1_test.rb
116
+ - test/crypto_provider_test/sha512_test.rb
117
+ - test/fixtures/companies.yml
118
+ - test/fixtures/employees.yml
119
+ - test/fixtures/projects.yml
120
+ - test/fixtures/users.yml
121
+ - test/libs/affiliate.rb
122
+ - test/libs/company.rb
123
+ - test/libs/employee.rb
124
+ - test/libs/employee_session.rb
125
+ - test/libs/ldaper.rb
126
+ - test/libs/ordered_hash.rb
127
+ - test/libs/project.rb
128
+ - test/libs/user.rb
129
+ - test/libs/user_session.rb
130
+ - test/random_test.rb
131
+ - test/session_test/activation_test.rb
132
+ - test/session_test/active_record_trickery_test.rb
133
+ - test/session_test/brute_force_protection_test.rb
134
+ - test/session_test/callbacks_test.rb
135
+ - test/session_test/cookies_test.rb
136
+ - test/session_test/credentials_test.rb
137
+ - test/session_test/existence_test.rb
138
+ - test/session_test/http_auth_test.rb
139
+ - test/session_test/id_test.rb
140
+ - test/session_test/klass_test.rb
141
+ - test/session_test/magic_columns_test.rb
142
+ - test/session_test/magic_states_test.rb
143
+ - test/session_test/params_test.rb
144
+ - test/session_test/password_test.rb
145
+ - test/session_test/perishability_test.rb
146
+ - test/session_test/persistence_test.rb
147
+ - test/session_test/scopes_test.rb
148
+ - test/session_test/session_test.rb
149
+ - test/session_test/timeout_test.rb
150
+ - test/session_test/unauthorized_record_test.rb
151
+ - test/session_test/validation_test.rb
152
+ - test/test_helper.rb
153
+ has_rdoc: false
154
+ homepage: http://github.com/binarylogic/authlogic
155
+ post_install_message:
156
+ rdoc_options:
157
+ - --charset=UTF-8
158
+ require_paths:
159
+ - lib
160
+ required_ruby_version: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - ">="
163
+ - !ruby/object:Gem::Version
164
+ version: "0"
165
+ version:
166
+ required_rubygems_version: !ruby/object:Gem::Requirement
167
+ requirements:
168
+ - - ">="
169
+ - !ruby/object:Gem::Version
170
+ version: "0"
171
+ version:
172
+ requirements: []
173
+
174
+ rubyforge_project: authlogic
175
+ rubygems_version: 1.2.0
176
+ signing_key:
177
+ specification_version: 3
178
+ summary: A clean, simple, and unobtrusive ruby authentication solution.
179
+ test_files:
180
+ - test/acts_as_authentic_test/base_test.rb
181
+ - test/acts_as_authentic_test/email_test.rb
182
+ - test/acts_as_authentic_test/logged_in_status_test.rb
183
+ - test/acts_as_authentic_test/login_test.rb
184
+ - test/acts_as_authentic_test/magic_columns_test.rb
185
+ - test/acts_as_authentic_test/password_test.rb
186
+ - test/acts_as_authentic_test/perishable_token_test.rb
187
+ - test/acts_as_authentic_test/persistence_token_test.rb
188
+ - test/acts_as_authentic_test/restful_authentication_test.rb
189
+ - test/acts_as_authentic_test/session_maintenance_test.rb
190
+ - test/acts_as_authentic_test/single_access_test.rb
191
+ - test/authenticates_many_test.rb
192
+ - test/crypto_provider_test/aes256_test.rb
193
+ - test/crypto_provider_test/bcrypt_test.rb
194
+ - test/crypto_provider_test/sha1_test.rb
195
+ - test/crypto_provider_test/sha512_test.rb
196
+ - test/libs/affiliate.rb
197
+ - test/libs/company.rb
198
+ - test/libs/employee.rb
199
+ - test/libs/employee_session.rb
200
+ - test/libs/ldaper.rb
201
+ - test/libs/ordered_hash.rb
202
+ - test/libs/project.rb
203
+ - test/libs/user.rb
204
+ - test/libs/user_session.rb
205
+ - test/random_test.rb
206
+ - test/session_test/activation_test.rb
207
+ - test/session_test/active_record_trickery_test.rb
208
+ - test/session_test/brute_force_protection_test.rb
209
+ - test/session_test/callbacks_test.rb
210
+ - test/session_test/cookies_test.rb
211
+ - test/session_test/credentials_test.rb
212
+ - test/session_test/existence_test.rb
213
+ - test/session_test/http_auth_test.rb
214
+ - test/session_test/id_test.rb
215
+ - test/session_test/klass_test.rb
216
+ - test/session_test/magic_columns_test.rb
217
+ - test/session_test/magic_states_test.rb
218
+ - test/session_test/params_test.rb
219
+ - test/session_test/password_test.rb
220
+ - test/session_test/perishability_test.rb
221
+ - test/session_test/persistence_test.rb
222
+ - test/session_test/scopes_test.rb
223
+ - test/session_test/session_test.rb
224
+ - test/session_test/timeout_test.rb
225
+ - test/session_test/unauthorized_record_test.rb
226
+ - test/session_test/validation_test.rb
227
+ - test/test_helper.rb