public function test_CanTestForMissingFields() { $this->setExpectedException('Datapump\\Exception\\MissingProductData'); $requiredData = new RequiredData(); $requiredData->setSku('sku'); $product = new Simple($requiredData); $this->productholder->addProduct($product); }
public function __construct() { parent::__construct(); parent::initializeDatabase(); $this->itemholder = new ItemHolder(self::getLogger()); $this->simpleRequiredData = new RequiredData(); $this->simpleRequiredData->setShortDescription('short description')->setDescription('long description')->setTax(0)->setWeight(100); $this->configRequiredData = new RequiredData(); $this->configRequiredData->setShortDescription('short description')->setDescription('long description'); $config = new Configurable(clone $this->configRequiredData->setSku('config1')->setName('config1'), 'color'); $category = new Category(); $category->set('active-config'); $category->set('inactive-config', false); $category->set('level01/level02/level03'); $config->injectData($category); $config->addSimpleProduct(new Simple(clone $this->simpleRequiredData->setSku('configsimple-sku1')->setName('configsimple-sku1')->setQty(12)->setPrice(120)->set('special_price', 100)->set('color', 'blue'))); $config->addSimpleProduct(new Simple(clone $this->simpleRequiredData->setSku('configsimple-sku2')->setName('configsimple-sku2')->setQty(24)->setPrice(110)->set('special_price', 80)->set('color', 'green'))); $this->itemholder->addProduct($config); $this->itemholder->addProduct(new Simple(clone $this->simpleRequiredData->setSku('simple-sku1-dontmanagestock')->setQty(null)->setPrice(500)->setName('simple-sku1-dontmanagestock'))); $this->itemholder->addProduct(new Simple(clone $this->simpleRequiredData->setSku('simple-sku2')->setQty(10)->setPrice(400)->setName('simple-sku2'))); $this->itemholder->addProduct(new Simple(clone $this->simpleRequiredData->setSku('simple-sku3')->setQty(-10)->setPrice(300)->setName('simple-sku3'))); $this->itemholder->addProduct(new Simple(clone $this->simpleRequiredData->setSku('simple-sku4')->setQty(0)->setPrice(200)->setName('simple-sku4'))); $req = new RequiredData(); $req->setType(RequiredData::TYPE_SIMPLE)->setSku('foobar'); $this->itemholder->addProduct(new Imageproduct($req)); $product1 = new Stock(new RequiredData()); $product1->set('sku', 'stock-sku1')->set('qty', 10); $product2 = new Stock(new RequiredData()); $product2->set('sku', 'stock-sku2')->set('qty', 30); $this->itemholder->addProduct($product1)->addProduct($product2); $this->itemsInserted = $this->itemholder->countProducts(); }
public function test_AddConfigurableProductToHolder() { $product = new Configurable($this->configRequiredData, 'color'); $simpleproduct1 = new Simple(clone $this->simpleRequiredData); $simpleproduct1->set('color', 'blue'); $product->addSimpleProduct($simpleproduct1); $simpleproduct2 = new Simple(clone $this->simpleRequiredData); $simpleproduct2->set('sku', 'sku2'); $simpleproduct2->set('color', 'green'); $product->addSimpleProduct($simpleproduct2); $productholder = new ItemHolder(self::getLogger()); $productholder->addProduct($simpleproduct1)->addProduct($simpleproduct2); }
public function test_canDebug() { $holder = new ItemHolder(self::getLogger()); $product1 = new Simple(clone $this->requiredData->setSku('sku-1')); $product2 = new Simple(clone $this->requiredData->setSku('sku-2')); $product3 = new Simple(clone $this->requiredData->setSku('sku-3')); $holder->addProduct(array($product1, $product2, $product3)); $debug = $holder->import(true); $this->assertTrue(is_array($debug)); }