saucy 0.15.2 → 0.16.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (134) hide show
  1. data/.gitignore +2 -0
  2. data/CHANGELOG.md +3 -7
  3. data/Gemfile +1 -10
  4. data/Gemfile.lock +42 -3
  5. data/README.md +5 -0
  6. data/Rakefile +12 -3
  7. data/app/controllers/accounts_controller.rb +2 -1
  8. data/app/mailers/billing_mailer.rb +8 -0
  9. data/app/models/canceled_account.rb +12 -7
  10. data/app/views/accounts/_projects.html.erb +1 -1
  11. data/app/views/billing_mailer/cancelation_notification.text.erb +3 -0
  12. data/app/views/invitation_mailer/invitation.text.erb +1 -1
  13. data/app/views/invitations/show.html.erb +1 -1
  14. data/app/views/memberships/edit.html.erb +2 -2
  15. data/app/views/memberships/index.html.erb +1 -1
  16. data/app/views/projects/_form.html.erb +5 -5
  17. data/app/views/projects/edit.html.erb +2 -2
  18. data/app/views/projects/index.html.erb +3 -3
  19. data/app/views/projects/new.html.erb +1 -1
  20. data/app/views/shared/_project_dropdown.html.erb +3 -3
  21. data/config/routes.rb +2 -6
  22. data/cucumber.yml +1 -0
  23. data/{lib/generators/saucy/features/templates/features → features/engine}/admin_reporting.feature +0 -0
  24. data/{lib/generators/saucy/features/templates/features → features/engine}/edit_profile.feature +0 -0
  25. data/{lib/generators/saucy/features/templates/features → features/engine}/edit_project_permissions.feature +0 -0
  26. data/{lib/generators/saucy/features/templates/features → features/engine}/edit_user_permissions.feature +0 -0
  27. data/{lib/generators/saucy/features/templates/features → features/engine}/manage_account.feature +0 -0
  28. data/{lib/generators/saucy/features/templates/features → features/engine}/manage_billing.feature +1 -1
  29. data/{lib/generators/saucy/features/templates/features → features/engine}/manage_plan.feature +0 -0
  30. data/{lib/generators/saucy/features/templates/features → features/engine}/manage_projects.feature +0 -0
  31. data/{lib/generators/saucy/features/templates/features → features/engine}/manage_users.feature +0 -0
  32. data/{lib/generators/saucy/features/templates/features → features/engine}/new_account.feature +0 -0
  33. data/{lib/generators/saucy/features/templates/features → features/engine}/project_dropdown.feature +0 -0
  34. data/{lib/generators/saucy/features/templates/features → features/engine}/sign_up.feature +0 -0
  35. data/{lib/generators/saucy/features/templates/features → features/engine}/sign_up_coupon.feature +0 -0
  36. data/{lib/generators/saucy/features/templates/features → features/engine}/sign_up_paid.feature +0 -0
  37. data/{lib/generators/saucy/features/templates/features → features/engine}/trial_plans.feature +0 -0
  38. data/features/integration/run_features.feature +46 -0
  39. data/features/step_definitions/clearance_steps.rb +123 -0
  40. data/{lib/generators/saucy/features/templates/step_definitions → features/step_definitions/engine}/account_steps.rb +0 -0
  41. data/features/step_definitions/engine/braintree_steps.rb +24 -0
  42. data/{lib/generators/saucy/features/templates/step_definitions → features/step_definitions/engine}/country_steps.rb +0 -0
  43. data/{lib/generators/saucy/features/templates/step_definitions → features/step_definitions/engine}/cron_steps.rb +3 -5
  44. data/{lib/generators/saucy/features/templates/step_definitions → features/step_definitions/engine}/email_steps.rb +0 -0
  45. data/{lib/generators/saucy/features/templates/step_definitions → features/step_definitions/engine}/factory_girl_steps.rb +0 -0
  46. data/{lib/generators/saucy/features/templates/step_definitions → features/step_definitions/engine}/html_steps.rb +0 -0
  47. data/{lib/generators/saucy/features/templates/step_definitions → features/step_definitions/engine}/plan_steps.rb +0 -0
  48. data/{lib/generators/saucy/features/templates/step_definitions → features/step_definitions/engine}/project_steps.rb +0 -0
  49. data/{lib/generators/saucy/features/templates/step_definitions → features/step_definitions/engine}/session_steps.rb +0 -0
  50. data/{lib/generators/saucy/features/templates/step_definitions → features/step_definitions/engine}/user_steps.rb +0 -0
  51. data/features/step_definitions/rails_steps.rb +26 -8
  52. data/features/step_definitions/saucy_steps.rb +5 -0
  53. data/features/step_definitions/web_steps.rb +253 -0
  54. data/features/support/engine/braintree.rb +5 -0
  55. data/features/support/env.rb +18 -0
  56. data/features/support/factory_girl.rb +2 -0
  57. data/features/support/paths.rb +68 -0
  58. data/features/support/rails.rb +4 -0
  59. data/features/support/selectors.rb +11 -0
  60. data/lib/generators/saucy/features/features_generator.rb +7 -3
  61. data/lib/saucy/account.rb +55 -57
  62. data/lib/saucy/account_authorization.rb +39 -42
  63. data/lib/saucy/plan.rb +14 -16
  64. data/lib/saucy/project.rb +42 -44
  65. data/lib/saucy/projects_controller.rb +53 -55
  66. data/lib/saucy/subscription.rb +189 -191
  67. data/lib/saucy/user.rb +5 -7
  68. data/lib/saucy/version.rb +1 -1
  69. data/saucy.gemspec +21 -5
  70. data/spec/controllers/accounts_controller_spec.rb +2 -1
  71. data/spec/controllers/projects_controller_spec.rb +1 -1
  72. data/spec/dummy/Rakefile +7 -0
  73. data/spec/dummy/app/assets/javascripts/application.js +9 -0
  74. data/spec/dummy/app/assets/stylesheets/application.css +7 -0
  75. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  76. data/spec/dummy/app/controllers/homes_controller.rb +2 -0
  77. data/spec/dummy/app/controllers/projects_controller.rb +3 -0
  78. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  79. data/spec/dummy/app/mailers/.gitkeep +0 -0
  80. data/spec/dummy/app/models/.gitkeep +0 -0
  81. data/spec/dummy/app/models/account.rb +3 -0
  82. data/spec/dummy/app/models/plan.rb +3 -0
  83. data/spec/dummy/app/models/project.rb +3 -0
  84. data/spec/dummy/app/models/user.rb +4 -0
  85. data/spec/dummy/app/views/homes/show.html.erb +1 -0
  86. data/spec/dummy/app/views/layouts/application.html.erb +24 -0
  87. data/spec/dummy/config.ru +4 -0
  88. data/spec/dummy/config/application.rb +48 -0
  89. data/spec/dummy/config/boot.rb +10 -0
  90. data/spec/dummy/config/database.yml +25 -0
  91. data/spec/dummy/config/environment.rb +5 -0
  92. data/spec/dummy/config/environments/development.rb +30 -0
  93. data/spec/dummy/config/environments/production.rb +60 -0
  94. data/spec/dummy/config/environments/test.rb +42 -0
  95. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  96. data/spec/dummy/config/initializers/clearance.rb +3 -0
  97. data/spec/dummy/config/initializers/inflections.rb +10 -0
  98. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  99. data/spec/dummy/config/initializers/secret_token.rb +7 -0
  100. data/spec/dummy/config/initializers/session_store.rb +8 -0
  101. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  102. data/spec/dummy/config/locales/en.yml +5 -0
  103. data/spec/dummy/config/routes.rb +59 -0
  104. data/spec/dummy/db/migrate/20120201000751_create_diesel_clearance_users.rb +19 -0
  105. data/spec/dummy/db/migrate/20120201001546_create_saucy_tables.rb +122 -0
  106. data/spec/dummy/db/migrate/20120201001548_create_canceled_accounts.rb +14 -0
  107. data/spec/dummy/lib/assets/.gitkeep +0 -0
  108. data/spec/dummy/log/.gitkeep +0 -0
  109. data/spec/dummy/public/404.html +26 -0
  110. data/spec/dummy/public/422.html +26 -0
  111. data/spec/dummy/public/500.html +26 -0
  112. data/spec/dummy/public/favicon.ico +0 -0
  113. data/spec/dummy/script/rails +6 -0
  114. data/spec/mailers/billing_mailer_spec.rb +12 -2
  115. data/spec/models/canceled_account_spec.rb +8 -6
  116. data/spec/models/subscription_spec.rb +47 -53
  117. data/spec/spec_helper.rb +8 -11
  118. data/spec/support/braintree.rb +2 -4
  119. data/spec/support/factories.rb +1 -0
  120. metadata +447 -125
  121. data/db/migrate/20120206155222_add_subscription_token_to_canceled_accounts.rb +0 -5
  122. data/features/run_features.feature +0 -84
  123. data/lib/generators/saucy/features/templates/step_definitions/braintree_steps.rb +0 -25
  124. data/lib/generators/saucy/features/templates/support/braintree.rb +0 -5
  125. data/lib/generators/saucy/specs/specs_generator.rb +0 -20
  126. data/lib/generators/saucy/specs/templates/support/braintree.rb +0 -5
  127. data/lib/saucy/fake_braintree.rb +0 -134
  128. data/lib/saucy/routing_extensions.rb +0 -116
  129. data/spec/dummy/db/migrate/20120206155222_add_subscription_token_to_canceled_accounts.rb +0 -5
  130. data/spec/environment.rb +0 -98
  131. data/spec/route_extensions_spec.rb +0 -51
  132. data/spec/scaffold/config/database.yml +0 -6
  133. data/spec/scaffold/config/routes.rb +0 -5
  134. data/spec/scaffold/views/layouts/application.html.erb +0 -1
