janova-clearance 0.8.8 → 0.9.1
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.
- data/CHANGELOG.md +11 -2
- data/README.md +34 -35
- data/Rakefile +79 -33
- data/VERSION +1 -1
- data/app/controllers/clearance/confirmations_controller.rb +0 -2
- data/app/controllers/clearance/passwords_controller.rb +1 -2
- data/app/controllers/clearance/sessions_controller.rb +1 -2
- data/app/controllers/clearance/users_controller.rb +0 -1
- data/app/models/clearance_mailer.rb +4 -4
- data/app/views/passwords/edit.html.erb +1 -1
- data/app/views/passwords/new.html.erb +2 -2
- data/app/views/sessions/new.html.erb +1 -1
- data/app/views/users/_form.html.erb +1 -1
- data/app/views/users/new.html.erb +1 -1
- data/clearance.gemspec +207 -0
- data/config/routes.rb +23 -0
- data/cucumber.yml +4 -0
- data/{rails/init.rb → init.rb} +0 -0
- data/lib/clearance.rb +2 -1
- data/lib/clearance/authentication.rb +2 -2
- data/lib/clearance/configuration.rb +10 -3
- data/lib/clearance/engine.rb +10 -0
- data/{shoulda_macros/clearance.rb → lib/clearance/shoulda_macros.rb} +11 -23
- data/lib/clearance/user.rb +5 -6
- data/lib/rails/generators/clearance_features_generator.rb +20 -0
- data/{generators/clearance_features/templates → lib/rails/generators/clearance_features_templates}/features/password_reset.feature +1 -1
- data/{generators/clearance_features/templates → lib/rails/generators/clearance_features_templates}/features/sign_in.feature +0 -0
- data/{generators/clearance_features/templates → lib/rails/generators/clearance_features_templates}/features/sign_out.feature +0 -0
- data/{generators/clearance_features/templates → lib/rails/generators/clearance_features_templates}/features/sign_up.feature +0 -0
- data/lib/rails/generators/clearance_features_templates/features/step_definitions/clearance_steps.rb +138 -0
- data/lib/rails/generators/clearance_generator.rb +72 -0
- data/{generators/clearance/templates → lib/rails/generators/clearance_templates}/README +0 -0
- data/{generators/clearance/templates → lib/rails/generators/clearance_templates}/clearance.rb +0 -0
- data/{generators/clearance/templates → lib/rails/generators/clearance_templates}/factories.rb +0 -0
- data/{generators/clearance/templates → lib/rails/generators/clearance_templates}/migrations/create_users.rb +0 -1
- data/{generators/clearance/templates → lib/rails/generators/clearance_templates}/migrations/update_users.rb +0 -1
- data/{generators/clearance/templates → lib/rails/generators/clearance_templates}/user.rb +0 -0
- data/lib/rails/generators/clearance_views_generator.rb +14 -0
- data/{generators/clearance_views/templates/formtastic → lib/rails/generators/clearance_views_templates/formtastic/erb}/passwords/edit.html.erb +3 -3
- data/{generators/clearance_views/templates/formtastic → lib/rails/generators/clearance_views_templates/formtastic/erb}/passwords/new.html.erb +3 -3
- data/{generators/clearance_views/templates/formtastic → lib/rails/generators/clearance_views_templates/formtastic/erb}/sessions/new.html.erb +3 -3
- data/{generators/clearance_views/templates/formtastic → lib/rails/generators/clearance_views_templates/formtastic/erb}/users/_inputs.html.erb +1 -1
- data/{generators/clearance_views/templates/formtastic → lib/rails/generators/clearance_views_templates/formtastic/erb}/users/new.html.erb +2 -2
- data/spec/rails_root/Gemfile +15 -0
- data/spec/rails_root/README +244 -0
- data/spec/rails_root/Rakefile +10 -0
- data/spec/rails_root/app/controllers/accounts_controller.rb +10 -0
- data/spec/rails_root/app/controllers/application_controller.rb +6 -0
- data/spec/rails_root/app/helpers/application_helper.rb +2 -0
- data/spec/rails_root/app/models/user.rb +3 -0
- data/{generators/clearance_views/USAGE → spec/rails_root/app/views/accounts/edit.html.erb} +0 -0
- data/spec/rails_root/app/views/layouts/application.html.erb +24 -0
- data/spec/rails_root/config.ru +4 -0
- data/spec/rails_root/config/application.rb +46 -0
- data/spec/rails_root/config/boot.rb +6 -0
- data/spec/rails_root/config/cucumber.yml +8 -0
- data/spec/rails_root/config/database.yml +25 -0
- data/spec/rails_root/config/environment.rb +7 -0
- data/spec/rails_root/config/environments/development.rb +21 -0
- data/spec/rails_root/config/environments/production.rb +42 -0
- data/spec/rails_root/config/environments/test.rb +34 -0
- data/spec/rails_root/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/rails_root/config/initializers/clearance.rb +3 -0
- data/spec/rails_root/config/initializers/inflections.rb +10 -0
- data/spec/rails_root/config/initializers/mime_types.rb +5 -0
- data/spec/rails_root/config/initializers/secret_token.rb +7 -0
- data/spec/rails_root/config/initializers/session_store.rb +8 -0
- data/spec/rails_root/config/locales/en.yml +5 -0
- data/spec/rails_root/config/routes.rb +61 -0
- data/spec/rails_root/db/schema.rb +29 -0
- data/spec/rails_root/doc/README_FOR_APP +2 -0
- data/spec/rails_root/features/password_reset.feature +33 -0
- data/spec/rails_root/features/sign_in.feature +35 -0
- data/spec/rails_root/features/sign_out.feature +15 -0
- data/spec/rails_root/features/sign_up.feature +45 -0
- data/{generators/clearance_features/templates → spec/rails_root}/features/step_definitions/clearance_steps.rb +18 -7
- data/spec/rails_root/features/step_definitions/web_steps.rb +219 -0
- data/spec/rails_root/features/support/env.rb +57 -0
- data/spec/rails_root/features/support/paths.rb +45 -0
- data/spec/rails_root/lib/tasks/cucumber.rake +53 -0
- data/spec/rails_root/public/404.html +26 -0
- data/spec/rails_root/public/422.html +26 -0
- data/spec/rails_root/public/500.html +26 -0
- data/spec/rails_root/public/favicon.ico +0 -0
- data/spec/rails_root/public/images/rails.png +0 -0
- data/spec/rails_root/public/javascripts/application.js +2 -0
- data/spec/rails_root/public/javascripts/controls.js +965 -0
- data/spec/rails_root/public/javascripts/dragdrop.js +974 -0
- data/spec/rails_root/public/javascripts/effects.js +1123 -0
- data/spec/rails_root/public/javascripts/prototype.js +4874 -0
- data/spec/rails_root/public/javascripts/rails.js +118 -0
- data/spec/rails_root/public/robots.txt +5 -0
- data/spec/rails_root/script/cucumber +10 -0
- data/spec/rails_root/script/rails +9 -0
- data/spec/rails_root/spec/factories/clearance.rb +13 -0
- data/spec/rails_root/vendor/plugins/dynamic_form/MIT-LICENSE +20 -0
- data/spec/rails_root/vendor/plugins/dynamic_form/README +13 -0
- data/spec/rails_root/vendor/plugins/dynamic_form/Rakefile +10 -0
- data/spec/rails_root/vendor/plugins/dynamic_form/init.rb +5 -0
- data/spec/rails_root/vendor/plugins/dynamic_form/lib/action_view/helpers/dynamic_form.rb +300 -0
- data/spec/rails_root/vendor/plugins/dynamic_form/lib/action_view/locale/en.yml +8 -0
- data/spec/rails_root/vendor/plugins/dynamic_form/test/dynamic_form_i18n_test.rb +42 -0
- data/spec/rails_root/vendor/plugins/dynamic_form/test/dynamic_form_test.rb +370 -0
- data/spec/rails_root/vendor/plugins/dynamic_form/test/test_helper.rb +9 -0
- data/test/controllers/confirmations_controller_test.rb +10 -7
- data/test/controllers/passwords_controller_test.rb +16 -20
- data/test/controllers/sessions_controller_test.rb +59 -20
- data/test/controllers/users_controller_test.rb +19 -16
- data/test/models/clearance_mailer_test.rb +2 -2
- data/test/models/user_test.rb +14 -13
- data/test/rails_root/Gemfile +17 -0
- data/test/rails_root/README +244 -0
- data/test/rails_root/Rakefile +10 -0
- data/test/rails_root/app/helpers/application_helper.rb +0 -3
- data/test/rails_root/app/models/user.rb +3 -0
- data/test/rails_root/app/views/accounts/edit.html.erb +0 -0
- data/test/rails_root/app/views/layouts/application.html.erb +24 -0
- data/test/rails_root/config.ru +4 -0
- data/test/rails_root/config/application.rb +46 -0
- data/test/rails_root/config/boot.rb +5 -109
- data/test/rails_root/config/cucumber.yml +8 -0
- data/test/rails_root/config/database.yml +25 -0
- data/test/rails_root/config/environment.rb +5 -15
- data/test/rails_root/config/environments/development.rb +16 -14
- data/test/rails_root/config/environments/production.rb +42 -1
- data/test/rails_root/config/environments/test.rb +34 -36
- data/test/rails_root/config/initializers/backtrace_silencers.rb +7 -0
- data/test/rails_root/config/initializers/inflections.rb +1 -1
- data/test/rails_root/config/initializers/secret_token.rb +7 -0
- data/test/rails_root/config/initializers/session_store.rb +8 -0
- data/test/rails_root/config/locales/en.yml +5 -0
- data/test/rails_root/config/routes.rb +59 -4
- data/test/rails_root/doc/README_FOR_APP +2 -0
- data/test/rails_root/features/step_definitions/web_steps.rb +125 -165
- data/test/rails_root/features/support/env.rb +24 -14
- data/test/rails_root/features/support/paths.rb +45 -0
- data/test/rails_root/lib/tasks/cucumber.rake +53 -0
- data/test/rails_root/public/404.html +26 -0
- data/test/rails_root/public/422.html +26 -0
- data/test/rails_root/public/500.html +26 -0
- data/test/rails_root/public/favicon.ico +0 -0
- data/test/rails_root/public/images/rails.png +0 -0
- data/test/rails_root/public/javascripts/application.js +2 -0
- data/test/rails_root/public/javascripts/controls.js +965 -0
- data/test/rails_root/public/javascripts/dragdrop.js +974 -0
- data/test/rails_root/public/javascripts/effects.js +1123 -0
- data/test/rails_root/public/javascripts/prototype.js +4874 -0
- data/test/rails_root/public/javascripts/rails.js +118 -0
- data/test/rails_root/public/robots.txt +5 -0
- data/test/rails_root/script/cucumber +10 -0
- data/test/rails_root/script/rails +9 -0
- data/test/rails_root/test/factories/clearance.rb +13 -0
- data/test/rails_root/test/functional/accounts_controller_test.rb +0 -1
- data/test/rails_root/test/performance/browsing_test.rb +9 -0
- data/test/rails_root/test/test_helper.rb +13 -0
- data/test/rails_root/vendor/plugins/dynamic_form/MIT-LICENSE +20 -0
- data/test/rails_root/vendor/plugins/dynamic_form/README +13 -0
- data/test/rails_root/vendor/plugins/dynamic_form/Rakefile +10 -0
- data/test/rails_root/vendor/plugins/dynamic_form/init.rb +5 -0
- data/test/rails_root/vendor/plugins/dynamic_form/lib/action_view/helpers/dynamic_form.rb +300 -0
- data/test/rails_root/vendor/plugins/dynamic_form/lib/action_view/locale/en.yml +8 -0
- data/test/rails_root/vendor/plugins/dynamic_form/test/dynamic_form_i18n_test.rb +42 -0
- data/test/rails_root/vendor/plugins/dynamic_form/test/dynamic_form_test.rb +370 -0
- data/test/rails_root/vendor/plugins/dynamic_form/test/test_helper.rb +9 -0
- data/test/test_helper.rb +31 -2
- metadata +273 -61
- data/generators/clearance/USAGE +0 -1
- data/generators/clearance/clearance_generator.rb +0 -68
- data/generators/clearance/lib/insert_commands.rb +0 -33
- data/generators/clearance/lib/rake_commands.rb +0 -22
- data/generators/clearance_features/USAGE +0 -1
- data/generators/clearance_features/clearance_features_generator.rb +0 -19
- data/generators/clearance_features/templates/features/support/paths.rb +0 -23
- data/generators/clearance_views/clearance_views_generator.rb +0 -27
- data/lib/clearance/routes.rb +0 -49
- data/test/rails_root/app/helpers/confirmations_helper.rb +0 -2
- data/test/rails_root/app/helpers/passwords_helper.rb +0 -2
- data/test/rails_root/config/initializers/requires.rb +0 -13
- data/test/rails_root/config/initializers/time_formats.rb +0 -4
- data/test/rails_root/public/dispatch.rb +0 -10
- data/test/rails_root/script/create_project.rb +0 -52
- data/test/rails_root/vendor/gems/justinfrench-formtastic-0.2.1/generators/formtastic_stylesheets/formtastic_stylesheets_generator.rb +0 -21
- data/test/rails_root/vendor/gems/justinfrench-formtastic-0.2.1/lib/formtastic.rb +0 -1236
- data/test/rails_root/vendor/gems/justinfrench-formtastic-0.2.1/lib/justin_french/formtastic.rb +0 -10
- data/test/rails_root/vendor/gems/justinfrench-formtastic-0.2.1/rails/init.rb +0 -3
- data/test/rails_root/vendor/gems/justinfrench-formtastic-0.2.1/spec/formtastic_spec.rb +0 -2900
- 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.
|
|
1
|
+
0.9.1 (Janova fork)
|
|
2
2
|
------------------
|
|
3
|
-
|
|
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
|
|
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.
|
|
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.
|
|
25
|
+
Install it as a gem however you like to install gems. Also, uninstall old versions:
|
|
26
26
|
|
|
27
|
-
gem
|
|
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
|
|
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
|
-
|
|
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
|
|
72
|
+
and add your route in config/routes.rb:
|
|
69
73
|
|
|
70
|
-
|
|
74
|
+
resource :session, :controller => 'sessions'
|
|
71
75
|
|
|
72
|
-
See
|
|
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
|
|
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
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
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
|
|
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,
|
|
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
|
|
15
|
+
task.pattern = "test/*/*_test.rb"
|
|
14
16
|
task.verbose = false
|
|
15
17
|
end
|
|
16
18
|
|
|
17
|
-
Rake::TestTask.new(:views => ["generator:
|
|
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
|
|
24
|
+
task.pattern = "test/*/*_test.rb"
|
|
21
25
|
task.verbose = false
|
|
22
26
|
end
|
|
23
27
|
|
|
24
|
-
|
|
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
|
|
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
|
-
|
|
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/
|
|
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
|
-
|
|
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
|
|
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
|
|
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
|
|
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
|
-
|
|
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.
|
|
1
|
+
0.9.1
|
|
@@ -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.
|
|
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.
|
|
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
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
We will email you a link to change your password.
|
|
5
5
|
</p>
|
|
6
6
|
|
|
7
|
-
|
|
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 %>
|