muck-commerce 0.1.8 → 0.1.9

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.
Files changed (52) hide show
  1. data/README.rdoc +5 -1
  2. data/VERSION +1 -1
  3. data/app/controllers/admin/muck/coupons_controller.rb +3 -1
  4. data/app/controllers/muck/subscriptions_controller.rb +64 -1
  5. data/config/muck_commerce_routes.rb +1 -1
  6. data/db/migrate/20100327171239_add_subscription_records.rb +14 -0
  7. data/lib/active_record/acts/muck_commerce_user.rb +13 -2
  8. data/lib/active_record/acts/muck_coupon.rb +3 -0
  9. data/lib/active_record/acts/muck_coupon_type.rb +9 -1
  10. data/lib/active_record/acts/muck_subscription.rb +2 -1
  11. data/lib/active_record/acts/muck_subscription_record.rb +35 -0
  12. data/lib/muck_commerce.rb +1 -0
  13. data/lib/test/muck_commerce_factories.rb +9 -1
  14. data/muck-commerce.gemspec +28 -4
  15. data/test/rails_root/app/models/coupon_type.rb +3 -0
  16. data/test/rails_root/db/migrate/20091230220327_create_muck_commerce.rb +9 -11
  17. data/test/rails_root/db/migrate/20100228060913_create_subscription_coupons.rb +14 -0
  18. data/test/rails_root/db/migrate/20100327171239_add_subscription_records.rb +14 -0
  19. data/test/rails_root/public/images/fancybox/blank.gif +0 -0
  20. data/test/rails_root/public/images/fancybox/fancy_close.png +0 -0
  21. data/test/rails_root/public/images/fancybox/fancy_loading.png +0 -0
  22. data/test/rails_root/public/images/fancybox/fancy_nav_left.png +0 -0
  23. data/test/rails_root/public/images/fancybox/fancy_nav_right.png +0 -0
  24. data/test/rails_root/public/images/fancybox/fancy_shadow_e.png +0 -0
  25. data/test/rails_root/public/images/fancybox/fancy_shadow_n.png +0 -0
  26. data/test/rails_root/public/images/fancybox/fancy_shadow_ne.png +0 -0
  27. data/test/rails_root/public/images/fancybox/fancy_shadow_nw.png +0 -0
  28. data/test/rails_root/public/images/fancybox/fancy_shadow_s.png +0 -0
  29. data/test/rails_root/public/images/fancybox/fancy_shadow_se.png +0 -0
  30. data/test/rails_root/public/images/fancybox/fancy_shadow_sw.png +0 -0
  31. data/test/rails_root/public/images/fancybox/fancy_shadow_w.png +0 -0
  32. data/test/rails_root/public/images/fancybox/fancy_title_left.png +0 -0
  33. data/test/rails_root/public/images/fancybox/fancy_title_main.png +0 -0
  34. data/test/rails_root/public/images/fancybox/fancy_title_over.png +0 -0
  35. data/test/rails_root/public/images/fancybox/fancy_title_right.png +0 -0
  36. data/test/rails_root/public/images/fancybox/fancybox-x.png +0 -0
  37. data/test/rails_root/public/images/fancybox/fancybox-y.png +0 -0
  38. data/test/rails_root/public/images/fancybox/fancybox.png +0 -0
  39. data/test/rails_root/public/javascripts/jquery/jquery.easing.js +72 -1
  40. data/test/rails_root/public/javascripts/jquery/jquery.fancybox.js +34 -6
  41. data/test/rails_root/public/javascripts/jquery/jquery.js +150 -15
  42. data/test/rails_root/public/javascripts/jquery/jquery.mousewheel.js +13 -0
  43. data/test/rails_root/public/javascripts/muck-countries.js +1 -1
  44. data/test/rails_root/public/javascripts/muck.js +0 -2
  45. data/test/rails_root/public/stylesheets/jquery/jquery.fancybox.css +77 -38
  46. data/test/rails_root/test/functional/{billings_information_controller_test.rb → billing_informations_controller_test.rb} +0 -0
  47. data/test/rails_root/test/unit/cart_coupon_test.rb +16 -0
  48. data/test/rails_root/test/unit/coupon_test.rb +65 -0
  49. data/test/rails_root/test/unit/coupon_type_test.rb +24 -0
  50. data/test/rails_root/test/unit/subscription_test.rb +153 -1
  51. data/test/rails_root/test/unit/user_test.rb +56 -8
  52. metadata +29 -5