@@ -1,19 +1,16 @@
1
- # This file is copied to spec/ when you run 'rails generate rspec:install'
2
- ENV["RAILS_ENV"] ||= 'test'
3
-
4
- if File.exist?("config/environment.rb")
5
- require "./config/environment"
6
- else
7
- require File.expand_path("../environment", __FILE__)
8
- end
1
+ ENV["RAILS_ENV"] = 'test'
2
+ ENV["RAILS_ROOT"] = File.expand_path("../dummy", __FILE__)
9
3
 
4
+ require File.expand_path("../dummy/config/environment.rb", __FILE__)
10
5
  require 'rspec/rails'
11
6
  require 'shoulda/matchers'
12
7
  require 'timecop'
8
+ require 'factory_girl'
9
+ require 'bourne'
10
+
11
+ ActiveRecord::Migrator.migrate File.expand_path("../dummy/db/migrate", __FILE__)
13
12
 
14
- # Requires supporting ruby files with custom matchers and macros, etc,
15
- # in spec/support/ and its subdirectories.
16
- Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
13
+ Dir["spec/{support,step_definitions}/**/*.rb"].each { |f| require File.expand_path(f) }
17
14
 
18
15
  RSpec.configure do |config|
19
16
  # == Mock Framework
@@ -1,7 +1,5 @@
1
- require 'saucy/fake_braintree'
2
-
3
- Braintree::Configuration.logger = Logger.new("tmp/log")
1
+ require 'fake_braintree'
4
2
 
5
3
  RSpec.configure do |config|
6
- config.after(:each) { FakeBraintree.clear! }
4
+ config.before(:each) { FakeBraintree.clear! }
7
5
  end
@@ -0,0 +1 @@
1
+ require "./lib/generators/saucy/features/templates/factories"
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: 39
4
+ hash: 95
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
- - 15
9
- - 2
10
- version: 0.15.2
8
+ - 16
9
+ - 0
10
+ version: 0.16.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - thoughtbot, inc.
@@ -20,10 +20,12 @@ autorequire:
20
20
  bindir: bin
