janova-clearance 0.8.8 → 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (187) hide show
  1. data/CHANGELOG.md +11 -2
  2. data/README.md +34 -35
  3. data/Rakefile +79 -33
  4. data/VERSION +1 -1
  5. data/app/controllers/clearance/confirmations_controller.rb +0 -2
  6. data/app/controllers/clearance/passwords_controller.rb +1 -2
  7. data/app/controllers/clearance/sessions_controller.rb +1 -2
  8. data/app/controllers/clearance/users_controller.rb +0 -1
  9. data/app/models/clearance_mailer.rb +4 -4
  10. data/app/views/passwords/edit.html.erb +1 -1
  11. data/app/views/passwords/new.html.erb +2 -2
  12. data/app/views/sessions/new.html.erb +1 -1
  13. data/app/views/users/_form.html.erb +1 -1
  14. data/app/views/users/new.html.erb +1 -1
  15. data/clearance.gemspec +207 -0
  16. data/config/routes.rb +23 -0
  17. data/cucumber.yml +4 -0
  18. data/{rails/init.rb → init.rb} +0 -0
  19. data/lib/clearance.rb +2 -1
  20. data/lib/clearance/authentication.rb +2 -2
  21. data/lib/clearance/configuration.rb +10 -3
  22. data/lib/clearance/engine.rb +10 -0
  23. data/{shoulda_macros/clearance.rb → lib/clearance/shoulda_macros.rb} +11 -23
  24. data/lib/clearance/user.rb +5 -6
  25. data/lib/rails/generators/clearance_features_generator.rb +20 -0
  26. data/{generators/clearance_features/templates → lib/rails/generators/clearance_features_templates}/features/password_reset.feature +1 -1
  27. data/{generators/clearance_features/templates → lib/rails/generators/clearance_features_templates}/features/sign_in.feature +0 -0
  28. data/{generators/clearance_features/templates → lib/rails/generators/clearance_features_templates}/features/sign_out.feature +0 -0
  29. data/{generators/clearance_features/templates → lib/rails/generators/clearance_features_templates}/features/sign_up.feature +0 -0
  30. data/lib/rails/generators/clearance_features_templates/features/step_definitions/clearance_steps.rb +138 -0
  31. data/lib/rails/generators/clearance_generator.rb +72 -0
  32. data/{generators/clearance/templates → lib/rails/generators/clearance_templates}/README +0 -0
  33. data/{generators/clearance/templates → lib/rails/generators/clearance_templates}/clearance.rb +0 -0
  34. data/{generators/clearance/templates → lib/rails/generators/clearance_templates}/factories.rb +0 -0
  35. data/{generators/clearance/templates → lib/rails/generators/clearance_templates}/migrations/create_users.rb +0 -1
  36. data/{generators/clearance/templates → lib/rails/generators/clearance_templates}/migrations/update_users.rb +0 -1
  37. data/{generators/clearance/templates → lib/rails/generators/clearance_templates}/user.rb +0 -0
  38. data/lib/rails/generators/clearance_views_generator.rb +14 -0
  39. data/{generators/clearance_views/templates/formtastic → lib/rails/generators/clearance_views_templates/formtastic/erb}/passwords/edit.html.erb +3 -3
  40. data/{generators/clearance_views/templates/formtastic → lib/rails/generators/clearance_views_templates/formtastic/erb}/passwords/new.html.erb +3 -3
  41. data/{generators/clearance_views/templates/formtastic → lib/rails/generators/clearance_views_templates/formtastic/erb}/sessions/new.html.erb +3 -3
  42. data/{generators/clearance_views/templates/formtastic → lib/rails/generators/clearance_views_templates/formtastic/erb}/users/_inputs.html.erb +1 -1
  43. data/{generators/clearance_views/templates/formtastic → lib/rails/generators/clearance_views_templates/formtastic/erb}/users/new.html.erb +2 -2
  44. data/spec/rails_root/Gemfile +15 -0
  45. data/spec/rails_root/README +244 -0
  46. data/spec/rails_root/Rakefile +10 -0
  47. data/spec/rails_root/app/controllers/accounts_controller.rb +10 -0
  48. data/spec/rails_root/app/controllers/application_controller.rb +6 -0
  49. data/spec/rails_root/app/helpers/application_helper.rb +2 -0
  50. data/spec/rails_root/app/models/user.rb +3 -0
  51. data/{generators/clearance_views/USAGE → spec/rails_root/app/views/accounts/edit.html.erb} +0 -0
  52. data/spec/rails_root/app/views/layouts/application.html.erb +24 -0
  53. data/spec/rails_root/config.ru +4 -0
  54. data/spec/rails_root/config/application.rb +46 -0
  55. data/spec/rails_root/config/boot.rb +6 -0
  56. data/spec/rails_root/config/cucumber.yml +8 -0
  57. data/spec/rails_root/config/database.yml +25 -0
  58. data/spec/rails_root/config/environment.rb +7 -0
  59. data/spec/rails_root/config/environments/development.rb +21 -0
  60. data/spec/rails_root/config/environments/production.rb +42 -0
  61. data/spec/rails_root/config/environments/test.rb +34 -0
  62. data/spec/rails_root/config/initializers/backtrace_silencers.rb +7 -0
  63. data/spec/rails_root/config/initializers/clearance.rb +3 -0
  64. data/spec/rails_root/config/initializers/inflections.rb +10 -0
  65. data/spec/rails_root/config/initializers/mime_types.rb +5 -0
  66. data/spec/rails_root/config/initializers/secret_token.rb +7 -0
  67. data/spec/rails_root/config/initializers/session_store.rb +8 -0
  68. data/spec/rails_root/config/locales/en.yml +5 -0
  69. data/spec/rails_root/config/routes.rb +61 -0
  70. data/spec/rails_root/db/schema.rb +29 -0
  71. data/spec/rails_root/doc/README_FOR_APP +2 -0
  72. data/spec/rails_root/features/password_reset.feature +33 -0
  73. data/spec/rails_root/features/sign_in.feature +35 -0
  74. data/spec/rails_root/features/sign_out.feature +15 -0
  75. data/spec/rails_root/features/sign_up.feature +45 -0
  76. data/{generators/clearance_features/templates → spec/rails_root}/features/step_definitions/clearance_steps.rb +18 -7
  77. data/spec/rails_root/features/step_definitions/web_steps.rb +219 -0
  78. data/spec/rails_root/features/support/env.rb +57 -0
  79. data/spec/rails_root/features/support/paths.rb +45 -0
  80. data/spec/rails_root/lib/tasks/cucumber.rake +53 -0
  81. data/spec/rails_root/public/404.html +26 -0
  82. data/spec/rails_root/public/422.html +26 -0
  83. data/spec/rails_root/public/500.html +26 -0
  84. data/spec/rails_root/public/favicon.ico +0 -0
  85. data/spec/rails_root/public/images/rails.png +0 -0
  86. data/spec/rails_root/public/javascripts/application.js +2 -0
  87. data/spec/rails_root/public/javascripts/controls.js +965 -0
  88. data/spec/rails_root/public/javascripts/dragdrop.js +974 -0
  89. data/spec/rails_root/public/javascripts/effects.js +1123 -0
  90. data/spec/rails_root/public/javascripts/prototype.js +4874 -0
  91. data/spec/rails_root/public/javascripts/rails.js +118 -0
  92. data/spec/rails_root/public/robots.txt +5 -0
  93. data/spec/rails_root/script/cucumber +10 -0
  94. data/spec/rails_root/script/rails +9 -0
  95. data/spec/rails_root/spec/factories/clearance.rb +13 -0
  96. data/spec/rails_root/vendor/plugins/dynamic_form/MIT-LICENSE +20 -0
  97. data/spec/rails_root/vendor/plugins/dynamic_form/README +13 -0
  98. data/spec/rails_root/vendor/plugins/dynamic_form/Rakefile +10 -0
  99. data/spec/rails_root/vendor/plugins/dynamic_form/init.rb +5 -0
  100. data/spec/rails_root/vendor/plugins/dynamic_form/lib/action_view/helpers/dynamic_form.rb +300 -0
  101. data/spec/rails_root/vendor/plugins/dynamic_form/lib/action_view/locale/en.yml +8 -0
  102. data/spec/rails_root/vendor/plugins/dynamic_form/test/dynamic_form_i18n_test.rb +42 -0
  103. data/spec/rails_root/vendor/plugins/dynamic_form/test/dynamic_form_test.rb +370 -0
  104. data/spec/rails_root/vendor/plugins/dynamic_form/test/test_helper.rb +9 -0
  105. data/test/controllers/confirmations_controller_test.rb +10 -7
  106. data/test/controllers/passwords_controller_test.rb +16 -20
  107. data/test/controllers/sessions_controller_test.rb +59 -20
  108. data/test/controllers/users_controller_test.rb +19 -16
  109. data/test/models/clearance_mailer_test.rb +2 -2
  110. data/test/models/user_test.rb +14 -13
  111. data/test/rails_root/Gemfile +17 -0
  112. data/test/rails_root/README +244 -0
  113. data/test/rails_root/Rakefile +10 -0
  114. data/test/rails_root/app/helpers/application_helper.rb +0 -3
  115. data/test/rails_root/app/models/user.rb +3 -0
  116. data/test/rails_root/app/views/accounts/edit.html.erb +0 -0
  117. data/test/rails_root/app/views/layouts/application.html.erb +24 -0
  118. data/test/rails_root/config.ru +4 -0
  119. data/test/rails_root/config/application.rb +46 -0
  120. data/test/rails_root/config/boot.rb +5 -109
  121. data/test/rails_root/config/cucumber.yml +8 -0
  122. data/test/rails_root/config/database.yml +25 -0
  123. data/test/rails_root/config/environment.rb +5 -15
  124. data/test/rails_root/config/environments/development.rb +16 -14
  125. data/test/rails_root/config/environments/production.rb +42 -1
  126. data/test/rails_root/config/environments/test.rb +34 -36
  127. data/test/rails_root/config/initializers/backtrace_silencers.rb +7 -0
  128. data/test/rails_root/config/initializers/inflections.rb +1 -1
  129. data/test/rails_root/config/initializers/secret_token.rb +7 -0
  130. data/test/rails_root/config/initializers/session_store.rb +8 -0
  131. data/test/rails_root/config/locales/en.yml +5 -0
  132. data/test/rails_root/config/routes.rb +59 -4
  133. data/test/rails_root/doc/README_FOR_APP +2 -0
  134. data/test/rails_root/features/step_definitions/web_steps.rb +125 -165
  135. data/test/rails_root/features/support/env.rb +24 -14
  136. data/test/rails_root/features/support/paths.rb +45 -0
  137. data/test/rails_root/lib/tasks/cucumber.rake +53 -0
  138. data/test/rails_root/public/404.html +26 -0
  139. data/test/rails_root/public/422.html +26 -0
  140. data/test/rails_root/public/500.html +26 -0
  141. data/test/rails_root/public/favicon.ico +0 -0
  142. data/test/rails_root/public/images/rails.png +0 -0
  143. data/test/rails_root/public/javascripts/application.js +2 -0
  144. data/test/rails_root/public/javascripts/controls.js +965 -0
  145. data/test/rails_root/public/javascripts/dragdrop.js +974 -0
  146. data/test/rails_root/public/javascripts/effects.js +1123 -0
  147. data/test/rails_root/public/javascripts/prototype.js +4874 -0
  148. data/test/rails_root/public/javascripts/rails.js +118 -0
  149. data/test/rails_root/public/robots.txt +5 -0
  150. data/test/rails_root/script/cucumber +10 -0
  151. data/test/rails_root/script/rails +9 -0
  152. data/test/rails_root/test/factories/clearance.rb +13 -0
  153. data/test/rails_root/test/functional/accounts_controller_test.rb +0 -1
  154. data/test/rails_root/test/performance/browsing_test.rb +9 -0
  155. data/test/rails_root/test/test_helper.rb +13 -0
  156. data/test/rails_root/vendor/plugins/dynamic_form/MIT-LICENSE +20 -0
  157. data/test/rails_root/vendor/plugins/dynamic_form/README +13 -0
  158. data/test/rails_root/vendor/plugins/dynamic_form/Rakefile +10 -0
  159. data/test/rails_root/vendor/plugins/dynamic_form/init.rb +5 -0
  160. data/test/rails_root/vendor/plugins/dynamic_form/lib/action_view/helpers/dynamic_form.rb +300 -0
  161. data/test/rails_root/vendor/plugins/dynamic_form/lib/action_view/locale/en.yml +8 -0
  162. data/test/rails_root/vendor/plugins/dynamic_form/test/dynamic_form_i18n_test.rb +42 -0
  163. data/test/rails_root/vendor/plugins/dynamic_form/test/dynamic_form_test.rb +370 -0
  164. data/test/rails_root/vendor/plugins/dynamic_form/test/test_helper.rb +9 -0
  165. data/test/test_helper.rb +31 -2
  166. metadata +273 -61
  167. data/generators/clearance/USAGE +0 -1
  168. data/generators/clearance/clearance_generator.rb +0 -68
  169. data/generators/clearance/lib/insert_commands.rb +0 -33
  170. data/generators/clearance/lib/rake_commands.rb +0 -22
  171. data/generators/clearance_features/USAGE +0 -1
  172. data/generators/clearance_features/clearance_features_generator.rb +0 -19
  173. data/generators/clearance_features/templates/features/support/paths.rb +0 -23
  174. data/generators/clearance_views/clearance_views_generator.rb +0 -27
  175. data/lib/clearance/routes.rb +0 -49
  176. data/test/rails_root/app/helpers/confirmations_helper.rb +0 -2
  177. data/test/rails_root/app/helpers/passwords_helper.rb +0 -2
  178. data/test/rails_root/config/initializers/requires.rb +0 -13
  179. data/test/rails_root/config/initializers/time_formats.rb +0 -4
  180. data/test/rails_root/public/dispatch.rb +0 -10
  181. data/test/rails_root/script/create_project.rb +0 -52
  182. data/test/rails_root/vendor/gems/justinfrench-formtastic-0.2.1/generators/formtastic_stylesheets/formtastic_stylesheets_generator.rb +0 -21
  183. data/test/rails_root/vendor/gems/justinfrench-formtastic-0.2.1/lib/formtastic.rb +0 -1236
  184. data/test/rails_root/vendor/gems/justinfrench-formtastic-0.2.1/lib/justin_french/formtastic.rb +0 -10
  185. data/test/rails_root/vendor/gems/justinfrench-formtastic-0.2.1/rails/init.rb +0 -3
  186. data/test/rails_root/vendor/gems/justinfrench-formtastic-0.2.1/spec/formtastic_spec.rb +0 -2900
  187. data/test/rails_root/vendor/gems/justinfrench-formtastic-0.2.1/spec/test_helper.rb +0 -14