@@ -0,0 +1,16 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class CartCouponTest < ActiveSupport::TestCase
4
+
5
+ context 'A cart coupon instance that acts_as_muck_cart_coupon' do
6
+ setup do
7
+ @cart_coupon = Factory(:cart_coupon)
8
+ end
9
+ subject { @cart_coupon }
10
+
11
+ should_belong_to :cart
12
+ should_belong_to :coupon
13
+
14
+ end
15
+
16
+ end
@@ -0,0 +1,65 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class CouponTest < ActiveSupport::TestCase
4
+
5
+ context 'A coupon instance that acts_as_muck_coupon' do
6
+ setup do
7
+ @coupon = Factory(:coupon)
8
+ end
9
+ subject { @coupon }
10
+
11
+ should_have_many :orders
12
+ should_belong_to :user
13
+ should_belong_to :coupon_type
14
+
15
+ should_validate_presence_of :code, :amount, :percent, :uses
16
+ should_validate_uniqueness_of :code
17
+
18
+ #validate :validate_discount
19
+
20
+ context "named scopes" do
21
+ setup do
22
+ @active_coupon = Factory(:coupon)
23
+ @expired_coupon = Factory(:coupon, :expires_at => 1.week.ago)
24
+ @used_coupon = Factory(:coupon, :use_limit => 1, :uses => 2)
25
+ @referral_coupon = Factory(:coupon, :coupon_type => CouponType.default)
26
+ end
27
+ should_scope_by_newest
28
+ context "active" do
29
+ should "find active coupons" do
30
+ assert Coupon.active.include?(@active_coupon)
31
+ end
32
+ should "not find expired coupons" do
33
+ assert !Coupon.active.include?(@in_active_coupon)
34
+ end
35
+ should "not find used coupons" do
36
+ assert !Coupon.active.include?(@used_coupon)
37
+ end
38
+ end
39
+ context "referrals" do
40
+ should "find referral codes" do
41
+ assert Coupon.referrals.include?(@referral_coupon)
42
+ end
43
+ should "not find default codes" do
44
+ assert !Coupon.active.include?(@active_coupon)
45
+ end
46
+ end
47
+ context "default" do
48
+ should "find default codes" do
49
+ assert Coupon.referrals.include?(@active_coupon)
50
+ end
51
+ should "not find referral code" do
52
+ assert !Coupon.active.include?(@referral_coupon)
53
+ end
54
+ end
55
+ end
56
+
57
+ context "random_code" do
58
+ should "generate a random code" do
59
+ assert_not_nil Coupon.random_code
60
+ end
61
+ end
62
+
63
+ end
64
+
65
+ end
@@ -0,0 +1,24 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class CouponTypeTest < ActiveSupport::TestCase
4
+
5
+ context 'A coupon type instance that acts_as_muck_coupon_type' do
6
+ setup do
7
+ @coupon_type = Factory(:coupon_type)
8
+ end
9
+ subject { @coupon_type }
10
+
11
+ should_have_many :coupons
12
+
13
+ context "types" do
14
+ should "have default" do
15
+ assert_equal 'Referral', CouponType.user_referral
16
+ end
17
+ should "have referral" do
18
+ assert_equal 'Default', CouponType.default
19
+ end
20
+ end
21
+
22
+ end
23
+
24
+ end
@@ -5,7 +5,159 @@ class SubscriptionTest < ActiveSupport::TestCase
5
5
  include MuckCommerceTestDefinitions
6
6
 
7
7
  context "Subscription Instance" do
8
+ setup do
9
+ @subscription = Factory(:subscription)
10
+ end
11
+ subject { @subscription }
12
+ should_belong_to :user
13
+ should_belong_to :subscription_plan
8
14
 
