mirror of
https://github.com/wearepixel/laravel-cart.git
synced 2026-11-14 22:01:48 +00:00
test: add withCoupon test and fix withItems ID collision
This commit is contained in:
@@ -14,7 +14,8 @@ public function __construct(private Cart $cart) {}
|
|||||||
|
|
||||||
public function withItems(int $count): static
|
public function withItems(int $count): static
|
||||||
{
|
{
|
||||||
for ($i = 1; $i <= $count; $i++) {
|
$start = $this->cart->getContent()->count() + 1;
|
||||||
|
for ($i = $start; $i < $start + $count; $i++) {
|
||||||
$this->cart->add($i, "Test Item {$i}", 10.00, 1);
|
$this->cart->add($i, "Test Item {$i}", 10.00, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -57,4 +57,18 @@ function makeCartForFactory(): Cart
|
|||||||
|
|
||||||
expect(array_unique($ids))->toHaveCount(3);
|
expect(array_unique($ids))->toHaveCount(3);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test('withCoupon adds a coupon condition to the cart', function () {
|
||||||
|
$coupon = new class extends \Wearepixel\Cart\Coupons\Coupon {
|
||||||
|
protected string $code = 'SAVE10';
|
||||||
|
protected string $value = '-10%';
|
||||||
|
protected string $target = 'subtotal';
|
||||||
|
|
||||||
|
public function isValid(): bool { return true; }
|
||||||
|
};
|
||||||
|
|
||||||
|
$this->factory->withCoupon($coupon);
|
||||||
|
|
||||||
|
expect($this->cart->getCondition('SAVE10'))->not->toBeNull();
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user