public function CommerceCouponTest::testMultipleCouponsSameDiscount in Commerce Coupon 7.2
File
- ./commerce_coupon.test, line 284
- Commerce Coupon tests.
Class
- CommerceCouponTest
- Testing commerce coupon UI and functionality.
Code
public function testMultipleCouponsSameDiscount() {
$this
->drupalLogin($this->store_admin);
$discount = $this
->createDiscount('order_discount', 'fixed_amount', 300, '', '', 10, 'multi');
$coupon = commerce_coupon_create('discount_coupon');
$coupon->code = 'HALF OFF';
$coupon->commerce_discount_reference[LANGUAGE_NONE][0]['target_id'] = $discount->discount_id;
commerce_coupon_save($coupon);
$coupon = commerce_coupon_create('discount_coupon');
$coupon->code = 'HALF OFF 2';
$coupon->commerce_discount_reference[LANGUAGE_NONE][0]['target_id'] = $discount->discount_id;
commerce_coupon_save($coupon);
_commerce_discount_rebuild_rules_config(array(
$discount,
));
$this
->createDummyOrder($this->store_admin->uid, array(
$this->product->product_id => 1,
), $status = 'cart');
$this
->drupalGet('checkout');
$values = array(
'commerce_coupon[coupon_code]' => 'HALF OFF',
);
$this
->drupalPost(NULL, $values, t('Add coupon'));
$this
->drupalGet('checkout');
$this
->assertText(t('$7.00'), 'Order total decreased with coupon value.');
$values = array(
'commerce_coupon[coupon_code]' => 'HALF OFF 2',
);
$this
->drupalPost(NULL, $values, t('Add coupon'));
$this
->drupalGet('checkout');
$this
->assertText(t('$4.00'), 'Order total decreased with second coupon value.');
}