15
+ should_have_many :subscription_records
16
+ should_have_many :order_coupons
17
+ should_have_many :coupons, :through => :subscription_coupons
18
+ should_have_many :order_transactions, :as => :transactionable, :dependent => :destroy
19
+
20
+ should_validate_presence_of :amount
21
+ should_validate_presence_of :user
22
+
23
+ context "named scope" do
24
+ setup do
25
+ @user = Factory(:user)
26
+ @default_subscription = Factory(:subscription, :default => :true)
27
+ @user.subscriptions << @default_subscription
28
+ @non_default_subscription = Factory(:subscription, :default => :false)
29
+ @user.subscriptions << @non_default_subscription
30
+
31
+ @subscription = Factory(:subscription, :aasm_state => 'active', :next_renewal_at => 2.weeks.from_now)
32
+ @due_today_subscription = Factory(:subscription, :aasm_state => 'active', :next_renewal_at => DateTime.now)
33
+ @past_due_subscription = Factory(:subscription, :aasm_state => 'active', :next_renewal_at => DateTime.now)
34
+ @expiring_trial_subscription = Factory(:subscription, :aasm_state => 'trial', :next_renewal_at => DateTime.now)
35
+ @expired_trial_subscription = Factory(:subscription, :aasm_state => 'trial', :next_renewal_at => 1.week.ago)
36
+ @suspended_subscription = Factory(:subscription, :aasm_state => 'suspended', :next_renewal_at => 1.week.ago)
37
+
38
+ end
39
+
40
+ should_scope_newest
41
+
42
+ context "expiring_trials" do
43
+ should "find expiring trials" do
44
+ assert Subscription.expiring_trials.include?(@expiring_trial_subscription)
45
+ end
46
+ should "find expired trial" do
47
+ assert Subscription.expiring_trials.include?(@expired_trial_subscription)
48
+ end
49
+ should "not find active subscription" do
50
+ assert !Subscription.expiring_trials.include?(@subscription)
51
+ end
52
+ should "not find past due active subscription" do
53
+ assert !Subscription.expiring_trials.include?(@past_due_subscription)
54
+ end
55
+ should "not find active subscription due today" do
56
+ assert !Subscription.expiring_trials.include?(@due_today_subscription)
57
+ end
58
+ end
59
+
60
+ context "due_today" do
61
+ should "find expiring trials" do
62
+ assert Subscription.due_today.include?(@expiring_trial_subscription)
63
+ end
64
+ should "not find expired trial" do
65
+ assert !Subscription.due_today.include?(@expired_trial_subscription)
66
+ end
67
+ should "not find active subscription" do
68
+ assert !Subscription.due_today.include?(@subscription)
69
+ end
70
+ should "not find past due active subscription" do
71
+ assert !Subscription.due_today.include?(@past_due_subscription)
72
+ end
73
+ should "find active subscription due today" do
74
+ assert Subscription.due_today.include?(@due_today_subscription)
75
+ end
76
+ should "not find suspeded subscription" do
77
+ assert !Subscription.past_due.include?(@suspended_subscription)
78
+ end
79
+
80
+ end
81
+
82
+ context "past_due" do
83
+ should "find expiring trials" do
84
+ assert Subscription.past_due.include?(@expiring_trial_subscription)
85
+ end
86
+ should "find expired trial" do
87
+ assert Subscription.past_due.include?(@expired_trial_subscription)
88
+ end
89
+ should "not find active subscription" do
90
+ assert !Subscription.past_due.include?(@subscription)
91
+ end
92
+ should "find past due active subscription" do
93
+ assert Subscription.past_due.include?(@past_due_subscription)
94
+ end
95
+ should "find active subscription due today" do
96
+ assert Subscription.past_due.include?(@due_today_subscription)
97
+ end
98
+ should "find suspeded subscription" do
99
+ assert Subscription.past_due.include?(@suspended_subscription)
100
+ end
101
+ end
102
+
103
+ context "default" do
104
+ should "get default subscription" do
105
+ assert @user.subscriptions.default.include?(@default_subscription)
106
+ end
107
+ should "not get non default subscription" do
108
+ assert !@user.subscriptions.default.include?(@non_default_subscription)
109
+ end
110
+ end
111
+
112
+ context "states" do
113
+ setup do
114
+ @subscription = Factory(:subscription)
115
+ end
116
+ should "be in the trial state" do
117
+ assert @subscription.trial?
118
+ end
119
+ should "move to the active state" do
120
+ assert @subscription.activate!
121
+ assert @subscription.active?
122
+ end
123
+ should "move to the suspended state from the active state" do
124
+ assert @subscription.activate!
125
+ assert @subscription.active?
126
+ assert @subscription.suspend!
127
+ assert @subscription.suspended?
128
+ end
129
+ should "move to the suspended state from the trial state" do
130
+ assert @subscription.trial?
131
+ assert @subscription.suspend!
132
+ assert @subscription.suspended?
133
+ end
134
+ should "move to the cancelled state from the trial state" do
135
+ assert @subscription.trial?
136
+ assert @subscription.cancel!
137
+ assert @subscription.cancelled?
138
+ end
139
+ should "move to the cancelled state from the active state" do
140
+ assert @subscription.activate!
141
+ assert @subscription.active?
142
+ assert @subscription.cancel!
143
+ assert @subscription.cancelled?
144
+ end
145
+ end
146
+
147
+ context "authorize_subscription" do
148
+ authorize_subscription(user, options = {})
149
+ end
150
+
151
+ context "subscribe" do
152
+ subscribe(user, subscription_plan_id, discount_code = '')
153
+ end
154
+
155
+ context "subscribe_custom" do
156
+ subscribe_custom(user, amount, subscription_values = {}, renewal_period = nil, discount_codes = [], run_authorization = false)
157
+ end
158
+
159
+ end
160
+
9
161
  end
