/**
  * Test for getVersion() method
  *
  * @return void
  */
 public function testGetVersion()
 {
     $model = $this->objectManager->create('Magento\\Framework\\Mview\\View\\Changelog', ['resource' => $this->resource]);
     $model->setViewId('test_view_id_2');
     $model->create();
     $this->assertEquals(0, $model->getVersion());
     $changelogName = $this->resource->getTableName($model->getName());
     $this->connection->insert($changelogName, [$model->getColumnName() => mt_rand(1, 200)]);
     $this->assertEquals($this->connection->lastInsertId($changelogName, 'version_id'), $model->getVersion());
     $model->drop();
 }
Exemple #2
0
 /**
  * @param Node $data
  * @param Node $parentNode
  * @param Node $prevNode
  * @return Node
  */
 public function appendChild($data, $parentNode, $prevNode = null)
 {
     $orderSelect = $this->_conn->select();
     $orderSelect->from($this->_table, new \Zend_Db_Expr('MAX(' . $this->_conn->quoteIdentifier($this->_orderField) . ')'))->where($this->_conn->quoteIdentifier($this->_parentField) . '=' . $parentNode->getId());
     $order = $this->_conn->fetchOne($orderSelect);
     $data[$this->_parentField] = $parentNode->getId();
     $data[$this->_levelField] = $parentNode->getData($this->_levelField) + 1;
     $data[$this->_orderField] = $order + 1;
     $this->_conn->insert($this->_table, $data);
     $data[$this->_idField] = $this->_conn->lastInsertId();
     return parent::appendChild($data, $parentNode, $prevNode);
 }
 /**
  * Create $total Magento customers with emails "customer_$i[at]test.com" and save mapping to MageId into
  * $this->_testMageCustomers & $this->_testMageCustomersReverted
  *
  * ATTENTION: There is warning "Test method "_createMageCustomers" in test class "..." is not public."
  * in case of method's visibility is 'protected' (after $total argument was added).
  *
  * @param int $total total count of the Magento customers to be created.
  */
 protected function _createMageCustomers($total = 13)
 {
     $tbl = $this->_resource->getTableName(Cfg::ENTITY_MAGE_CUSTOMER);
     for ($i = 1; $i <= $total; $i++) {
         $email = "customer_{$i}@test.com";
         $this->_conn->insert($tbl, [Cfg::E_CUSTOMER_A_EMAIL => $email]);
         $id = $this->_conn->lastInsertId($tbl);
         $this->_mapCustomerMageIdByIndex[$i] = $id;
         $this->_mapCustomerIndexByMageId[$id] = $i;
         $this->_logger->debug("New Magento customer #{$i} is added with ID={$id} ({$email}).");
     }
     $this->_logger->debug("Total {$total} customer were added to Magento.");
 }
Exemple #4
0
 /**
  * Clear table and add root element
  *
  * @param array $data
  * @return string
  */
 public function clear($data = [])
 {
     // clearing table
     $this->_db->query('TRUNCATE ' . $this->_table);
     // prepare data for root element
     $data[$this->_pid] = 0;
     $data[$this->_left] = 1;
     $data[$this->_right] = 2;
     $data[$this->_level] = 0;
     try {
         $this->_db->insert($this->_table, $data);
     } catch (\PDOException $e) {
         echo $e->getMessage();
     }
     return $this->_db->lastInsertId();
 }
Exemple #5
0
 /**
  * Retrieve next value
  *
  * @return string
  */
 public function getNextValue()
 {
     $this->adapter->insert($this->meta->getSequenceTable(), []);
     $this->lastIncrementId = $this->adapter->lastInsertId($this->meta->getSequenceTable());
     return $this->getCurrentValue();
 }