Ejemplo n.º 1
0
 /**
  * test importFromAmazonResult
  *
  * @param mixed   $result
  * @param bool    $expectedResult
  * @param string  $expectedSku
  * @param integer $expectedInStockQuantity
  * @param integer $expectedTotalQuantity
  *
  * @dataProvider dataImportFromAmazonResult
  */
 public function testImportFromAmazonResult($result, $expectedResult, $expectedSku = null, $expectedInStockQuantity = null, $expectedTotalQuantity = null)
 {
     $this->assertEquals($expectedResult, $this->productSupply->importFromAmazonResult($result));
     if ($expectedResult) {
         $this->assertEquals($expectedSku, $this->productSupply->getSku());
         $this->assertEquals($expectedInStockQuantity, $this->productSupply->getInStockQuantity());
         $this->assertEquals($expectedTotalQuantity, $this->productSupply->getTotalQuantity());
     }
 }
Ejemplo n.º 2
0
 private function extractProductsFromInventoryList($inventoryList, $minimumInStockQuantity)
 {
     $xpath = new \DOMXpath($inventoryList);
     $xpath->registerNamespace('mws', 'http://mws.amazonaws.com/FulfillmentInventory/2010-10-01/');
     $products = $xpath->query('//mws:InventorySupplyList/mws:member');
     foreach ($products as $product) {
         /* @var \DOMElement $product */
         $inStockQuantity = (int) $product->getElementsByTagName('InStockSupplyQuantity')->item(0)->nodeValue;
         if ($inStockQuantity >= $minimumInStockQuantity) {
             $productSupply = new ProductSupply();
             $productSupply->importFromAmazonResult($product);
             $this->productSupplyList[] = $productSupply;
         }
     }
     $nextToken = $xpath->query('//mws:NextToken')->item(0);
     return $nextToken ? $nextToken->nodeValue : null;
 }