10
162
 
11
- end
163
+ end
@@ -2,22 +2,70 @@ require File.dirname(__FILE__) + '/../test_helper'
2
2
 
3
3
  class UserTest < ActiveSupport::TestCase
4
4
 
5
- context 'A user instance with has_muck_profile' do
5
+ context 'A user instance that acts_as_muck_commerce_user' do
6
6
  setup do
7
7
  @user = Factory(:user)
8
8
  end
9
9
  subject { @user }
10
10
 
11
- should_accept_nested_attributes_for :profile
12
- should_have_one :profile
11
+ should_have_one :cart
12
+ should_have_many :billing_informations
13
+ should_have_many :order_transactions
14
+ should_have_many :orders
15
+ should_have_many :subscriptions
13
16
 
14
- should "have a profile after creation" do
15
- assert @user.profile
17
+ should "have a referral_code after creation" do
18
+ assert_not_nil @user.referral_code
19
+ assert_not_nil @user.referral_code.code
20
+ code = @user.referral_code.code
21
+ # Make sure that the referral code isn't getting reassigned
22
+ assert_equal code, @user.referral_code.code
16
23
  end
17
24
 
18
- should "have a photo method delegated to the profile" do
19
- assert @user.photo
25
+ context "subscription" do
26
+ setup do
27
+ @default = @user.subscriptions.create(Factory.attributes_for(:subscription, :default => true))
28
+ @other = @user.subscriptions.create(Factory.attributes_for(:subscription, :default => false))
29
+ end
30
+ should "give the default subscription" do
31
+ assert_equal @default, @user.subscription
32
+ end
33
+ end
34
+
35
+ context "billing information" do
36
+ context "get billing_information" do
37
+ setup do
38
+ @default = @user.billing_informations.create(Factory.attributes_for(:billing_information, :default => true))
39
+ @other = @user.billing_informations.create(Factory.attributes_for(:billing_information, :default => false))
40
+ end
41
+ should "give the default billing information" do
42
+ assert_equal @default, @user.billing_information
43
+ end
44
+ end
45
+ context "create_update_billing_information!" do
46
+ context "billing information exists" do
47
+ should "update existing billing information" do
48
+ @default = @user.billing_informations.create(Factory.attributes_for(:billing_information, :default => true))
49
+ @user.create_update_billing_information!(Factory.attributes_for(:billing_information))
50
+ assert_equal @default, @user.billing_information
51
+ assert_equal 1, @user.billing_informations.length
52
+ end
53
+ end
54
+ context "no billing information" do
55
+ should "create a new billing entry" do
56
+ billing_information = @user.create_update_billing_information!(Factory.attributes_for(:billing_information))
57
+ assert_equal billing_information, @user.billing_information
58
+ end
59
+ end
60
+
61
+ end
62
+ context "build_billing_information" do
63
+ should "build but not save billing information for the user" do
64
+ billing_information = @user.build_billing_information(Factory.attributes_for(:billing_information))
65
+ assert_nil @user.billing_information
66
+ end
67
+ end
20
68
  end
21
69
  end
22
70
 
23
- end
71
+ end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 1
8
- - 8
9
- version: 0.1.8
8
+ - 9
9
+ version: 0.1.9
10
10
  platform: ruby
11
11
  authors:
12
12
  - Justin Ball
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-03-17 00:00:00 -06:00
18
+ date: 2010-03-29 00:00:00 -06:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -152,6 +152,7 @@ files:
152
152
  - db/migrate/20100228060913_create_subscription_coupons.rb
153
153
  - db/migrate/20100309183304_add_coupon_subscrption_uses.rb
154
154
  - db/migrate/20100310180031_create_coupon_types.rb
155
+ - db/migrate/20100327171239_add_subscription_records.rb
155
156
  - lib/action_controller/muck_billing_application.rb
156
157
  - lib/active_record/acts/muck_billing_information.rb
157
158
  - lib/active_record/acts/muck_cart.rb
@@ -164,6 +165,7 @@ files:
164
165
  - lib/active_record/acts/muck_order_transaction.rb
165
166
  - lib/active_record/acts/muck_subscription.rb
166
167
  - lib/active_record/acts/muck_subscription_plan.rb
168
+ - lib/active_record/acts/muck_subscription_record.rb
167
169
  - lib/muck_commerce.rb
168
170
  - lib/muck_commerce/cart_methods.rb
169
171
  - lib/muck_commerce/configure.rb
@@ -193,6 +195,7 @@ files:
193
195
  - test/rails_root/app/models/cart.rb
194
196
  - test/rails_root/app/models/cart_coupon.rb
195
197
  - test/rails_root/app/models/coupon.rb
198
+ - test/rails_root/app/models/coupon_type.rb
196
199
  - test/rails_root/app/models/order.rb
197
200
  - test/rails_root/app/models/order_coupon.rb
198
201
  - test/rails_root/app/models/order_transaction.rb
@@ -229,8 +232,10 @@ files:
229
232
  - test/rails_root/db/migrate/20100123035450_create_access_codes.rb
230
233
  - test/rails_root/db/migrate/20100123233654_create_access_code_requests.rb
231
234
  - test/rails_root/db/migrate/20100206000906_remove_name_fields.rb
235
+ - test/rails_root/db/migrate/20100228060913_create_subscription_coupons.rb
232
236
  - test/rails_root/db/migrate/20100309183304_add_coupon_subscrption_uses.rb
233
237
  - test/rails_root/db/migrate/20100310180031_create_coupon_types.rb
238
+ - test/rails_root/db/migrate/20100327171239_add_subscription_records.rb
234
239
  - test/rails_root/features/step_definitions/webrat_steps.rb
235
240
  - test/rails_root/features/support/env.rb
236
241
  - test/rails_root/lib/tasks/muck.rake
@@ -252,8 +257,13 @@ files:
252
257
  - test/rails_root/public/images/arrow_right.gif
253
258
  - test/rails_root/public/images/arrow_up.gif
254
259
  - test/rails_root/public/images/blue/preview.gif
260
+ - test/rails_root/public/images/fancybox/blank.gif
261
+ - test/rails_root/public/images/fancybox/fancy_close.png
255
262
  - test/rails_root/public/images/fancybox/fancy_closebox.png
256
263
  - test/rails_root/public/images/fancybox/fancy_left.png
264
+ - test/rails_root/public/images/fancybox/fancy_loading.png
265
+ - test/rails_root/public/images/fancybox/fancy_nav_left.png
266
+ - test/rails_root/public/images/fancybox/fancy_nav_right.png
257
267
  - test/rails_root/public/images/fancybox/fancy_progress.png
258
268
  - test/rails_root/public/images/fancybox/fancy_right.png
259
269
  - test/rails_root/public/images/fancybox/fancy_shadow_e.png
@@ -266,7 +276,11 @@ files:
266
276
  - test/rails_root/public/images/fancybox/fancy_shadow_w.png
267
277
  - test/rails_root/public/images/fancybox/fancy_title_left.png
268
278
  - test/rails_root/public/images/fancybox/fancy_title_main.png
279
+ - test/rails_root/public/images/fancybox/fancy_title_over.png
269
280
  - test/rails_root/public/images/fancybox/fancy_title_right.png
281
+ - test/rails_root/public/images/fancybox/fancybox-x.png
282
+ - test/rails_root/public/images/fancybox/fancybox-y.png
283
+ - test/rails_root/public/images/fancybox/fancybox.png
270
284
  - test/rails_root/public/images/icons/accept.png
271
285
  - test/rails_root/public/images/icons/add.png
272
286
  - test/rails_root/public/images/icons/blue_guy.png
