Example #1
0
 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');
 }
Example #2
0
 /**
  * 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());
     }
 }