Using minitest
Using minitest
Basic flow of testing ordering from cart
Add timecop to allow freezing in and out of time
Basic cart model with hash of products and quantities
allow adding and removing products to and from the cart
Calculate cost simply
Add a basic product model with id and cost
Add promotions to products along with logic to calculate discounted prices
Ensure carts use the calculated cost for products rather than the raw cost
add basic promotion model, doesn't need a reference to product
Only apply discounts during the time window they're set for
Enable adding promotions to products
Fix bug where promotion current_discounts never returned a discount value
Use discount for promotions rather than cost
After 4pm the discount should no longer be applied
Merge branch 'master' into order_processing
Standarize the empty cart test
Merge branch 'master' into order_processing
Ensure cart is empty when first created