@@ -660,6 +674,7 @@ files:
660
674
  - test/rails_root/public/javascripts/jquery/jquery.jgrowl.js
661
675
  - test/rails_root/public/javascripts/jquery/jquery.js
662
676
  - test/rails_root/public/javascripts/jquery/jquery.metadata.min.js
677
+ - test/rails_root/public/javascripts/jquery/jquery.mousewheel.js
663
678
  - test/rails_root/public/javascripts/jquery/jquery.queryString.js
664
679
  - test/rails_root/public/javascripts/jquery/jquery.swapimage.js
665
680
  - test/rails_root/public/javascripts/jquery/jquery.swapimage.min.js
@@ -806,11 +821,14 @@ files:
806
821
  - test/rails_root/test/functional/admin/billing_informations_controller_test.rb
807
822
  - test/rails_root/test/functional/admin/coupons_controller_test.rb
808
823
  - test/rails_root/test/functional/admin/subscription_plans_controller_test.rb
809
- - test/rails_root/test/functional/billings_information_controller_test.rb
824
+ - test/rails_root/test/functional/billing_informations_controller_test.rb
810
825
  - test/rails_root/test/functional/carts_controller_test.rb
811
826
  - test/rails_root/test/functional/orders_controller_test.rb
812
827
  - test/rails_root/test/functional/subscription_controller_test.rb
813
828
  - test/rails_root/test/test_helper.rb
829
+ - test/rails_root/test/unit/cart_coupon_test.rb
830
+ - test/rails_root/test/unit/coupon_test.rb
831
+ - test/rails_root/test/unit/coupon_type_test.rb
814
832
  - test/rails_root/test/unit/order_test.rb
815
833
  - test/rails_root/test/unit/order_transaction_test.rb
816
834
  - test/rails_root/test/unit/subscription_test.rb
@@ -900,6 +918,7 @@ test_files:
900
918
  - test/rails_root/app/models/cart.rb
901
919
  - test/rails_root/app/models/cart_coupon.rb
902
920
  - test/rails_root/app/models/coupon.rb
921
+ - test/rails_root/app/models/coupon_type.rb
903
922
  - test/rails_root/app/models/order.rb
904
923
  - test/rails_root/app/models/order_coupon.rb
905
924
  - test/rails_root/app/models/order_transaction.rb
@@ -933,8 +952,10 @@ test_files:
933
952
  - test/rails_root/db/migrate/20100123035450_create_access_codes.rb
934
953
  - test/rails_root/db/migrate/20100123233654_create_access_code_requests.rb
935
954
  - test/rails_root/db/migrate/20100206000906_remove_name_fields.rb
955
+ - test/rails_root/db/migrate/20100228060913_create_subscription_coupons.rb
936
956
  - test/rails_root/db/migrate/20100309183304_add_coupon_subscrption_uses.rb
937
957
  - test/rails_root/db/migrate/20100310180031_create_coupon_types.rb
958
+ - test/rails_root/db/migrate/20100327171239_add_subscription_records.rb
938
959
  - test/rails_root/features/step_definitions/webrat_steps.rb
939
960
  - test/rails_root/features/support/env.rb
940
961
  - test/rails_root/public/dispatch.rb
@@ -946,11 +967,14 @@ test_files:
946
967
  - test/rails_root/test/functional/admin/billing_informations_controller_test.rb
947
968
  - test/rails_root/test/functional/admin/coupons_controller_test.rb
948
969
  - test/rails_root/test/functional/admin/subscription_plans_controller_test.rb
949
- - test/rails_root/test/functional/billings_information_controller_test.rb
970
+ - test/rails_root/test/functional/billing_informations_controller_test.rb
950
971
  - test/rails_root/test/functional/carts_controller_test.rb
951
972
  - test/rails_root/test/functional/orders_controller_test.rb
952
973
  - test/rails_root/test/functional/subscription_controller_test.rb
953
974
  - test/rails_root/test/test_helper.rb
975
+ - test/rails_root/test/unit/cart_coupon_test.rb
976
+ - test/rails_root/test/unit/coupon_test.rb
977
+ - test/rails_root/test/unit/coupon_type_test.rb
954
978
  - test/rails_root/test/unit/order_test.rb
955
979
  - test/rails_root/test/unit/order_transaction_test.rb
956
980
  - test/rails_root/test/unit/subscription_test.rb