21
21
  cert_chain: []
22
22
 
23
- date: 2012-02-07 00:00:00 Z
23
+ date: 2012-02-20 00:00:00 Z
24
24
  dependencies:
25
25
  - !ruby/object:Gem::Dependency
26
- version_requirements: &id001 !ruby/object:Gem::Requirement
26
+ name: clearance
27
+ prerelease: false
28
+ requirement: &id001 !ruby/object:Gem::Requirement
27
29
  none: false
28
30
  requirements:
29
31
  - - ~>
@@ -34,12 +36,12 @@ dependencies:
34
36
  - 14
35
37
  - 0
36
38
  version: 0.14.0
37
- prerelease: false
38
- requirement: *id001
39
- name: clearance
40
39
  type: :runtime
40
+ version_requirements: *id001
41
41
  - !ruby/object:Gem::Dependency
42
- version_requirements: &id002 !ruby/object:Gem::Requirement
42
+ name: formtastic
43
+ prerelease: false
44
+ requirement: &id002 !ruby/object:Gem::Requirement
43
45
  none: false
44
46
  requirements:
45
47
  - - ~>
@@ -50,12 +52,12 @@ dependencies:
50
52
  - 2
51
53
  - 4
52
54
  version: 1.2.4
53
- prerelease: false
54
- requirement: *id002
55
- name: formtastic
56
55
  type: :runtime
56
+ version_requirements: *id002
57
57
  - !ruby/object:Gem::Dependency
58
- version_requirements: &id003 !ruby/object:Gem::Requirement
58
+ name: railties
59
+ prerelease: false
60
+ requirement: &id003 !ruby/object:Gem::Requirement
59
61
  none: false
60
62
  requirements:
61
63
  - - ">="
@@ -66,12 +68,12 @@ dependencies:
66
68
  - 0
67
69
  - 3
68
70
  version: 3.0.3
69
- prerelease: false
70
- requirement: *id003
71
- name: railties
72
71
  type: :runtime
72
+ version_requirements: *id003
73
73
  - !ruby/object:Gem::Dependency
74
- version_requirements: &id004 !ruby/object:Gem::Requirement
74
+ name: braintree
75
+ prerelease: false
76
+ requirement: &id004 !ruby/object:Gem::Requirement
75
77
  none: false
76
78
  requirements:
77
79
  - - ">="
@@ -82,12 +84,12 @@ dependencies:
82
84
  - 6
83
85
  - 2
84
86
  version: 2.6.2
85
- prerelease: false
86
- requirement: *id004
87
- name: braintree
88
87
  type: :runtime
88
+ version_requirements: *id004
89
89
  - !ruby/object:Gem::Dependency
90
- version_requirements: &id005 !ruby/object:Gem::Requirement
90
+ name: sham_rack
91
+ prerelease: false
92
+ requirement: &id005 !ruby/object:Gem::Requirement
91
93
  none: false
92
94
  requirements:
93
95
  - - "="
@@ -98,12 +100,12 @@ dependencies:
98
100
  - 3
99
101
  - 3
100
102
  version: 1.3.3
101
- prerelease: false
102
- requirement: *id005
103
- name: sham_rack
104
103
  type: :runtime
104
+ version_requirements: *id005
105
105
  - !ruby/object:Gem::Dependency
106
- version_requirements: &id006 !ruby/object:Gem::Requirement
106
+ name: sinatra
107
+ prerelease: false
108
+ requirement: &id006 !ruby/object:Gem::Requirement
107
109
  none: false
108
110
  requirements:
109
111
  - - ">="
@@ -114,12 +116,12 @@ dependencies:
114
116
  - 1
115
117
  - 2
116
118
  version: 1.1.2
117
- prerelease: false
118
- requirement: *id006
119
- name: sinatra
120
119
  type: :runtime
120
+ version_requirements: *id006
121
121
  - !ruby/object:Gem::Dependency
122
- version_requirements: &id007 !ruby/object:Gem::Requirement
122
+ name: airbrake
123
+ prerelease: false
124
+ requirement: &id007 !ruby/object:Gem::Requirement
123
125
  none: false
124
126
  requirements:
125
127
  - - ~>
@@ -130,12 +132,12 @@ dependencies:
130
132
  - 0
131
133
  - 4
132
134
  version: 3.0.4
133
- prerelease: false
134
- requirement: *id007
135
- name: airbrake
136
135
  type: :runtime
136
+ version_requirements: *id007
137
137
  - !ruby/object:Gem::Dependency
138
- version_requirements: &id008 !ruby/object:Gem::Requirement
138
+ name: aruba
139
+ prerelease: false
140
+ requirement: &id008 !ruby/object:Gem::Requirement
139
141
  none: false
140
142
  requirements:
141
143
  - - ~>
@@ -145,28 +147,86 @@ dependencies:
145
147
  - 0
146
148
  - 4
147
149
  version: "0.4"
150
+ type: :development
151
+ version_requirements: *id008
152
+ - !ruby/object:Gem::Dependency
153
+ name: bourne
148
154
  prerelease: false
149
- requirement: *id008
150
- name: aruba
155
+ requirement: &id009 !ruby/object:Gem::Requirement
156
+ none: false
157
+ requirements:
158
+ - - ">="
159
+ - !ruby/object:Gem::Version
160
+ hash: 3
161
+ segments:
162
+ - 0
163
+ version: "0"
151
164
  type: :development
165
+ version_requirements: *id009
152
166
  - !ruby/object:Gem::Dependency
153
- version_requirements: &id009 !ruby/object:Gem::Requirement
167
+ name: capybara
168
+ prerelease: false
169
+ requirement: &id010 !ruby/object:Gem::Requirement
170
+ none: false
171
+ requirements:
172
+ - - ">="
173
+ - !ruby/object:Gem::Version
174
+ hash: 3
175
+ segments:
176
+ - 0
177
+ version: "0"
178
+ type: :development
179
+ version_requirements: *id010
180
+ - !ruby/object:Gem::Dependency
181
+ name: cucumber
182
+ prerelease: false
183
+ requirement: &id011 !ruby/object:Gem::Requirement
154
184
  none: false