data/CHANGELOG.md CHANGED
@@ -1,9 +1,18 @@
1
- 0.8.8 (12/21/2010) - Janova version
1
+ 0.9.1 (Janova fork)
2
2
  ------------------
3
- * Updated the Email Format Validation Regex in Clearance::User::Validations to be a more thorough regex (Robert Stevenson)
3
+
4
+ * Refactored the Clearance::User::Validations module to use the regex that comes from http://www.regular-expressions.info/email.html (with the addition of ^ and $ as well as the case-insensitive flag at the end).
5
+
6
+ 0.8.9 (unreleased)
7
+ ------------------
8
+
9
+ * Removed unnecessary db index. (Rich Thornett, doctorzaius)
10
+ * [#79] Allow customization of cookie duration. (Ron Newman, Dan Croak)
11
+ * [#77] rake generator:cleanup needed to be... cleaned up. (Ron Newman)
4
12
 
5
13
  0.8.8 (02/25/2010)
6
14
  ------------------
15
+
7
16
  * Fixed sign_in and sign_out not setting current_user (Joe Ferris)
8
17
 
9
18
  0.8.7 (02/21/2010)
data/README.md CHANGED
@@ -3,7 +3,7 @@ Clearance
3
3
 
4
4
  Rails authentication with email & password.
5
5
 
6
- [We have clearance, Clarence.](http://www.youtube.com/v/mNRXJEE3Nz8)
6
+ [We have clearance, Clarence.](http://www.youtube.com/watch?v=fVq4_HhBK8Y)
7
7
 
8
8
  Help
9
9
  ----
@@ -20,23 +20,27 @@ Fork away and create a [Github Issue](http://github.com/thoughtbot/clearance/iss
20
20
  Installation
21
21
  ------------
22
22
 
23
- Clearance is a Rails engine. It works with versions of Rails greater than 2.3.
23
+ Clearance is a Rails engine. The latest stable version (0.8.8) works with versions of Rails 2.x.
24
24
 
25
- Install it as a gem however you like to install gems. Gem Bundler example:
25
+ Install it as a gem however you like to install gems. Also, uninstall old versions:
26
26
 
27
- gem "clearance"
27
+ sudo gem uninstall thoughtbot-clearance
28
+ sudo gem uninstall clearance
29
+ sudo gem install clearance
28
30
 
29
- Make sure the development database exists and run the generator:
31
+ Make sure the development database exists, then run the generator:
30
32
 
31
- script/generate clearance
33
+ script/rails generate clearance
32
34
 
33
35
  This:
34
36
 
35
37
  * inserts Clearance::User into your User model
36
38
  * inserts Clearance::Authentication into your ApplicationController
37
- * inserts Clearance::Routes.draw(map) into your config.routes.rb
38
39
  * created a migration that either creates a users table or adds only missing columns
39
- * prints further instructions
40
+
41
+ There is a release candidate which features Rails 3 support. To install this version:
42
+
43
+ gem install clearance --prerelease
40
44
 
41
45
  Usage
42
46
  -----
@@ -65,14 +69,14 @@ To change any of provided actions, subclass a Clearance controller...
65
69
  end
66
70
  end
67
71
 
68
- and add your route above (before) Clearance routes in config/routes.rb:
72
+ and add your route in config/routes.rb:
69
73
 
70
- map.resource :session, :controller => 'sessions'
74
+ resource :session, :controller => 'sessions'
71
75
 
72
- See lib/clearance/routes.rb for all the routes Clearance provides.
76
+ See config/routes.rb for all the routes Clearance provides.
73
77
 
74
78
  Actions that redirect (create, update, and destroy) in Clearance controllers
75
- can be overriden by re-defining url_after_(action) methods as seen above.
79
+ can be overridden by re-defining url_after_(action) methods as seen above.
76
80
 
77
81
  Optional Cucumber features
78
82
  --------------------------
@@ -83,33 +87,27 @@ opinion is that you should test its integration with your app using
83
87
 
84
88
  Run the Cucumber generator and Clearance feature generator:
85
89
 
86
- script/generate cucumber
87
- script/generate clearance_features
88
-
89
- All of the files generated should be new with the exception of the
90
- features/support/paths.rb file. If you have not modified your paths.rb then you
91
- will be okay to replace it with this one. If you need to keep your paths.rb
92
- file then add these locations in your paths.rb manually:
93
-
94
- def path_to(page_name)
95
- case page_name
96
- when /the sign up page/i
97
- new_user_path
98
- when /the sign in page/i
99
- new_session_path
100
- when /the password reset request page/i
101
- new_password_path
102
- end
103
- end
90
+ script/rails generate cucumber
91
+ script/rails generate clearance_features
92
+
93
+ Edit your Gemfile to include:
94
+
95
+ gem 'factory_girl_rails'
96
+
97
+ Edit your config/enviroments/cucumber.rb to include the following:
98
+
99
+ config.action_mailer.default_url_options = { :host => 'localhost:3000' }
100
+
101
+ Then run rake!
104
102
 
105
103
  Optional Formtastic views
106
104
  -------------------------
107
105
 
108
- We use & recommend [Formtastic](http://github.com/justinfrench/formtastic].
106
+ We use & recommend [Formtastic](http://github.com/justinfrench/formtastic).
109
107
 
110
108
  Clearance has another generator to generate Formastic views:
111
109
 
112
- script/generate clearance_views
110
+ script/rails generate clearance_views
113
111
 
114
112
  Its implementation is designed so other view styles (Haml?) can be generated.
115
113
 
@@ -117,8 +115,8 @@ Authors
117
115
  -------
118
116
 
119
117
  Clearance was extracted out of [Hoptoad](http://hoptoadapp.com). We merged the
120
- authentication code from two of thoughtbot client Rails apps and have since
121
- used it each time we need authentication.
118
+ authentication code from two of thoughtbot's client Rails apps and have since
119
+ used it each time we needed authentication.
122
120
 
123
121
  The following people have improved the library. Thank you!
124
122
 
@@ -126,4 +124,5 @@ Dan Croak, Mike Burns, Jason Morrison, Joe Ferris, Eugene Bolshakov,
126
124
  Nick Quaranto, Josh Nichols, Mike Breen, Marcel Görner, Bence Nagy, Ben Mabey,
127
125
  Eloy Duran, Tim Pope, Mihai Anca, Mark Cornick, Shay Arnett, Joshua Clayton,
128
126
  Mustafa Ekim, Jon Yurek, Anuj Dutta, Chad Pytel, Ben Orenstein, Bobby Wilson,
129
- Matthew Ford, Ryan McGeary, Claudio Poli, Joseph Holsten, and Peter Haza.
127
+ Matthew Ford, Ryan McGeary, Claudio Poli, Joseph Holsten, Peter Haza,
128
+ Ron Newman, and Rich Thornett.
data/Rakefile CHANGED
@@ -1,38 +1,97 @@
1
1
  # encoding: utf-8
2
2
 
3
+ ENV['BUNDLE_GEMFILE'] = File.dirname(__FILE__) + '/test/rails_root/Gemfile'
4
+
3
5
  require 'rake'
4
6
  require 'rake/testtask'
5
7
  require 'cucumber/rake/task'
8
+ require 'spec/rake/spectask'
6
9
 
7
10
  namespace :test do
8
11
  Rake::TestTask.new(:basic => ["generator:cleanup",
9
- "generator:clearance",
10
- "generator:clearance_features"]) do |task|
12
+ "generator:clearance"]) do |task|
11
13
  task.libs << "lib"
12
14
  task.libs << "test"
13
- task.pattern = "test/**/*_test.rb"
15
+ task.pattern = "test/*/*_test.rb"
14
16
  task.verbose = false
15
17
  end
16
18
 
17
- Rake::TestTask.new(:views => ["generator:clearance_views"]) do |task|
19
+ Rake::TestTask.new(:views => ["generator:cleanup",
20
+ "generator:clearance",
21
+ "generator:clearance_views"]) do |task|
18
22
  task.libs << "lib"
19
23
  task.libs << "test"
20
- task.pattern = "test/**/*_test.rb"
24
+ task.pattern = "test/*/*_test.rb"
21
25
  task.verbose = false
22
26
  end
23
27
 
24
- Cucumber::Rake::Task.new(:features) do |t|
28
+
29
+ Cucumber::Rake::Task.new(:features => ["generator:cleanup",
30
+ "generator:clearance",
31
+ "generator:clearance_features"]) do |t|
25
32
  t.cucumber_opts = "--format progress"
26
33
  t.profile = 'features'
27
34
  end
28
35
 
29
- Cucumber::Rake::Task.new(:features_for_views) do |t|
36
+ Cucumber::Rake::Task.new(:features_for_views => ["generator:cleanup",
37
+ "generator:clearance",
38
+ "generator:clearance_features",
39
+ "generator:clearance_views"]) do |t|
30
40
  t.cucumber_opts = "--format progress"
31
41
  t.profile = 'features_for_views'
32
42
  end
33
43
  end
34
44
 
35
- generators = %w(clearance clearance_features clearance_views)
45
+ namespace :spec do
46
+ Spec::Rake::SpecTask.new(:basic => %w(spec:generator:cleanup spec:generator:clearance)) do |task|
47
+ task.spec_files = FileList['spec/*/*_spec.rb']
48
+ end
49
+
50
+ Spec::Rake::SpecTask.new(:views => %w(spec:generator:cleanup spec:generator:clearance spec:generator:clearance_views)) do |task|
51
+ task.spec_files = FileList['spec/*/*_spec.rb']
52
+ end
53
+
54
+ Cucumber::Rake::Task.new(:features => %w(spec:generator:cleanup spec:generator:clearance spec:generator:clearance_features)) do |task|
55
+ task.cucumber_opts = '--format progress'
56
+ task.profile = 'features_with_rspec'
57
+ end
58
+
59
+ Cucumber::Rake::Task.new(:features_for_views => %w(spec:generator:cleanup spec:generator:clearance spec:generator:clearance_features spec:generator:clearance_views)) do |task|
60
+ task.cucumber_opts = '--format progress'
61
+ task.profile = 'features_for_views_with_rspec'
62
+ end
63
+
64
+ namespace :generator do
65
+ task :cleanup do
66
+ FileList["spec/rails_root/db/**/*"].each do |each|
67
+ FileUtils.rm_rf(each)
68
+ end
69
+
70
+ FileUtils.rm_rf("spec/rails_root/vendor/plugins/clearance")
71
+ FileUtils.rm_rf("spec/rails_root/app/views/passwords")
72
+ FileUtils.rm_rf("spec/rails_root/app/views/sessions")
73
+ FileUtils.rm_rf("spec/rails_root/app/views/users")
74
+ FileUtils.mkdir_p("spec/rails_root/vendor/plugins")
75
+ clearance_root = File.expand_path(File.dirname(__FILE__))
76
+ system("ln -s #{clearance_root} spec/rails_root/vendor/plugins/clearance")
77
+ FileList["spec/rails_root/features/*.feature"].each do |each|
78
+ FileUtils.rm_rf(each)
79
+ end
80
+ end
81
+
82
+ task :clearance do
83
+ system "cd spec/rails_root && bundle install && ./script/rails generate clearance && rake db:migrate db:test:prepare"
84
+ end
85
+
86
+ task :clearance_features do
87
+ system "cd spec/rails_root && ./script/rails generate clearance_features"
88
+ end
89
+
90
+ task :clearance_views do
91
+ system "cd spec/rails_root && ./script/rails generate clearance_views"
92
+ end
93
+ end
94
+ end
36
95
 
37
96
  namespace :generator do
38
97
  desc "Cleans up the test app before running the generator"
@@ -41,47 +100,34 @@ namespace :generator do
41
100
  FileUtils.rm_rf(each)
42
101
  end
43
102
 
44
- FileUtils.rm_rf("test/rails_root/vendor/plugins/clearance")
103
+ FileUtils.rm_rf("test/rails_root/app/views/passwords")
104
+ FileUtils.rm_rf("test/rails_root/app/views/sessions")
105
+ FileUtils.rm_rf("test/rails_root/app/views/users")
45
106
  FileUtils.mkdir_p("test/rails_root/vendor/plugins")
46
107
  clearance_root = File.expand_path(File.dirname(__FILE__))
47
- system("ln -s #{clearance_root} test/rails_root/vendor/plugins/clearance")
108
+ FileList["test/rails_root/features/*.feature"].each do |each|
109
+ FileUtils.rm_rf(each)
110
+ end
48
111
  end
49
112
 
50
113
  desc "Run the clearance generator"
51
114
  task :clearance do
52
- system "cd test/rails_root && ./script/generate clearance -f && rake db:migrate db:test:prepare"
115
+ system "cd test/rails_root && bundle install && ./script/rails generate clearance && rake db:migrate db:test:prepare"
53
116
  end
54
117
 
55
118
  desc "Run the clearance features generator"
56
119
  task :clearance_features do
57
- system "cd test/rails_root && ./script/generate clearance_features -f"
120
+ system "cd test/rails_root && ./script/rails generate clearance_features"
58
121
  end
59
122
 
60
123
  desc "Run the clearance views generator"
61
124
  task :clearance_views do
62
- system "cd test/rails_root && ./script/generate clearance_views -f"
125
+ system "cd test/rails_root && ./script/rails generate clearance_views"
63
126
  end
64
127
  end
65
128
 
66
129
  desc "Run the test suite"
67
130
  task :default => ['test:basic', 'test:features',
68
- 'test:views', 'test:features_for_views']
69
-
70
- require 'jeweler'
71
-
72
- Jeweler::Tasks.new do |gem|
73
- gem.name = "janova-clearance"
74
- gem.summary = "Rails authentication with email & password."
75
- gem.description = "Rails authentication with email & password."
76
- gem.email = "support@janova.us"
77
- gem.homepage = "http://github.com/janova/clearance"
78
- gem.authors = ["Dan Croak", "Mike Burns", "Jason Morrison",
79
- "Joe Ferris", "Eugene Bolshakov", "Nick Quaranto",
80
- "Josh Nichols", "Mike Breen", "Marcel Görner",
81
- "Bence Nagy", "Ben Mabey", "Eloy Duran",
82
- "Tim Pope", "Mihai Anca", "Mark Cornick",
83
- "Shay Arnett", "Jon Yurek", "Chad Pytel"]
84
- gem.files = FileList["[A-Z]*", "{app,config,generators,lib,shoulda_macros,rails}/**/*"]
85
- end
86
-
87
- Jeweler::GemcutterTasks.new
131
+ 'test:views', 'test:features_for_views',
132
+ 'spec:basic', 'spec:features',
133
+ 'spec:views', 'spec:features_for_views']
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.8.8
1
+ 0.9.1
@@ -7,8 +7,6 @@ class Clearance::ConfirmationsController < ApplicationController
7
7
  before_filter :forbid_missing_token, :only => [:new, :create]
8
8
  before_filter :forbid_non_existent_user, :only => [:new, :create]
9
9
 
10
- filter_parameter_logging :token
11
-
12
10
  def new
13
11
  create
14
12
  end
@@ -4,7 +4,6 @@ class Clearance::PasswordsController < ApplicationController
4
4
  skip_before_filter :authenticate, :only => [:new, :create, :edit, :update]
5
5
  before_filter :forbid_missing_token, :only => [:edit, :update]
6
6
  before_filter :forbid_non_existent_user, :only => [:edit, :update]
7
- filter_parameter_logging :password, :password_confirmation
8
7
 
9
8
  def new
10
9
  render :template => 'passwords/new'
@@ -13,7 +12,7 @@ class Clearance::PasswordsController < ApplicationController
13
12
  def create
14
13
  if user = ::User.find_by_email(params[:password][:email])
15
14
  user.forgot_password!
16
- ::ClearanceMailer.deliver_change_password user
15
+ ::ClearanceMailer.change_password(user).deliver
17
16
  flash_notice_after_create
18
17
  redirect_to(url_after_create)
19
18
  else
@@ -3,7 +3,6 @@ class Clearance::SessionsController < ApplicationController
3
3
 
4
4
  skip_before_filter :authenticate, :only => [:new, :create, :destroy]
5
5
  protect_from_forgery :except => :create
6
- filter_parameter_logging :password
7
6
 
8
7
  def new
9
8
  render :template => 'sessions/new'
@@ -21,7 +20,7 @@ class Clearance::SessionsController < ApplicationController
21
20
  flash_success_after_create
22
21
  redirect_back_or(url_after_create)
23
22
  else
24
- ::ClearanceMailer.deliver_confirmation(@user)
23
+ ::ClearanceMailer.confirmation(@user).deliver
25
24
  flash_notice_after_create
26
25
  redirect_to(sign_in_url)
27
26
  end
@@ -3,7 +3,6 @@ class Clearance::UsersController < ApplicationController
3
3
 
4
4
  skip_before_filter :authenticate, :only => [:new, :create]
5
5
  before_filter :redirect_to_root, :only => [:new, :create], :if => :signed_in?
6
- filter_parameter_logging :password
7
6
 
8
7
  def new
9
8
  @user = ::User.new(params[:user])
@@ -1,21 +1,21 @@
1
1
  class ClearanceMailer < ActionMailer::Base
2
2
 
3
3
  def change_password(user)
4
+ @user = user
4
5
  from Clearance.configuration.mailer_sender
5
- recipients user.email
6
+ recipients @user.email
6
7
  subject I18n.t(:change_password,
7
8
  :scope => [:clearance, :models, :clearance_mailer],
8
9
  :default => "Change your password")
9
- body :user => user
10
10
  end
11
11
 
12
12
  def confirmation(user)
13
+ @user = user
13
14
  from Clearance.configuration.mailer_sender
14
- recipients user.email
15
+ recipients @user.email
15
16
  subject I18n.t(:confirmation,
16
17
  :scope => [:clearance, :models, :clearance_mailer],
17
18
  :default => "Account confirmation")
18
- body :user => user
19
19
  end
20
20
 
21
21
  end
@@ -6,7 +6,7 @@
6
6
 
7
7
  <%= error_messages_for :user %>
8
8
 
9
- <% form_for(:user,
9
+ <%= form_for(:user,
10
10
  :url => user_password_path(@user, :token => @user.confirmation_token),
11
11
  :html => { :method => :put }) do |form| %>
12
12
  <div class="password_field">
@@ -4,7 +4,7 @@
4
4
  We will email you a link to change your password.
5
5
  </p>
6
6
 
7
- <% form_for :password, :url => passwords_path do |form| %>
7
+ <%= form_for :password, :url => passwords_path do |form| %>
8
8
  <div class="text_field">
9
9
  <%= form.label :email, "Email address" %>
10
10
  <%= form.text_field :email %>
@@ -12,4 +12,4 @@
12
12
  <div class="submit_field">
13
13
  <%= form.submit "Reset password", :disable_with => "Please wait..." %>
14
14
  </div>
15
- <% end %>
15
+ <% end %>
@@ -1,6 +1,6 @@
1
1
  <h2>Sign in</h2>
2
2
 
3
- <% form_for :session, :url => session_path do |form| %>
3
+ <%= form_for :session, :url => session_path do |form| %>
4
4
  <div class="text_field">
5
5
  <%= form.label :email %>
6
6
  <%= form.text_field :email %>
@@ -10,4 +10,4 @@
10
10
  <div class="password_field">
11
11
  <%= form.label :password_confirmation, "Confirm password" %>
12
12
  <%= form.password_field :password_confirmation %>
13
- </div>
13
+ </div>
@@ -1,6 +1,6 @@
1
1
  <h2>Sign up</h2>
2
2
 
3
- <% form_for @user do |form| %>
3
+ <%= form_for @user do |form| %>
4
4
  <%= render :partial => '/users/form', :object => form %>
5
5
  <%= form.submit 'Sign up', :disable_with => 'Please wait...' %>
6
6
  <% end %>