public function test_save() { /** === Test Data === */ $ORDER_ID = 2; $ITEMS = []; $ITEM = new \Praxigento\Pv\Service\Sale\Data\Item(); $ITEM->setItemId(4); $ITEM->setProductId(1); $ITEM->setStockId(1); $ITEM->setQuantity(10); $ITEMS[] = $ITEM; /** === Call and asserts === */ $obm = \Magento\Framework\App\ObjectManager::getInstance(); /** @var $call Call */ $call = $obm->get(\Praxigento\Pv\Service\ISale::class); $req = new Request\Save(); $req->setSaleOrderId($ORDER_ID); $req->setOrderItems($ITEMS); /** @var $resp Response\Save */ $resp = $call->save($req); $this->assertTrue($resp->isSucceed()); }
/** * @SuppressWarnings(PHPMD.ShortVariable) */ public function test_save() { /** === Test Data === */ $operId = 21; $datePaid = 'paid'; $prodId = 32; $stockId = 4; $itemId = 64; $pv = 12.44; $qty = 4; $item = $this->_mock(\Praxigento\Pv\Service\Sale\Data\Item::class); $items = [$item]; /** === Setup Mocks === */ // $def = $this->_manTrans->begin(); $mDef = $this->_mockTransactionDefinition(); $this->mManTrans->shouldReceive('begin')->once()->andReturn($mDef); // // FIRST ITERATION // // $prodId = $item->getProductId(); $item->shouldReceive('getProductId')->once()->andReturn($prodId); // $stockId = $item->getStockId(); $item->shouldReceive('getStockId')->once()->andReturn($stockId); // $itemId = $item->getItemId(); $item->shouldReceive('getItemId')->once()->andReturn($itemId); // $pv = $this->_repoStockItem->getPvByProductAndStock($prodId, $stockId); $this->mRepoStockItem->shouldReceive('getPvByProductAndStock')->once()->with($prodId, $stockId)->andReturn($pv); // $qty = $item->getQuantity(); $item->shouldReceive('getQuantity')->once()->andReturn($qty); // $this->_repoSaleItem->replace($eItem); $this->mRepoSaleItem->shouldReceive('replace')->once(); // // $this->_repoSale->replace($orderData); $this->mRepoSale->shouldReceive('replace')->once(); // $this->_manTrans->commit($def); $this->mManTrans->shouldReceive('commit')->once(); // $this->_manTrans->end($def); $this->mManTrans->shouldReceive('end')->once(); /** === Call and asserts === */ $req = new Request\Save(); $req->setSaleOrderId($operId); $req->setSaleOrderDatePaid($datePaid); $req->setOrderItems($items); $resp = $this->obj->save($req); $this->assertTrue($resp->isSucceed()); }