155
185
  requirements:
156
186
  - - ~>
157
187
  - !ruby/object:Gem::Version
158
- hash: 23
188
+ hash: 27
159
189
  segments:
160
190
  - 1
161
191
  - 0
192
+ - 6
193
+ version: 1.0.6
194
+ type: :development
195
+ version_requirements: *id011
196
+ - !ruby/object:Gem::Dependency
197
+ name: cucumber-rails
198
+ prerelease: false
199
+ requirement: &id012 !ruby/object:Gem::Requirement
200
+ none: false
201
+ requirements:
202
+ - - ~>
203
+ - !ruby/object:Gem::Version
204
+ hash: 27
205
+ segments:
206
+ - 1
162
207
  - 0
163
- version: 1.0.0
208
+ - 6
209
+ version: 1.0.6
210
+ type: :development
211
+ version_requirements: *id012
212
+ - !ruby/object:Gem::Dependency
213
+ name: database_cleaner
164
214
  prerelease: false
165
- requirement: *id009
166
- name: shoulda-matchers
215
+ requirement: &id013 !ruby/object:Gem::Requirement
216
+ none: false
217
+ requirements:
218
+ - - ">="
219
+ - !ruby/object:Gem::Version
220
+ hash: 3
221
+ segments:
222
+ - 0
223
+ version: "0"
167
224
  type: :development
225
+ version_requirements: *id013
168
226
  - !ruby/object:Gem::Dependency
169
- version_requirements: &id010 !ruby/object:Gem::Requirement
227
+ name: dynamic_form
228
+ prerelease: false
229
+ requirement: &id014 !ruby/object:Gem::Requirement
170
230
  none: false
171
231
  requirements:
172
232
  - - ">="
@@ -175,12 +235,26 @@ dependencies:
175
235
  segments:
176
236
  - 0
177
237
  version: "0"
238
+ type: :development
239
+ version_requirements: *id014
240
+ - !ruby/object:Gem::Dependency
241
+ name: factory_girl
178
242
  prerelease: false
179
- requirement: *id010
180
- name: bourne
243
+ requirement: &id015 !ruby/object:Gem::Requirement
244
+ none: false
245
+ requirements:
246
+ - - ">="
247
+ - !ruby/object:Gem::Version
248
+ hash: 3
249
+ segments:
250
+ - 0
251
+ version: "0"
181
252
  type: :development
253
+ version_requirements: *id015
182
254
  - !ruby/object:Gem::Dependency
183
- version_requirements: &id011 !ruby/object:Gem::Requirement
255
+ name: factory_girl_rails
256
+ prerelease: false
257
+ requirement: &id016 !ruby/object:Gem::Requirement
184
258
  none: false
185
259
  requirements:
186
260
  - - ">="
@@ -189,12 +263,28 @@ dependencies:
189
263
  segments:
190
264
  - 0
191
265
  version: "0"
266
+ type: :development
267
+ version_requirements: *id016
268
+ - !ruby/object:Gem::Dependency
269
+ name: formtastic
192
270
  prerelease: false
193
- requirement: *id011
194
- name: sqlite3
271
+ requirement: &id017 !ruby/object:Gem::Requirement
272
+ none: false
273
+ requirements:
274
+ - - ~>
275
+ - !ruby/object:Gem::Version
276
+ hash: 23
277
+ segments:
278
+ - 1
279
+ - 2
280
+ - 4
281
+ version: 1.2.4
195
282
  type: :development
283
+ version_requirements: *id017
196
284
  - !ruby/object:Gem::Dependency
197
- version_requirements: &id012 !ruby/object:Gem::Requirement
285
+ name: jquery-rails
286
+ prerelease: false
287
+ requirement: &id018 !ruby/object:Gem::Requirement
198
288
  none: false
199
289
  requirements:
200
290
  - - ">="
@@ -203,12 +293,12 @@ dependencies:
203
293
  segments:
204
294
  - 0
205
295
  version: "0"
206
- prerelease: false
207
- requirement: *id012
208
- name: factory_girl
209
296
  type: :development
297
+ version_requirements: *id018
210
298
  - !ruby/object:Gem::Dependency
211
- version_requirements: &id013 !ruby/object:Gem::Requirement
299
+ name: launchy
300
+ prerelease: false
301
+ requirement: &id019 !ruby/object:Gem::Requirement
212
302
  none: false
213
303
  requirements:
214
304
  - - ">="
@@ -217,12 +307,28 @@ dependencies:
217
307
  segments:
218
308
  - 0
219
309
  version: "0"
310
+ type: :development
311
+ version_requirements: *id019
312
+ - !ruby/object:Gem::Dependency
313
+ name: rails
220
314
  prerelease: false
221
- requirement: *id013
222
- name: timecop
315
+ requirement: &id020 !ruby/object:Gem::Requirement
316
+ none: false
317
+ requirements:
318
+ - - ">="
319
+ - !ruby/object:Gem::Version
320
+ hash: 1
321
+ segments:
322
+ - 3
323
+ - 0
324
+ - 3
325
+ version: 3.0.3
223
326
  type: :development
327
+ version_requirements: *id020
224
328
  - !ruby/object:Gem::Dependency
225
- version_requirements: &id014 !ruby/object:Gem::Requirement
329
+ name: rake
330
+ prerelease: false
331
+ requirement: &id021 !ruby/object:Gem::Requirement
226
332
  none: false
227
333
  requirements:
228
334
  - - ">="
@@ -231,28 +337,58 @@ dependencies:
231
337
  segments:
232
338
  - 0
233
339
  version: "0"
340
+ type: :development
341
+ version_requirements: *id021
342
+ - !ruby/object:Gem::Dependency
343
+ name: rspec-rails
234
344
  prerelease: false
