public function testDiminuerQuantite() { $this->article->diminuerQuantite(4); $this->assertEquals(1, $this->article->getQte(), '1 quantity expected'); $this->article->diminuerQuantite(5); $this->assertEquals(0, $this->article->getQte(), '0 quantity expected'); }
/** * Ajoute un article au panier ou augmente de 1 sa quantité s'il est déjà dans le panier * * @param Article $unProduit * @param int $qte * * @throws InvalidArgumentException */ public function ajouterUnProduit(Article $unProduit, $qte) { if ($this->collProduit->cleExiste($unProduit->getNumArt())) { $produitPanier = $this->collProduit->getElement($unProduit->getNumArt()); if ($unProduit->getQte() + $produitPanier->getQte() > $unProduit->getQteStock()) { throw new InvalidArgumentException('Quantité en stock insuffisante'); } $this->augmenterQuantiteProduit($unProduit->getNumArt(), $qte); } else { $this->collProduit->ajouter($unProduit, $unProduit->getNumArt()); } }