saucy 0.9.1 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG.md +12 -0
- data/features/run_features.feature +10 -10
- data/features/step_definitions/rails_steps.rb +2 -2
- data/lib/generators/saucy/features/templates/features/manage_billing.feature +4 -4
- data/lib/generators/saucy/features/templates/features/manage_plan.feature +6 -6
- data/lib/generators/saucy/features/templates/features/manage_users.feature +8 -8
- data/lib/generators/saucy/features/templates/features/new_account.feature +1 -1
- data/lib/generators/saucy/features/templates/features/trial_plans.feature +3 -3
- data/lib/generators/saucy/features/templates/step_definitions/plan_steps.rb +12 -0
- data/lib/generators/saucy/features/templates/step_definitions/session_steps.rb +0 -6
- metadata +7 -7
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,15 @@
|
|
1
|
+
0.10.0
|
2
|
+
|
3
|
+
Bump to a newer version of Clearance.
|
4
|
+
|
5
|
+
Update features:
|
6
|
+
* Make a trial_plans.feature step definition more specific so as not to conflict
|
7
|
+
with a saucy-kiss gem feature.
|
8
|
+
* Update step definitions to work with newer clearance.
|
9
|
+
|
10
|
+
You will want to regenerate the saucy features, or look at the commit diffs and
|
11
|
+
introduce the above two changes yourself.
|
12
|
+
|
1
13
|
0.9.1
|
2
14
|
|
3
15
|
Added canceled observer event.
|
@@ -7,7 +7,7 @@ Feature: generate a saucy application and run rake
|
|
7
7
|
And I copy the locked Gemfile from this project
|
8
8
|
And I append to "Gemfile" with:
|
9
9
|
"""
|
10
|
-
gem "clearance",
|
10
|
+
gem "clearance", "~> 0.11.2"
|
11
11
|
gem "cucumber-rails"
|
12
12
|
gem "capybara"
|
13
13
|
gem "factory_girl_rails"
|
@@ -22,7 +22,7 @@ Feature: generate a saucy application and run rake
|
|
22
22
|
gem "jquery-rails"
|
23
23
|
"""
|
24
24
|
When I add the "saucy" gem from this project as a dependency
|
25
|
-
And I successfully run "bundle install
|
25
|
+
And I successfully run "bundle install"
|
26
26
|
And I successfully run "rails generate jquery:install --force"
|
27
27
|
And I bootstrap the application for clearance
|
28
28
|
And I bootstrap the application for saucy
|
@@ -31,8 +31,8 @@ Feature: generate a saucy application and run rake
|
|
31
31
|
When I successfully run "rails generate saucy:install"
|
32
32
|
And I successfully run "rails generate saucy:specs"
|
33
33
|
And I successfully run "rails generate saucy:features"
|
34
|
-
And I successfully run "rake db:migrate"
|
35
|
-
And I run "rake"
|
34
|
+
And I successfully run "bundle exec rake db:migrate"
|
35
|
+
And I run "bundle exec rake"
|
36
36
|
Then it should pass with:
|
37
37
|
"""
|
38
38
|
passed
|
@@ -45,9 +45,9 @@ Feature: generate a saucy application and run rake
|
|
45
45
|
And I successfully run "rails generate saucy:specs"
|
46
46
|
And I successfully run "rails generate saucy:features"
|
47
47
|
And I successfully run "rails generate saucy:views"
|
48
|
-
And I successfully run "rake db:migrate"
|
48
|
+
And I successfully run "bundle exec rake db:migrate"
|
49
49
|
And I give a more detailed new account message
|
50
|
-
And I run "rake"
|
50
|
+
And I run "bundle exec rake"
|
51
51
|
Then it should pass with:
|
52
52
|
"""
|
53
53
|
passed
|
@@ -59,9 +59,9 @@ Feature: generate a saucy application and run rake
|
|
59
59
|
When I successfully run "rails generate saucy:install"
|
60
60
|
And I successfully run "rails generate saucy:specs"
|
61
61
|
And I successfully run "rails generate saucy:features"
|
62
|
-
And I successfully run "rake db:migrate"
|
62
|
+
And I successfully run "bundle exec rake db:migrate"
|
63
63
|
And I add a custom layout to the accounts index
|
64
|
-
And I run "rake"
|
64
|
+
And I run "bundle exec rake"
|
65
65
|
Then it should pass with:
|
66
66
|
"""
|
67
67
|
passed
|
@@ -73,9 +73,9 @@ Feature: generate a saucy application and run rake
|
|
73
73
|
When I successfully run "rails generate saucy:install"
|
74
74
|
And I successfully run "rails generate saucy:specs"
|
75
75
|
And I successfully run "rails generate saucy:features"
|
76
|
-
And I successfully run "rake db:migrate"
|
76
|
+
And I successfully run "bundle exec rake db:migrate"
|
77
77
|
And I copy the specs for this project
|
78
|
-
And I run "rake spec"
|
78
|
+
And I run "bundle exec rake spec"
|
79
79
|
Then it should pass with:
|
80
80
|
"""
|
81
81
|
0 failures
|
@@ -47,7 +47,7 @@ When /^I add a custom layout to the accounts index$/ do
|
|
47
47
|
create_file('features/custom_accounts_index_layout.feature', <<-SCENARIO)
|
48
48
|
Feature: The accounts index should have a custom layout
|
49
49
|
Scenario: Custom layout
|
50
|
-
Given I am signed up as "email@person.com
|
50
|
+
Given I am signed up as "email@person.com"
|
51
51
|
And the following projects exist:
|
52
52
|
| name | account |
|
53
53
|
| ClothesPin | name: One |
|
@@ -56,7 +56,7 @@ When /^I add a custom layout to the accounts index$/ do
|
|
56
56
|
And "email@person.com" is a member of the "ClothesPin" project
|
57
57
|
And "email@person.com" is a member of the "Talkr" project
|
58
58
|
When I go to the sign in page
|
59
|
-
And I sign in as "email@person.com
|
59
|
+
And I sign in as "email@person.com"
|
60
60
|
And I go to the dashboard page
|
61
61
|
Then I should see "Custom Layout Content"
|
62
62
|
SCENARIO
|
@@ -8,7 +8,7 @@ Feature: Manage Billing
|
|
8
8
|
And the following account exists:
|
9
9
|
| name | keyword | plan | cardholder_name | billing_email | card_number | verification_code | expiration_month | expiration_year |
|
10
10
|
| Test | test | name: Paid | Joe Smith | jsmith@example.com | 4111111111115555 | 122 | 01 | 2015 |
|
11
|
-
And I have signed in with "joe@example.com
|
11
|
+
And I have signed in with "joe@example.com"
|
12
12
|
And "joe@example.com" is an admin of the "Test" account
|
13
13
|
When I go to the billing page for the "Test" account
|
14
14
|
Then I should see "card ending in 5555"
|
@@ -38,7 +38,7 @@ Feature: Manage Billing
|
|
38
38
|
| name | keyword | plan | cardholder_name | billing_email | card_number | verification_code | expiration_month | expiration_year |
|
39
39
|
| Test | test | name: Paid | Joe Smith | jsmith@example.com | 4111111111115555 | 122 | 01 | 2015 |
|
40
40
|
And the "Test" account is past due
|
41
|
-
And I have signed in with "joe@example.com
|
41
|
+
And I have signed in with "joe@example.com"
|
42
42
|
And "joe@example.com" is an admin of the "Test" account
|
43
43
|
When I go to the settings page for the "Test" account
|
44
44
|
Then I should be on the billing page for the "Test" account
|
@@ -72,7 +72,7 @@ Feature: Manage Billing
|
|
72
72
|
| status | amount | created_at |
|
73
73
|
| Settled | 20.00 | July 1, 2010 |
|
74
74
|
| Settled | 5.00 | August 1, 2010 |
|
75
|
-
And I have signed in with "joe@example.com
|
75
|
+
And I have signed in with "joe@example.com"
|
76
76
|
And "joe@example.com" is an admin of the "Test" account
|
77
77
|
When I go to the billing page for the "Test" account
|
78
78
|
Then I should see "Your Invoices"
|
@@ -84,7 +84,7 @@ Feature: Manage Billing
|
|
84
84
|
And the following account exists:
|
85
85
|
| name | keyword | plan | cardholder_name | billing_email | card_number | verification_code | expiration_month | expiration_year |
|
86
86
|
| Test | test | name: Paid | Joe Smith | jsmith@example.com | 4111111111115555 | 122 | 01 | 2015 |
|
87
|
-
And I have signed in with "joe@example.com
|
87
|
+
And I have signed in with "joe@example.com"
|
88
88
|
And "joe@example.com" is an admin of the "Test" account
|
89
89
|
When I go to the billing page for the "Test" account
|
90
90
|
And I follow "Change"
|
@@ -9,7 +9,7 @@ Feature: Manage Plan
|
|
9
9
|
And the following account exists:
|
10
10
|
| name | keyword | plan | cardholder_name | billing_email | card_number | verification_code | expiration_month | expiration_year |
|
11
11
|
| Test | test | name: Basic | Joe Smith | jsmith@example.com | 4111111111115555 | 122 | 01 | 2015 |
|
12
|
-
And I have signed in with "joe@example.com
|
12
|
+
And I have signed in with "joe@example.com"
|
13
13
|
And "joe@example.com" is an admin of the "Test" account
|
14
14
|
When I go to the settings page for the "Test" account
|
15
15
|
Then I should see "Your Plan"
|
@@ -28,7 +28,7 @@ Feature: Manage Plan
|
|
28
28
|
And the following account exists:
|
29
29
|
| name | keyword | plan |
|
30
30
|
| Test | test | name: Free |
|
31
|
-
And I have signed in with "joe@example.com
|
31
|
+
And I have signed in with "joe@example.com"
|
32
32
|
And "joe@example.com" is an admin of the "Test" account
|
33
33
|
When I go to the settings page for the "Test" account
|
34
34
|
Then I should not see "Billing" within ".subnav"
|
@@ -56,7 +56,7 @@ Feature: Manage Plan
|
|
56
56
|
And the following account exists:
|
57
57
|
| name | keyword | plan |
|
58
58
|
| Test | test | name: Free |
|
59
|
-
And I have signed in with "joe@example.com
|
59
|
+
And I have signed in with "joe@example.com"
|
60
60
|
And "joe@example.com" is an admin of the "Test" account
|
61
61
|
When I go to the settings page for the "Test" account
|
62
62
|
Then I should not see "Billing" within ".subnav"
|
@@ -80,7 +80,7 @@ Feature: Manage Plan
|
|
80
80
|
And the following account exists:
|
81
81
|
| name | keyword | plan | cardholder_name | billing_email | card_number | verification_code | expiration_month | expiration_year |
|
82
82
|
| Test | test | name: Basic | Joe Smith | jsmith@example.com | 4111111111115555 | 122 | 01 | 2015 |
|
83
|
-
And I have signed in with "joe@example.com
|
83
|
+
And I have signed in with "joe@example.com"
|
84
84
|
And "joe@example.com" is an admin of the "Test" account
|
85
85
|
When I go to the settings page for the "Test" account
|
86
86
|
Then I should see "Your Plan"
|
@@ -107,7 +107,7 @@ Feature: Manage Plan
|
|
107
107
|
| name: Free | projects | 1 | number |
|
108
108
|
| name: Basic | ssl | 1 | boolean |
|
109
109
|
| name: Free | ssl | 0 | boolean |
|
110
|
-
And I have signed in with "joe@example.com
|
110
|
+
And I have signed in with "joe@example.com"
|
111
111
|
And "joe@example.com" is an admin of the "Test" account
|
112
112
|
When I go to the settings page for the "Test" account
|
113
113
|
Then I should see "Your Plan"
|
@@ -134,7 +134,7 @@ Feature: Manage Plan
|
|
134
134
|
| name: Basic | users | 1 | number |
|
135
135
|
| name: Basic | projects | 5 | number |
|
136
136
|
| name: Basic | ssl | 1 | boolean |
|
137
|
-
And I have signed in with "joe@example.com
|
137
|
+
And I have signed in with "joe@example.com"
|
138
138
|
And "joe@example.com" is an admin of the "Test" account
|
139
139
|
When I go to the settings page for the "Test" account
|
140
140
|
Then I should see "1/1" within ".users.meter"
|
@@ -21,8 +21,8 @@ Feature: Managing users
|
|
21
21
|
When I sign out
|
22
22
|
And I follow the link sent to "invitee@example.com"
|
23
23
|
And I fill in the following new user:
|
24
|
-
| Name | Billy
|
25
|
-
| Password |
|
24
|
+
| Name | Billy |
|
25
|
+
| Password | password |
|
26
26
|
And I press "Accept Invitation"
|
27
27
|
Then I should be signed in
|
28
28
|
And "invitee@example.com" should be a member of the "See me" project
|
@@ -34,7 +34,7 @@ Feature: Managing users
|
|
34
34
|
Scenario: Invite existing user who is not signed in
|
35
35
|
Given the following user exists:
|
36
36
|
| email | password |
|
37
|
-
| invitee@example.com |
|
37
|
+
| invitee@example.com | password |
|
38
38
|
When I follow "Invite user"
|
39
39
|
And I fill in "Email" with "invitee@example.com"
|
40
40
|
And I press "Invite User"
|
@@ -42,7 +42,7 @@ Feature: Managing users
|
|
42
42
|
When I sign out
|
43
43
|
And I follow the link sent to "invitee@example.com"
|
44
44
|
And I fill in the following existing user:
|
45
|
-
| Password |
|
45
|
+
| Password | password |
|
46
46
|
And I press "Accept Invitation"
|
47
47
|
Then I should be signed in
|
48
48
|
And "invitee@example.com" should be a member of the "Test" account
|
@@ -50,13 +50,13 @@ Feature: Managing users
|
|
50
50
|
Scenario: Invite existing user who is signed in
|
51
51
|
Given the following user exists:
|
52
52
|
| email | password |
|
53
|
-
| invitee@example.com |
|
53
|
+
| invitee@example.com | password |
|
54
54
|
When I follow "Invite user"
|
55
55
|
And I fill in "Email" with "invitee@example.com"
|
56
56
|
And I press "Invite User"
|
57
57
|
Then I should see "invited"
|
58
58
|
When I sign out
|
59
|
-
When I sign in as "invitee@example.com
|
59
|
+
When I sign in as "invitee@example.com"
|
60
60
|
And I follow the link sent to "invitee@example.com"
|
61
61
|
Then I should be signed in
|
62
62
|
And "invitee@example.com" should be a member of the "Test" account
|
@@ -72,7 +72,7 @@ Feature: Managing users
|
|
72
72
|
Scenario: Invite admin users
|
73
73
|
Given the following user exists:
|
74
74
|
| email | password |
|
75
|
-
| invitee@example.com |
|
75
|
+
| invitee@example.com | password |
|
76
76
|
When I follow "Invite user"
|
77
77
|
And I fill in "Email" with "invitee@example.com"
|
78
78
|
And I check "Grant administrator privileges"
|
@@ -80,7 +80,7 @@ Feature: Managing users
|
|
80
80
|
And I sign out
|
81
81
|
And I follow the link sent to "invitee@example.com"
|
82
82
|
And I fill in the following existing user:
|
83
|
-
| Password |
|
83
|
+
| Password | password |
|
84
84
|
And I press "Accept Invitation"
|
85
85
|
Then I should be signed in
|
86
86
|
And "invitee@example.com" should be an admin member of the "Test" account
|
@@ -4,7 +4,7 @@ Feature: user adds a new account
|
|
4
4
|
Given a plan exists with a name of "Free"
|
5
5
|
|
6
6
|
Scenario: existing user adds an account
|
7
|
-
Given I am signed up as "user@example.com
|
7
|
+
Given I am signed up as "user@example.com"
|
8
8
|
When I go to the sign up page for the "Free" plan
|
9
9
|
And I fill in "Email" with "user@example.com"
|
10
10
|
And I fill in "Password" with "test"
|
@@ -14,7 +14,7 @@ Feature: Trial plans
|
|
14
14
|
When I go to the list of plans page
|
15
15
|
And I follow "Temp"
|
16
16
|
Then I should see "Free"
|
17
|
-
And I should see
|
17
|
+
And I should see that the plan is a trial plan
|
18
18
|
And I should see "Your trial will expire after 30 days"
|
19
19
|
But I should not see "users"
|
20
20
|
When I fill in "Email" with "email@person.com"
|
@@ -41,7 +41,7 @@ Feature: Trial plans
|
|
41
41
|
When I go to the list of plans page
|
42
42
|
And I follow "Eternal"
|
43
43
|
Then I should see "users"
|
44
|
-
|
44
|
+
And I should see that the plan is not a trial plan
|
45
45
|
And I should not see "expire"
|
46
46
|
|
47
47
|
Scenario: Use a non-trial plan forever
|
@@ -67,7 +67,7 @@ Feature: Trial plans
|
|
67
67
|
And the "Test" account was created 7 days ago
|
68
68
|
When the daily Saucy jobs are processed
|
69
69
|
Then an email with subject "A check in" should be sent to "admin@example.com"
|
70
|
-
When I sign in as "admin@example.com
|
70
|
+
When I sign in as "admin@example.com"
|
71
71
|
And I follow the link sent to "admin@example.com" with subject "A check in"
|
72
72
|
Then I should be on the new project page for the newest account by "admin@example.com"
|
73
73
|
|
@@ -14,3 +14,15 @@ When /^I should see the "([^"]*)" plan before the "([^"]*)" plan$/ do |first_pla
|
|
14
14
|
joint_expression = /#{first_expression}.*#{second_expression}/m
|
15
15
|
page.body.should =~ joint_expression
|
16
16
|
end
|
17
|
+
|
18
|
+
Then "I should see that the plan is a trial plan" do
|
19
|
+
within(".plan.chosen") do
|
20
|
+
page.should have_content("Trial")
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
Then "I should see that the plan is not a trial plan" do
|
25
|
+
within(".plan.chosen") do
|
26
|
+
page.should have_no_content("Trial")
|
27
|
+
end
|
28
|
+
end
|
@@ -25,12 +25,6 @@ Given /^I am signed in as an admin of the "([^"]*)" account$/ do |account_name|
|
|
25
25
|
When %{I sign in as "#{user.email}"}
|
26
26
|
end
|
27
27
|
|
28
|
-
When /^I sign in as "([^"\/]*)"$/ do |email|
|
29
|
-
user = User.find_by_email!(email)
|
30
|
-
user.update_attributes!(:password => 'test')
|
31
|
-
When %{I sign in as "#{email}/test"}
|
32
|
-
end
|
33
|
-
|
34
28
|
Given /^I am signed in$/ do
|
35
29
|
user = Factory(:user)
|
36
30
|
When %{I sign in as "#{user.email}"}
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: saucy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 55
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 0.
|
8
|
+
- 10
|
9
|
+
- 0
|
10
|
+
version: 0.10.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- thoughtbot, inc.
|
@@ -31,12 +31,12 @@ dependencies:
|
|
31
31
|
requirements:
|
32
32
|
- - ~>
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
hash:
|
34
|
+
hash: 55
|
35
35
|
segments:
|
36
36
|
- 0
|
37
37
|
- 11
|
38
|
-
-
|
39
|
-
version: 0.11.
|
38
|
+
- 2
|
39
|
+
version: 0.11.2
|
40
40
|
type: :runtime
|
41
41
|
version_requirements: *id001
|
42
42
|
- !ruby/object:Gem::Dependency
|