235
- requirement: *id014
236
- name: rake
345
+ requirement: &id022 !ruby/object:Gem::Requirement
346
+ none: false
347
+ requirements:
348
+ - - ">="
349
+ - !ruby/object:Gem::Version
350
+ hash: 3
351
+ segments:
352
+ - 0
353
+ version: "0"
237
354
  type: :development
355
+ version_requirements: *id022
238
356
  - !ruby/object:Gem::Dependency
239
- version_requirements: &id015 !ruby/object:Gem::Requirement
357
+ name: selenium-webdriver
358
+ prerelease: false
359
+ requirement: &id023 !ruby/object:Gem::Requirement
240
360
  none: false
241
361
  requirements:
242
362
  - - ~>
243
363
  - !ruby/object:Gem::Version
244
- hash: 27
364
+ hash: 79
245
365
  segments:
246
- - 1
366
+ - 2
367
+ - 16
247
368
  - 0
248
- - 6
249
- version: 1.0.6
369
+ version: 2.16.0
370
+ type: :development
371
+ version_requirements: *id023
372
+ - !ruby/object:Gem::Dependency
373
+ name: shoulda-matchers
250
374
  prerelease: false
251
- requirement: *id015
252
- name: cucumber
375
+ requirement: &id024 !ruby/object:Gem::Requirement
376
+ none: false
377
+ requirements:
378
+ - - ~>
379
+ - !ruby/object:Gem::Version
380
+ hash: 23
381
+ segments:
382
+ - 1
383
+ - 0
384
+ - 0
385
+ version: 1.0.0
253
386
  type: :development
387
+ version_requirements: *id024
254
388
  - !ruby/object:Gem::Dependency
255
- version_requirements: &id016 !ruby/object:Gem::Requirement
389
+ name: sqlite3
390
+ prerelease: false
391
+ requirement: &id025 !ruby/object:Gem::Requirement
256
392
  none: false
257
393
  requirements:
258
394
  - - ">="
@@ -261,40 +397,116 @@ dependencies:
261
397
  segments:
262
398
  - 0
263
399
  version: "0"
400
+ type: :development
401
+ version_requirements: *id025
402
+ - !ruby/object:Gem::Dependency
403
+ name: thin
264
404
  prerelease: false
265
- requirement: *id016
266
- name: rspec-rails
405
+ requirement: &id026 !ruby/object:Gem::Requirement
406
+ none: false
407
+ requirements:
408
+ - - ">="
409
+ - !ruby/object:Gem::Version
410
+ hash: 3
411
+ segments:
412
+ - 0
413
+ version: "0"
267
414
  type: :development
415
+ version_requirements: *id026
268
416
  - !ruby/object:Gem::Dependency
269
- version_requirements: &id017 !ruby/object:Gem::Requirement
417
+ name: timecop
418
+ prerelease: false
419
+ requirement: &id027 !ruby/object:Gem::Requirement
270
420
  none: false
271
421
  requirements:
272
422
  - - ">="
273
423
  - !ruby/object:Gem::Version
274
- hash: 1
424
+ hash: 3
275
425
  segments:
276
- - 3
277
426
  - 0
427
+ version: "0"
428
+ type: :development
429
+ version_requirements: *id027
430
+ - !ruby/object:Gem::Dependency
431
+ name: fake_braintree
432
+ prerelease: false
433
+ requirement: &id028 !ruby/object:Gem::Requirement
434
+ none: false
435
+ requirements:
436
+ - - ~>
437
+ - !ruby/object:Gem::Version
438
+ hash: 23
439
+ segments:
440
+ - 0
441
+ - 2
442
+ - 0
443
+ version: 0.2.0
444
+ type: :development
445
+ version_requirements: *id028
446
+ - !ruby/object:Gem::Dependency
447
+ name: sass-rails
448
+ prerelease: false
449
+ requirement: &id029 !ruby/object:Gem::Requirement
450
+ none: false
451
+ requirements:
452
+ - - ~>
453
+ - !ruby/object:Gem::Version
454
+ hash: 9
455
+ segments:
278
456
  - 3
279
- version: 3.0.3
457
+ - 1
458
+ - 5
459
+ version: 3.1.5
460
+ type: :development
461
+ version_requirements: *id029
462
+ - !ruby/object:Gem::Dependency
463
+ name: coffee-rails
280
464
  prerelease: false
281
- requirement: *id017
282
- name: rails
465
+ requirement: &id030 !ruby/object:Gem::Requirement
466
+ none: false
467
+ requirements:
468
+ - - ~>
469
+ - !ruby/object:Gem::Version
470
+ hash: 1
471
+ segments:
472
+ - 3
473
+ - 1
474
+ - 1
475
+ version: 3.1.1
283
476
  type: :development
477
+ version_requirements: *id030
284
478
  - !ruby/object:Gem::Dependency
285
- version_requirements: &id018 !ruby/object:Gem::Requirement
479
+ name: uglifier
480
+ prerelease: false
481
+ requirement: &id031 !ruby/object:Gem::Requirement
286
482
  none: false
287
483
  requirements:
288
484
  - - ">="
289
485
  - !ruby/object:Gem::Version
290
- hash: 3
486
+ hash: 17
291
487
  segments:
488
+ - 1
292
489
  - 0
293
- version: "0"
490
+ - 3
491
+ version: 1.0.3
492
+ type: :development
493
+ version_requirements: *id031
494
+ - !ruby/object:Gem::Dependency
495
+ name: turn
294
496
  prerelease: false
295
- requirement: *id018
296
- name: thin
497
+ requirement: &id032 !ruby/object:Gem::Requirement
498
+ none: false
499
+ requirements:
500
+ - - "="
501
+ - !ruby/object:Gem::Version
502
+ hash: 59
503
+ segments:
504
+ - 0
505
+ - 8
506
+ - 2
507
+ version: 0.8.2
297
508
  type: :development
