upstream-devise 2.1.0.rc

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 (215) hide show
  1. data/.gitignore +10 -0
  2. data/.travis.yml +15 -0
  3. data/CHANGELOG.rdoc +846 -0
  4. data/Gemfile +35 -0
  5. data/Gemfile.lock +165 -0
  6. data/MIT-LICENSE +20 -0
  7. data/README.md +384 -0
  8. data/Rakefile +34 -0
  9. data/app/controllers/devise/confirmations_controller.rb +43 -0
  10. data/app/controllers/devise/omniauth_callbacks_controller.rb +24 -0
  11. data/app/controllers/devise/passwords_controller.rb +47 -0
  12. data/app/controllers/devise/registrations_controller.rb +107 -0
  13. data/app/controllers/devise/sessions_controller.rb +49 -0
  14. data/app/controllers/devise/unlocks_controller.rb +44 -0
  15. data/app/controllers/devise_controller.rb +177 -0
  16. data/app/helpers/devise_helper.rb +25 -0
  17. data/app/mailers/devise/mailer.rb +15 -0
  18. data/app/views/devise/_links.erb +3 -0
  19. data/app/views/devise/confirmations/new.html.erb +12 -0
  20. data/app/views/devise/mailer/confirmation_instructions.html.erb +5 -0
  21. data/app/views/devise/mailer/reset_password_instructions.html.erb +8 -0
  22. data/app/views/devise/mailer/unlock_instructions.html.erb +7 -0
  23. data/app/views/devise/passwords/edit.html.erb +16 -0
  24. data/app/views/devise/passwords/new.html.erb +12 -0
  25. data/app/views/devise/registrations/edit.html.erb +25 -0
  26. data/app/views/devise/registrations/new.html.erb +18 -0
  27. data/app/views/devise/sessions/new.html.erb +17 -0
  28. data/app/views/devise/shared/_links.erb +25 -0
  29. data/app/views/devise/unlocks/new.html.erb +12 -0
  30. data/config/locales/en.yml +57 -0
  31. data/devise.gemspec +25 -0
  32. data/gemfiles/Gemfile.rails-3.1.x +35 -0
  33. data/gemfiles/Gemfile.rails-3.1.x.lock +167 -0
  34. data/lib/devise.rb +455 -0
  35. data/lib/devise/controllers/helpers.rb +269 -0
  36. data/lib/devise/controllers/rememberable.rb +52 -0
  37. data/lib/devise/controllers/scoped_views.rb +17 -0
  38. data/lib/devise/controllers/url_helpers.rb +67 -0
  39. data/lib/devise/delegator.rb +17 -0
  40. data/lib/devise/encryptors/authlogic_sha512.rb +19 -0
  41. data/lib/devise/encryptors/base.rb +24 -0
  42. data/lib/devise/encryptors/clearance_sha1.rb +17 -0
  43. data/lib/devise/encryptors/restful_authentication_sha1.rb +22 -0
  44. data/lib/devise/encryptors/sha1.rb +25 -0
  45. data/lib/devise/encryptors/sha512.rb +25 -0
  46. data/lib/devise/failure_app.rb +185 -0
  47. data/lib/devise/hooks/activatable.rb +11 -0
  48. data/lib/devise/hooks/forgetable.rb +9 -0
  49. data/lib/devise/hooks/lockable.rb +7 -0
  50. data/lib/devise/hooks/rememberable.rb +6 -0
  51. data/lib/devise/hooks/timeoutable.rb +22 -0
  52. data/lib/devise/hooks/trackable.rb +9 -0
  53. data/lib/devise/mailers/helpers.rb +86 -0
  54. data/lib/devise/mapping.rb +172 -0
  55. data/lib/devise/models.rb +123 -0
  56. data/lib/devise/models/authenticatable.rb +231 -0
  57. data/lib/devise/models/confirmable.rb +242 -0
  58. data/lib/devise/models/database_authenticatable.rb +126 -0
  59. data/lib/devise/models/encryptable.rb +86 -0
  60. data/lib/devise/models/lockable.rb +185 -0
  61. data/lib/devise/models/omniauthable.rb +27 -0
  62. data/lib/devise/models/recoverable.rb +140 -0
  63. data/lib/devise/models/registerable.rb +25 -0
  64. data/lib/devise/models/rememberable.rb +125 -0
  65. data/lib/devise/models/timeoutable.rb +49 -0
  66. data/lib/devise/models/token_authenticatable.rb +77 -0
  67. data/lib/devise/models/trackable.rb +35 -0
  68. data/lib/devise/models/validatable.rb +66 -0
  69. data/lib/devise/modules.rb +30 -0
  70. data/lib/devise/omniauth.rb +28 -0
  71. data/lib/devise/omniauth/config.rb +45 -0
  72. data/lib/devise/omniauth/url_helpers.rb +33 -0
  73. data/lib/devise/orm/active_record.rb +3 -0
  74. data/lib/devise/orm/mongoid.rb +3 -0
  75. data/lib/devise/param_filter.rb +41 -0
  76. data/lib/devise/rails.rb +54 -0
  77. data/lib/devise/rails/routes.rb +412 -0
  78. data/lib/devise/rails/warden_compat.rb +43 -0
  79. data/lib/devise/strategies/authenticatable.rb +165 -0
  80. data/lib/devise/strategies/base.rb +15 -0
  81. data/lib/devise/strategies/database_authenticatable.rb +21 -0
  82. data/lib/devise/strategies/rememberable.rb +53 -0
  83. data/lib/devise/strategies/token_authenticatable.rb +57 -0
  84. data/lib/devise/test_helpers.rb +130 -0
  85. data/lib/devise/version.rb +3 -0
  86. data/lib/generators/active_record/devise_generator.rb +78 -0
  87. data/lib/generators/active_record/templates/migration.rb +19 -0
  88. data/lib/generators/active_record/templates/migration_existing.rb +26 -0
  89. data/lib/generators/devise/devise_generator.rb +24 -0
  90. data/lib/generators/devise/install_generator.rb +24 -0
  91. data/lib/generators/devise/orm_helpers.rb +32 -0
  92. data/lib/generators/devise/views_generator.rb +110 -0
  93. data/lib/generators/mongoid/devise_generator.rb +60 -0
  94. data/lib/generators/templates/README +31 -0
  95. data/lib/generators/templates/devise.rb +216 -0
  96. data/lib/generators/templates/markerb/confirmation_instructions.markerb +5 -0
  97. data/lib/generators/templates/markerb/reset_password_instructions.markerb +8 -0
  98. data/lib/generators/templates/markerb/unlock_instructions.markerb +7 -0
  99. data/lib/generators/templates/simple_form_for/confirmations/new.html.erb +15 -0
  100. data/lib/generators/templates/simple_form_for/passwords/edit.html.erb +19 -0
  101. data/lib/generators/templates/simple_form_for/passwords/new.html.erb +15 -0
  102. data/lib/generators/templates/simple_form_for/registrations/edit.html.erb +22 -0
  103. data/lib/generators/templates/simple_form_for/registrations/new.html.erb +17 -0
  104. data/lib/generators/templates/simple_form_for/sessions/new.html.erb +15 -0
  105. data/lib/generators/templates/simple_form_for/unlocks/new.html.erb +15 -0
  106. data/test/controllers/custom_strategy_test.rb +62 -0
  107. data/test/controllers/helpers_test.rb +254 -0
  108. data/test/controllers/internal_helpers_test.rb +97 -0
  109. data/test/controllers/sessions_controller_test.rb +36 -0
  110. data/test/controllers/url_helpers_test.rb +59 -0
  111. data/test/delegator_test.rb +19 -0
  112. data/test/devise_test.rb +72 -0
  113. data/test/encryptors_test.rb +30 -0
  114. data/test/failure_app_test.rb +211 -0
  115. data/test/generators/active_record_generator_test.rb +69 -0
  116. data/test/generators/devise_generator_test.rb +39 -0
  117. data/test/generators/install_generator_test.rb +13 -0
  118. data/test/generators/mongoid_generator_test.rb +23 -0
  119. data/test/generators/views_generator_test.rb +52 -0
  120. data/test/helpers/devise_helper_test.rb +51 -0
  121. data/test/indifferent_hash.rb +33 -0
  122. data/test/integration/authenticatable_test.rb +587 -0
  123. data/test/integration/confirmable_test.rb +255 -0
  124. data/test/integration/database_authenticatable_test.rb +82 -0
  125. data/test/integration/http_authenticatable_test.rb +97 -0
  126. data/test/integration/lockable_test.rb +224 -0
  127. data/test/integration/omniauthable_test.rb +133 -0
  128. data/test/integration/recoverable_test.rb +300 -0
  129. data/test/integration/registerable_test.rb +324 -0
  130. data/test/integration/rememberable_test.rb +158 -0
  131. data/test/integration/timeoutable_test.rb +114 -0
  132. data/test/integration/token_authenticatable_test.rb +161 -0
  133. data/test/integration/trackable_test.rb +92 -0
  134. data/test/mailers/confirmation_instructions_test.rb +95 -0
  135. data/test/mailers/reset_password_instructions_test.rb +83 -0
  136. data/test/mailers/unlock_instructions_test.rb +77 -0
  137. data/test/mapping_test.rb +127 -0
  138. data/test/models/authenticatable_test.rb +7 -0
  139. data/test/models/confirmable_test.rb +357 -0
  140. data/test/models/database_authenticatable_test.rb +189 -0
  141. data/test/models/encryptable_test.rb +73 -0
  142. data/test/models/lockable_test.rb +263 -0
  143. data/test/models/omniauthable_test.rb +7 -0
  144. data/test/models/recoverable_test.rb +205 -0
  145. data/test/models/registerable_test.rb +7 -0
  146. data/test/models/rememberable_test.rb +174 -0
  147. data/test/models/serializable_test.rb +48 -0
  148. data/test/models/timeoutable_test.rb +46 -0
  149. data/test/models/token_authenticatable_test.rb +55 -0
  150. data/test/models/trackable_test.rb +13 -0
  151. data/test/models/validatable_test.rb +117 -0
  152. data/test/models_test.rb +179 -0
  153. data/test/omniauth/config_test.rb +57 -0
  154. data/test/omniauth/url_helpers_test.rb +58 -0
  155. data/test/orm/active_record.rb +9 -0
  156. data/test/orm/mongoid.rb +14 -0
  157. data/test/rails_app/Rakefile +10 -0
  158. data/test/rails_app/app/active_record/admin.rb +6 -0
  159. data/test/rails_app/app/active_record/shim.rb +2 -0
  160. data/test/rails_app/app/active_record/user.rb +6 -0
  161. data/test/rails_app/app/controllers/admins/sessions_controller.rb +6 -0
  162. data/test/rails_app/app/controllers/admins_controller.rb +6 -0
  163. data/test/rails_app/app/controllers/application_controller.rb +8 -0
  164. data/test/rails_app/app/controllers/home_controller.rb +25 -0
  165. data/test/rails_app/app/controllers/publisher/registrations_controller.rb +2 -0
  166. data/test/rails_app/app/controllers/publisher/sessions_controller.rb +2 -0
  167. data/test/rails_app/app/controllers/users/omniauth_callbacks_controller.rb +14 -0
  168. data/test/rails_app/app/controllers/users_controller.rb +23 -0
  169. data/test/rails_app/app/helpers/application_helper.rb +3 -0
  170. data/test/rails_app/app/mailers/users/mailer.rb +3 -0
  171. data/test/rails_app/app/mongoid/admin.rb +30 -0
  172. data/test/rails_app/app/mongoid/shim.rb +24 -0
  173. data/test/rails_app/app/mongoid/user.rb +45 -0
  174. data/test/rails_app/app/views/admins/index.html.erb +1 -0
  175. data/test/rails_app/app/views/admins/sessions/new.html.erb +2 -0
  176. data/test/rails_app/app/views/home/admin_dashboard.html.erb +1 -0
  177. data/test/rails_app/app/views/home/index.html.erb +1 -0
  178. data/test/rails_app/app/views/home/join.html.erb +1 -0
  179. data/test/rails_app/app/views/home/private.html.erb +1 -0
  180. data/test/rails_app/app/views/home/user_dashboard.html.erb +1 -0
  181. data/test/rails_app/app/views/layouts/application.html.erb +24 -0
  182. data/test/rails_app/app/views/users/index.html.erb +1 -0
  183. data/test/rails_app/app/views/users/mailer/confirmation_instructions.erb +1 -0
  184. data/test/rails_app/app/views/users/sessions/new.html.erb +1 -0
  185. data/test/rails_app/config.ru +4 -0
  186. data/test/rails_app/config/application.rb +41 -0
  187. data/test/rails_app/config/boot.rb +8 -0
  188. data/test/rails_app/config/database.yml +18 -0
  189. data/test/rails_app/config/environment.rb +5 -0
  190. data/test/rails_app/config/environments/development.rb +18 -0
  191. data/test/rails_app/config/environments/production.rb +33 -0
  192. data/test/rails_app/config/environments/test.rb +33 -0
  193. data/test/rails_app/config/initializers/backtrace_silencers.rb +7 -0
  194. data/test/rails_app/config/initializers/devise.rb +186 -0
  195. data/test/rails_app/config/initializers/inflections.rb +2 -0
  196. data/test/rails_app/config/initializers/secret_token.rb +2 -0
  197. data/test/rails_app/config/routes.rb +90 -0
  198. data/test/rails_app/db/migrate/20100401102949_create_tables.rb +77 -0
  199. data/test/rails_app/db/schema.rb +52 -0
  200. data/test/rails_app/lib/shared_admin.rb +14 -0
  201. data/test/rails_app/lib/shared_user.rb +26 -0
  202. data/test/rails_app/public/404.html +26 -0
  203. data/test/rails_app/public/422.html +26 -0
  204. data/test/rails_app/public/500.html +26 -0
  205. data/test/rails_app/public/favicon.ico +0 -0
  206. data/test/rails_app/script/rails +10 -0
  207. data/test/routes_test.rb +248 -0
  208. data/test/support/assertions.rb +42 -0
  209. data/test/support/helpers.rb +91 -0
  210. data/test/support/integration.rb +90 -0
  211. data/test/support/locale/en.yml +4 -0
  212. data/test/support/webrat/integrations/rails.rb +24 -0
  213. data/test/test_helper.rb +27 -0
  214. data/test/test_helpers_test.rb +134 -0
  215. metadata +451 -0
