# Code für Testwarenkorb

**URL:** <https://forum.oxid-esales.com/t/code-fur-testwarenkorb/61260>\
**Category:** Deutsches Forum\
**Tags:** development\
**Created:** [November 20, 2012, 2:55pm UTC](https://forum.oxid-esales.com/t/code-fur-testwarenkorb/61260 "2012-11-20T14:55:34Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![toxid](https://forum.oxid-esales.com/letter_avatar_proxy/v4/letter/t/bc79bd/32.png) [@toxid](https://forum.oxid-esales.com/u/toxid)\
**Post date:** [November 20, 2012, 2:55pm UTC](https://forum.oxid-esales.com/t/code-fur-testwarenkorb/61260/1 "2012-11-20T14:55:34Z")

</div>

Hallo.

Hat von Euch jemand gerade einen Code parat (und Lust und Erlaubnis, diesen zu veröffentlichen), der einen Test-Warenkorb zusammen stellt?

---

<div class="post-metadata">

**Author:** ![aggrosoft](https://forum.oxid-esales.com/letter_avatar_proxy/v4/letter/a/ea666f/32.png) [@aggrosoft](https://forum.oxid-esales.com/u/aggrosoft)\
**Post date:** [November 20, 2012, 4:08pm UTC](https://forum.oxid-esales.com/t/code-fur-testwarenkorb/61260/2 "2012-11-20T16:08:10Z")

</div>

[QUOTE=toxid;108859]Hallo.

Hat von Euch jemand gerade einen Code parat (und Lust und Erlaubnis, diesen zu veröffentlichen), der einen Test-Warenkorb zusammen stellt?[/QUOTE]

Hast du mal geschaut ob in den Unit Tests von Oxid eventuell sowas schon existiert? Generell wäre es ja nur nötig das oxBasket Objekt per addToBasket zu füttern. Das selbige kriegst du aus oxSession::getbasket()

---

<div class="post-metadata">

**Author:** ![toxid](https://forum.oxid-esales.com/letter_avatar_proxy/v4/letter/t/bc79bd/32.png) [@toxid](https://forum.oxid-esales.com/u/toxid)\
**Post date:** [November 20, 2012, 4:24pm UTC](https://forum.oxid-esales.com/t/code-fur-testwarenkorb/61260/3 "2012-11-20T16:24:20Z")

</div>

Danke für die Tipps. Ich habe erwartet, dass der Code in den Tests arg abstrahiert ist, aber ist er gar nicht. Irgendwie sowas müsste gehen:

```php

<?php

$aBasketItems = array(
    '1234' => 1,
    '1235' => 10,
    '1236' => 25,
);

$Basket = \oxNew('oxbasket');
foreach ($aBasketItems as $sId => $iAmount) {
    $Article = \oxNew('oxarticle');
    $Article->load($sId);
    $Basket->addToBasket($article, $iAmoint);
}

```

Ungestest…

---

<div class="post-metadata">

**Author:** ![toxid](https://forum.oxid-esales.com/letter_avatar_proxy/v4/letter/t/bc79bd/32.png) [@toxid](https://forum.oxid-esales.com/u/toxid)\
**Post date:** [November 20, 2012, 4:37pm UTC](https://forum.oxid-esales.com/t/code-fur-testwarenkorb/61260/4 "2012-11-20T16:37:36Z")

</div>

Ah, es werden Artikel-IDs erwartet, keine Objekte. Jetzt bekomme ich aber einen Fehler, dass die angegebene Menge ungültig ist, obwohl \<= verfügbare Menge.

---

<div class="post-metadata">

**Author:** ![aggrosoft](https://forum.oxid-esales.com/letter_avatar_proxy/v4/letter/a/ea666f/32.png) [@aggrosoft](https://forum.oxid-esales.com/u/aggrosoft)\
**Post date:** [November 20, 2012, 4:39pm UTC](https://forum.oxid-esales.com/t/code-fur-testwarenkorb/61260/5 "2012-11-20T16:39:21Z")

</div>

Pass auf dass du nicht versuchst Varianten Vater Artikel zu kaufen wenn die Option nicht angeschalten ist. Außerdem hast du einen Rechtschreibfehler in deinem Code im addToBasket schreibst du $iAmoint

---

<div class="post-metadata">

**Author:** ![toxid](https://forum.oxid-esales.com/letter_avatar_proxy/v4/letter/t/bc79bd/32.png) [@toxid](https://forum.oxid-esales.com/u/toxid)\
**Post date:** [November 20, 2012, 4:48pm UTC](https://forum.oxid-esales.com/t/code-fur-testwarenkorb/61260/6 "2012-11-20T16:48:00Z")

</div>

> [@aggrosoft;108880](#):
>
> Pass auf dass du nicht versuchst Varianten Vater Artikel zu kaufen wenn die Option nicht angeschalten ist.

Danke. In dem Shop gibt es eh nur Varianten zu kaufen unf die Artikelnummern sind Varianten-IDs.

> Außerdem hast du einen Rechtschreibfehler in deinem Code im addToBasket schreibst du $iAmoint

Danke! Das wars. Ich hasse diese Fehlerausgabenunterdrückerei! Wer sich das ausdedacht hat! Und wer es auch noch benutzt ebenso! Grrrr.

Also hier der Code für die Nachwelt:

```php

$aBasketItems = array(
    '1234' => 1,
    '1235' => 10,
    '1236' => 25,
);
$Basket = \oxNew('oxbasket');
foreach ($aBasketItems as $sId => $iAmount)
    $Basket->addToBasket($sId, $iAmount);

```

---

<div class="post-metadata">

**Author:** ![system](https://forum.oxid-esales.com/user_avatar/forum.oxid-esales.com/system/32/4245_2.png) [@system](https://forum.oxid-esales.com/u/system)\
**Post date:** [July 13, 2026, 8:12pm UTC](https://forum.oxid-esales.com/t/code-fur-testwarenkorb/61260/7 "2026-07-13T20:12:35Z")

</div>

Closed on July 13, 2026, 8:12pm UTC