509
+ version_requirements: *id032
298
510
  description: Clearance-based Rails engine for Software as a Service (Saas) that provides account and project management
299
511
  email: support@thoughtbot.com
300
512
  executables: []
@@ -347,6 +559,7 @@ files:
347
559
  - app/views/admin/users/_user.html.erb
348
560
  - app/views/admin/users/index.html.erb
349
561
  - app/views/admin/users/show.html.erb
562
+ - app/views/billing_mailer/cancelation_notification.text.erb
350
563
  - app/views/billing_mailer/completed_trial.text.erb
351
564
  - app/views/billing_mailer/expiring_trial.text.erb
352
565
  - app/views/billing_mailer/new_unactivated.text.erb
@@ -380,53 +593,56 @@ files:
380
593
  - app/views/shared/_saucy_javascript.html.erb
381
594
  - config/locales/en.yml
382
595
  - config/routes.rb
596
+ - cucumber.yml
383
597
  - db/migrate/20111014142613_create_canceled_accounts.rb
384
- - db/migrate/20120206155222_add_subscription_token_to_canceled_accounts.rb
385
- - features/run_features.feature
598
+ - features/engine/admin_reporting.feature
599
+ - features/engine/edit_profile.feature
600
+ - features/engine/edit_project_permissions.feature
601
+ - features/engine/edit_user_permissions.feature
602
+ - features/engine/manage_account.feature
603
+ - features/engine/manage_billing.feature
604
+ - features/engine/manage_plan.feature
605
+ - features/engine/manage_projects.feature
606
+ - features/engine/manage_users.feature
607
+ - features/engine/new_account.feature
608
+ - features/engine/project_dropdown.feature
609
+ - features/engine/sign_up.feature
610
+ - features/engine/sign_up_coupon.feature
611
+ - features/engine/sign_up_paid.feature
612
+ - features/engine/trial_plans.feature
613
+ - features/integration/run_features.feature
386
614
  - features/step_definitions/clearance_steps.rb
615
+ - features/step_definitions/engine/account_steps.rb
616
+ - features/step_definitions/engine/braintree_steps.rb
617
+ - features/step_definitions/engine/country_steps.rb
618
+ - features/step_definitions/engine/cron_steps.rb
619
+ - features/step_definitions/engine/email_steps.rb
620
+ - features/step_definitions/engine/factory_girl_steps.rb
621
+ - features/step_definitions/engine/html_steps.rb
622
+ - features/step_definitions/engine/plan_steps.rb
623
+ - features/step_definitions/engine/project_steps.rb
624
+ - features/step_definitions/engine/session_steps.rb
625
+ - features/step_definitions/engine/user_steps.rb
387
626
  - features/step_definitions/rails_steps.rb
388
627
  - features/step_definitions/saucy_steps.rb
628
+ - features/step_definitions/web_steps.rb
629
+ - features/support/engine/braintree.rb
389
630
  - features/support/env.rb
631
+ - features/support/factory_girl.rb
390
632
  - features/support/file.rb
633
+ - features/support/paths.rb
634
+ - features/support/rails.rb
635
+ - features/support/selectors.rb
391
636
  - lib/generators/saucy/base.rb
392
637
  - lib/generators/saucy/features/features_generator.rb
393
638
  - lib/generators/saucy/features/templates/README
394
639
  - lib/generators/saucy/features/templates/factories.rb
395
- - lib/generators/saucy/features/templates/features/admin_reporting.feature
396
- - lib/generators/saucy/features/templates/features/edit_profile.feature
397
- - lib/generators/saucy/features/templates/features/edit_project_permissions.feature
398
- - lib/generators/saucy/features/templates/features/edit_user_permissions.feature
399
- - lib/generators/saucy/features/templates/features/manage_account.feature
400
- - lib/generators/saucy/features/templates/features/manage_billing.feature
401
- - lib/generators/saucy/features/templates/features/manage_plan.feature
402
- - lib/generators/saucy/features/templates/features/manage_projects.feature
403
- - lib/generators/saucy/features/templates/features/manage_users.feature
404
- - lib/generators/saucy/features/templates/features/new_account.feature
405
- - lib/generators/saucy/features/templates/features/project_dropdown.feature
406
- - lib/generators/saucy/features/templates/features/sign_up.feature
407
- - lib/generators/saucy/features/templates/features/sign_up_coupon.feature
408
- - lib/generators/saucy/features/templates/features/sign_up_paid.feature
409
- - lib/generators/saucy/features/templates/features/trial_plans.feature
410
- - lib/generators/saucy/features/templates/step_definitions/account_steps.rb
411
- - lib/generators/saucy/features/templates/step_definitions/braintree_steps.rb
412
- - lib/generators/saucy/features/templates/step_definitions/country_steps.rb
413
- - lib/generators/saucy/features/templates/step_definitions/cron_steps.rb
414
- - lib/generators/saucy/features/templates/step_definitions/email_steps.rb
415
- - lib/generators/saucy/features/templates/step_definitions/factory_girl_steps.rb
416
- - lib/generators/saucy/features/templates/step_definitions/html_steps.rb
417
- - lib/generators/saucy/features/templates/step_definitions/plan_steps.rb
418
- - lib/generators/saucy/features/templates/step_definitions/project_steps.rb
419
- - lib/generators/saucy/features/templates/step_definitions/session_steps.rb
420
- - lib/generators/saucy/features/templates/step_definitions/user_steps.rb
421
- - lib/generators/saucy/features/templates/support/braintree.rb
422
640
  - lib/generators/saucy/install/install_generator.rb
423
641
  - lib/generators/saucy/install/templates/controllers/projects_controller.rb
424
642
  - lib/generators/saucy/install/templates/create_saucy_tables.rb
425
643
  - lib/generators/saucy/install/templates/models/account.rb
426
644
  - lib/generators/saucy/install/templates/models/plan.rb
427
645
  - lib/generators/saucy/install/templates/models/project.rb