@@ -0,0 +1,90 @@
1
+ require 'action_dispatch/testing/integration'
2
+
3
+ class ActionDispatch::IntegrationTest
4
+ def warden
5
+ request.env['warden']
6
+ end
7
+
8
+ def create_user(options={})
9
+ @user ||= begin
10
+ user = User.create!(
11
+ :username => 'usertest',
12
+ :email => options[:email] || 'user@test.com',
13
+ :password => options[:password] || '123456',
14
+ :password_confirmation => options[:password] || '123456',
15
+ :created_at => Time.now.utc
16
+ )
17
+ user.confirm! unless options[:confirm] == false
18
+ user.lock_access! if options[:locked] == true
19
+ user
20
+ end
21
+ end
22
+
23
+ def create_admin(options={})
24
+ @admin ||= begin
25
+ admin = Admin.create!(
26
+ :email => options[:email] || 'admin@test.com',
27
+ :password => '123456', :password_confirmation => '123456'
28
+ )
29
+ admin.confirm! unless options[:confirm] == false
30
+ admin
31
+ end
32
+ end
33
+
34
+ def sign_in_as_user(options={}, &block)
35
+ user = create_user(options)
36
+ visit_with_option options[:visit], new_user_session_path
37
+ fill_in 'email', :with => options[:email] || 'user@test.com'
38
+ fill_in 'password', :with => options[:password] || '123456'
39
+ check 'remember me' if options[:remember_me] == true
40
+ yield if block_given?
41
+ click_button 'Sign In'
42
+ user
43
+ end
44
+
45
+ def sign_in_as_admin(options={}, &block)
46
+ admin = create_admin(options)
47
+ visit_with_option options[:visit], new_admin_session_path
48
+ fill_in 'email', :with => 'admin@test.com'
49
+ fill_in 'password', :with => '123456'
50
+ yield if block_given?
51
+ click_button 'Sign In'
52
+ admin
53
+ end
54
+
55
+ # Fix assert_redirect_to in integration sessions because they don't take into
56
+ # account Middleware redirects.
57
+ #
58
+ def assert_redirected_to(url)
59
+ assert [301, 302].include?(@integration_session.status),
60
+ "Expected status to be 301 or 302, got #{@integration_session.status}"
61
+
62
+ assert_url url, @integration_session.headers["Location"]
63
+ end
64
+
65
+ def assert_current_url(expected)
66
+ assert_url expected, current_url
67
+ end
68
+
69
+ def assert_url(expected, actual)
70
+ assert_equal prepend_host(expected), prepend_host(actual)
71
+ end
72
+
73
+ protected
74
+
75
+ def visit_with_option(given, default)
76
+ case given
77
+ when String
78
+ visit given
79
+ when FalseClass
80
+ # Do nothing
81
+ else
82
+ visit default
83
+ end
84
+ end
85
+
86
+ def prepend_host(url)
87
+ url = "http://#{request.host}#{url}" if url[0] == ?/
88
+ url
89
+ end
90
+ end
@@ -0,0 +1,4 @@
1
+ en:
2
+ errors:
3
+ messages:
4
+ taken: "has already been taken"
@@ -0,0 +1,24 @@
1
+ require 'webrat/core/elements/form'
2
+ require 'action_dispatch/testing/integration'
3
+
4
+ module Webrat
5
+ Form.class_eval do
6
+ def self.parse_rails_request_params(params)
7
+ Rack::Utils.parse_nested_query(params)
8
+ end
9
+ end
10
+
11
+ module Logging
12
+ # Avoid RAILS_DEFAULT_LOGGER deprecation warning
13
+ def logger # :nodoc:
14
+ ::Rails.logger
15
+ end
16
+ end
17
+ end
18
+
19
+ module ActionDispatch #:nodoc:
20
+ IntegrationTest.class_eval do
21
+ include Webrat::Methods
22
+ include Webrat::Matchers
23
+ end
24
+ end
@@ -0,0 +1,27 @@
1
+ ENV["RAILS_ENV"] = "test"
2
+ DEVISE_ORM = (ENV["DEVISE_ORM"] || :active_record).to_sym
3
+
4
+ $:.unshift File.dirname(__FILE__)
5
+ puts "\n==> Devise.orm = #{DEVISE_ORM.inspect}"
6
+
7
+ require "rails_app/config/environment"
8
+ require "rails/test_help"
9
+ require "orm/#{DEVISE_ORM}"
10
+
11
+ I18n.load_path << File.expand_path("../support/locale/en.yml", __FILE__)
12
+
13
+ require 'mocha'
14
+ require 'webrat'
15
+ Webrat.configure do |config|
16
+ config.mode = :rails
17
+ config.open_error_files = false
18
+ end
19
+
20
+ # Add support to load paths so we can overwrite broken webrat setup
21
+ $:.unshift File.expand_path('../support', __FILE__)
22
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
23
+
24
+ # For generators
25
+ require "rails/generators/test_case"
26
+ require "generators/devise/install_generator"
27
+ require "generators/devise/views_generator"
@@ -0,0 +1,134 @@
1
+ require 'test_helper'
2
+
3
+ class TestHelpersTest < ActionController::TestCase
4
+ tests UsersController
5
+ include Devise::TestHelpers
6
+
7
+ class CustomFailureApp < Devise::FailureApp
8
+ def redirect
9
+ self.status = 306
10
+ end
11
+ end
12
+
13
+ test "redirects if attempting to access a page unauthenticated" do
14
+ get :index
15
+ assert_redirected_to new_user_session_path
16
+ assert_equal "You need to sign in or sign up before continuing.", flash[:alert]
17
+ end
18
+
19
+ test "redirects if attempting to access a page with an unconfirmed account" do
20
+ swap Devise, :allow_unconfirmed_access_for => 0 do
21
+ user = create_user
22
+ assert !user.active_for_authentication?
23
+
24
+ sign_in user
25
+ get :index
26
+ assert_redirected_to new_user_session_path
27
+ end
28
+ end
29
+
30
+ test "returns nil if accessing current_user with an unconfirmed account" do
31
+ swap Devise, :allow_unconfirmed_access_for => 0 do
32
+ user = create_user
33
+ assert !user.active_for_authentication?
34
+
35
+ sign_in user
36
+ get :accept, :id => user
37
+ assert_nil assigns(:current_user)
38
+ end
39
+ end
40
+
41
+ test "does not redirect with valid user" do
42
+ user = create_user
43
+ user.confirm!
44
+
45
+ sign_in user
46
+ get :index
47
+ assert_response :success
48
+ end
49
+
50
+ test "redirects if valid user signed out" do
51
+ user = create_user
52
+ user.confirm!
53
+
54
+ sign_in user
55
+ get :index
56
+
57
+ sign_out user
58
+ get :index
59
+ assert_redirected_to new_user_session_path
60
+ end
61
+
62
+ test "respects custom failure app" do
63
+ begin
64
+ Devise.warden_config.failure_app = CustomFailureApp
65
+ get :index
66
+ assert_response 306
67
+ ensure
68
+ Devise.warden_config.failure_app = Devise::FailureApp
69
+ end
70
+ end
71
+
72
+ test "defined Warden after_authentication callback should not be called when sign_in is called" do
73
+ begin
74
+ Warden::Manager.after_authentication do |user, auth, opts|
75
+ flunk "callback was called while it should not"
76
+ end
77
+
78
+ user = create_user
79
+ user.confirm!
80
+ sign_in user
81
+ ensure
82
+ Warden::Manager._after_set_user.pop
83
+ end
84
+ end
85
+
86
+ test "defined Warden before_logout callback should not be called when sign_out is called" do
87
+ begin
88
+ Warden::Manager.before_logout do |user, auth, opts|
89
+ flunk "callback was called while it should not"
90
+ end
91
+ user = create_user
92
+ user.confirm!
93
+
94
+ sign_in user
95
+ sign_out user
96
+ ensure
97
+ Warden::Manager._before_logout.pop
98
+ end
99
+ end
100
+
101
+ test "before_failure call should work" do
102
+ begin
103
+ executed = false
104
+ Warden::Manager.before_failure do |env,opts|
105
+ executed = true
106
+ end
107
+
108
+ user = create_user
109
+ sign_in user
110
+
111
+ get :index
112
+ assert executed
113
+ ensure
114
+ Warden::Manager._before_failure.pop
115
+ end
116
+ end
117
+
118
+ test "allows to sign in with different users" do
119
+ first_user = create_user
120
+ first_user.confirm!
121
+
122
+ sign_in first_user
123
+ get :index
124
+ assert_match /User ##{first_user.id}/, @response.body
125
+ sign_out first_user
126
+
127
+ second_user = create_user
128
+ second_user.confirm!
129
+
130
+ sign_in second_user
131
+ get :index
132
+ assert_match /User ##{second_user.id}/, @response.body
133
+ end
134
+ end
metadata ADDED
@@ -0,0 +1,451 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: upstream-devise
3
+ version: !ruby/object:Gem::Version
4
+ hash: 7712050
5
+ prerelease: 6
6
+ segments:
7
+ - 2
8
+ - 1
9
+ - 0
10
+ - rc
11
+ version: 2.1.0.rc
12
+ platform: ruby
13
+ authors:
14
+ - "Jos\xC3\xA9 Valim"
15
+ - "Carlos Ant\xC3\xB4nio"
16
+ autorequire:
17
+ bindir: bin
18
+ cert_chain: []
19
+
20
+ date: 2012-05-09 00:00:00 Z
21
+ dependencies:
22
+ - !ruby/object:Gem::Dependency
23
+ name: warden
24
+ prerelease: false
25
+ requirement: &id001 !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ~>
29
+ - !ruby/object:Gem::Version
30
+ hash: 17
31
+ segments:
32
+ - 1
33
+ - 1
34
+ - 1
35
+ version: 1.1.1
36
+ type: :runtime
37
+ version_requirements: *id001
38
+ - !ruby/object:Gem::Dependency
39
+ name: orm_adapter
40
+ prerelease: false
41
+ requirement: &id002 !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ~>
45
+ - !ruby/object:Gem::Version
46
+ hash: 17
47
+ segments:
48
+ - 0
49
+ - 0
50
+ - 7
51
+ version: 0.0.7
52
+ type: :runtime
53
+ version_requirements: *id002
54
+ - !ruby/object:Gem::Dependency
55
+ name: bcrypt-ruby
56
+ prerelease: false
57
+ requirement: &id003 !ruby/object:Gem::Requirement
58
+ none: false
59
+ requirements:
60
+ - - ~>
61
+ - !ruby/object:Gem::Version
62
+ hash: 7
63
+ segments:
64
+ - 3
65
+ - 0
66
+ version: "3.0"
67
+ type: :runtime
68
+ version_requirements: *id003
69
+ - !ruby/object:Gem::Dependency
70
+ name: railties
71
+ prerelease: false
72
+ requirement: &id004 !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ hash: 5
78
+ segments:
79
+ - 3
80
+ - 1
81
+ version: "3.1"
82
+ type: :runtime
83
+ version_requirements: *id004
84
+ description: Flexible authentication solution for Rails with Warden
85
+ email: contact@plataformatec.com.br
86
+ executables: []
87
+
88
+ extensions: []
89
+
90
+ extra_rdoc_files: []
91
+
92
+ files:
93
+ - .gitignore
94
+ - .travis.yml
95
+ - CHANGELOG.rdoc
96
+ - Gemfile
97
+ - Gemfile.lock
98
+ - MIT-LICENSE
99
+ - README.md
100
+ - Rakefile
101
+ - app/controllers/devise/confirmations_controller.rb
102
+ - app/controllers/devise/omniauth_callbacks_controller.rb
103
+ - app/controllers/devise/passwords_controller.rb
104
+ - app/controllers/devise/registrations_controller.rb
105
+ - app/controllers/devise/sessions_controller.rb
106
+ - app/controllers/devise/unlocks_controller.rb
107
+ - app/controllers/devise_controller.rb
108
+ - app/helpers/devise_helper.rb
109
+ - app/mailers/devise/mailer.rb
110
+ - app/views/devise/_links.erb
111
+ - app/views/devise/confirmations/new.html.erb
112
+ - app/views/devise/mailer/confirmation_instructions.html.erb
113
+ - app/views/devise/mailer/reset_password_instructions.html.erb
114
+ - app/views/devise/mailer/unlock_instructions.html.erb
115
+ - app/views/devise/passwords/edit.html.erb
116
+ - app/views/devise/passwords/new.html.erb
117
+ - app/views/devise/registrations/edit.html.erb
118
+ - app/views/devise/registrations/new.html.erb
119
+ - app/views/devise/sessions/new.html.erb
120
+ - app/views/devise/shared/_links.erb
121
+ - app/views/devise/unlocks/new.html.erb
122
+ - config/locales/en.yml
123
+ - devise.gemspec
124
+ - gemfiles/Gemfile.rails-3.1.x
125
+ - gemfiles/Gemfile.rails-3.1.x.lock
126
+ - lib/devise.rb
127
+ - lib/devise/controllers/helpers.rb
128
+ - lib/devise/controllers/rememberable.rb
129
+ - lib/devise/controllers/scoped_views.rb
130
+ - lib/devise/controllers/url_helpers.rb
131
+ - lib/devise/delegator.rb
132
+ - lib/devise/encryptors/authlogic_sha512.rb
133
+ - lib/devise/encryptors/base.rb
134
+ - lib/devise/encryptors/clearance_sha1.rb
135
+ - lib/devise/encryptors/restful_authentication_sha1.rb
136
+ - lib/devise/encryptors/sha1.rb
137
+ - lib/devise/encryptors/sha512.rb
138
+ - lib/devise/failure_app.rb
139
+ - lib/devise/hooks/activatable.rb
140
+ - lib/devise/hooks/forgetable.rb
141
+ - lib/devise/hooks/lockable.rb
142
+ - lib/devise/hooks/rememberable.rb
143
+ - lib/devise/hooks/timeoutable.rb
144
+ - lib/devise/hooks/trackable.rb
145
+ - lib/devise/mailers/helpers.rb
146
+ - lib/devise/mapping.rb
147
+ - lib/devise/models.rb
148
+ - lib/devise/models/authenticatable.rb
149
+ - lib/devise/models/confirmable.rb
150
+ - lib/devise/models/database_authenticatable.rb
151
+ - lib/devise/models/encryptable.rb
152
+ - lib/devise/models/lockable.rb
153
+ - lib/devise/models/omniauthable.rb
154
+ - lib/devise/models/recoverable.rb
155
+ - lib/devise/models/registerable.rb
156
+ - lib/devise/models/rememberable.rb
157
+ - lib/devise/models/timeoutable.rb
158
+ - lib/devise/models/token_authenticatable.rb
159
+ - lib/devise/models/trackable.rb
160
+ - lib/devise/models/validatable.rb
161
+ - lib/devise/modules.rb
162
+ - lib/devise/omniauth.rb
163
+ - lib/devise/omniauth/config.rb
164
+ - lib/devise/omniauth/url_helpers.rb
165
+ - lib/devise/orm/active_record.rb
166
+ - lib/devise/orm/mongoid.rb
167
+ - lib/devise/param_filter.rb
168
+ - lib/devise/rails.rb
169
+ - lib/devise/rails/routes.rb
170
+ - lib/devise/rails/warden_compat.rb
171
+ - lib/devise/strategies/authenticatable.rb
172
+ - lib/devise/strategies/base.rb
173
+ - lib/devise/strategies/database_authenticatable.rb
174
+ - lib/devise/strategies/rememberable.rb
175
+ - lib/devise/strategies/token_authenticatable.rb
176
+ - lib/devise/test_helpers.rb
177
+ - lib/devise/version.rb
178
+ - lib/generators/active_record/devise_generator.rb
179
+ - lib/generators/active_record/templates/migration.rb
180
+ - lib/generators/active_record/templates/migration_existing.rb
181
+ - lib/generators/devise/devise_generator.rb
182
+ - lib/generators/devise/install_generator.rb
183
+ - lib/generators/devise/orm_helpers.rb
184
+ - lib/generators/devise/views_generator.rb
185
+ - lib/generators/mongoid/devise_generator.rb
186
+ - lib/generators/templates/README
187
+ - lib/generators/templates/devise.rb
188
+ - lib/generators/templates/markerb/confirmation_instructions.markerb
189
+ - lib/generators/templates/markerb/reset_password_instructions.markerb
190
+ - lib/generators/templates/markerb/unlock_instructions.markerb
191
+ - lib/generators/templates/simple_form_for/confirmations/new.html.erb
192
+ - lib/generators/templates/simple_form_for/passwords/edit.html.erb
193
+ - lib/generators/templates/simple_form_for/passwords/new.html.erb
194
+ - lib/generators/templates/simple_form_for/registrations/edit.html.erb
195
+ - lib/generators/templates/simple_form_for/registrations/new.html.erb
196
+ - lib/generators/templates/simple_form_for/sessions/new.html.erb
197
+ - lib/generators/templates/simple_form_for/unlocks/new.html.erb
198
+ - test/controllers/custom_strategy_test.rb
199
+ - test/controllers/helpers_test.rb
200
+ - test/controllers/internal_helpers_test.rb
201
+ - test/controllers/sessions_controller_test.rb
202
+ - test/controllers/url_helpers_test.rb
203
+ - test/delegator_test.rb
204
+ - test/devise_test.rb
205
+ - test/encryptors_test.rb
206
+ - test/failure_app_test.rb
207
+ - test/generators/active_record_generator_test.rb
208
+ - test/generators/devise_generator_test.rb
209
+ - test/generators/install_generator_test.rb
210
+ - test/generators/mongoid_generator_test.rb
211
+ - test/generators/views_generator_test.rb
212
+ - test/helpers/devise_helper_test.rb
213
+ - test/indifferent_hash.rb
214
+ - test/integration/authenticatable_test.rb
215
+ - test/integration/confirmable_test.rb
216
+ - test/integration/database_authenticatable_test.rb
217
+ - test/integration/http_authenticatable_test.rb
218
+ - test/integration/lockable_test.rb
219
+ - test/integration/omniauthable_test.rb
220
+ - test/integration/recoverable_test.rb
221
+ - test/integration/registerable_test.rb
222
+ - test/integration/rememberable_test.rb
223
+ - test/integration/timeoutable_test.rb
224
+ - test/integration/token_authenticatable_test.rb
225
+ - test/integration/trackable_test.rb
226
+ - test/mailers/confirmation_instructions_test.rb
227
+ - test/mailers/reset_password_instructions_test.rb
228
+ - test/mailers/unlock_instructions_test.rb
229
+ - test/mapping_test.rb
230
+ - test/models/authenticatable_test.rb
231
+ - test/models/confirmable_test.rb
232
+ - test/models/database_authenticatable_test.rb
233
+ - test/models/encryptable_test.rb
234
+ - test/models/lockable_test.rb
235
+ - test/models/omniauthable_test.rb
236
+ - test/models/recoverable_test.rb
237
+ - test/models/registerable_test.rb
238
+ - test/models/rememberable_test.rb
239
+ - test/models/serializable_test.rb
240
+ - test/models/timeoutable_test.rb
241
+ - test/models/token_authenticatable_test.rb
242
+ - test/models/trackable_test.rb
243
+ - test/models/validatable_test.rb
244
+ - test/models_test.rb
245
+ - test/omniauth/config_test.rb
246
+ - test/omniauth/url_helpers_test.rb
247
+ - test/orm/active_record.rb
248
+ - test/orm/mongoid.rb
249
+ - test/rails_app/Rakefile
250
+ - test/rails_app/app/active_record/admin.rb
251
+ - test/rails_app/app/active_record/shim.rb
252
+ - test/rails_app/app/active_record/user.rb
253
+ - test/rails_app/app/controllers/admins/sessions_controller.rb
254
+ - test/rails_app/app/controllers/admins_controller.rb
255
+ - test/rails_app/app/controllers/application_controller.rb
256
+ - test/rails_app/app/controllers/home_controller.rb
257
+ - test/rails_app/app/controllers/publisher/registrations_controller.rb
258
+ - test/rails_app/app/controllers/publisher/sessions_controller.rb
259
+ - test/rails_app/app/controllers/users/omniauth_callbacks_controller.rb
260
+ - test/rails_app/app/controllers/users_controller.rb
261
+ - test/rails_app/app/helpers/application_helper.rb
262
+ - test/rails_app/app/mailers/users/mailer.rb
263
+ - test/rails_app/app/mongoid/admin.rb
264
+ - test/rails_app/app/mongoid/shim.rb
265
+ - test/rails_app/app/mongoid/user.rb
266
+ - test/rails_app/app/views/admins/index.html.erb
267
+ - test/rails_app/app/views/admins/sessions/new.html.erb
268
+ - test/rails_app/app/views/home/admin_dashboard.html.erb
269
+ - test/rails_app/app/views/home/index.html.erb
270
+ - test/rails_app/app/views/home/join.html.erb
271
+ - test/rails_app/app/views/home/private.html.erb
272
+ - test/rails_app/app/views/home/user_dashboard.html.erb
273
+ - test/rails_app/app/views/layouts/application.html.erb
274
+ - test/rails_app/app/views/users/index.html.erb
275
+ - test/rails_app/app/views/users/mailer/confirmation_instructions.erb
276
+ - test/rails_app/app/views/users/sessions/new.html.erb
277
+ - test/rails_app/config.ru
278
+ - test/rails_app/config/application.rb
279
+ - test/rails_app/config/boot.rb
280
+ - test/rails_app/config/database.yml
281
+ - test/rails_app/config/environment.rb
282
+ - test/rails_app/config/environments/development.rb
283
+ - test/rails_app/config/environments/production.rb
284
+ - test/rails_app/config/environments/test.rb
285
+ - test/rails_app/config/initializers/backtrace_silencers.rb
286
+ - test/rails_app/config/initializers/devise.rb
287
+ - test/rails_app/config/initializers/inflections.rb
288
+ - test/rails_app/config/initializers/secret_token.rb
289
+ - test/rails_app/config/routes.rb
290
+ - test/rails_app/db/migrate/20100401102949_create_tables.rb
291
+ - test/rails_app/db/schema.rb
292
+ - test/rails_app/lib/shared_admin.rb
293
+ - test/rails_app/lib/shared_user.rb
294
+ - test/rails_app/public/404.html
295
+ - test/rails_app/public/422.html
296
+ - test/rails_app/public/500.html
297
+ - test/rails_app/public/favicon.ico
298
+ - test/rails_app/script/rails
299
+ - test/routes_test.rb
300
+ - test/support/assertions.rb
301
+ - test/support/helpers.rb
302
+ - test/support/integration.rb
303
+ - test/support/locale/en.yml
304
+ - test/support/webrat/integrations/rails.rb
305
+ - test/test_helper.rb
306
+ - test/test_helpers_test.rb
307
+ homepage: http://github.com/plataformatec/devise
308
+ licenses: []
309
+
310
+ post_install_message:
311
+ rdoc_options: []
312
+
313
+ require_paths:
314
+ - lib
315
+ required_ruby_version: !ruby/object:Gem::Requirement
316
+ none: false
317
+ requirements:
318
+ - - ">="
319
+ - !ruby/object:Gem::Version
320
+ hash: 3
321
+ segments:
322
+ - 0
323
+ version: "0"
324
+ required_rubygems_version: !ruby/object:Gem::Requirement
325
+ none: false
326
+ requirements:
327
+ - - ">"
328
+ - !ruby/object:Gem::Version
329
+ hash: 25
330
+ segments:
331
+ - 1
332
+ - 3
333
+ - 1
334
+ version: 1.3.1
335
+ requirements: []
336
+
337
+ rubyforge_project: upstream-devise
338
+ rubygems_version: 1.8.10
339
+ signing_key:
340
+ specification_version: 3
341
+ summary: Flexible authentication solution for Rails with Warden
342
+ test_files:
343
+ - test/controllers/custom_strategy_test.rb
344
+ - test/controllers/helpers_test.rb
345
+ - test/controllers/internal_helpers_test.rb
346
+ - test/controllers/sessions_controller_test.rb
347
+ - test/controllers/url_helpers_test.rb
348
+ - test/delegator_test.rb
349
+ - test/devise_test.rb
350
+ - test/encryptors_test.rb
351
+ - test/failure_app_test.rb
352
+ - test/generators/active_record_generator_test.rb
353
+ - test/generators/devise_generator_test.rb
354
+ - test/generators/install_generator_test.rb
355
+ - test/generators/mongoid_generator_test.rb
356
+ - test/generators/views_generator_test.rb
357
+ - test/helpers/devise_helper_test.rb
358
+ - test/indifferent_hash.rb
359
+ - test/integration/authenticatable_test.rb
360
+ - test/integration/confirmable_test.rb
361
+ - test/integration/database_authenticatable_test.rb
362
+ - test/integration/http_authenticatable_test.rb
363
+ - test/integration/lockable_test.rb
364
+ - test/integration/omniauthable_test.rb
365
+ - test/integration/recoverable_test.rb
366
+ - test/integration/registerable_test.rb
367
+ - test/integration/rememberable_test.rb
368
+ - test/integration/timeoutable_test.rb
369
+ - test/integration/token_authenticatable_test.rb
370
+ - test/integration/trackable_test.rb
371
+ - test/mailers/confirmation_instructions_test.rb
372
+ - test/mailers/reset_password_instructions_test.rb
373
+ - test/mailers/unlock_instructions_test.rb
374
+ - test/mapping_test.rb
375
+ - test/models/authenticatable_test.rb
376
+ - test/models/confirmable_test.rb
377
+ - test/models/database_authenticatable_test.rb
378
+ - test/models/encryptable_test.rb
379
+ - test/models/lockable_test.rb
380
+ - test/models/omniauthable_test.rb
381
+ - test/models/recoverable_test.rb
382
+ - test/models/registerable_test.rb
383
+ - test/models/rememberable_test.rb
384
+ - test/models/serializable_test.rb
385
+ - test/models/timeoutable_test.rb
386
+ - test/models/token_authenticatable_test.rb
387
+ - test/models/trackable_test.rb
388
+ - test/models/validatable_test.rb
389
+ - test/models_test.rb
390
+ - test/omniauth/config_test.rb
391
+ - test/omniauth/url_helpers_test.rb
392
+ - test/orm/active_record.rb
393
+ - test/orm/mongoid.rb
394
+ - test/rails_app/Rakefile
395
+ - test/rails_app/app/active_record/admin.rb
396
+ - test/rails_app/app/active_record/shim.rb
397
+ - test/rails_app/app/active_record/user.rb
398
+ - test/rails_app/app/controllers/admins/sessions_controller.rb
399
+ - test/rails_app/app/controllers/admins_controller.rb
400
+ - test/rails_app/app/controllers/application_controller.rb
401
+ - test/rails_app/app/controllers/home_controller.rb
402
+ - test/rails_app/app/controllers/publisher/registrations_controller.rb
403
+ - test/rails_app/app/controllers/publisher/sessions_controller.rb
404
+ - test/rails_app/app/controllers/users/omniauth_callbacks_controller.rb
405
+ - test/rails_app/app/controllers/users_controller.rb
406
+ - test/rails_app/app/helpers/application_helper.rb
407
+ - test/rails_app/app/mailers/users/mailer.rb
408
+ - test/rails_app/app/mongoid/admin.rb
409
+ - test/rails_app/app/mongoid/shim.rb
410
+ - test/rails_app/app/mongoid/user.rb
411
+ - test/rails_app/app/views/admins/index.html.erb
412
+ - test/rails_app/app/views/admins/sessions/new.html.erb
413
+ - test/rails_app/app/views/home/admin_dashboard.html.erb
414
+ - test/rails_app/app/views/home/index.html.erb
415
+ - test/rails_app/app/views/home/join.html.erb
416
+ - test/rails_app/app/views/home/private.html.erb
417
+ - test/rails_app/app/views/home/user_dashboard.html.erb
418
+ - test/rails_app/app/views/layouts/application.html.erb
419
+ - test/rails_app/app/views/users/index.html.erb
420
+ - test/rails_app/app/views/users/mailer/confirmation_instructions.erb
421
+ - test/rails_app/app/views/users/sessions/new.html.erb
422
+ - test/rails_app/config.ru
423
+ - test/rails_app/config/application.rb
424
+ - test/rails_app/config/boot.rb
425
+ - test/rails_app/config/database.yml
426
+ - test/rails_app/config/environment.rb
427
+ - test/rails_app/config/environments/development.rb
428
+ - test/rails_app/config/environments/production.rb
429
+ - test/rails_app/config/environments/test.rb
430
+ - test/rails_app/config/initializers/backtrace_silencers.rb
431
+ - test/rails_app/config/initializers/devise.rb
432
+ - test/rails_app/config/initializers/inflections.rb
433
+ - test/rails_app/config/initializers/secret_token.rb
434
+ - test/rails_app/config/routes.rb
435
+ - test/rails_app/db/migrate/20100401102949_create_tables.rb
436
+ - test/rails_app/db/schema.rb
437
+ - test/rails_app/lib/shared_admin.rb
438
+ - test/rails_app/lib/shared_user.rb
439
+ - test/rails_app/public/404.html
440
+ - test/rails_app/public/422.html
441
+ - test/rails_app/public/500.html
442
+ - test/rails_app/public/favicon.ico
443
+ - test/rails_app/script/rails
444
+ - test/routes_test.rb
445
+ - test/support/assertions.rb
446
+ - test/support/helpers.rb
447
+ - test/support/integration.rb
448
+ - test/support/locale/en.yml
449
+ - test/support/webrat/integrations/rails.rb
450
+ - test/test_helper.rb
451
+ - test/test_helpers_test.rb