コード例 #1
0
 /**
  * @param \SubscribePro\Service\Product\ProductInterface $product
  * @return \SubscribePro\Service\Product\ProductInterface
  * @throws \SubscribePro\Exception\EntityInvalidDataException
  * @throws \SubscribePro\Exception\HttpException
  */
 public function saveProduct(ProductInterface $product)
 {
     if (!$product->isValid()) {
         throw new EntityInvalidDataException('Not all required fields are set.');
     }
     $url = $product->isNew() ? '/services/v2/product.json' : "/services/v2/products/{$product->getId()}.json";
     $response = $this->httpClient->post($url, [self::API_NAME_PRODUCT => $product->getFormData()]);
     return $this->retrieveItem($response, self::API_NAME_PRODUCT, $product);
 }
コード例 #2
0
 /**
  * @param array $data
  * @param bool $isValid
  * @dataProvider isValidDataProvider
  */
 public function testIsValid($data, $isValid)
 {
     $this->product->importData($data);
     $this->assertEquals($isValid, $this->product->isValid());
 }