private function checkProductSearchResult(ProductSearchResult $products) { $this->assertEquals(1234, $products->getProductCount()); foreach ($products as $product) { $this->checkProduct($product); } }
/** * * @param array $variants * @param array $errors * @param \AboutYou\SDK\Model\ProductSearchResult $productSearchResult * * @return static */ public static function create($variants, $errors, $productSearchResult) { $variantsResult = new static(); $variantsResult->errors = $errors; if ($productSearchResult === false || count($variants) === 0) { // no variant was found return $variantsResult; } // get products from product-search $products = $productSearchResult->getProducts(); foreach ($variants as $variantId => $productId) { if (isset($products[$productId]) === false) { // product was not delivered $variantsResult->errors[] = $variantId; continue; } $product = $products[$productId]; $variant = $product->getVariantById($variantId, true); if ($variant instanceof Variant) { $variantsResult->variants[$variantId] = $variant; } } return $variantsResult; }
/** * {@inheritdoc} * * @return Model\ProductSearchResult */ public function createProductSearchResult(stdClass $jsonObject) { return Model\ProductSearchResult::createFromJson($jsonObject, $this); }