destroy(); $yard->add(1, 'A', 2, 10.0, false, false, ['weight' => 500]); $yard->add(2, 'B', 1, 10.0, false, false, ['weight' => 250]); expect($yard->weight())->toBe(1250); $yard->destroy(); }); it('wirft keinen Fehler bei nicht-numerischer Menge im Warenkorb', function () { $yard = Yard::instance('test-cart-weight'); $yard->destroy(); $cartItem = $yard->add(1, 'A', 1, 10.0, false, false, ['weight' => 500]); $yard->update($cartItem->rowId, '2,5'); expect($yard->weight())->toBe(1000); $yard->destroy(); }); it('wirft keinen Fehler bei nicht-numerischem Gewicht im Warenkorb', function () { $yard = Yard::instance('test-cart-weight'); $yard->destroy(); $yard->add(1, 'A', 2, 10.0, false, false, ['weight' => '500 g']); expect($yard->weight())->toBe(1000); $yard->destroy(); }); it('berücksichtigt nur Artikel ohne kostenlosen Versand', function () { $yard = Yard::instance('test-cart-weight'); $yard->destroy(); $yard->add(1, 'A', 2, 10.0, false, false, ['weight' => 500, 'no_free_shipping' => true]); $yard->add(2, 'B', 2, 10.0, false, false, ['weight' => 500, 'no_free_shipping' => false]); expect($yard->weightByFreeShipping())->toBe(1000); $yard->destroy(); }); });