コード例 #1
0
// Check that cart promotions added
$cp1 = Doctrine::getTable('rtShopPromotionCart')->find($cartpromo1);
$cp2 = Doctrine::getTable('rtShopPromotionCart')->find($cartpromo2);
$cp3 = Doctrine::getTable('rtShopPromotionCart')->find($cartpromo3);
$t->isa_ok($cp1, 'rtShopPromotionCart', '::find() created and retrieved rtShopPromotionCart item');
$t->isa_ok($cp2, 'rtShopPromotionCart', '::find() created and retrieved rtShopPromotionCart item');
$t->isa_ok($cp3, 'rtShopPromotionCart', '::find() created and retrieved rtShopPromotionCart item');
// Clean order and reset cart manager
unset($cm);
rtShopOrderTestTools::cleanOrder();
$cm = new rtShopCartManager();
// Add stocks to cart manager
$cm->addToCart($stock1, 1);
$cm->addToCart($stock2, 1);
// Promotions
$t->is($cm->getPromotion()->getId(), 4, '::getPromotion()->getId() returns the correct best cart promotion object');
$t->is($cm->getPromotionReduction(), 28, '::getPromotionReduction() returns the correct best cart promotion reduction');
// Totals
$t->is($cm->getItemsCharge(), 280, '::getItemsCharge() returns the correct value');
$t->is($cm->getSubTotal(), 280, '::getSubTotal() returns the correct value');
$t->is($cm->getPreTotalCharge(), 300, '::getPreTotalCharge() returns the correct value');
$t->is($cm->getTotalCharge(), 300, '::getTotalCharge() returns the correct value');
$t->diag('-----------------------------------------------------------------------------');
$t->diag('4.7 Order + taxes + shipping + product promotion + cart promotion + voucher');
$t->diag('-----------------------------------------------------------------------------');
// Add voucher
$voucher1 = $tools->createVoucher('Test Voucher $10 - 150 to 250', 10, 'dollarOff', 150, 250);
// Valid voucher
$voucher2 = $tools->createVoucher('Test Voucher $20 - 250 to 400', 10, 'dollarOff', 250, 400);
// Valid voucher
$voucher3 = $tools->createVoucher('Test Voucher $30 - 400 to 500', 20, 'dollarOff', 400, 500);