saucy 0.1.18 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +4 -1
- data/Gemfile.lock +12 -2
- data/README.md +75 -0
- data/app/controllers/accounts_controller.rb +2 -0
- data/app/controllers/billings_controller.rb +22 -0
- data/app/controllers/plans_controller.rb +12 -0
- data/app/models/limit.rb +5 -0
- data/app/models/signup.rb +20 -6
- data/app/views/accounts/_tab_bar.html.erb +3 -1
- data/app/views/accounts/edit.html.erb +6 -0
- data/app/views/accounts/new.html.erb +14 -4
- data/app/views/billings/_form.html.erb +8 -0
- data/app/views/billings/edit.html.erb +11 -0
- data/app/views/billings/show.html.erb +3 -0
- data/app/views/plans/_plan.html.erb +2 -0
- data/app/views/plans/edit.html.erb +23 -0
- data/config/routes.rb +2 -0
- data/features/run_features.feature +4 -0
- data/lib/generators/saucy/features/features_generator.rb +4 -0
- data/lib/generators/saucy/features/templates/factories.rb +14 -2
- data/lib/generators/saucy/features/templates/features/manage_account.feature +0 -2
- data/lib/generators/saucy/features/templates/features/manage_billing.feature +119 -0
- data/lib/generators/saucy/features/templates/features/sign_up.feature +2 -0
- data/lib/generators/saucy/features/templates/features/sign_up_paid.feature +76 -0
- data/lib/generators/saucy/features/templates/step_definitions/braintree_steps.rb +7 -0
- data/lib/generators/saucy/features/templates/step_definitions/html_steps.rb +22 -0
- data/lib/generators/saucy/features/templates/step_definitions/plan_steps.rb +9 -0
- data/lib/generators/saucy/features/templates/support/braintree.rb +5 -0
- data/lib/generators/saucy/install/templates/create_saucy_tables.rb +14 -1
- data/lib/generators/saucy/specs/specs_generator.rb +20 -0
- data/lib/generators/saucy/specs/templates/support/braintree.rb +5 -0
- data/lib/saucy/account.rb +134 -1
- data/lib/saucy/braintree.rb +100 -0
- data/lib/saucy/plan.rb +23 -0
- data/spec/controllers/accounts_controller_spec.rb +2 -2
- data/spec/environment.rb +4 -1
- data/spec/models/account_spec.rb +182 -0
- data/spec/models/limit_spec.rb +9 -0
- data/spec/models/plan_spec.rb +54 -0
- data/spec/models/signup_spec.rb +9 -0
- data/spec/support/braintree.rb +5 -0
- metadata +74 -8
- data/README +0 -38
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: 23
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 0.
|
8
|
+
- 2
|
9
|
+
- 0
|
10
|
+
version: 0.2.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- thoughtbot, inc.
|
@@ -17,7 +17,7 @@ autorequire:
|
|
17
17
|
bindir: bin
|
18
18
|
cert_chain: []
|
19
19
|
|
20
|
-
date:
|
20
|
+
date: 2011-01-08 00:00:00 -05:00
|
21
21
|
default_executable:
|
22
22
|
dependencies:
|
23
23
|
- !ruby/object:Gem::Dependency
|
@@ -52,9 +52,57 @@ dependencies:
|
|
52
52
|
type: :runtime
|
53
53
|
version_requirements: *id002
|
54
54
|
- !ruby/object:Gem::Dependency
|
55
|
-
name:
|
55
|
+
name: braintree
|
56
56
|
prerelease: false
|
57
57
|
requirement: &id003 !ruby/object:Gem::Requirement
|
58
|
+
none: false
|
59
|
+
requirements:
|
60
|
+
- - ">="
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
hash: 19
|
63
|
+
segments:
|
64
|
+
- 2
|
65
|
+
- 6
|
66
|
+
- 2
|
67
|
+
version: 2.6.2
|
68
|
+
type: :runtime
|
69
|
+
version_requirements: *id003
|
70
|
+
- !ruby/object:Gem::Dependency
|
71
|
+
name: sham_rack
|
72
|
+
prerelease: false
|
73
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
74
|
+
none: false
|
75
|
+
requirements:
|
76
|
+
- - "="
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
hash: 29
|
79
|
+
segments:
|
80
|
+
- 1
|
81
|
+
- 3
|
82
|
+
- 3
|
83
|
+
version: 1.3.3
|
84
|
+
type: :runtime
|
85
|
+
version_requirements: *id004
|
86
|
+
- !ruby/object:Gem::Dependency
|
87
|
+
name: sinatra
|
88
|
+
prerelease: false
|
89
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
90
|
+
none: false
|
91
|
+
requirements:
|
92
|
+
- - "="
|
93
|
+
- !ruby/object:Gem::Version
|
94
|
+
hash: 23
|
95
|
+
segments:
|
96
|
+
- 1
|
97
|
+
- 1
|
98
|
+
- 2
|
99
|
+
version: 1.1.2
|
100
|
+
type: :runtime
|
101
|
+
version_requirements: *id005
|
102
|
+
- !ruby/object:Gem::Dependency
|
103
|
+
name: aruba
|
104
|
+
prerelease: false
|
105
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
58
106
|
none: false
|
59
107
|
requirements:
|
60
108
|
- - "="
|
@@ -66,7 +114,7 @@ dependencies:
|
|
66
114
|
- 6
|
67
115
|
version: 0.2.6
|
68
116
|
type: :development
|
69
|
-
version_requirements: *
|
117
|
+
version_requirements: *id006
|
70
118
|
description: Clearance-based Rails engine for Software as a Service (Saas) that provides account and project management
|
71
119
|
email: support@thoughtbot.com
|
72
120
|
executables: []
|
@@ -79,14 +127,16 @@ files:
|
|
79
127
|
- Gemfile
|
80
128
|
- Gemfile.lock
|
81
129
|
- Rakefile
|
82
|
-
- README
|
130
|
+
- README.md
|
83
131
|
- config/routes.rb
|
84
132
|
- app/controllers/accounts_controller.rb
|
133
|
+
- app/controllers/billings_controller.rb
|
85
134
|
- app/controllers/invitations_controller.rb
|
86
135
|
- app/controllers/memberships_controller.rb
|
87
136
|
- app/controllers/plans_controller.rb
|
88
137
|
- app/controllers/profiles_controller.rb
|
89
138
|
- app/models/invitation.rb
|
139
|
+
- app/models/limit.rb
|
90
140
|
- app/models/membership.rb
|
91
141
|
- app/models/permission.rb
|
92
142
|
- app/models/signup.rb
|
@@ -97,11 +147,16 @@ files:
|
|
97
147
|
- app/views/accounts/edit.html.erb
|
98
148
|
- app/views/accounts/index.html.erb
|
99
149
|
- app/views/accounts/new.html.erb
|
150
|
+
- app/views/billings/_form.html.erb
|
151
|
+
- app/views/billings/edit.html.erb
|
152
|
+
- app/views/billings/show.html.erb
|
100
153
|
- app/views/invitation_mailer/invitation.text.erb
|
101
154
|
- app/views/invitations/new.html.erb
|
102
155
|
- app/views/invitations/show.html.erb
|
103
156
|
- app/views/memberships/edit.html.erb
|
104
157
|
- app/views/memberships/index.html.erb
|
158
|
+
- app/views/plans/_plan.html.erb
|
159
|
+
- app/views/plans/edit.html.erb
|
105
160
|
- app/views/plans/index.html.erb
|
106
161
|
- app/views/profiles/_inputs.html.erb
|
107
162
|
- app/views/profiles/edit.html.erb
|
@@ -114,12 +169,15 @@ files:
|
|
114
169
|
- lib/generators/saucy/base.rb
|
115
170
|
- lib/generators/saucy/features/features_generator.rb
|
116
171
|
- lib/generators/saucy/features/templates/factories.rb
|
172
|
+
- lib/generators/saucy/features/templates/step_definitions/braintree_steps.rb
|
117
173
|
- lib/generators/saucy/features/templates/step_definitions/email_steps.rb
|
118
174
|
- lib/generators/saucy/features/templates/step_definitions/factory_girl_steps.rb
|
119
175
|
- lib/generators/saucy/features/templates/step_definitions/html_steps.rb
|
176
|
+
- lib/generators/saucy/features/templates/step_definitions/plan_steps.rb
|
120
177
|
- lib/generators/saucy/features/templates/step_definitions/project_steps.rb
|
121
178
|
- lib/generators/saucy/features/templates/step_definitions/session_steps.rb
|
122
179
|
- lib/generators/saucy/features/templates/step_definitions/user_steps.rb
|
180
|
+
- lib/generators/saucy/features/templates/support/braintree.rb
|
123
181
|
- lib/generators/saucy/install/install_generator.rb
|
124
182
|
- lib/generators/saucy/install/templates/controllers/projects_controller.rb
|
125
183
|
- lib/generators/saucy/install/templates/create_saucy_tables.rb
|
@@ -127,9 +185,12 @@ files:
|
|
127
185
|
- lib/generators/saucy/install/templates/models/invitation_mailer.rb
|
128
186
|
- lib/generators/saucy/install/templates/models/plan.rb
|
129
187
|
- lib/generators/saucy/install/templates/models/project.rb
|
188
|
+
- lib/generators/saucy/specs/specs_generator.rb
|
189
|
+
- lib/generators/saucy/specs/templates/support/braintree.rb
|
130
190
|
- lib/generators/saucy/views/views_generator.rb
|
131
191
|
- lib/saucy/account.rb
|
132
192
|
- lib/saucy/account_authorization.rb
|
193
|
+
- lib/saucy/braintree.rb
|
133
194
|
- lib/saucy/configuration.rb
|
134
195
|
- lib/saucy/engine.rb
|
135
196
|
- lib/saucy/layouts.rb
|
@@ -149,10 +210,12 @@ files:
|
|
149
210
|
- lib/generators/saucy/features/templates/features/edit_project_permissions.feature
|
150
211
|
- lib/generators/saucy/features/templates/features/edit_user_permissions.feature
|
151
212
|
- lib/generators/saucy/features/templates/features/manage_account.feature
|
213
|
+
- lib/generators/saucy/features/templates/features/manage_billing.feature
|
152
214
|
- lib/generators/saucy/features/templates/features/manage_projects.feature
|
153
215
|
- lib/generators/saucy/features/templates/features/manage_users.feature
|
154
216
|
- lib/generators/saucy/features/templates/features/new_account.feature
|
155
217
|
- lib/generators/saucy/features/templates/features/sign_up.feature
|
218
|
+
- lib/generators/saucy/features/templates/features/sign_up_paid.feature
|
156
219
|
- lib/generators/saucy/features/templates/README
|
157
220
|
- spec/controllers/accounts_controller_spec.rb
|
158
221
|
- spec/controllers/application_controller_spec.rb
|
@@ -164,8 +227,10 @@ files:
|
|
164
227
|
- spec/layouts_spec.rb
|
165
228
|
- spec/models/account_spec.rb
|
166
229
|
- spec/models/invitation_spec.rb
|
230
|
+
- spec/models/limit_spec.rb
|
167
231
|
- spec/models/membership_spec.rb
|
168
232
|
- spec/models/permission_spec.rb
|
233
|
+
- spec/models/plan_spec.rb
|
169
234
|
- spec/models/project_spec.rb
|
170
235
|
- spec/models/signup_spec.rb
|
171
236
|
- spec/models/user_spec.rb
|
@@ -175,6 +240,7 @@ files:
|
|
175
240
|
- spec/spec_helper.rb
|
176
241
|
- spec/support/authentication_helpers.rb
|
177
242
|
- spec/support/authorization_helpers.rb
|
243
|
+
- spec/support/braintree.rb
|
178
244
|
- spec/support/clearance_matchers.rb
|
179
245
|
- spec/views/accounts/_account.html.erb_spec.rb
|
180
246
|
has_rdoc: true
|
data/README
DELETED
@@ -1,38 +0,0 @@
|
|
1
|
-
script/rails g saucy:install
|
2
|
-
script/rails g saucy:features
|
3
|
-
script/rails g saucy:views
|
4
|
-
|
5
|
-
|
6
|
-
To change the layout for a controller inside of saucy, add a line like this to
|
7
|
-
your config/application.rb:
|
8
|
-
|
9
|
-
config.saucy.layouts.accounts.index = "custom"
|
10
|
-
|
11
|
-
Your layout should yield(:header) in order to get the headers from saucy views.
|
12
|
-
|
13
|
-
|
14
|
-
To extend the ProjectsController:
|
15
|
-
|
16
|
-
class ProjectsController < ApplicationController
|
17
|
-
include Saucy::ProjectsController
|
18
|
-
|
19
|
-
def edit
|
20
|
-
super
|
21
|
-
@deleters = @project.deleters
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
|
26
|
-
Plans need to exist for users to sign up for. In db/seeds.rb:
|
27
|
-
|
28
|
-
%w(free expensive mega-expensive).each do |plan_name|
|
29
|
-
Plan.find_or_create_by_name(plan_name)
|
30
|
-
end
|
31
|
-
|
32
|
-
Then run: rake db:seed
|
33
|
-
|
34
|
-
To use the seed data in your Cucumber:
|
35
|
-
|
36
|
-
features/support/seed.rb:
|
37
|
-
|
38
|
-
require Rails.root.join('db','seeds')
|