428
- - lib/generators/saucy/specs/specs_generator.rb
429
- - lib/generators/saucy/specs/templates/support/braintree.rb
430
646
  - lib/generators/saucy/views/views_generator.rb
431
647
  - lib/saucy.rb
432
648
  - lib/saucy/account.rb
@@ -434,14 +650,12 @@ files:
434
650
  - lib/saucy/configuration.rb
435
651
  - lib/saucy/coupons.rb
436
652
  - lib/saucy/engine.rb
437
- - lib/saucy/fake_braintree.rb
438
653
  - lib/saucy/layouts.rb
439
654
  - lib/saucy/notifications.rb
440
655
  - lib/saucy/plan.rb
441
656
  - lib/saucy/project.rb
442
657
  - lib/saucy/projects_controller.rb
443
658
  - lib/saucy/railties/tasks.rake
444
- - lib/saucy/routing_extensions.rb
445
659
  - lib/saucy/subscription.rb
446
660
  - lib/saucy/user.rb
447
661
  - lib/saucy/version.rb
@@ -460,8 +674,49 @@ files:
460
674
  - spec/controllers/plans_controller_spec.rb
461
675
  - spec/controllers/profiles_controller_spec.rb
462
676
  - spec/controllers/projects_controller_spec.rb
463
- - spec/dummy/db/migrate/20120206155222_add_subscription_token_to_canceled_accounts.rb
464
- - spec/environment.rb
677
+ - spec/dummy/Rakefile
678
+ - spec/dummy/app/assets/javascripts/application.js
679
+ - spec/dummy/app/assets/stylesheets/application.css
680
+ - spec/dummy/app/controllers/application_controller.rb
681
+ - spec/dummy/app/controllers/homes_controller.rb
682
+ - spec/dummy/app/controllers/projects_controller.rb
683
+ - spec/dummy/app/helpers/application_helper.rb
684
+ - spec/dummy/app/mailers/.gitkeep
685
+ - spec/dummy/app/models/.gitkeep
686
+ - spec/dummy/app/models/account.rb
687
+ - spec/dummy/app/models/plan.rb
688
+ - spec/dummy/app/models/project.rb
689
+ - spec/dummy/app/models/user.rb
690
+ - spec/dummy/app/views/homes/show.html.erb
691
+ - spec/dummy/app/views/layouts/application.html.erb
692
+ - spec/dummy/config.ru
693
+ - spec/dummy/config/application.rb
694
+ - spec/dummy/config/boot.rb
695
+ - spec/dummy/config/database.yml
696
+ - spec/dummy/config/environment.rb
697
+ - spec/dummy/config/environments/development.rb
698
+ - spec/dummy/config/environments/production.rb
699
+ - spec/dummy/config/environments/test.rb
700
+ - spec/dummy/config/initializers/backtrace_silencers.rb
701
+ - spec/dummy/config/initializers/clearance.rb
702
+ - spec/dummy/config/initializers/inflections.rb
703
+ - spec/dummy/config/initializers/mime_types.rb
704
+ - spec/dummy/config/initializers/secret_token.rb
705
+ - spec/dummy/config/initializers/session_store.rb
706
+ - spec/dummy/config/initializers/wrap_parameters.rb
707
+ - spec/dummy/config/locales/en.yml
708
+ - spec/dummy/config/routes.rb
709
+ - spec/dummy/db/development.sqlite3
710
+ - spec/dummy/db/migrate/20120201000751_create_diesel_clearance_users.rb
711
+ - spec/dummy/db/migrate/20120201001546_create_saucy_tables.rb
712
+ - spec/dummy/db/migrate/20120201001548_create_canceled_accounts.rb
713
+ - spec/dummy/lib/assets/.gitkeep
714
+ - spec/dummy/log/.gitkeep
715
+ - spec/dummy/public/404.html
716
+ - spec/dummy/public/422.html
717
+ - spec/dummy/public/500.html
718
+ - spec/dummy/public/favicon.ico
719
+ - spec/dummy/script/rails
465
720
  - spec/layouts_spec.rb
466
721
  - spec/mailers/billing_mailer_spec.rb
467
722
  - spec/mailers/invitation_mailer_spec.rb
@@ -477,18 +732,15 @@ files:
477
732
  - spec/models/signup_spec.rb
478
733
  - spec/models/subscription_spec.rb
479
734
  - spec/models/user_spec.rb
480
- - spec/route_extensions_spec.rb
481
735
  - spec/saucy/configuration_spec.rb
482
736
  - spec/saucy/notifications_spec.rb
483
- - spec/scaffold/config/database.yml
484
- - spec/scaffold/config/routes.rb
485
- - spec/scaffold/views/layouts/application.html.erb
486
737
  - spec/spec_helper.rb
487
738
  - spec/support/.gitkeep
488
739
  - spec/support/authentication_helpers.rb
489
740
  - spec/support/authorization_helpers.rb
490
741
  - spec/support/braintree.rb
491
742
  - spec/support/clearance.rb
743
+ - spec/support/factories.rb
492
744
  - spec/support/notifications.rb
493
745
  - spec/views/accounts/_account.html.erb_spec.rb
494
746
  - spec/views/accounts/show.html.erb_spec.rb
@@ -521,17 +773,49 @@ required_rubygems_version: !ruby/object:Gem::Requirement
521
773
  requirements: []
522
774
 
523
775
  rubyforge_project:
524
- rubygems_version: 1.8.15
776
+ rubygems_version: 1.8.11
525
777
  signing_key:
526
778
  specification_version: 3
527
779
  summary: Clearance-based Rails engine for SaaS
528
780
  test_files:
529
- - features/run_features.feature
781
+ - features/engine/admin_reporting.feature
782
+ - features/engine/edit_profile.feature
783
+ - features/engine/edit_project_permissions.feature
784
+ - features/engine/edit_user_permissions.feature
785
+ - features/engine/manage_account.feature
786
+ - features/engine/manage_billing.feature
787
+ - features/engine/manage_plan.feature
788
+ - features/engine/manage_projects.feature
789
+ - features/engine/manage_users.feature
790
+ - features/engine/new_account.feature
791
+ - features/engine/project_dropdown.feature
792
+ - features/engine/sign_up.feature
793
+ - features/engine/sign_up_coupon.feature
794
+ - features/engine/sign_up_paid.feature
795
+ - features/engine/trial_plans.feature
796
+ - features/integration/run_features.feature
530
797
  - features/step_definitions/clearance_steps.rb
798
+ - features/step_definitions/engine/account_steps.rb
799
+ - features/step_definitions/engine/braintree_steps.rb
800
+ - features/step_definitions/engine/country_steps.rb
801
+ - features/step_definitions/engine/cron_steps.rb
802
+ - features/step_definitions/engine/email_steps.rb
803
+ - features/step_definitions/engine/factory_girl_steps.rb
804
+ - features/step_definitions/engine/html_steps.rb
805
+ - features/step_definitions/engine/plan_steps.rb
806
+ - features/step_definitions/engine/project_steps.rb
807
+ - features/step_definitions/engine/session_steps.rb
808
+ - features/step_definitions/engine/user_steps.rb
531
809
  - features/step_definitions/rails_steps.rb
532
810
  - features/step_definitions/saucy_steps.rb
811
+ - features/step_definitions/web_steps.rb
812
+ - features/support/engine/braintree.rb
533
813
  - features/support/env.rb
814
+ - features/support/factory_girl.rb
534
815
  - features/support/file.rb
816
+ - features/support/paths.rb
817
+ - features/support/rails.rb
818
+ - features/support/selectors.rb
535
819
  - spec/controllers/accounts_controller_spec.rb
536
820
  - spec/controllers/admin/accounts_controller_spec.rb
537
821
  - spec/controllers/admin/base_controller_spec.rb
@@ -544,8 +828,49 @@ test_files:
544
828
  - spec/controllers/plans_controller_spec.rb
545
829
  - spec/controllers/profiles_controller_spec.rb
546
830
  - spec/controllers/projects_controller_spec.rb
547
- - spec/dummy/db/migrate/20120206155222_add_subscription_token_to_canceled_accounts.rb
548
- - spec/environment.rb
831
+ - spec/dummy/Rakefile
832
+ - spec/dummy/app/assets/javascripts/application.js
833
+ - spec/dummy/app/assets/stylesheets/application.css
834
+ - spec/dummy/app/controllers/application_controller.rb
835
+ - spec/dummy/app/controllers/homes_controller.rb
836
+ - spec/dummy/app/controllers/projects_controller.rb
837
+ - spec/dummy/app/helpers/application_helper.rb
838
+ - spec/dummy/app/mailers/.gitkeep
839
+ - spec/dummy/app/models/.gitkeep
840
+ - spec/dummy/app/models/account.rb
841
+ - spec/dummy/app/models/plan.rb
842
+ - spec/dummy/app/models/project.rb
843
+ - spec/dummy/app/models/user.rb
844
+ - spec/dummy/app/views/homes/show.html.erb
845
+ - spec/dummy/app/views/layouts/application.html.erb
846
+ - spec/dummy/config.ru
847
+ - spec/dummy/config/application.rb
848
+ - spec/dummy/config/boot.rb
849
+ - spec/dummy/config/database.yml
850
+ - spec/dummy/config/environment.rb
851
+ - spec/dummy/config/environments/development.rb
852
+ - spec/dummy/config/environments/production.rb
853
+ - spec/dummy/config/environments/test.rb
854
+ - spec/dummy/config/initializers/backtrace_silencers.rb
855
+ - spec/dummy/config/initializers/clearance.rb
856
+ - spec/dummy/config/initializers/inflections.rb
857
+ - spec/dummy/config/initializers/mime_types.rb
858
+ - spec/dummy/config/initializers/secret_token.rb
859
+ - spec/dummy/config/initializers/session_store.rb
860
+ - spec/dummy/config/initializers/wrap_parameters.rb
861
+ - spec/dummy/config/locales/en.yml
862
+ - spec/dummy/config/routes.rb
863
+ - spec/dummy/db/development.sqlite3
864
+ - spec/dummy/db/migrate/20120201000751_create_diesel_clearance_users.rb
865
+ - spec/dummy/db/migrate/20120201001546_create_saucy_tables.rb
866
+ - spec/dummy/db/migrate/20120201001548_create_canceled_accounts.rb
867
+ - spec/dummy/lib/assets/.gitkeep
868
+ - spec/dummy/log/.gitkeep
869
+ - spec/dummy/public/404.html
870
+ - spec/dummy/public/422.html
871
+ - spec/dummy/public/500.html
872
+ - spec/dummy/public/favicon.ico
873
+ - spec/dummy/script/rails
549
874
  - spec/layouts_spec.rb
550
875
  - spec/mailers/billing_mailer_spec.rb
551
876
  - spec/mailers/invitation_mailer_spec.rb
@@ -561,18 +886,15 @@ test_files:
561
886
  - spec/models/signup_spec.rb
562
887
  - spec/models/subscription_spec.rb
563
888
  - spec/models/user_spec.rb
564
- - spec/route_extensions_spec.rb
565
889
  - spec/saucy/configuration_spec.rb
566
890
  - spec/saucy/notifications_spec.rb
567
- - spec/scaffold/config/database.yml
568
- - spec/scaffold/config/routes.rb
569
- - spec/scaffold/views/layouts/application.html.erb
570
891
  - spec/spec_helper.rb
571
892
  - spec/support/.gitkeep
572
893
  - spec/support/authentication_helpers.rb
573
894
  - spec/support/authorization_helpers.rb
574
895
  - spec/support/braintree.rb
575
896
  - spec/support/clearance.rb
897
+ - spec/support/factories.rb
576
898
  - spec/support/notifications.rb
577
899
  - spec/views/accounts/_account.html.erb_spec.rb
578
900
  - spec/views/accounts/show.html.erb_spec.rb