- * [
- * 'customer' => [
- * 3 => 'created_in',
- * 4 => 'prefix',
- * 5 => 'firstname'
- * ],
- * 'customer_address' => [
- * 26 => 'city',
- * 24 => 'company',
- * 27 => 'country_id'
- * ]
- * ]
- *
- * @return array
- * @throws \Migration\Exception
- */
- public function getSkippedAttributes()
- {
- if ($this->skipAttributes === null) {
- $this->skipAttributes = [];
- $entityTypeCodes = array_keys($this->readerGroups->getGroup('eav_entities'));
- foreach ($entityTypeCodes as $entityTypeCode) {
- $documents = $this->readerGroups->getGroup($entityTypeCode);
- foreach ($documents as $documentName => $key) {
- if ($key != 'entity_id') {
- continue;
- }
- foreach (array_keys($this->readerAttributes->getGroup($documentName)) as $attributeCode) {
- $eavAttributes = $this->getAttributesData($entityTypeCode);
- if (!isset($eavAttributes[$attributeCode])) {
- throw new \Migration\Exception(
- sprintf(
- 'Attribute %s does not exist in the type %s',
- $attributeCode,
- $entityTypeCode
- )
- );
- }
- $attributeId = $eavAttributes[$attributeCode]['attribute_id'];
- $this->skipAttributes[$entityTypeCode][$attributeId] = $attributeCode;
- }
- }
- }
- }
- return $this->skipAttributes;
- }
-
- /**
- * @param string $entityTypeCode
- * @param string $sourceDocName
- * @param string $destinationDocName
- * @param Record\Collection $destinationRecords
- * @return void
- */
- public function updateAttributeData(
- $entityTypeCode,
- $sourceDocName,
- $destinationDocName,
- Record\Collection $destinationRecords
- ) {
- if (!isset($this->sourceDocuments[$sourceDocName]) || $this->sourceDocuments[$sourceDocName] != 'entity_id') {
- return;
- }
- $records = [];
- /** @var Record $record */
- foreach ($destinationRecords as $record) {
- $records[] = $record->getValue('entity_id');
- }
-
- $attributeIdsByType = [];
- $attributeCodesById = [];
- $attributeCodes = array_keys($this->readerAttributes->getGroup($sourceDocName));
- foreach ($attributeCodes as $attributeCode) {
- $eavAttributes = $this->getAttributesData($entityTypeCode);
- if (is_array($eavAttributes) && isset($eavAttributes[$attributeCode])) {
- $attributeId = $eavAttributes[$attributeCode]['attribute_id'];
- $attributeBackendType = $eavAttributes[$attributeCode]['backend_type'];
- $attributeIdsByType[$attributeBackendType][] = $attributeId;
- $attributeCodesById[$attributeId] = $attributeCode;
- }
- }
-
- /** @var Mysql $adapter */
- $adapter = $this->source->getAdapter();
- $selects = [];
- foreach (array_keys($attributeIdsByType) as $type) {
- $select = $adapter->getSelect()
- ->from(
- ['et' => $this->source->addDocumentPrefix($sourceDocName . '_' . $type)],
- ['entity_id', 'attribute_id', 'value']
- )
- ->where('et.entity_id in (?)', $records)
- ->where('et.attribute_id in (?)', $attributeIdsByType[$type]);
- $selects[] = $select;
- }
- $query = $adapter->getSelect()->union($selects, \Zend_Db_Select::SQL_UNION_ALL);
-
- $recordAttributesData = $this->sortAttributesData(
- $query->getAdapter()->fetchAll($query),
- $attributeCodesById
- );
-
- $fieldsWithDefaults = $this->getFieldsWithDefaultValues($attributeCodes, $destinationDocName);
- $this->setAttributeData($destinationRecords, $recordAttributesData, $fieldsWithDefaults);
- }
-
- /**
- * Retrieves destination document fields with valid default values
- *
- * @param array $attributeCodes
- * @param string $destinationDocName
- * @return array
- * @throws \Migration\Exception
- */
- protected function getFieldsWithDefaultValues($attributeCodes, $destinationDocName)
- {
- $destinationDocName = $this->destination->addDocumentPrefix($destinationDocName);
- /** @var Mysql $adapter */
- $adapter = $this->destination->getAdapter();
- $structure = $adapter->getDocumentStructure($destinationDocName);
-
- $fields = [];
- foreach ($attributeCodes as $attributeCode) {
- if (!isset($structure[$attributeCode])) {
- throw new \Migration\Exception(
- sprintf('Destination document %s does not have attribute %s', $destinationDocName, $attributeCode)
- );
- }
- $fields[$attributeCode] =
- $structure[$attributeCode]['DEFAULT'] === null && $structure[$attributeCode]['NULLABLE'] === false ?
- '' :
- null;
- }
- return $fields;
- }
-
- /**
- * @param Record\Collection $destinationRecords
- * @param array $recordAttributesData
- * @param array $fieldsWithDefaults
- * @return void
- */
- public function setAttributeData(
- Record\Collection $destinationRecords,
- array $recordAttributesData,
- array $fieldsWithDefaults
- ) {
- /** @var Record $record */
- foreach ($destinationRecords as $record) {
- $recordEntityData = [];
- if (isset($recordAttributesData[$record->getValue('entity_id')])) {
- $recordEntityData = $recordAttributesData[$record->getValue('entity_id')];
- if ($this->configReader->getOption(self::UPGRADE_CUSTOMER_PASSWORD_HASH)) {
- $recordEntityData = $this->upgradeCustomerHash($recordEntityData);
- }
- }
- $data = $record->getData();
- $data = array_merge($fieldsWithDefaults, $data, $recordEntityData);
- $record->setData($data);
- }
- }
-
- /**
- * @param array $data
- * @param array $attributeCodesById
- * @return array
- */
- protected function sortAttributesData($data, $attributeCodesById)
- {
- $result = [];
- foreach ($data as $entityData) {
- $attributeCode = $attributeCodesById[$entityData['attribute_id']];
- $result[$entityData['entity_id']][$attributeCode] = $entityData['value'];
- }
- return $result;
- }
-
- /**
- * @param string $document
- * @return int
- */
- public function getSourceRecordsCount($document)
- {
- if ($this->sourceDocuments[$document] == 'entity_id') {
- return $this->source->getRecordsCount($document);
- }
- $attributeType = $this->getEntityTypeCodeByDocumentName($document);
- $skipAttributes = $this->getSkippedAttributes();
-
- /** @var Mysql $adapter */
- $adapter = $this->source->getAdapter();
- $query = $adapter->getSelect()
- ->from(
- [
- 'et' => $this->source->addDocumentPrefix($document)
- ],
- 'COUNT(*)'
- )
- ->where('et.attribute_id NOT IN (?)', array_keys($skipAttributes[$attributeType]));
- $count = $query->getAdapter()->fetchOne($query);
-
- return $count;
- }
-
- /**
- * Retrieves data for all attributes relative to $entityTypeCode entity type
- *
- * @param string $entityTypeCode
- * @return array
- */
- protected function getAttributesData($entityTypeCode)
- {
- if (!isset($this->eavAttributes[$entityTypeCode])) {
- $this->eavAttributes[$entityTypeCode] = [];
- /** @var Mysql $adapter */
- $adapter = $this->source->getAdapter();
- $query = $adapter->getSelect()
- ->from(
- ['et' => $this->source->addDocumentPrefix('eav_entity_type')],
- []
- )->join(
- ['ea' => $this->source->addDocumentPrefix('eav_attribute')],
- 'et.entity_type_id = ea.entity_type_id',
- [
- 'attribute_id',
- 'backend_type',
- 'attribute_code',
- 'entity_type_id'
- ]
- )->where(
- 'et.entity_type_code = ?',
- $entityTypeCode
- );
- $attributes = $query->getAdapter()->fetchAll($query);
-
- foreach ($attributes as $attribute) {
- $this->eavAttributes[$entityTypeCode][$attribute['attribute_code']] = $attribute;
- }
- }
- return $this->eavAttributes[$entityTypeCode];
- }
-
- /**
- * @throws \Zend_Db_Adapter_Exception
- * @return void
- */
- public function updateEavAttributes()
- {
- /** @var Mysql $adapter */
- $adapter = $this->destination->getAdapter();
- $query = $adapter->getSelect()
- ->from($this->destination->addDocumentPrefix('eav_entity_type'), ['entity_type_id', 'entity_type_code']);
- $entityTypes = $query->getAdapter()->fetchAll($query);
- $entityTypesByCode = [];
- foreach ($entityTypes as $entityType) {
- $entityTypesByCode[$entityType['entity_type_code']] = $entityType['entity_type_id'];
- }
-
- $entities = array_keys($this->readerGroups->getGroup('eav_entities'));
- foreach ($entities as $entity) {
- $documents = $this->readerGroups->getGroup($entity);
- foreach ($documents as $document => $key) {
- if ($key != 'entity_id') {
- continue;
- }
-
- $codes = implode("','", array_keys($this->readerAttributes->getGroup($document)));
- $where = [
- sprintf("attribute_code IN ('%s')", $codes),
- sprintf("entity_type_id = '%s'", $entityTypesByCode[$entity])
- ];
- $adapter->getSelect()->getAdapter()->update(
- $this->destination->addDocumentPrefix('eav_attribute'),
- ['backend_type' => 'static'],
- $where
- );
- }
- }
- }
-
- /**
- * Upgrade customer hash according M2 algorithm versions
- *
- * @param array $recordAttributesData
- * @return array
- */
- private function upgradeCustomerHash($recordAttributesData)
- {
- if (isset($recordAttributesData['password_hash'])) {
- $hash = $this->explodePasswordHash($recordAttributesData['password_hash']);
-
- if (strlen($hash[self::PASSWORD_HASH]) == 32) {
- $recordAttributesData['password_hash'] = implode(
- ':',
- [$hash[self::PASSWORD_HASH], $hash[self::PASSWORD_SALT], '0']
- );
- } elseif (strlen($hash[self::PASSWORD_HASH]) == 64) {
- $recordAttributesData['password_hash'] = implode(
- ':',
- [$hash[self::PASSWORD_HASH], $hash[self::PASSWORD_SALT], '1']
- );
- }
- }
-
- return $recordAttributesData;
- }
-
- /**
- * @param string $passwordHash
- * @return array
- */
- private function explodePasswordHash($passwordHash)
- {
- $explodedPassword = explode(':', $passwordHash, 2);
- $explodedPassword[self::PASSWORD_SALT] = isset($explodedPassword[self::PASSWORD_SALT])
- ? $explodedPassword[self::PASSWORD_SALT]
- : ''
- ;
- return $explodedPassword;
- }
-}
diff --git a/src/Migration/Step/Customer/Integrity.php b/src/Migration/Step/Customer/Integrity.php
index 03a69d8e0..0a1e811ed 100644
--- a/src/Migration/Step/Customer/Integrity.php
+++ b/src/Migration/Step/Customer/Integrity.php
@@ -11,6 +11,8 @@
use Migration\Reader\MapInterface;
use Migration\App\ProgressBar;
use Migration\ResourceModel;
+use Migration\Step\Customer\Model;
+use Migration\Config;
/**
* Class Integrity
@@ -20,42 +22,44 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
/**
* @var \Migration\Reader\Groups
*/
- protected $readerGroups;
+ private $readerGroups;
/**
* @var \Migration\Reader\Groups
*/
- protected $readerAttributes;
+ private $readerAttributes;
/**
- * @var Helper
+ * @var Model\AttributesDataToSkip
*/
- protected $helper;
+ private $attributesDataToSkip;
/**
* @param ProgressBar\LogLevelProcessor $progress
* @param Logger $logger
+ * @param Config $config
* @param ResourceModel\Source $source
* @param ResourceModel\Destination $destination
* @param MapFactory $mapFactory
- * @param Helper $helper
+ * @param Model\AttributesDataToSkip $attributesDataToSkip
* @param GroupsFactory $groupsFactory
* @param string $mapConfigOption
*/
public function __construct(
ProgressBar\LogLevelProcessor $progress,
Logger $logger,
+ Config $config,
ResourceModel\Source $source,
ResourceModel\Destination $destination,
MapFactory $mapFactory,
- Helper $helper,
+ Model\AttributesDataToSkip $attributesDataToSkip,
GroupsFactory $groupsFactory,
$mapConfigOption = 'customer_map_file'
) {
- $this->helper = $helper;
+ $this->attributesDataToSkip = $attributesDataToSkip;
$this->readerGroups = $groupsFactory->create('customer_document_groups_file');
$this->readerAttributes = $groupsFactory->create('customer_attribute_groups_file');
- parent::__construct($progress, $logger, $source, $destination, $mapFactory, $mapConfigOption);
+ parent::__construct($progress, $logger, $config, $source, $destination, $mapFactory, $mapConfigOption);
}
/**
@@ -67,7 +71,7 @@ public function perform()
$attributesError = false;
try {
- $this->helper->getSkippedAttributes();
+ $this->attributesDataToSkip->getSkippedAttributes();
} catch (\Migration\Exception $e) {
$this->logger->error($e->getMessage());
$attributesError = true;
diff --git a/src/Migration/Step/Customer/Model/AttributesDataToCustomerEntityRecords.php b/src/Migration/Step/Customer/Model/AttributesDataToCustomerEntityRecords.php
new file mode 100644
index 000000000..5d82a33b7
--- /dev/null
+++ b/src/Migration/Step/Customer/Model/AttributesDataToCustomerEntityRecords.php
@@ -0,0 +1,214 @@
+source = $source;
+ $this->readerAttributes = $groupsFactory->create('customer_attribute_groups_file');
+ $this->readerGroups = $groupsFactory->create('customer_document_groups_file');
+ $this->sourceDocuments = $this->readerGroups->getGroup('source_documents');
+ $this->configReader = $configReader;
+ $this->entityTypeCode = $entityTypeCode;
+ }
+
+ /**
+ * Fetch attribute values of customers
+ * form the data tables (e.g. customer_entity_int, customer_entity_varchar, customer_address_entity_text ...)
+ * and insert into customers entity records,
+ * which represents customer_entity and customer_address_entity tables
+ *
+ * @param string $sourceDocName
+ * @param Record\Collection $destinationRecords
+ * @return void
+ */
+ public function updateCustomerEntities(
+ $sourceDocName,
+ Record\Collection $destinationRecords
+ ) {
+ $entityAttributesData = [];
+ $attributeIdsByType = [];
+ $attributeCodesById = [];
+ $upgradeCustomerPassword = $this->configReader->getOption(self::UPGRADE_CUSTOMER_PASSWORD_HASH);
+ $entityTypeCode = $this->entityTypeCode->getEntityTypeCodeByDocumentName($sourceDocName);
+ $attributeCodes = array_keys($this->readerAttributes->getGroup($sourceDocName));
+ foreach ($attributeCodes as $attributeCode) {
+ $eavAttributes = $this->entityTypeCode->getAttributesData($entityTypeCode);
+ if (is_array($eavAttributes) && isset($eavAttributes[$attributeCode])) {
+ $attributeId = $eavAttributes[$attributeCode]['attribute_id'];
+ $attributeBackendType = $eavAttributes[$attributeCode]['backend_type'];
+ $attributeIdsByType[$attributeBackendType][] = $attributeId;
+ $attributeCodesById[$attributeId] = $attributeCode;
+ }
+ }
+ $attributesData = $this->fetchAttributesData($sourceDocName, $destinationRecords, $attributeIdsByType);
+ foreach ($attributesData as $attributeData) {
+ $attributeCode = $attributeCodesById[$attributeData['attribute_id']];
+ if ($upgradeCustomerPassword && $attributeCode == 'password_hash') {
+ $attributeData['value'] = $this->upgradeCustomerHash($attributeData['value']);
+ }
+ $entityAttributesData[$attributeData['entity_id']][$attributeCode] = $attributeData['value'];
+ }
+ $this->setAttributesData($destinationRecords, $entityAttributesData);
+ }
+
+ /**
+ * Fetch attribute values of customers form the data tables
+ * (e.g. customer_entity_int, customer_entity_varchar, customer_address_entity_text ...)
+ *
+ * @param $sourceDocName
+ * @param $destinationRecords
+ * @param $attributeIdsByType
+ * @return array
+ */
+ private function fetchAttributesData($sourceDocName, $destinationRecords, $attributeIdsByType)
+ {
+ $entityIds = [];
+ /** @var Record $record */
+ foreach ($destinationRecords as $record) {
+ $entityIds[] = $record->getValue('entity_id');
+ }
+ /** @var Mysql $adapter */
+ $adapter = $this->source->getAdapter();
+ $selects = [];
+ foreach (array_keys($attributeIdsByType) as $type) {
+ $select = $adapter->getSelect()
+ ->from(
+ ['et' => $this->source->addDocumentPrefix($sourceDocName . '_' . $type)],
+ ['entity_id', 'attribute_id', 'value']
+ )
+ ->where('et.entity_id in (?)', $entityIds)
+ ->where('et.attribute_id in (?)', $attributeIdsByType[$type]);
+ $selects[] = $select;
+ }
+ $query = $adapter->getSelect()->union($selects, \Zend_Db_Select::SQL_UNION_ALL);
+ return $query->getAdapter()->fetchAll($query);
+ }
+
+ /**
+ * Insert values of attributes into customer entity records
+ *
+ * @param Record\Collection $destinationRecords
+ * @param array $entityAttributesData
+ * @return void
+ */
+ private function setAttributesData(
+ Record\Collection $destinationRecords,
+ array $entityAttributesData
+ ) {
+ /** @var Record $record */
+ foreach ($destinationRecords as $record) {
+ $recordEntityData = [];
+ if (isset($entityAttributesData[$record->getValue('entity_id')])) {
+ $recordEntityData = $entityAttributesData[$record->getValue('entity_id')];
+ }
+ $data = $record->getData();
+ $dataDefault = $record->getDataDefault();
+ $data = array_merge($dataDefault, $data, $recordEntityData);
+ $record->setData($data);
+ }
+ }
+
+ /**
+ * Upgrade customer hash according M2 algorithm versions
+ *
+ * @param string $hash
+ * @return array
+ */
+ private function upgradeCustomerHash($hash)
+ {
+ if (isset($hash)) {
+ $hashExploded = $this->explodePasswordHash($hash);
+ if (strlen($hashExploded[self::PASSWORD_HASH]) == 32) {
+ $hash = implode(':', [$hashExploded[self::PASSWORD_HASH], $hashExploded[self::PASSWORD_SALT], '0']);
+ } elseif (strlen($hashExploded[self::PASSWORD_HASH]) == 64) {
+ $hash = implode(':', [$hashExploded[self::PASSWORD_HASH], $hashExploded[self::PASSWORD_SALT], '1']);
+ }
+ }
+ return $hash;
+ }
+
+ /**
+ * Split password hash to hash part and salt part
+ *
+ * @param string $passwordHash
+ * @return array
+ */
+ private function explodePasswordHash($passwordHash)
+ {
+ $explodedPassword = explode(':', $passwordHash, 2);
+ $explodedPassword[self::PASSWORD_SALT] = isset($explodedPassword[self::PASSWORD_SALT])
+ ? $explodedPassword[self::PASSWORD_SALT]
+ : ''
+ ;
+ return $explodedPassword;
+ }
+}
diff --git a/src/Migration/Step/Customer/Model/AttributesDataToSkip.php b/src/Migration/Step/Customer/Model/AttributesDataToSkip.php
new file mode 100644
index 000000000..9132862ec
--- /dev/null
+++ b/src/Migration/Step/Customer/Model/AttributesDataToSkip.php
@@ -0,0 +1,119 @@
+readerAttributes = $groupsFactory->create('customer_attribute_groups_file');
+ $this->readerGroups = $groupsFactory->create('customer_document_groups_file');
+ $this->entityTypeCode = $entityTypeCode;
+ }
+
+ /**
+ * Retrieves array with attributes which data should be skipped
+ * during migration of data tables
+ * (i.e. customer_entity_int, customer_entity_varchar, customer_address_entity_text ...)
+ *
+ * Sample of returning array:
+ *
+ * [
+ * 'customer' => [
+ * 3 => 'created_in',
+ * 4 => 'prefix',
+ * 5 => 'firstname'
+ * ],
+ * 'customer_address' => [
+ * 26 => 'city',
+ * 24 => 'company',
+ * 27 => 'country_id'
+ * ]
+ * ]
+ *
+ * @return array
+ * @throws \Migration\Exception
+ */
+ public function getSkippedAttributes($sourceDocumentName = null)
+ {
+ $skipAttributes = [];
+ $this->fetchSkippedAttributes();
+ if ($sourceDocumentName !== null) {
+ $entityTypeCode = $this->entityTypeCode->getEntityTypeCodeByDocumentName($sourceDocumentName);
+ return isset($this->skipAttributes[$entityTypeCode]) ? $this->skipAttributes[$entityTypeCode] : null;
+ } else {
+ foreach ($this->skipAttributes as $attributes) {
+ $skipAttributes += $attributes;
+ }
+ }
+ return $skipAttributes;
+ }
+
+ /**
+ * Fetch skipped attributes and store in class property variable
+ *
+ * @throws \Migration\Exception
+ */
+ private function fetchSkippedAttributes()
+ {
+ if ($this->skipAttributes !== null) {
+ return;
+ }
+ $this->skipAttributes = [];
+ $entityDocuments = array_keys($this->readerGroups->getGroup('source_entity_documents'));
+ foreach ($entityDocuments as $entityDocument) {
+ $entityTypeCode = $this->entityTypeCode->getEntityTypeCodeByDocumentName($entityDocument);
+ $eavAttributes = $this->entityTypeCode->getAttributesData($entityTypeCode);
+ $attributeCodes = array_keys($this->readerAttributes->getGroup($entityDocument));
+ foreach ($attributeCodes as $attributeCode) {
+ if (!isset($eavAttributes[$attributeCode])) {
+ throw new \Migration\Exception(
+ sprintf(
+ 'Attribute %s does not exist in the type %s',
+ $attributeCode,
+ $entityTypeCode
+ )
+ );
+ }
+ $attributeId = $eavAttributes[$attributeCode]['attribute_id'];
+ $this->skipAttributes[$entityTypeCode][$attributeId] = $attributeCode;
+ }
+ }
+ }
+}
diff --git a/src/Migration/Step/Customer/Model/AttributesToStatic.php b/src/Migration/Step/Customer/Model/AttributesToStatic.php
new file mode 100644
index 000000000..ab16a7565
--- /dev/null
+++ b/src/Migration/Step/Customer/Model/AttributesToStatic.php
@@ -0,0 +1,84 @@
+destination = $destination;
+ $this->readerAttributes = $groupsFactory->create('customer_attribute_groups_file');
+ $this->readerGroups = $groupsFactory->create('customer_document_groups_file');
+ $this->entityTypeCode = $entityTypeCode;
+ }
+
+ /**
+ * @throws \Zend_Db_Adapter_Exception
+ * @return void
+ */
+ public function update()
+ {
+ /** @var Mysql $adapter */
+ $adapter = $this->destination->getAdapter();
+ $query = $adapter->getSelect()
+ ->from($this->destination->addDocumentPrefix('eav_entity_type'), ['entity_type_id', 'entity_type_code']);
+ $entityTypes = $query->getAdapter()->fetchAll($query);
+ $entityTypesByCode = [];
+ foreach ($entityTypes as $entityType) {
+ $entityTypesByCode[$entityType['entity_type_code']] = $entityType['entity_type_id'];
+ }
+
+ $entityDocuments = array_keys($this->readerGroups->getGroup('source_entity_documents'));
+ foreach ($entityDocuments as $entityDocument) {
+ $entityTypeCode = $this->entityTypeCode->getEntityTypeCodeByDocumentName($entityDocument);
+ $codes = implode("','", array_keys($this->readerAttributes->getGroup($entityDocument)));
+ $where = [
+ sprintf("attribute_code IN ('%s')", $codes),
+ sprintf("entity_type_id = '%s'", $entityTypesByCode[$entityTypeCode])
+ ];
+ $adapter->getSelect()->getAdapter()->update(
+ $this->destination->addDocumentPrefix('eav_attribute'),
+ ['backend_type' => 'static'],
+ $where
+ );
+ }
+ }
+}
diff --git a/src/Migration/Step/Customer/Model/EntityTypeCode.php b/src/Migration/Step/Customer/Model/EntityTypeCode.php
new file mode 100644
index 000000000..3f4671428
--- /dev/null
+++ b/src/Migration/Step/Customer/Model/EntityTypeCode.php
@@ -0,0 +1,109 @@
+source = $source;
+ $this->readerGroups = $groupsFactory->create('customer_document_groups_file');
+ }
+
+ /**
+ * Retrieves data for all attributes relative to $entityTypeCode entity type
+ *
+ * @param string $entityTypeCode
+ * @return array
+ */
+ public function getAttributesData($entityTypeCode)
+ {
+ if (isset($this->eavAttributes[$entityTypeCode])) {
+ return $this->eavAttributes[$entityTypeCode];
+ }
+ $this->eavAttributes[$entityTypeCode] = [];
+ /** @var Mysql $adapter */
+ $adapter = $this->source->getAdapter();
+ $query = $adapter->getSelect()
+ ->from(
+ ['et' => $this->source->addDocumentPrefix('eav_entity_type')],
+ []
+ )->join(
+ ['ea' => $this->source->addDocumentPrefix('eav_attribute')],
+ 'et.entity_type_id = ea.entity_type_id',
+ [
+ 'attribute_id',
+ 'backend_type',
+ 'attribute_code',
+ 'entity_type_id'
+ ]
+ )->where(
+ 'et.entity_type_code = ?',
+ $entityTypeCode
+ );
+ $attributes = $query->getAdapter()->fetchAll($query);
+ foreach ($attributes as $attribute) {
+ $this->eavAttributes[$entityTypeCode][$attribute['attribute_code']] = $attribute;
+ }
+ return $this->eavAttributes[$entityTypeCode];
+ }
+
+ /**
+ * Retrieves entity type code by document name
+ *
+ * @param string $sourceDocName
+ * @return string|null
+ */
+ public function getEntityTypeCodeByDocumentName($sourceDocName)
+ {
+ if (empty($this->documentAttributeTypes)) {
+ $entityTypeCodes = array_keys($this->readerGroups->getGroup('eav_entities'));
+ foreach ($entityTypeCodes as $entityTypeCode) {
+ $documents = $this->readerGroups->getGroup($entityTypeCode);
+ $documents = array_keys($documents);
+ foreach ($documents as $documentName) {
+ $this->documentAttributeTypes[$documentName] = $entityTypeCode;
+ }
+ }
+ }
+ return isset($this->documentAttributeTypes[$sourceDocName]) ?
+ $this->documentAttributeTypes[$sourceDocName] :
+ null;
+ }
+}
diff --git a/src/Migration/Step/Customer/Model/SourceRecordsCounter.php b/src/Migration/Step/Customer/Model/SourceRecordsCounter.php
new file mode 100644
index 000000000..415549718
--- /dev/null
+++ b/src/Migration/Step/Customer/Model/SourceRecordsCounter.php
@@ -0,0 +1,76 @@
+source = $source;
+ $this->attributesDataToSkip = $attributesDataToSkip;
+ $entityDocuments = $groupsFactory->create('customer_document_groups_file')->getGroup('source_entity_documents');
+ $this->sourceEntityDocuments = array_keys($entityDocuments);
+ $this->entityTypeCode = $entityTypeCode;
+ }
+
+ /**
+ * Count records of given source document
+ *
+ * @param string $document
+ * @return int
+ */
+ public function getRecordsCount($document)
+ {
+ if (in_array($document, $this->sourceEntityDocuments)) {
+ return $this->source->getRecordsCount($document);
+ }
+ $skipAttributes = $this->attributesDataToSkip->getSkippedAttributes($document);
+ /** @var Mysql $adapter */
+ $adapter = $this->source->getAdapter();
+ $query = $adapter->getSelect()
+ ->from(
+ [
+ 'et' => $this->source->addDocumentPrefix($document)
+ ],
+ 'COUNT(*)'
+ )
+ ->where('et.attribute_id NOT IN (?)', array_keys($skipAttributes));
+ $count = $query->getAdapter()->fetchOne($query);
+ return $count;
+ }
+}
diff --git a/src/Migration/Step/Customer/Volume.php b/src/Migration/Step/Customer/Volume.php
index 3a8bcf76b..63207e38d 100644
--- a/src/Migration/Step/Customer/Volume.php
+++ b/src/Migration/Step/Customer/Volume.php
@@ -13,6 +13,7 @@
use Migration\Reader\Map;
use Migration\ResourceModel;
use Migration\App\ProgressBar;
+use Migration\Step\Customer\Model\SourceRecordsCounter;
/**
* Class Volume
@@ -22,32 +23,32 @@ class Volume extends AbstractVolume
/**
* @var ResourceModel\Source
*/
- protected $source;
+ private $source;
/**
* @var ResourceModel\Destination
*/
- protected $destination;
+ private $destination;
/**
* @var Map
*/
- protected $map;
+ private $map;
/**
* @var ProgressBar\LogLevelProcessor
*/
- protected $progress;
+ private $progress;
/**
* @var \Migration\Reader\Groups
*/
- protected $readerGroups;
+ private $readerGroups;
/**
- * @var Helper
+ * @var SourceRecordsCounter
*/
- protected $helper;
+ private $sourceRecordsCounter;
/**
* @param Logger $logger
@@ -56,7 +57,7 @@ class Volume extends AbstractVolume
* @param MapFactory $mapFactory
* @param ProgressBar\LogLevelProcessor $progress
* @param GroupsFactory $groupsFactory
- * @param Helper $helper
+ * @param SourceRecordsCounter $sourceRecordsCounter
*/
public function __construct(
Logger $logger,
@@ -65,9 +66,9 @@ public function __construct(
MapFactory $mapFactory,
ProgressBar\LogLevelProcessor $progress,
GroupsFactory $groupsFactory,
- Helper $helper
+ SourceRecordsCounter $sourceRecordsCounter
) {
- $this->helper = $helper;
+ $this->sourceRecordsCounter = $sourceRecordsCounter;
$this->source = $source;
$this->destination = $destination;
$this->map = $mapFactory->create('customer_map_file');
@@ -89,7 +90,7 @@ public function perform()
if (!$destinationName) {
continue;
}
- $sourceCount = $this->helper->getSourceRecordsCount($sourceDocName);
+ $sourceCount = $this->sourceRecordsCounter->getRecordsCount($sourceDocName);
$destinationCount = $this->destination->getRecordsCount($destinationName);
if ($sourceCount != $destinationCount) {
$this->errors[] = 'Mismatch of entities in the document: ' . $destinationName;
diff --git a/src/Migration/Step/DataIntegrity/Integrity.php b/src/Migration/Step/DataIntegrity/Integrity.php
index e859e08de..ca4bee39c 100644
--- a/src/Migration/Step/DataIntegrity/Integrity.php
+++ b/src/Migration/Step/DataIntegrity/Integrity.php
@@ -67,6 +67,7 @@ public function __construct(
*/
public function perform()
{
+ $logLevel = $this->configReader->getOption(Config::OPTION_AUTO_RESOLVE) ? Logger::WARNING : Logger::ERROR;
$documentList = $this->getDocumentList();
$this->progress->start(count($documentList), LogManager::LOG_LEVEL_INFO);
@@ -84,7 +85,7 @@ public function perform()
$this->progress->finish(LogManager::LOG_LEVEL_INFO);
foreach ($errorMessages as $message) {
- $this->logger->error($message);
+ $this->logger->addRecord($logLevel, $message);
}
return empty($errorMessages);
}
diff --git a/src/Migration/Step/DataIntegrity/Model/OrphanRecordsCheckerFactory.php b/src/Migration/Step/DataIntegrity/Model/OrphanRecordsCheckerFactory.php
index 60e9a4825..d1e8d6960 100644
--- a/src/Migration/Step/DataIntegrity/Model/OrphanRecordsCheckerFactory.php
+++ b/src/Migration/Step/DataIntegrity/Model/OrphanRecordsCheckerFactory.php
@@ -31,7 +31,7 @@ class OrphanRecordsCheckerFactory
*/
public function __construct(
ObjectManagerInterface $objectManager,
- $instanceName = '\\Migration\\Step\\DataIntegrity\\Model\\OrphanRecordsChecker'
+ $instanceName = \Migration\Step\DataIntegrity\Model\OrphanRecordsChecker::class
) {
$this->objectManager = $objectManager;
$this->instanceName = $instanceName;
diff --git a/src/Migration/Step/Eav/Data.php b/src/Migration/Step/Eav/Data.php
index 3e31e60a1..bb56c89b4 100644
--- a/src/Migration/Step/Eav/Data.php
+++ b/src/Migration/Step/Eav/Data.php
@@ -552,17 +552,15 @@ private function moveProductAttributeToGroup($recordsToSave, $attributeCode, $at
foreach ($recordsToSave as $record) {
$attributeId = $record->getValue('attribute_id');
$entityTypeId = $record->getValue('entity_type_id');
+ $attributeSetId = $record->getValue('attribute_set_id');
if (!isset($attributes[$attributeId])
|| $entityTypeId != $productEntityType['entity_type_id']
+ || $attributeCode != $attributes[$attributeId]['attribute_code']
+ || !array_key_exists($attributeSetId, $attributeSetGroups)
) {
continue;
}
- if ($attributes[$attributeId]['attribute_code'] == $attributeCode) {
- $record->setValue(
- 'attribute_group_id',
- $attributeSetGroups[$record->getValue('attribute_set_id')][$attributeGroupCode]
- );
- }
+ $record->setValue('attribute_group_id', $attributeSetGroups[$attributeSetId][$attributeGroupCode]);
}
return $recordsToSave;
}
@@ -605,6 +603,7 @@ private function addProductAttributeToGroup($recordsToSave, $attributeCode, $att
}
foreach ($attributeGroups as $attributeGroup) {
if ($attributeGroup['attribute_group_code'] == $attributeGroupCode
+ && array_key_exists($attributeGroup['attribute_set_id'], $attributeSets)
&& $attributeSets[$attributeGroup['attribute_set_id']]['entity_type_id'] == $productEntityTypeId
&& !isset($attributeSetGroupsFound[$attributeGroup['attribute_set_id']])
) {
diff --git a/src/Migration/Step/Eav/Integrity.php b/src/Migration/Step/Eav/Integrity.php
index 84a90726c..4f1e3d171 100644
--- a/src/Migration/Step/Eav/Integrity.php
+++ b/src/Migration/Step/Eav/Integrity.php
@@ -13,6 +13,7 @@
use Migration\ResourceModel;
use Migration\Step\Eav\Integrity\AttributeGroupNames as AttributeGroupNamesIntegrity;
use Migration\Step\Eav\Integrity\AttributeFrontendInput as AttributeFrontendInputIntegrity;
+use Migration\Config;
/**
* Class Integrity
@@ -37,6 +38,7 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
/**
* @param ProgressBar\LogLevelProcessor $progress
* @param Logger $logger
+ * @param Config $config
* @param ResourceModel\Source $source
* @param ResourceModel\Destination $destination
* @param MapFactory $mapFactory
@@ -44,10 +46,13 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
* @param AttributeGroupNamesIntegrity $attributeGroupNamesIntegrity
* @param AttributeFrontendInputIntegrity $attributeFrontendInputIntegrity
* @param string $mapConfigOption
+ *
+ * @SuppressWarnings(ExcessiveParameterList)
*/
public function __construct(
ProgressBar\LogLevelProcessor $progress,
Logger $logger,
+ Config $config,
ResourceModel\Source $source,
ResourceModel\Destination $destination,
MapFactory $mapFactory,
@@ -59,7 +64,7 @@ public function __construct(
$this->groups = $groupsFactory->create('eav_document_groups_file');
$this->attributeGroupNamesIntegrity = $attributeGroupNamesIntegrity;
$this->attributeFrontendInputIntegrity = $attributeFrontendInputIntegrity;
- parent::__construct($progress, $logger, $source, $destination, $mapFactory, $mapConfigOption);
+ parent::__construct($progress, $logger, $config, $source, $destination, $mapFactory, $mapConfigOption);
}
/**
diff --git a/src/Migration/Step/Eav/Integrity/AttributeFrontendInput.php b/src/Migration/Step/Eav/Integrity/AttributeFrontendInput.php
index c8a41525c..e0d47141a 100644
--- a/src/Migration/Step/Eav/Integrity/AttributeFrontendInput.php
+++ b/src/Migration/Step/Eav/Integrity/AttributeFrontendInput.php
@@ -79,8 +79,7 @@ private function getFrontendInputEmptyAttributes($records)
$result = [];
$filterGroupCodes = $this->helper->getAttributesGroupCodes('frontend_input_empty_allowed');
foreach ($records as $record) {
- if (
- empty($record['frontend_input']) &&
+ if (empty($record['frontend_input']) &&
(
!array_key_exists($record['attribute_code'], $filterGroupCodes) ||
!in_array($record['entity_type_id'], $filterGroupCodes[$record['attribute_code']])
diff --git a/src/Migration/Step/Log/Integrity.php b/src/Migration/Step/Log/Integrity.php
index d7e7bbf60..7e2133b67 100644
--- a/src/Migration/Step/Log/Integrity.php
+++ b/src/Migration/Step/Log/Integrity.php
@@ -11,6 +11,7 @@
use Migration\Reader\MapInterface;
use Migration\App\ProgressBar;
use Migration\ResourceModel;
+use Migration\Config;
/**
* Class Integrity
@@ -25,6 +26,7 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
/**
* @param ProgressBar\LogLevelProcessor $progress
* @param Logger $logger
+ * @param Config $config
* @param ResourceModel\Source $source
* @param ResourceModel\Destination $destination
* @param MapFactory $mapFactory
@@ -34,6 +36,7 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
public function __construct(
ProgressBar\LogLevelProcessor $progress,
Logger $logger,
+ Config $config,
ResourceModel\Source $source,
ResourceModel\Destination $destination,
MapFactory $mapFactory,
@@ -41,7 +44,7 @@ public function __construct(
$mapConfigOption = 'log_map_file'
) {
$this->readerGroups = $groupsFactory->create('log_document_groups_file');
- parent::__construct($progress, $logger, $source, $destination, $mapFactory, $mapConfigOption);
+ parent::__construct($progress, $logger, $config, $source, $destination, $mapFactory, $mapConfigOption);
}
/**
diff --git a/src/Migration/Step/Map/Data.php b/src/Migration/Step/Map/Data.php
index ee9a761f3..70aef17e1 100644
--- a/src/Migration/Step/Map/Data.php
+++ b/src/Migration/Step/Map/Data.php
@@ -21,6 +21,7 @@
/**
* Class Data
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ * @SuppressWarnings(CyclomaticComplexity)
*/
class Data implements StageInterface
{
@@ -93,6 +94,7 @@ class Data implements StageInterface
* @param Config $config
* @param Helper $helper
*
+ * @SuppressWarnings(CyclomaticComplexity)
* @SuppressWarnings(PHPMD.ExcessiveParameterList)
*/
public function __construct(
@@ -137,6 +139,9 @@ public function perform()
continue;
}
$destDocument = $this->destination->getDocument($destinationName);
+ if (!$destDocument) {
+ continue;
+ }
$this->destination->clearDocument($destinationName);
$this->logger->debug('migrating', ['table' => $sourceDocName]);
$recordTransformer = $this->getRecordTransformer($sourceDocument, $destDocument);
diff --git a/src/Migration/Step/Map/Delta.php b/src/Migration/Step/Map/Delta.php
index 1ba052d48..cb63e4b65 100644
--- a/src/Migration/Step/Map/Delta.php
+++ b/src/Migration/Step/Map/Delta.php
@@ -39,6 +39,7 @@ class Delta extends AbstractDelta
* @param ResourceModel\RecordFactory $recordFactory
* @param \Migration\RecordTransformerFactory $recordTransformerFactory
* @param Data $data
+ * @param Helper
*/
public function __construct(
Source $source,
@@ -48,9 +49,11 @@ public function __construct(
Destination $destination,
ResourceModel\RecordFactory $recordFactory,
\Migration\RecordTransformerFactory $recordTransformerFactory,
- Data $data
+ Data $data,
+ Helper $helper
) {
$this->data = $data;
+ $this->documentsDuplicateOnUpdate = $helper->getDocumentsDuplicateOnUpdate();
parent::__construct(
$source,
$mapFactory,
diff --git a/src/Migration/Step/Map/Helper.php b/src/Migration/Step/Map/Helper.php
index a3b438ed6..b749ec430 100644
--- a/src/Migration/Step/Map/Helper.php
+++ b/src/Migration/Step/Map/Helper.php
@@ -27,6 +27,9 @@ public function __construct(
) {
$this->readerGroups = $groupsFactory->create('map_document_groups');
$this->documentsDuplicateOnUpdate = $this->readerGroups->getGroup('destination_documents_update_on_duplicate');
+ foreach ($this->documentsDuplicateOnUpdate as $document => $fields) {
+ $this->documentsDuplicateOnUpdate[$document] = explode(',', $fields);
+ }
}
/**
@@ -35,10 +38,18 @@ public function __construct(
*/
public function getFieldsUpdateOnDuplicate($documentName)
{
- $updateOnDuplicate = false;
- if (array_key_exists($documentName, $this->documentsDuplicateOnUpdate)) {
- $updateOnDuplicate = explode(',', $this->documentsDuplicateOnUpdate[$documentName]);
- }
- return $updateOnDuplicate;
+ return (!empty($this->documentsDuplicateOnUpdate[$documentName]))
+ ? $this->documentsDuplicateOnUpdate[$documentName]
+ : false;
+ }
+
+ /**
+ * Get all documents for duplicate on update operation
+ *
+ * @return array
+ */
+ public function getDocumentsDuplicateOnUpdate()
+ {
+ return $this->documentsDuplicateOnUpdate;
}
}
diff --git a/src/Migration/Step/Map/Integrity.php b/src/Migration/Step/Map/Integrity.php
index af1378c87..49e6b7145 100644
--- a/src/Migration/Step/Map/Integrity.php
+++ b/src/Migration/Step/Map/Integrity.php
@@ -10,6 +10,7 @@
use Migration\Reader\MapInterface;
use Migration\Logger\Logger;
use Migration\App\ProgressBar;
+use Migration\Config;
/**
* Class Integrity
@@ -19,6 +20,7 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
/**
* @param ProgressBar\LogLevelProcessor $progress
* @param Logger $logger
+ * @param Config $config
* @param ResourceModel\Source $source
* @param ResourceModel\Destination $destination
* @param MapFactory $mapFactory
@@ -27,12 +29,13 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
public function __construct(
ProgressBar\LogLevelProcessor $progress,
Logger $logger,
+ Config $config,
ResourceModel\Source $source,
ResourceModel\Destination $destination,
MapFactory $mapFactory,
$mapConfigOption = 'map_file'
) {
- parent::__construct($progress, $logger, $source, $destination, $mapFactory, $mapConfigOption);
+ parent::__construct($progress, $logger, $config, $source, $destination, $mapFactory, $mapConfigOption);
}
/**
diff --git a/src/Migration/Step/Map/Volume.php b/src/Migration/Step/Map/Volume.php
index 48fed7916..8fc20f944 100644
--- a/src/Migration/Step/Map/Volume.php
+++ b/src/Migration/Step/Map/Volume.php
@@ -91,11 +91,13 @@ public function perform()
foreach ($sourceDocuments as $sourceDocName) {
$this->progressBar->advance();
$destinationName = $this->map->getDocumentMap($sourceDocName, MapInterface::TYPE_SOURCE);
- if (!$destinationName) {
+ if (!$destinationName
+ || !$this->destination->getDocument($destinationName)
+ || $this->helper->getFieldsUpdateOnDuplicate($destinationName)
+ ) {
continue;
}
- $distinctFields = $this->helper->getFieldsUpdateOnDuplicate($destinationName);
- $sourceCount = $this->source->getRecordsCount($sourceDocName, true, $distinctFields);
+ $sourceCount = $this->source->getRecordsCount($sourceDocName, true);
$destinationCount = $this->getDestinationRecordsCount($destinationName);
if ($sourceCount != $destinationCount) {
$this->errors[] = 'Mismatch of entities in the document: ' . $destinationName;
diff --git a/src/Migration/Step/OrderGrids/Helper.php b/src/Migration/Step/OrderGrids/Helper.php
index f7abfb552..e4c300fe6 100644
--- a/src/Migration/Step/OrderGrids/Helper.php
+++ b/src/Migration/Step/OrderGrids/Helper.php
@@ -57,7 +57,7 @@ protected function getDocumentData($destinationDocument)
*/
protected function getColumnsData($gridName)
{
- switch ($gridName){
+ switch ($gridName) {
case 'sales_order_grid':
return $this->getSalesOrderColumnsGrid();
case 'sales_invoice_grid':
diff --git a/src/Migration/Step/OrderGrids/Integrity.php b/src/Migration/Step/OrderGrids/Integrity.php
index 947e40baa..ba6404b2e 100644
--- a/src/Migration/Step/OrderGrids/Integrity.php
+++ b/src/Migration/Step/OrderGrids/Integrity.php
@@ -8,6 +8,7 @@
use Migration\ResourceModel;
use Migration\Logger\Logger;
use Migration\App\ProgressBar;
+use Migration\Config;
/**
* Class Integrity
@@ -42,6 +43,7 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
/**
* @param ProgressBar\LogLevelProcessor $progress
* @param Logger $logger
+ * @param Config $config
* @param ResourceModel\Source $source
* @param ResourceModel\Destination $destination
* @param Helper $helper
@@ -49,12 +51,14 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
public function __construct(
ProgressBar\LogLevelProcessor $progress,
Logger $logger,
+ Config $config,
ResourceModel\Source $source,
ResourceModel\Destination $destination,
Helper $helper
) {
$this->progress = $progress;
$this->logger = $logger;
+ $this->config = $config;
$this->source = $source;
$this->destination = $destination;
$this->helper = $helper;
diff --git a/src/Migration/Step/OrderGridsEE/Helper.php b/src/Migration/Step/OrderGridsEE/Helper.php
index 66aebc46c..5ce6051c3 100644
--- a/src/Migration/Step/OrderGridsEE/Helper.php
+++ b/src/Migration/Step/OrderGridsEE/Helper.php
@@ -37,7 +37,7 @@ protected function getColumnsData($gridName)
{
$columnsData = parent::getColumnsData($gridName);
if (!$columnsData) {
- switch ($gridName){
+ switch ($gridName) {
case 'magento_sales_order_grid_archive':
$columnsData = $this->getSalesOrderColumnsGrid();
break;
@@ -50,7 +50,8 @@ protected function getColumnsData($gridName)
case 'magento_sales_creditmemo_grid_archive':
$columnsData = $this->getSalesCreditMemoColumnsGrid();
break;
- default: null;
+ default:
+ null;
}
}
return $columnsData;
diff --git a/src/Migration/Step/OrderGridsEE/Integrity.php b/src/Migration/Step/OrderGridsEE/Integrity.php
index 564f188bd..b4ffda0ae 100644
--- a/src/Migration/Step/OrderGridsEE/Integrity.php
+++ b/src/Migration/Step/OrderGridsEE/Integrity.php
@@ -8,6 +8,7 @@
use Migration\ResourceModel;
use Migration\Logger\Logger;
use Migration\App\ProgressBar;
+use Migration\Config;
/**
* Class Integrity
@@ -17,6 +18,7 @@ class Integrity extends \Migration\Step\OrderGrids\Integrity
/**
* @param ProgressBar\LogLevelProcessor $progress
* @param Logger $logger
+ * @param Config $config
* @param ResourceModel\Source $source
* @param ResourceModel\Destination $destination
* @param Helper $helper
@@ -24,10 +26,11 @@ class Integrity extends \Migration\Step\OrderGrids\Integrity
public function __construct(
ProgressBar\LogLevelProcessor $progress,
Logger $logger,
+ Config $config,
ResourceModel\Source $source,
ResourceModel\Destination $destination,
Helper $helper
) {
- parent::__construct($progress, $logger, $source, $destination, $helper);
+ parent::__construct($progress, $logger, $config, $source, $destination, $helper);
}
}
diff --git a/src/Migration/Step/PostProcessing/Model/EavLeftoverData.php b/src/Migration/Step/PostProcessing/Model/EavLeftoverData.php
index d32d2c4a8..b6ea769e3 100644
--- a/src/Migration/Step/PostProcessing/Model/EavLeftoverData.php
+++ b/src/Migration/Step/PostProcessing/Model/EavLeftoverData.php
@@ -83,7 +83,7 @@ public function getLeftoverAttributeIds()
public function getDocumentsToCheck()
{
$documents = array_keys($this->readerDocument->getGroup('documents_leftover_values'));
- if (!empty($this->editionMigrate) && $this->editionMigrate != Config::EDITION_MIGRATE_CE_TO_CE) {
+ if ($this->editionMigrate != Config::EDITION_MIGRATE_OPENSOURCE_TO_OPENSOURCE) {
$documents = array_merge(
$documents,
array_keys($this->readerDocument->getGroup('documents_leftover_values_ee'))
diff --git a/src/Migration/Step/SalesIncrement/Helper.php b/src/Migration/Step/SalesIncrement/Helper.php
index 3c30584b9..f3a940d26 100644
--- a/src/Migration/Step/SalesIncrement/Helper.php
+++ b/src/Migration/Step/SalesIncrement/Helper.php
@@ -215,6 +215,5 @@ protected function getEntityTypeIdByCode($entityTypeCodes)
$entityTypeIds[$record['entity_type_code']] = $record['entity_type_id'];
}
return $entityTypeIds;
-
}
}
diff --git a/src/Migration/Step/SalesIncrement/Integrity.php b/src/Migration/Step/SalesIncrement/Integrity.php
index 96aec6b30..424e69cdf 100644
--- a/src/Migration/Step/SalesIncrement/Integrity.php
+++ b/src/Migration/Step/SalesIncrement/Integrity.php
@@ -9,6 +9,7 @@
use Migration\Logger\Logger;
use Migration\App\ProgressBar;
use Migration\ResourceModel\Destination;
+use Migration\Config;
/**
* Class Integrity
@@ -38,17 +39,20 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
/**
* @param Destination $destination
* @param Logger $logger
+ * @param Config $config
* @param ProgressBar\LogLevelProcessor $progress
* @param Helper $helper
*/
public function __construct(
Destination $destination,
Logger $logger,
+ Config $config,
ProgressBar\LogLevelProcessor $progress,
Helper $helper
) {
$this->destination = $destination;
$this->logger = $logger;
+ $this->config = $config;
$this->progress = $progress;
$this->helper = $helper;
}
diff --git a/src/Migration/Step/SalesOrder/Integrity.php b/src/Migration/Step/SalesOrder/Integrity.php
index ddb1388e1..de73fe9c4 100644
--- a/src/Migration/Step/SalesOrder/Integrity.php
+++ b/src/Migration/Step/SalesOrder/Integrity.php
@@ -10,6 +10,7 @@
use Migration\Reader\MapInterface;
use Migration\ResourceModel;
use Migration\App\ProgressBar;
+use Migration\Config;
/**
* Class Integrity
@@ -24,6 +25,7 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
/**
* @param ProgressBar\LogLevelProcessor $progress
* @param Logger $logger
+ * @param Config $config
* @param ResourceModel\Source $source
* @param ResourceModel\Destination $destination
* @param MapFactory $mapFactory
@@ -33,13 +35,14 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
public function __construct(
ProgressBar\LogLevelProcessor $progress,
Logger $logger,
+ Config $config,
ResourceModel\Source $source,
ResourceModel\Destination $destination,
MapFactory $mapFactory,
Helper $helper,
$mapConfigOption = 'sales_order_map_file'
) {
- parent::__construct($progress, $logger, $source, $destination, $mapFactory, $mapConfigOption);
+ parent::__construct($progress, $logger, $config, $source, $destination, $mapFactory, $mapConfigOption);
$this->helper = $helper;
}
diff --git a/src/Migration/Step/Stores/Data.php b/src/Migration/Step/Stores/Data.php
index cd8efedc8..459cbc4d1 100644
--- a/src/Migration/Step/Stores/Data.php
+++ b/src/Migration/Step/Stores/Data.php
@@ -7,7 +7,11 @@
use Migration\App\Step\StageInterface;
use Migration\ResourceModel;
+use Migration\ResourceModel\Record;
use Migration\App\ProgressBar;
+use Migration\Reader\MapFactory;
+use Migration\Reader\Map;
+use Migration\Step\Stores\Model\DocumentsList;
/**
* Class Data
@@ -35,29 +39,45 @@ class Data implements StageInterface
protected $progress;
/**
- * @var Helper
+ * @var DocumentsList
*/
- protected $helper;
+ protected $documentsList;
+
+ /**
+ * @var Map
+ */
+ protected $map;
+
+ /**
+ * @var \Migration\RecordTransformerFactory
+ */
+ protected $recordTransformerFactory;
/**
* @param ProgressBar\LogLevelProcessor $progress
* @param ResourceModel\Source $source
* @param ResourceModel\Destination $destination
* @param ResourceModel\RecordFactory $recordFactory
- * @param Helper $helper
+ * @param DocumentsList $documentsList
+ * @param \Migration\RecordTransformerFactory $recordTransformerFactory
+ * @param MapFactory $mapFactory
*/
public function __construct(
ProgressBar\LogLevelProcessor $progress,
ResourceModel\Source $source,
ResourceModel\Destination $destination,
ResourceModel\RecordFactory $recordFactory,
- Helper $helper
+ DocumentsList $documentsList,
+ \Migration\RecordTransformerFactory $recordTransformerFactory,
+ MapFactory $mapFactory
) {
$this->progress = $progress;
$this->source = $source;
$this->destination = $destination;
$this->recordFactory = $recordFactory;
- $this->helper = $helper;
+ $this->documentsList = $documentsList;
+ $this->recordTransformerFactory = $recordTransformerFactory;
+ $this->map = $mapFactory->create('stores_map_file');
}
/**
@@ -65,25 +85,34 @@ public function __construct(
*/
public function perform()
{
- $this->progress->start(count($this->helper->getDocumentList()));
- $documents = $this->helper->getDocumentList();
+ $documents = $this->documentsList->getDocumentsMap();
+ $this->progress->start(count($documents));
foreach ($documents as $sourceDocName => $destDocName) {
$this->progress->advance();
$sourceDocument = $this->source->getDocument($sourceDocName);
$destinationDocument = $this->destination->getDocument($destDocName);
$this->destination->clearDocument($destDocName);
+ /** @var \Migration\RecordTransformer $recordTransformer */
+ $recordTransformer = $this->recordTransformerFactory->create(
+ [
+ 'sourceDocument' => $sourceDocument,
+ 'destDocument' => $destinationDocument,
+ 'mapReader' => $this->map
+ ]
+ );
+ $recordTransformer->init();
$pageNumber = 0;
while (!empty($sourceRecords = $this->source->getRecords($sourceDocName, $pageNumber))) {
$pageNumber++;
$recordsToSave = $destinationDocument->getRecords();
foreach ($sourceRecords as $recordData) {
- /** @var ResourceModel\Record $destinationRecord */
+ /** @var Record $sourceRecord */
+ $sourceRecord = $this->recordFactory->create(
+ ['document' => $sourceDocument, 'data' => $recordData]
+ );
+ /** @var Record $destRecord */
$destinationRecord = $this->recordFactory->create(['document' => $destinationDocument]);
- if ($this->haveEqualStructure($sourceDocument, $destinationDocument)) {
- $destinationRecord->setData($recordData);
- } else {
- $destinationRecord = $this->transformRecord($destinationRecord, $recordData);
- }
+ $recordTransformer->transform($sourceRecord, $destinationRecord);
$recordsToSave->addRecord($destinationRecord);
}
$this->destination->saveRecords($destinationDocument->getName(), $recordsToSave);
@@ -92,31 +121,4 @@ public function perform()
$this->progress->finish();
return true;
}
-
- /**
- * @param ResourceModel\Record $destinationRecord
- * @param array $recordData
- * @return ResourceModel\Record
- */
- protected function transformRecord($destinationRecord, $recordData)
- {
- foreach ($destinationRecord->getFields() as $recordField) {
- $destinationRecord->setValue($recordField, $recordData[$recordField]);
- }
- return $destinationRecord;
- }
-
- /**
- * @param ResourceModel\Document $sourceDocument
- * @param ResourceModel\Document $destDocument
- * @return bool
- */
- protected function haveEqualStructure(ResourceModel\Document $sourceDocument, ResourceModel\Document $destDocument)
- {
- $diff = array_diff_key(
- $sourceDocument->getStructure()->getFields(),
- $destDocument->getStructure()->getFields()
- );
- return empty($diff);
- }
}
diff --git a/src/Migration/Step/Stores/Helper.php b/src/Migration/Step/Stores/Helper.php
deleted file mode 100644
index 8e87e025d..000000000
--- a/src/Migration/Step/Stores/Helper.php
+++ /dev/null
@@ -1,24 +0,0 @@
- 'store',
- 'core_store_group' => 'store_group',
- 'core_website' => 'store_website'
- ];
- }
-}
diff --git a/src/Migration/Step/Stores/Integrity.php b/src/Migration/Step/Stores/Integrity.php
index b880e07f0..3839c07a3 100644
--- a/src/Migration/Step/Stores/Integrity.php
+++ b/src/Migration/Step/Stores/Integrity.php
@@ -6,7 +6,12 @@
namespace Migration\Step\Stores;
use Migration\ResourceModel;
+use Migration\Logger\Logger;
use Migration\App\ProgressBar;
+use Migration\Reader\MapInterface;
+use Migration\Reader\MapFactory;
+use Migration\Step\Stores\Model\DocumentsList;
+use Migration\Config;
/**
* Class Integrity
@@ -14,41 +19,32 @@
class Integrity extends \Migration\App\Step\AbstractIntegrity
{
/**
- * @var ResourceModel\Source
+ * @var DocumentsList
*/
- protected $source;
-
- /**
- * @var ResourceModel\Destination
- */
- protected $destination;
-
- /**
- * @var ProgressBar\LogLevelProcessor
- */
- protected $progress;
-
- /**
- * @var Helper
- */
- protected $helper;
+ protected $documentsList;
/**
+ * @param DocumentsList $documentsList
+ * @param Logger $logger
+ * @param Config $config
* @param ProgressBar\LogLevelProcessor $progress
* @param ResourceModel\Source $source
* @param ResourceModel\Destination $destination
- * @param Helper $helper
+ * @param MapFactory $mapFactory
+ * @param string $mapConfigOption
*/
public function __construct(
+ DocumentsList $documentsList,
+ Logger $logger,
+ Config $config,
ProgressBar\LogLevelProcessor $progress,
ResourceModel\Source $source,
ResourceModel\Destination $destination,
- Helper $helper
+ MapFactory $mapFactory,
+ $mapConfigOption = 'stores_map_file'
) {
- $this->progress = $progress;
- $this->source = $source;
- $this->destination = $destination;
- $this->helper = $helper;
+ parent::__construct($progress, $logger, $config, $source, $destination, $mapFactory, $mapConfigOption);
+ $this->documentsList = $documentsList;
}
/**
@@ -56,22 +52,21 @@ public function __construct(
*/
public function perform()
{
- $result = true;
- $this->progress->start(count($this->helper->getDocumentList()));
- foreach ($this->helper->getDocumentList() as $sourceName => $destinationName) {
- $this->progress->advance();
- $result &= (bool)$this->source->getDocument($sourceName);
- $result &= (bool)$this->destination->getDocument($destinationName);
- }
+ $this->progress->start($this->getIterationsCount());
+ $this->check($this->documentsList->getSourceDocuments(), MapInterface::TYPE_SOURCE);
+ $this->check($this->documentsList->getDestinationDocuments(), MapInterface::TYPE_DEST);
$this->progress->finish();
- return (bool)$result;
+ return $this->checkForErrors();
}
/**
- * {@inheritdoc}
+ * Get iterations count for step
+ *
+ * @return int
*/
protected function getIterationsCount()
{
- return 0;
+ return count($this->documentsList->getSourceDocuments())
+ + count($this->documentsList->getDestinationDocuments());
}
}
diff --git a/src/Migration/Step/Stores/Model/DocumentsList.php b/src/Migration/Step/Stores/Model/DocumentsList.php
new file mode 100644
index 000000000..f5fefab40
--- /dev/null
+++ b/src/Migration/Step/Stores/Model/DocumentsList.php
@@ -0,0 +1,42 @@
+getDocumentsMap();
+ return array_keys($map);
+ }
+
+ /**
+ * @return array
+ */
+ public function getDestinationDocuments()
+ {
+ $map = $this->getDocumentsMap();
+ return array_values($map);
+ }
+
+ /**
+ * @return array
+ */
+ public function getDocumentsMap()
+ {
+ return [
+ 'core_store' => 'store',
+ 'core_store_group' => 'store_group',
+ 'core_website' => 'store_website'
+ ];
+ }
+}
diff --git a/src/Migration/Step/Stores/Volume.php b/src/Migration/Step/Stores/Volume.php
index ccccf9831..91a1b24b9 100644
--- a/src/Migration/Step/Stores/Volume.php
+++ b/src/Migration/Step/Stores/Volume.php
@@ -9,6 +9,7 @@
use Migration\ResourceModel;
use Migration\App\ProgressBar;
use Migration\Logger\Logger;
+use Migration\Step\Stores\Model\DocumentsList;
/**
* Class Volume
@@ -18,57 +19,69 @@ class Volume extends AbstractVolume
/**
* @var ResourceModel\Source
*/
- protected $source;
+ private $source;
/**
* @var ResourceModel\Destination
*/
- protected $destination;
+ private $destination;
/**
* @var ProgressBar\LogLevelProcessor
*/
- protected $progress;
+ private $progress;
/**
- * @var Helper
+ * @var DocumentsList
*/
- protected $helper;
+ private $documentsList;
/**
* @param ProgressBar\LogLevelProcessor $progress
* @param ResourceModel\Source $source
* @param ResourceModel\Destination $destination
- * @param Helper $helper
+ * @param DocumentsList $documentsList
* @param Logger $logger
*/
public function __construct(
ProgressBar\LogLevelProcessor $progress,
ResourceModel\Source $source,
ResourceModel\Destination $destination,
- Helper $helper,
+ DocumentsList $documentsList,
Logger $logger
) {
$this->progress = $progress;
$this->source = $source;
$this->destination = $destination;
- $this->helper = $helper;
+ $this->documentsList = $documentsList;
parent::__construct($logger);
}
/**
- * {@inheritdoc}
+ * @return bool
*/
public function perform()
{
- $this->progress->start(count($this->helper->getDocumentList()));
- foreach ($this->helper->getDocumentList() as $sourceName => $destinationName) {
+ $this->progress->start($this->getIterationsCount());
+ foreach ($this->documentsList->getDocumentsMap() as $sourceDocumentName => $destinationDocumentName) {
$this->progress->advance();
- if ($this->source->getRecordsCount($sourceName) != $this->destination->getRecordsCount($destinationName)) {
- $this->errors[] = 'Mismatch of entities in the document: ' . $destinationName;
+ $sourceRecordsCount = $this->source->getRecordsCount($sourceDocumentName);
+ $destinationRecordsCount = $this->destination->getRecordsCount($destinationDocumentName);
+ if ($sourceRecordsCount != $destinationRecordsCount) {
+ $this->errors[] = 'Mismatch of entities in the document: ' . $destinationDocumentName;
}
}
$this->progress->finish();
return $this->checkForErrors(Logger::ERROR);
}
+
+ /**
+ * Get iterations count for step
+ *
+ * @return int
+ */
+ private function getIterationsCount()
+ {
+ return count($this->documentsList->getDocumentsMap());
+ }
}
diff --git a/src/Migration/Step/TierPrice/Data.php b/src/Migration/Step/TierPrice/Data.php
index 0d662875d..0c3ad8ad5 100644
--- a/src/Migration/Step/TierPrice/Data.php
+++ b/src/Migration/Step/TierPrice/Data.php
@@ -103,7 +103,6 @@ public function perform()
$this->progress->start(count($sourceDocuments), LogManager::LOG_LEVEL_INFO);
foreach ($sourceDocuments as $sourceDocName) {
-
$pageNumber = 0;
$this->logger->debug('migrating', ['table' => $sourceDocName]);
$this->progress->start($this->source->getRecordsCount($sourceDocName), LogManager::LOG_LEVEL_DEBUG);
diff --git a/src/Migration/Step/TierPrice/Integrity.php b/src/Migration/Step/TierPrice/Integrity.php
index fa71dd439..0dbef9a7d 100644
--- a/src/Migration/Step/TierPrice/Integrity.php
+++ b/src/Migration/Step/TierPrice/Integrity.php
@@ -10,6 +10,7 @@
use Migration\App\ProgressBar;
use Migration\Reader\MapInterface;
use Migration\Reader\MapFactory;
+use Migration\Config;
/**
* Class Integrity
@@ -44,6 +45,7 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
/**
* @param Helper $helper
* @param Logger $logger
+ * @param Config $config
* @param ProgressBar\LogLevelProcessor $progress
* @param ResourceModel\Source $source
* @param ResourceModel\Destination $destination
@@ -53,13 +55,14 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
public function __construct(
Helper $helper,
Logger $logger,
+ Config $config,
ProgressBar\LogLevelProcessor $progress,
ResourceModel\Source $source,
ResourceModel\Destination $destination,
MapFactory $mapFactory,
$mapConfigOption = 'tier_price_map_file'
) {
- parent::__construct($progress, $logger, $source, $destination, $mapFactory, $mapConfigOption);
+ parent::__construct($progress, $logger, $config, $source, $destination, $mapFactory, $mapConfigOption);
$this->helper = $helper;
}
diff --git a/src/Migration/Step/UrlRewrite/Helper.php b/src/Migration/Step/UrlRewrite/Helper.php
index a80a484be..e781644b4 100644
--- a/src/Migration/Step/UrlRewrite/Helper.php
+++ b/src/Migration/Step/UrlRewrite/Helper.php
@@ -67,8 +67,7 @@ private function processFieldsOfStagingModule($resourceType, $tableName, array $
$fieldStaging = $this->stagingConfig['field_staging'];
$tablesStaging = $this->stagingConfig['tables'];
- if (empty($this->editionMigrate)
- || $this->editionMigrate == Config::EDITION_MIGRATE_CE_TO_CE
+ if ($this->editionMigrate == Config::EDITION_MIGRATE_OPENSOURCE_TO_OPENSOURCE
|| $resourceType == MapInterface::TYPE_SOURCE
|| !in_array($tableName, $tablesStaging)
) {
diff --git a/src/Migration/Step/UrlRewrite/Version11300to2000.php b/src/Migration/Step/UrlRewrite/Version11300to2000.php
index 277044979..52d65a9cc 100644
--- a/src/Migration/Step/UrlRewrite/Version11300to2000.php
+++ b/src/Migration/Step/UrlRewrite/Version11300to2000.php
@@ -366,9 +366,7 @@ protected function migrateRewrites($source, $destination)
$categoryId = $sourceRecord->getValue('category_id');
$cmsPageId = $sourceRecord->getValue('cms_page_id');
if (!empty($productId) && !empty($categoryId)) {
- $length = strlen($categoryId);
- $metadata = sprintf('a:1:{s:11:"category_id";s:%s:"%s";}', $length, $categoryId);
- $destinationRecord->setValue('metadata', $metadata);
+ $destinationRecord->setValue('metadata', json_encode(['category_id' => $categoryId]));
$destinationRecord->setValue('entity_type', 'product');
$destinationRecord->setValue('entity_id', $productId);
$targetPath = "catalog/product/view/id/$productId/category/$categoryId";
diff --git a/src/Migration/Step/UrlRewrite/Version11410to2000.php b/src/Migration/Step/UrlRewrite/Version11410to2000.php
index 06f2f7d93..c8829c917 100644
--- a/src/Migration/Step/UrlRewrite/Version11410to2000.php
+++ b/src/Migration/Step/UrlRewrite/Version11410to2000.php
@@ -371,9 +371,7 @@ protected function migrateRewrites($source, $destination)
$categoryId = $sourceRecord->getValue('category_id');
$cmsPageId = $sourceRecord->getValue('cms_page_id');
if (!empty($productId) && !empty($categoryId)) {
- $length = strlen($categoryId);
- $metadata = sprintf('a:1:{s:11:"category_id";s:%s:"%s";}', $length, $categoryId);
- $destinationRecord->setValue('metadata', $metadata);
+ $destinationRecord->setValue('metadata', json_encode(['category_id' => $categoryId]));
$destinationRecord->setValue('entity_type', 'product');
$destinationRecord->setValue('entity_id', $productId);
$targetPath = "catalog/product/view/id/$productId/category/$categoryId";
diff --git a/src/Migration/Step/UrlRewrite/Version191to2000.php b/src/Migration/Step/UrlRewrite/Version191to2000.php
index 7a185de46..fdbc69327 100644
--- a/src/Migration/Step/UrlRewrite/Version191to2000.php
+++ b/src/Migration/Step/UrlRewrite/Version191to2000.php
@@ -223,7 +223,6 @@ protected function data()
$this->progress->advance();
$this->destination->saveRecords(self::DESTINATION, $destinationRecords);
$this->destination->saveRecords(self::DESTINATION_PRODUCT_CATEGORY, $destProductCategoryRecords);
-
}
$this->saveCmsPageRewrites();
$this->progress->finish();
@@ -309,7 +308,7 @@ private function transform(Record $record, Record $destRecord)
$destRecord->setValue('entity_type', $this->getRecordEntityType($record));
$metadata = $this->doRecordSerialization($record)
- ? serialize(['category_id' => $record->getValue('category_id')])
+ ? json_encode(['category_id' => $record->getValue('category_id')])
: null ;
$destRecord->setValue('metadata', $metadata);
diff --git a/src/Migration/Step/VisualMerchandiser/Integrity.php b/src/Migration/Step/VisualMerchandiser/Integrity.php
index 4863f932b..c3f549da8 100644
--- a/src/Migration/Step/VisualMerchandiser/Integrity.php
+++ b/src/Migration/Step/VisualMerchandiser/Integrity.php
@@ -12,6 +12,7 @@
use Migration\Reader\MapInterface;
use Migration\App\ProgressBar;
use Migration\ResourceModel;
+use Migration\Config;
class Integrity extends \Migration\App\Step\AbstractIntegrity
{
@@ -23,6 +24,7 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
/**
* @param ProgressBar\LogLevelProcessor $progress
* @param Logger $logger
+ * @param Config $config
* @param ResourceModel\Source $source
* @param ResourceModel\Destination $destination
* @param MapFactory $mapFactory
@@ -33,6 +35,7 @@ class Integrity extends \Migration\App\Step\AbstractIntegrity
public function __construct(
ProgressBar\LogLevelProcessor $progress,
Logger $logger,
+ Config $config,
ResourceModel\Source $source,
ResourceModel\Destination $destination,
MapFactory $mapFactory,
@@ -41,7 +44,7 @@ public function __construct(
$groupMapConfigOption = 'visual_merchandiser_document_groups'
) {
$this->readerGroups = $groupsFactory->create($groupMapConfigOption);
- parent::__construct($progress, $logger, $source, $destination, $mapFactory, $mapConfigOption);
+ parent::__construct($progress, $logger, $config, $source, $destination, $mapFactory, $mapConfigOption);
}
/**
diff --git a/src/Migration/cli_commands.php b/src/Migration/cli_commands.php
index b467eee2c..013e54d35 100644
--- a/src/Migration/cli_commands.php
+++ b/src/Migration/cli_commands.php
@@ -5,5 +5,5 @@
*/
if (PHP_SAPI == 'cli') {
- \Magento\Framework\Console\CommandLocator::register('Migration\Console\CommandList');
+ \Magento\Framework\Console\CommandLocator::register(\Migration\Console\CommandList::class);
}
diff --git a/tests/integration/framework/Helper.php b/tests/integration/framework/Helper.php
index fbe9d964f..f7e02f28d 100644
--- a/tests/integration/framework/Helper.php
+++ b/tests/integration/framework/Helper.php
@@ -8,6 +8,7 @@
/**
* Helper for preparing databases, initialize ObjectManager
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
*/
class Helper
{
@@ -103,18 +104,20 @@ public function getObjectManager()
$this->objectManager = $this->initObjectManager();
}
$this->objectManager->configure([
- 'preferences' => ['Migration\App\ProgressBar\LogLevelProcessor' => 'Migration\TestFramework\ProgressBar'],
- 'Migration\Logger\Logger' => [
+ 'preferences' => [
+ \Migration\App\ProgressBar\LogLevelProcessor::class => \Migration\TestFramework\ProgressBar::class
+ ],
+ \Migration\Logger\Logger::class => [
'arguments' => [
'handlers' => [
'quiet' => [
- 'instance' => '\Migration\TestFramework\QuietLogHandler'
+ 'instance' => \Migration\TestFramework\QuietLogHandler::class
]
]
]
],
- 'Migration\ResourceModel\Source' => ['shared' => false],
- 'Migration\ResourceModel\Destination' => ['shared' => false],
+ \Migration\ResourceModel\Source::class => ['shared' => false],
+ \Migration\ResourceModel\Destination::class => ['shared' => false],
]);
return $this->objectManager;
}
diff --git a/tests/integration/framework/Listener.php b/tests/integration/framework/Listener.php
index 3a3870bb5..f2e7c2512 100644
--- a/tests/integration/framework/Listener.php
+++ b/tests/integration/framework/Listener.php
@@ -6,7 +6,7 @@
namespace Migration\TestFramework;
-class Listener implements \PHPUnit_Framework_TestListener
+class Listener implements \PHPUnit\Framework\TestListener
{
/**
* @var Helper
@@ -26,7 +26,7 @@ public function __construct()
* @SuppressWarnings(PHPMD.ShortVariable)
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
- public function addError(\PHPUnit_Framework_Test $test, \Exception $e, $time)
+ public function addError(\PHPUnit\Framework\Test $test, \Exception $e, $time)
{
}
@@ -35,7 +35,7 @@ public function addError(\PHPUnit_Framework_Test $test, \Exception $e, $time)
* @SuppressWarnings(PHPMD.ShortVariable)
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
- public function addFailure(\PHPUnit_Framework_Test $test, \PHPUnit_Framework_AssertionFailedError $e, $time)
+ public function addFailure(\PHPUnit\Framework\Test $test, \PHPUnit\Framework\AssertionFailedError $e, $time)
{
}
@@ -44,7 +44,7 @@ public function addFailure(\PHPUnit_Framework_Test $test, \PHPUnit_Framework_Ass
* @SuppressWarnings(PHPMD.ShortVariable)
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
- public function addIncompleteTest(\PHPUnit_Framework_Test $test, \Exception $e, $time)
+ public function addWarning(\PHPUnit\Framework\Test $test, \PHPUnit\Framework\Warning $e, $time)
{
}
@@ -53,7 +53,7 @@ public function addIncompleteTest(\PHPUnit_Framework_Test $test, \Exception $e,
* @SuppressWarnings(PHPMD.ShortVariable)
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
- public function addRiskyTest(\PHPUnit_Framework_Test $test, \Exception $e, $time)
+ public function addIncompleteTest(\PHPUnit\Framework\Test $test, \Exception $e, $time)
{
}
@@ -62,14 +62,23 @@ public function addRiskyTest(\PHPUnit_Framework_Test $test, \Exception $e, $time
* @SuppressWarnings(PHPMD.ShortVariable)
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
- public function addSkippedTest(\PHPUnit_Framework_Test $test, \Exception $e, $time)
+ public function addRiskyTest(\PHPUnit\Framework\Test $test, \Exception $e, $time)
+ {
+ }
+
+ /**
+ * {@inheritdoc}
+ * @SuppressWarnings(PHPMD.ShortVariable)
+ * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+ */
+ public function addSkippedTest(\PHPUnit\Framework\Test $test, \Exception $e, $time)
{
}
/**
* {@inheritdoc}
*/
- public function startTestSuite(\PHPUnit_Framework_TestSuite $suite)
+ public function startTestSuite(\PHPUnit\Framework\TestSuite $suite)
{
$this->helper->setTestSuite($suite->getName());
}
@@ -77,15 +86,15 @@ public function startTestSuite(\PHPUnit_Framework_TestSuite $suite)
/**
* {@inheritdoc}
*/
- public function endTestSuite(\PHPUnit_Framework_TestSuite $suite)
+ public function endTestSuite(\PHPUnit\Framework\TestSuite $suite)
{
}
/**
* {@inheritdoc}
- * @param \PHPUnit_Framework_Test|\PHPUnit_Framework_TestCase $test
+ * @param \PHPUnit\Framework\Test|\PHPUnit\Framework\TestCase $test
*/
- public function startTest(\PHPUnit_Framework_Test $test)
+ public function startTest(\PHPUnit\Framework\Test $test)
{
$this->helper->loadFixture($test->getAnnotations());
}
@@ -94,7 +103,7 @@ public function startTest(\PHPUnit_Framework_Test $test)
* {@inheritdoc}
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
- public function endTest(\PHPUnit_Framework_Test $test, $time)
+ public function endTest(\PHPUnit\Framework\Test $test, $time)
{
}
}
diff --git a/tests/integration/framework/bootstrap.php b/tests/integration/framework/bootstrap.php
index 93a64b842..1a526b79e 100644
--- a/tests/integration/framework/bootstrap.php
+++ b/tests/integration/framework/bootstrap.php
@@ -4,10 +4,6 @@
* See COPYING.txt for license details.
*/
-set_time_limit(0);
-ini_set('display_errors', 1);
-error_reporting(E_ALL);
-
require_once __DIR__ . '/autoload.php';
if (!defined('TESTS_TEMP_DIR')) {
@@ -20,4 +16,10 @@
$filesystemAdapter->deleteDirectory(TESTS_TEMP_DIR);
}
mkdir(TESTS_TEMP_DIR);
+
+\Magento\Framework\Phrase::setRenderer(new \Magento\Framework\Phrase\Renderer\Placeholder());
+
+set_time_limit(0);
+ini_set('display_errors', 1);
+error_reporting(E_ALL);
date_default_timezone_set('UTC');
diff --git a/tests/integration/phpunit.xml.dist b/tests/integration/phpunit.xml.dist
index 754809aa4..16ad2b45f 100644
--- a/tests/integration/phpunit.xml.dist
+++ b/tests/integration/phpunit.xml.dist
@@ -6,7 +6,7 @@
*/
-->
hello1 {{widget type="catalog/product_widget_new" display_type="all_products" ' . 'products_count="10" template="catalog/product/widget/new/content/new_grid.phtml"}}
'; $contentConverted = 'hello1 {{widget type="Magento\\\\Catalog\\\\Block\\\\Product\\\\Widget\\\\NewWidget"' @@ -20,19 +20,21 @@ public function testHandle() . '
'; $fieldName = 'fieldname'; /** @var \Migration\ResourceModel\Record|\PHPUnit_Framework_MockObject_MockObject $record */ - $record = $this->getMock( - 'Migration\ResourceModel\Record', - ['getValue', 'setValue', 'getFields'], - [], - '', - false + $record = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['getValue', 'setValue', 'getFields'] ); $record->expects($this->once())->method('getValue')->with($fieldName)->willReturn($content); $record->expects($this->once())->method('setValue')->with($fieldName, $contentConverted); $record->expects($this->once())->method('getFields')->will($this->returnValue([$fieldName])); - $classMap = $this->getMock('Migration\Reader\ClassMap', ['getMap'], [], '', false); + $classMap = $this->createPartialMock( + \Migration\Reader\ClassMap::class, + ['getMap'] + ); $classMap->expects($this->once())->method('getMap')->willReturn($classMapData); - $record2 = $this->getMockBuilder('Migration\ResourceModel\Record')->disableOriginalConstructor()->getMock(); + $record2 = $this->getMockBuilder(\Migration\ResourceModel\Record::class) + ->disableOriginalConstructor() + ->getMock(); $handler = new \Migration\Handler\Placeholder($classMap); $handler->setField($fieldName); $handler->handle($record, $record2); diff --git a/tests/unit/testsuite/Migration/Handler/Rule/ConditionSqlTest.php b/tests/unit/testsuite/Migration/Handler/Rule/ConditionSqlTest.php index c3eb8fc0f..eb9ddf5cb 100644 --- a/tests/unit/testsuite/Migration/Handler/Rule/ConditionSqlTest.php +++ b/tests/unit/testsuite/Migration/Handler/Rule/ConditionSqlTest.php @@ -13,7 +13,7 @@ /** * Class ConditionSqlTest */ -class ConditionSqlTest extends \PHPUnit_Framework_TestCase +class ConditionSqlTest extends \PHPUnit\Framework\TestCase { /** * @var ConditionSql|\PHPUnit_Framework_MockObject_MockObject @@ -34,20 +34,20 @@ class ConditionSqlTest extends \PHPUnit_Framework_TestCase public function setUp() { /** @var Map|\PHPUnit_Framework_MockObject_MockObject $map */ - $this->map = $this->getMockBuilder('Migration\Reader\Map')->disableOriginalConstructor() + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->setMethods(['getDocumentMap']) ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('map_file')->willReturn($this->map); /** @var Source|\PHPUnit_Framework_MockObject_MockObject $source */ - $this->source = $this->getMockBuilder('Migration\ResourceModel\Source')->disableOriginalConstructor() + $this->source = $this->getMockBuilder(\Migration\ResourceModel\Source::class)->disableOriginalConstructor() ->setMethods(['getDocumentList', 'addDocumentPrefix']) ->getMock(); /** @var \Migration\ResourceModel\Destination|\PHPUnit_Framework_MockObject_MockObject $destination */ - $destination = $this->getMockBuilder('Migration\ResourceModel\Destination')->disableOriginalConstructor() + $destination = $this->getMockBuilder(\Migration\ResourceModel\Destination::class)->disableOriginalConstructor() ->setMethods(['addDocumentPrefix']) ->getMock(); $destination->expects($this->any())->method('addDocumentPrefix')->will($this->returnCallback(function ($value) { @@ -63,12 +63,12 @@ public function setUp() public function testHandle() { /** @var Record|\PHPUnit_Framework_MockObject_MockObject $recordToHandle */ - $recordToHandle = $this->getMockBuilder('Migration\ResourceModel\Record') + $recordToHandle = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->setMethods(['getValue', 'setValue', 'getFields']) ->disableOriginalConstructor() ->getMock(); /** @var Record $oppositeRecord|\PHPUnit_Framework_MockObject_MockObject */ - $oppositeRecord = $this->getMockBuilder('Migration\ResourceModel\Record') + $oppositeRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); diff --git a/tests/unit/testsuite/Migration/Handler/Rule/CustomerSegmentConditionSqlTest.php b/tests/unit/testsuite/Migration/Handler/Rule/CustomerSegmentConditionSqlTest.php index 55e0a6bdf..ddc522c38 100644 --- a/tests/unit/testsuite/Migration/Handler/Rule/CustomerSegmentConditionSqlTest.php +++ b/tests/unit/testsuite/Migration/Handler/Rule/CustomerSegmentConditionSqlTest.php @@ -13,7 +13,7 @@ /** * Class CustomerSegmentConditionSqlTest */ -class CustomerSegmentConditionSqlTest extends \PHPUnit_Framework_TestCase +class CustomerSegmentConditionSqlTest extends \PHPUnit\Framework\TestCase { /** * @var ConditionSql|\PHPUnit_Framework_MockObject_MockObject @@ -37,27 +37,27 @@ class CustomerSegmentConditionSqlTest extends \PHPUnit_Framework_TestCase public function setUp() { /** @var Map|\PHPUnit_Framework_MockObject_MockObject $map */ - $this->mapMain = $this->getMockBuilder('Migration\Reader\Map')->disableOriginalConstructor() + $this->mapMain = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->setMethods(['getDocumentMap']) ->getMock(); /** @var Map|\PHPUnit_Framework_MockObject_MockObject $map */ - $this->mapSalesOrder = $this->getMockBuilder('Migration\Reader\Map')->disableOriginalConstructor() + $this->mapSalesOrder = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->setMethods(['getDocumentMap']) ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->at(0))->method('create')->with('map_file')->willReturn($this->mapMain); $mapFactory->expects($this->at(1))->method('create')->with('sales_order_map_file') ->willReturn($this->mapSalesOrder); /** @var Source|\PHPUnit_Framework_MockObject_MockObject $source */ - $this->source = $this->getMockBuilder('Migration\ResourceModel\Source')->disableOriginalConstructor() + $this->source = $this->getMockBuilder(\Migration\ResourceModel\Source::class)->disableOriginalConstructor() ->setMethods(['getDocumentList', 'addDocumentPrefix']) ->getMock(); /** @var \Migration\ResourceModel\Destination|\PHPUnit_Framework_MockObject_MockObject $destination */ - $destination = $this->getMockBuilder('Migration\ResourceModel\Destination')->disableOriginalConstructor() + $destination = $this->getMockBuilder(\Migration\ResourceModel\Destination::class)->disableOriginalConstructor() ->setMethods(['addDocumentPrefix']) ->getMock(); $destination->expects($this->any())->method('addDocumentPrefix')->will($this->returnCallback(function ($value) { @@ -73,12 +73,12 @@ public function setUp() public function testHandle() { /** @var Record|\PHPUnit_Framework_MockObject_MockObject $recordToHandle */ - $recordToHandle = $this->getMockBuilder('Migration\ResourceModel\Record') + $recordToHandle = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->setMethods(['getValue', 'setValue', 'getFields']) ->disableOriginalConstructor() ->getMock(); /** @var Record $oppositeRecord|\PHPUnit_Framework_MockObject_MockObject */ - $oppositeRecord = $this->getMockBuilder('Migration\ResourceModel\Record') + $oppositeRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); diff --git a/tests/unit/testsuite/Migration/Handler/Rule/NormalizationIdsTest.php b/tests/unit/testsuite/Migration/Handler/Rule/NormalizationIdsTest.php index 729cf0fdb..f3b7c1de5 100644 --- a/tests/unit/testsuite/Migration/Handler/Rule/NormalizationIdsTest.php +++ b/tests/unit/testsuite/Migration/Handler/Rule/NormalizationIdsTest.php @@ -12,7 +12,7 @@ /** * Class NormalizationIdsTest */ -class NormalizationIdsTest extends \PHPUnit_Framework_TestCase +class NormalizationIdsTest extends \PHPUnit\Framework\TestCase { /** * @var ConditionSql|\PHPUnit_Framework_MockObject_MockObject @@ -49,14 +49,15 @@ class NormalizationIdsTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->destination = $this->getMockBuilder('Migration\ResourceModel\Destination')->disableOriginalConstructor() + $this->destination = $this->getMockBuilder(\Migration\ResourceModel\Destination::class) + ->disableOriginalConstructor() ->setMethods(['clearDocument', 'saveRecords']) ->getMock(); - $this->config = $this->getMockBuilder('\Migration\Config')->disableOriginalConstructor() + $this->config = $this->getMockBuilder(\Migration\Config::class)->disableOriginalConstructor() ->setMethods(['getOption']) ->getMock(); $this->config->expects($this->once())->method('getOption') - ->willReturn(\Migration\Config::EDITION_MIGRATE_CE_TO_CE); + ->willReturn(\Migration\Config::EDITION_MIGRATE_OPENSOURCE_TO_OPENSOURCE); $this->handler = new NormalizationIds( $this->destination, $this->config, @@ -80,12 +81,12 @@ public function testHandle() ]; /** @var Record|\PHPUnit_Framework_MockObject_MockObject $recordToHandle */ - $recordToHandle = $this->getMockBuilder('Migration\ResourceModel\Record') + $recordToHandle = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->setMethods(['getValue', 'getFields']) ->disableOriginalConstructor() ->getMock(); /** @var Record $oppositeRecord|\PHPUnit_Framework_MockObject_MockObject */ - $oppositeRecord = $this->getMockBuilder('Migration\ResourceModel\Record') + $oppositeRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); diff --git a/tests/unit/testsuite/Migration/Handler/Rule/SerializedDataTest.php b/tests/unit/testsuite/Migration/Handler/Rule/SerializedDataTest.php index bd6d5f479..42778b3ac 100644 --- a/tests/unit/testsuite/Migration/Handler/Rule/SerializedDataTest.php +++ b/tests/unit/testsuite/Migration/Handler/Rule/SerializedDataTest.php @@ -10,7 +10,7 @@ /** * Class SerializedDataTest */ -class SerializedDataTest extends \PHPUnit_Framework_TestCase +class SerializedDataTest extends \PHPUnit\Framework\TestCase { /** * @return void @@ -27,15 +27,15 @@ public function testHandle() ]); /** @var Record|\PHPUnit_Framework_MockObject_MockObject $recordToHandle */ - $recordToHandle = $this->getMockBuilder('Migration\ResourceModel\Record') + $recordToHandle = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->setMethods(['getValue', 'setValue', 'getFields']) ->disableOriginalConstructor() ->getMock(); /** @var Record|\PHPUnit_Framework_MockObject_MockObject $oppositeRecord */ - $oppositeRecord = $this->getMockBuilder('Migration\ResourceModel\Record') + $oppositeRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); - $classMap = $this->getMockBuilder('\Migration\Reader\ClassMap')->disableOriginalConstructor() + $classMap = $this->getMockBuilder(\Migration\Reader\ClassMap::class)->disableOriginalConstructor() ->setMethods(['convertClassName']) ->getMock(); $classMap->expects($this->exactly(2))->method('convertClassName')->will($this->returnValueMap([ diff --git a/tests/unit/testsuite/Migration/Handler/SalesOrderStatusState/SetVisibleOnFrontTest.php b/tests/unit/testsuite/Migration/Handler/SalesOrderStatusState/SetVisibleOnFrontTest.php index feeca7cd5..4ca7d3050 100644 --- a/tests/unit/testsuite/Migration/Handler/SalesOrderStatusState/SetVisibleOnFrontTest.php +++ b/tests/unit/testsuite/Migration/Handler/SalesOrderStatusState/SetVisibleOnFrontTest.php @@ -10,7 +10,7 @@ /** * Class SetVisibleOnFrontTest */ -class SetVisibleOnFrontTest extends \PHPUnit_Framework_TestCase +class SetVisibleOnFrontTest extends \PHPUnit\Framework\TestCase { /** * @var \PHPUnit_Framework_MockObject_MockObject|Record @@ -27,10 +27,10 @@ class SetVisibleOnFrontTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->recordToHandle = $this->getMockBuilder('Migration\ResourceModel\Record') + $this->recordToHandle = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->setMethods(['getValue', 'setValue', 'getFields']) ->disableOriginalConstructor()->getMock(); - $this->oppositeRecord = $this->getMockBuilder('Migration\ResourceModel\Record') + $this->oppositeRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); } diff --git a/tests/unit/testsuite/Migration/Handler/SequenceTest.php b/tests/unit/testsuite/Migration/Handler/SequenceTest.php index 56e0710d7..fa64bdb75 100644 --- a/tests/unit/testsuite/Migration/Handler/SequenceTest.php +++ b/tests/unit/testsuite/Migration/Handler/SequenceTest.php @@ -6,7 +6,7 @@ namespace Migration\Handler; -class SequenceTest extends \PHPUnit_Framework_TestCase +class SequenceTest extends \PHPUnit\Framework\TestCase { /** * @param string $table @@ -21,26 +21,34 @@ public function testHandle($table, $id) $createdVersionField = 'fieldname_version'; $version = 1; + /** @var \Migration\ResourceModel\Structure|\PHPUnit_Framework_MockObject_MockObject $record */ + $structure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) + ->setMethods(['getFields']) + ->disableOriginalConstructor() + ->getMock(); + $structure->expects($this->any())->method('getFields')->willReturn([$fieldName]); /** @var \Migration\ResourceModel\Record|\PHPUnit_Framework_MockObject_MockObject $record */ - $record = $this->getMockBuilder('Migration\ResourceModel\Record') - ->setMethods(['getValue', 'setValue', 'getFields']) + $record = $this->getMockBuilder(\Migration\ResourceModel\Record::class) + ->setMethods(['getValue', 'setValue', 'getFields', 'getStructure']) ->disableOriginalConstructor() ->getMock(); - + $record->expects($this->any())->method('getStructure')->willReturn($structure); $record->expects($this->any())->method('getFields')->willReturn([$fieldName]); $record->expects($this->any())->method('getValue')->with($fieldName)->willReturn($id); $record->expects($this->any())->method('setValue')->with($fieldName, $id); /** @var \Migration\ResourceModel\Record|\PHPUnit_Framework_MockObject_MockObject $record2 */ - $record2 = $this->getMockBuilder('Migration\ResourceModel\Record') - ->setMethods(['setValue']) + $record2 = $this->getMockBuilder(\Migration\ResourceModel\Record::class) + ->setMethods(['getValue', 'setValue', 'getFields', 'getStructure']) ->disableOriginalConstructor() ->getMock(); $record2->expects($this->any())->method('setValue')->willReturn($createdVersionField, $version); + $record2->expects($this->any())->method('getFields')->willReturn([$fieldName]); + $record2->expects($this->any())->method('getStructure')->willReturn($structure); /** @var \Migration\ResourceModel\Destination|\PHPUnit_Framework_MockObject_MockObject $destination */ - $destination = $this->getMockBuilder('Migration\ResourceModel\Destination') + $destination = $this->getMockBuilder(\Migration\ResourceModel\Destination::class) ->setMethods(['clearDocument', 'saveRecords']) ->disableOriginalConstructor() ->getMock(); @@ -51,7 +59,7 @@ public function testHandle($table, $id) $handler = new Sequence($table, $destination); $handler->setField($fieldName); - $handler->handle($record, $record2); + $this->assertNull($handler->handle($record, $record2)); } /** diff --git a/tests/unit/testsuite/Migration/Handler/SerializeToJson/ConvertWithConditionsTest.php b/tests/unit/testsuite/Migration/Handler/SerializeToJson/ConvertWithConditionsTest.php new file mode 100644 index 000000000..4bcb0f083 --- /dev/null +++ b/tests/unit/testsuite/Migration/Handler/SerializeToJson/ConvertWithConditionsTest.php @@ -0,0 +1,90 @@ +model = $this->getMockBuilder(\Migration\ResourceModel\Record::class) + ->setMethods(['setValue', 'getValue', 'getFields', 'getData']) + ->disableOriginalConstructor() + ->getMock(); + } + /** + * @param string $dataToConvert + * @param string $expectedJson + * + * @dataProvider convertDataProvider + */ + public function testHandle( + $conditionalField, + $conditionalFieldValuesPattern, + $ignoreBrokenData, + $dataToConvert, + $expectedResult + ) { + $fieldName = 'fieldname'; + + $this->model->expects($this->any())->method('getFields')->willReturn([$fieldName]); + $this->model->expects($this->any())->method('getData')->willReturn(['code' => 'info_buyRequest']); + $this->model->expects($this->any())->method('getValue')->with($fieldName)->willReturn($dataToConvert); + $this->model->expects($this->any())->method('setValue')->with($fieldName, $expectedResult); + $handler = new ConvertWithConditions( + $conditionalField, + $conditionalFieldValuesPattern, + $ignoreBrokenData + ); + $handler->setField($fieldName); + $this->assertNull($handler->handle($this->model, $this->model)); + } + + /** + * @expectedException \Migration\Exception + */ + public function testException() + { + $fieldName = 'fieldname'; + $this->model->expects($this->any())->method('getFields')->willReturn([$fieldName]); + $this->model->expects($this->any())->method('getData')->willReturn(['some_value' => null]); + $handler = new ConvertWithConditions('code', null); + $handler->setField($fieldName); + $handler->handle($this->model, $this->model); + } + + public function convertDataProvider() + { + $data = ['product' => '2', 'form_key' => '2SYziDL1rBficzaP']; + return [ + [ + 'code', + '/(parameters)|(info_buyRequest)|(bundle_option_ids)|(bundle_selection_attributes)/', + false, + serialize($data), + json_encode($data) + ], + [ + null, + null, + false, + null, + null + ], + [ + 'code', + '/(parameters)|(info_buyRequest)|(bundle_option_ids)|(bundle_selection_attributes)/', + true, + 'brokenString', + json_encode([]) + ], + ]; + } +} diff --git a/tests/unit/testsuite/Migration/Handler/SerializeToJson/ItemOptionTest.php b/tests/unit/testsuite/Migration/Handler/SerializeToJson/ItemOptionTest.php new file mode 100644 index 000000000..fe6b0bf52 --- /dev/null +++ b/tests/unit/testsuite/Migration/Handler/SerializeToJson/ItemOptionTest.php @@ -0,0 +1,73 @@ +model = $this->getMockBuilder(\Migration\ResourceModel\Record::class) + ->setMethods(['setValue', 'getValue', 'getFields', 'getData']) + ->disableOriginalConstructor() + ->getMock(); + } + + /** + * @param string $code + * @param string $serialized + * @param string $expectedJson + * + * @dataProvider handleDataProvider + */ + public function testHandle($code, $serialized, $expectedJson) + { + $fieldName = 'fieldname'; + $this->model->expects($this->any())->method('getFields')->willReturn([$fieldName]); + $this->model->expects($this->any())->method('getData')->willReturn(['code' => $code]); + $this->model->expects($this->any())->method('getValue')->with($fieldName)->willReturn($serialized); + $this->model->expects($this->any())->method('setValue')->with($fieldName, $expectedJson); + $record2 = $this->getMockBuilder( + \Migration\ResourceModel\Record::class + )->disableOriginalConstructor()->getMock(); + $handler = new ItemOption(); + $handler->setField($fieldName); + $this->assertNull($handler->handle($this->model, $record2)); + } + + /** + * @expectedException \Migration\Exception + */ + public function testException() + { + $fieldName = 'fieldname'; + $this->model->expects($this->any())->method('getFields')->willReturn([$fieldName]); + $this->model->expects($this->any())->method('getData')->willReturn(['some_value' => null]); + $handler = new ConvertWithConditions('code', null); + $handler->setField($fieldName); + $handler->handle($this->model, $this->model); + } + + public function handleDataProvider() + { + return [ + 'dataset_1' => [ + 'option_1', + 'serialized' => 'a:1:{s:4:"some";s:5:"value";}', + 'expectedJson' => '{"some":"value"}', + ], + 'dataset_2' => [ + 'some_option', + 'serialized' => 1, + 'expectedJson' => 1, + ], + ]; + } +} diff --git a/tests/unit/testsuite/Migration/Handler/SerializeToJson/SalesOrderItemTest.php b/tests/unit/testsuite/Migration/Handler/SerializeToJson/SalesOrderItemTest.php new file mode 100644 index 000000000..fc9418007 --- /dev/null +++ b/tests/unit/testsuite/Migration/Handler/SerializeToJson/SalesOrderItemTest.php @@ -0,0 +1,50 @@ +getMockBuilder(\Migration\ResourceModel\Record::class) + ->setMethods(['setValue', 'getValue', 'getFields']) + ->disableOriginalConstructor() + ->getMock(); + $record->expects($this->any())->method('getFields')->willReturn([$fieldName]); + $record->expects($this->any())->method('getValue')->with($fieldName)->willReturn($serialized); + $record->expects($this->any())->method('setValue')->with($fieldName, $expectedJson); + $record2 = $this->getMockBuilder(\Migration\ResourceModel\Record::class) + ->disableOriginalConstructor() + ->getMock(); + $handler = new SalesOrderItem(); + $handler->setField($fieldName); + $this->assertNull($handler->handle($record, $record2)); + } + + public function handleDataProvider() + { + // @codingStandardsIgnoreStart + return [ + 'dataset_1' => [ + 'serialized' => 'a:2:{s:15:"info_buyRequest";a:6:{s:4:"uenc";s:52:"aHR0cDovL20yLmxvYy9zaW1wbGUuaHRtbD9vcHRpb25zPWNhcnQ,";s:7:"product";s:1:"1";s:28:"selected_configurable_option";s:0:"";s:15:"related_product";s:0:"";s:7:"options";a:3:{i:1;s:4:"test";i:3;s:1:"2";i:2;a:9:{s:4:"type";s:10:"image/jpeg";s:5:"title";s:7:"476.jpg";s:10:"quote_path";s:61:"custom_options/quote/4/7/bc61f16f0cc3a8c5abd7ebbaad4cc139.jpg";s:10:"order_path";s:61:"custom_options/order/4/7/bc61f16f0cc3a8c5abd7ebbaad4cc139.jpg";s:8:"fullpath";s:89:"C:/www/magento/ce/pub/media/custom_options/quote/4/7/bc61f16f0cc3a8c5abd7ebbaad4cc139.jpg";s:4:"size";s:6:"122340";s:5:"width";i:666;s:6:"height";i:940;s:10:"secret_key";s:20:"bc61f16f0cc3a8c5abd7";}}s:3:"qty";s:1:"1";}s:7:"options";a:3:{i:0;a:7:{s:5:"label";s:11:"testoption1";s:5:"value";s:4:"test";s:11:"print_value";s:4:"test";s:9:"option_id";s:1:"1";s:11:"option_type";s:5:"field";s:12:"option_value";s:4:"test";s:11:"custom_view";b:0;}i:1;a:7:{s:5:"label";s:11:"testoption2";s:5:"value";s:132:"476.jpg 666 x 940 px.";s:11:"print_value";s:21:"476.jpg 666 x 940 px.";s:9:"option_id";s:1:"2";s:11:"option_type";s:4:"file";s:12:"option_value";s:600:"a:10:{s:4:"type";s:10:"image/jpeg";s:5:"title";s:7:"476.jpg";s:10:"quote_path";s:61:"custom_options/quote/4/7/bc61f16f0cc3a8c5abd7ebbaad4cc139.jpg";s:10:"order_path";s:61:"custom_options/order/4/7/bc61f16f0cc3a8c5abd7ebbaad4cc139.jpg";s:8:"fullpath";s:89:"C:/www/magento/ce/pub/media/custom_options/quote/4/7/bc61f16f0cc3a8c5abd7ebbaad4cc139.jpg";s:4:"size";s:6:"122340";s:5:"width";i:666;s:6:"height";i:940;s:10:"secret_key";s:20:"bc61f16f0cc3a8c5abd7";s:3:"url";a:2:{s:5:"route";s:35:"sales/download/downloadCustomOption";s:6:"params";a:2:{s:2:"id";s:1:"9";s:3:"key";s:20:"bc61f16f0cc3a8c5abd7";}}}";s:11:"custom_view";b:1;}i:2;a:7:{s:5:"label";s:8:"testopt3";s:5:"value";s:3:"222";s:11:"print_value";s:3:"222";s:9:"option_id";s:1:"3";s:11:"option_type";s:9:"drop_down";s:12:"option_value";s:1:"2";s:11:"custom_view";b:0;}}}', + 'expectedJson' => '{"info_buyRequest":{"uenc":"aHR0cDovL20yLmxvYy9zaW1wbGUuaHRtbD9vcHRpb25zPWNhcnQ,","product":"1","selected_configurable_option":"","related_product":"","options":{"1":"test","3":"2","2":{"type":"image\/jpeg","title":"476.jpg","quote_path":"custom_options\/quote\/4\/7\/bc61f16f0cc3a8c5abd7ebbaad4cc139.jpg","order_path":"custom_options\/order\/4\/7\/bc61f16f0cc3a8c5abd7ebbaad4cc139.jpg","fullpath":"C:\/www\/magento\/ce\/pub\/media\/custom_options\/quote\/4\/7\/bc61f16f0cc3a8c5abd7ebbaad4cc139.jpg","size":"122340","width":666,"height":940,"secret_key":"bc61f16f0cc3a8c5abd7"}},"qty":"1"},"options":[{"label":"testoption1","value":"test","print_value":"test","option_id":"1","option_type":"field","option_value":"test","custom_view":false},{"label":"testoption2","value":"476.jpg<\/a> 666 x 940 px.","print_value":"476.jpg 666 x 940 px.","option_id":"2","option_type":"file","option_value":"{\"type\":\"image\\\\\/jpeg\",\"title\":\"476.jpg\",\"quote_path\":\"custom_options\\\\\/quote\\\\\/4\\\\\/7\\\\\/bc61f16f0cc3a8c5abd7ebbaad4cc139.jpg\",\"order_path\":\"custom_options\\\\\/order\\\\\/4\\\\\/7\\\\\/bc61f16f0cc3a8c5abd7ebbaad4cc139.jpg\",\"fullpath\":\"C:\\\\\/www\\\\\/magento\\\\\/ce\\\\\/pub\\\\\/media\\\\\/custom_options\\\\\/quote\\\\\/4\\\\\/7\\\\\/bc61f16f0cc3a8c5abd7ebbaad4cc139.jpg\",\"size\":\"122340\",\"width\":666,\"height\":940,\"secret_key\":\"bc61f16f0cc3a8c5abd7\",\"url\":{\"route\":\"sales\\\\\/download\\\\\/downloadCustomOption\",\"params\":{\"id\":\"9\",\"key\":\"bc61f16f0cc3a8c5abd7\"}}}","custom_view":true},{"label":"testopt3","value":"222","print_value":"222","option_id":"3","option_type":"drop_down","option_value":"2","custom_view":false}]}', + ], + 'dataset_2' => [ + 'serialized' => 'a:2:{s:15:"info_buyRequest";a:6:{s:4:"uenc";s:36:"aHR0cDovL20yLmxvYy9idW5kbGUuaHRtbA,,";s:7:"product";s:1:"4";s:28:"selected_configurable_option";s:0:"";s:15:"related_product";s:0:"";s:13:"bundle_option";a:2:{i:1;s:1:"1";i:2;s:1:"2";}s:3:"qty";s:1:"3";}s:27:"bundle_selection_attributes";s:97:"a:4:{s:5:"price";d:100;s:3:"qty";d:1;s:12:"option_label";s:8:"option 1";s:9:"option_id";s:1:"1";}";}', + 'expectedJson' => '{"info_buyRequest":{"uenc":"aHR0cDovL20yLmxvYy9idW5kbGUuaHRtbA,,","product":"4","selected_configurable_option":"","related_product":"","bundle_option":{"1":"1","2":"2"},"qty":"3"},"bundle_selection_attributes":"{\"price\":100,\"qty\":1,\"option_label\":\"option 1\",\"option_id\":\"1\"}"}', + ], + ]; + // @codingStandardsIgnoreEnd + } +} diff --git a/tests/unit/testsuite/Migration/Handler/SerializeToJsonTest.php b/tests/unit/testsuite/Migration/Handler/SerializeToJsonTest.php index 790ab32df..3e068c3cf 100644 --- a/tests/unit/testsuite/Migration/Handler/SerializeToJsonTest.php +++ b/tests/unit/testsuite/Migration/Handler/SerializeToJsonTest.php @@ -6,31 +6,45 @@ namespace Migration\Handler; -class SerializeToJsonTest extends \PHPUnit_Framework_TestCase +class SerializeToJsonTest extends \PHPUnit\Framework\TestCase { /** * @return void + * @dataProvider handleDataProvider */ - public function testHandle() + public function testHandle($serializedData, $unserializedData) { - $array = ['some_field' => 'value']; $fieldName = 'fieldname'; /** @var \Migration\ResourceModel\Record|\PHPUnit_Framework_MockObject_MockObject $record */ - $record = $this->getMock( - 'Migration\ResourceModel\Record', - ['setValue', 'getValue', 'getFields'], - [], - '', - false + $record = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['setValue', 'getValue', 'getFields'] ); $record->expects($this->any())->method('getFields')->willReturn([$fieldName]); - $record->expects($this->any())->method('getValue')->with($fieldName)->willReturn(serialize($array)); - $record->expects($this->any())->method('setValue')->with($fieldName, json_encode($array)); + $record->expects($this->any())->method('getValue')->with($fieldName)->willReturn($serializedData); + $record->expects($this->any())->method('setValue')->with($fieldName, $unserializedData); - $record2 = $this->getMockBuilder('Migration\ResourceModel\Record')->disableOriginalConstructor()->getMock(); + $record2 = $this->getMockBuilder(\Migration\ResourceModel\Record::class) + ->disableOriginalConstructor() + ->getMock(); $handler = new SerializeToJson(); $handler->setField($fieldName); - $handler->handle($record, $record2); + $this->assertNull($handler->handle($record, $record2)); + } + + public function handleDataProvider() + { + $array = ['some_field' => 'value']; + return [ + [ + serialize($array), + json_encode($array) + ], + [ + null, + null + ] + ]; } } diff --git a/tests/unit/testsuite/Migration/Handler/SetDefaultWebsiteIdTest.php b/tests/unit/testsuite/Migration/Handler/SetDefaultWebsiteIdTest.php index 7cde56194..3132a4b8b 100644 --- a/tests/unit/testsuite/Migration/Handler/SetDefaultWebsiteIdTest.php +++ b/tests/unit/testsuite/Migration/Handler/SetDefaultWebsiteIdTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Handler; -class SetDefaultWebsiteIdTest extends \PHPUnit_Framework_TestCase +class SetDefaultWebsiteIdTest extends \PHPUnit\Framework\TestCase { /** * @return void @@ -25,12 +25,18 @@ public function testHandle() ] ]; /** @var \Migration\ResourceModel\Record|\PHPUnit_Framework_MockObject_MockObject $record */ - $recordToHandle = $this->getMock('Migration\ResourceModel\Record', ['setValue', 'getFields'], [], '', false); - $recordOpposite = $this->getMockBuilder('Migration\ResourceModel\Record') + $recordToHandle = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['setValue', 'getFields'] + ); + $recordOpposite = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); /** @var \Migration\ResourceModel\Source|\PHPUnit_Framework_MockObject_MockObject $source */ - $source = $this->getMock('Migration\ResourceModel\Source', ['getRecords'], [], '', false); + $source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getRecords'] + ); $recordToHandle->expects($this->once())->method('setValue')->with($fieldName, $value); $recordToHandle->expects($this->once())->method('getFields')->willReturn([$fieldName]); $source->expects($this->once())->method('getRecords')->willReturn($records); diff --git a/tests/unit/testsuite/Migration/Handler/SetHashTest.php b/tests/unit/testsuite/Migration/Handler/SetHashTest.php index 1a1b062b0..bbba1a183 100644 --- a/tests/unit/testsuite/Migration/Handler/SetHashTest.php +++ b/tests/unit/testsuite/Migration/Handler/SetHashTest.php @@ -5,8 +5,7 @@ */ namespace Migration\Handler; - -class SetHashTest extends \PHPUnit_Framework_TestCase +class SetHashTest extends \PHPUnit\Framework\TestCase { /** * @return void @@ -19,11 +18,14 @@ public function testHandle() $fieldName = 'fieldname'; /** @var \Migration\ResourceModel\Record|\PHPUnit_Framework_MockObject_MockObject $recordToHandle */ - $recordToHandle = $this->getMock('Migration\ResourceModel\Record', ['setValue', 'getFields'], [], '', false); + $recordToHandle = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['setValue', 'getFields'] + ); $recordToHandle->expects($this->once())->method('setValue')->with($fieldName, $hash($baseFieldValue)); $recordToHandle->expects($this->once())->method('getFields')->will($this->returnValue([$fieldName])); - $oppositeRecord = $this->getMockBuilder('Migration\ResourceModel\Record') + $oppositeRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->setMethods(['getValue']) ->disableOriginalConstructor() ->getMock(); diff --git a/tests/unit/testsuite/Migration/Handler/SetValueTest.php b/tests/unit/testsuite/Migration/Handler/SetValueTest.php index 1de5ecc56..a3c5c29f5 100644 --- a/tests/unit/testsuite/Migration/Handler/SetValueTest.php +++ b/tests/unit/testsuite/Migration/Handler/SetValueTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Handler; -class SetValueTest extends \PHPUnit_Framework_TestCase +class SetValueTest extends \PHPUnit\Framework\TestCase { /** * @return void @@ -15,11 +15,16 @@ public function testHandle() $value = 'value'; $fieldName = 'fieldname'; /** @var \Migration\ResourceModel\Record|\PHPUnit_Framework_MockObject_MockObject $record */ - $record = $this->getMock('Migration\ResourceModel\Record', ['setValue', 'getFields'], [], '', false); + $record = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['setValue', 'getFields'] + ); $record->expects($this->once())->method('setValue')->with($fieldName, $value); $record->expects($this->once())->method('getFields')->will($this->returnValue([$fieldName])); - $record2 = $this->getMockBuilder('Migration\ResourceModel\Record')->disableOriginalConstructor()->getMock(); + $record2 = $this->getMockBuilder(\Migration\ResourceModel\Record::class) + ->disableOriginalConstructor() + ->getMock(); $handler = new SetValue($value); $handler->setField($fieldName); @@ -32,11 +37,16 @@ public function testHandle() public function testHandleException() { $value = 'value'; - $record = $this->getMock('Migration\ResourceModel\Record', ['getFields'], [], '', false); + $record = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['getFields'] + ); $record->expects($this->once())->method('getFields')->will($this->returnValue([])); $handler = new SetValue($value); - $record2 = $this->getMockBuilder('Migration\ResourceModel\Record')->disableOriginalConstructor()->getMock(); - $this->setExpectedException('Exception'); + $record2 = $this->getMockBuilder(\Migration\ResourceModel\Record::class) + ->disableOriginalConstructor() + ->getMock(); + $this->expectException('Exception'); $handler->handle($record, $record2); } } diff --git a/tests/unit/testsuite/Migration/Handler/Settings/CategoryRootIdTest.php b/tests/unit/testsuite/Migration/Handler/Settings/CategoryRootIdTest.php index a15837c52..3cf718916 100644 --- a/tests/unit/testsuite/Migration/Handler/Settings/CategoryRootIdTest.php +++ b/tests/unit/testsuite/Migration/Handler/Settings/CategoryRootIdTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Handler\Settings; -class CategoryRootIdTest extends \PHPUnit_Framework_TestCase +class CategoryRootIdTest extends \PHPUnit\Framework\TestCase { /** * @return void @@ -16,17 +16,14 @@ public function testHandle() $categoryRootIdHandled = null; $fieldName = 'value'; /** @var \Migration\ResourceModel\Record|\PHPUnit_Framework_MockObject_MockObject $recordToHandle */ - $recordToHandle = $this->getMock( - 'Migration\ResourceModel\Record', - ['getValue', 'setValue', 'getFields'], - [], - '', - false + $recordToHandle = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['getValue', 'setValue', 'getFields'] ); $recordToHandle->expects($this->once())->method('getValue')->with($fieldName)->willReturn($categoryRootId); $recordToHandle->expects($this->once())->method('setValue')->with($fieldName, $categoryRootIdHandled); $recordToHandle->expects($this->once())->method('getFields')->will($this->returnValue([$fieldName])); - $oppositeRecord = $this->getMockBuilder('Migration\ResourceModel\Record') + $oppositeRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); $handler = new \Migration\Handler\Settings\CategoryRootId(); diff --git a/tests/unit/testsuite/Migration/Handler/Settings/EncryptTest.php b/tests/unit/testsuite/Migration/Handler/Settings/EncryptTest.php index fdda6998a..0de228a89 100644 --- a/tests/unit/testsuite/Migration/Handler/Settings/EncryptTest.php +++ b/tests/unit/testsuite/Migration/Handler/Settings/EncryptTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Handler\Settings; -class EncryptTest extends \PHPUnit_Framework_TestCase +class EncryptTest extends \PHPUnit\Framework\TestCase { const CRYPT_KEY = 'crypt_key'; @@ -13,7 +13,7 @@ class EncryptTest extends \PHPUnit_Framework_TestCase /** * @var string */ - protected $backendModelName = '\Magento\Framework\Encryption\Crypt'; + protected $backendModelName = \Magento\Framework\Encryption\Crypt::class; /** * @var \Magento\Framework\Encryption\Encryptor|\PHPUnit_Framework_MockObject_MockObject @@ -35,17 +35,20 @@ class EncryptTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->encryptor = $this->getMock('\Magento\Framework\Encryption\Encryptor', ['encrypt'], [], '', false); - - $this->configReader = $this->getMock('\Migration\Config', ['getOption'], [], '', false); + $this->encryptor = $this->createPartialMock( + \Magento\Framework\Encryption\Encryptor::class, + ['encrypt'] + ); - $this->cryptFactory = $this->getMock( - '\Magento\Framework\Encryption\CryptFactory', - ['create'], - [], - '', - false + $this->configReader = $this->createPartialMock( + \Migration\Config::class, + ['getOption'] ); + + $this->cryptFactory = $this->getMockBuilder(\Magento\Framework\Encryption\CryptFactory::class) + ->disableOriginalConstructor() + ->setMethods(['create']) + ->getMock(); } /** @@ -63,23 +66,21 @@ public function testHandle($attributeData, $expected) list($decryptedValue, $newValue) = array_values($expected); /** @var \Migration\ResourceModel\Record|\PHPUnit_Framework_MockObject_MockObject $recordToHandle */ - $recordToHandle = $this->getMock( - 'Migration\ResourceModel\Record', - ['getValue', 'setValue', 'getFields'], - [], - '', - false + $recordToHandle = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['getValue', 'setValue', 'getFields'] ); $recordToHandle->expects($this->once())->method('getValue')->with($fieldName)->willReturn($dbValue); $recordToHandle->expects($this->once())->method('setValue')->with($fieldName, $newValue); $recordToHandle->expects($this->once())->method('getFields')->will($this->returnValue([$fieldName])); - $oppositeRecord = $this->getMockBuilder('Migration\ResourceModel\Record') + $oppositeRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); - $crypt = $this->getMock('\Magento\Framework\Encryption\Crypt', ['decrypt'], [ - $key, $cypher, $mode, $initVector, - ], '', true); + $crypt = $this->getMockBuilder(\Magento\Framework\Encryption\Crypt::class) + ->setConstructorArgs([$key, $cypher, $mode, $initVector]) + ->setMethods(['decrypt']) + ->getMock(); $crypt->expects($this->once()) ->method('decrypt') diff --git a/tests/unit/testsuite/Migration/Handler/Settings/TemplateTest.php b/tests/unit/testsuite/Migration/Handler/Settings/TemplateTest.php index 4b27e3436..3160359c1 100644 --- a/tests/unit/testsuite/Migration/Handler/Settings/TemplateTest.php +++ b/tests/unit/testsuite/Migration/Handler/Settings/TemplateTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Handler\Settings; -class TemplateTest extends \PHPUnit_Framework_TestCase +class TemplateTest extends \PHPUnit\Framework\TestCase { /** * @return void @@ -16,17 +16,14 @@ public function testHandle() $templateNewStyle = 'new_update_email_template'; $fieldName = 'value'; /** @var \Migration\ResourceModel\Record|\PHPUnit_Framework_MockObject_MockObject $recordToHandle */ - $recordToHandle = $this->getMock( - 'Migration\ResourceModel\Record', - ['getValue', 'setValue', 'getFields'], - [], - '', - false + $recordToHandle = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['getValue', 'setValue', 'getFields'] ); $recordToHandle->expects($this->once())->method('getValue')->with($fieldName)->willReturn($templateOldFashion); $recordToHandle->expects($this->once())->method('setValue')->with($fieldName, $templateNewStyle); $recordToHandle->expects($this->once())->method('getFields')->will($this->returnValue([$fieldName])); - $oppositeRecord = $this->getMockBuilder('Migration\ResourceModel\Record') + $oppositeRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); $oppositeRecord->expects($this->once())->method('getValue')->with($fieldName)->willReturn($templateNewStyle); diff --git a/tests/unit/testsuite/Migration/Handler/Settings/UrlSuffixTest.php b/tests/unit/testsuite/Migration/Handler/Settings/UrlSuffixTest.php index 75813f182..15d53365b 100644 --- a/tests/unit/testsuite/Migration/Handler/Settings/UrlSuffixTest.php +++ b/tests/unit/testsuite/Migration/Handler/Settings/UrlSuffixTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Handler\Settings; -class UrlSuffixTest extends \PHPUnit_Framework_TestCase +class UrlSuffixTest extends \PHPUnit\Framework\TestCase { /** * @return void @@ -16,17 +16,14 @@ public function testHandle() $urlSuffixHandled = '.html'; $fieldName = 'value'; /** @var \Migration\ResourceModel\Record|\PHPUnit_Framework_MockObject_MockObject $recordToHandle */ - $recordToHandle = $this->getMock( - 'Migration\ResourceModel\Record', - ['getValue', 'setValue', 'getFields'], - [], - '', - false + $recordToHandle = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['getValue', 'setValue', 'getFields'] ); $recordToHandle->expects($this->once())->method('getValue')->with($fieldName)->willReturn($urlSuffix); $recordToHandle->expects($this->once())->method('setValue')->with($fieldName, $urlSuffixHandled); $recordToHandle->expects($this->once())->method('getFields')->will($this->returnValue([$fieldName])); - $oppositeRecord = $this->getMockBuilder('Migration\ResourceModel\Record') + $oppositeRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); $handler = new \Migration\Handler\Settings\UrlSuffix(); diff --git a/tests/unit/testsuite/Migration/Handler/TimezonesTest.php b/tests/unit/testsuite/Migration/Handler/TimezonesTest.php index 9f3442649..11b6070ce 100644 --- a/tests/unit/testsuite/Migration/Handler/TimezonesTest.php +++ b/tests/unit/testsuite/Migration/Handler/TimezonesTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Handler; -class TimezoneTest extends \PHPUnit_Framework_TestCase +class TimezoneTest extends \PHPUnit\Framework\TestCase { /** * @param $timeAndOffset array @@ -21,15 +21,15 @@ public function testHandle($timeAndOffset, $expected) $fieldName = 'fieldname'; /** @var \Migration\ResourceModel\Record|\PHPUnit_Framework_MockObject_MockObject $recordToHandle */ - $recordToHandle = $this->getMock( - 'Migration\ResourceModel\Record', - ['getValue', 'setValue', 'getFields', 'getStructure'], - [], - '', - false + $recordToHandle = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['getValue', 'setValue', 'getFields', 'getStructure'] ); - $structure = $this->getMock('\Migration\Structure', ['getFields'], [], '', false); + $structure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) + ->disableOriginalConstructor() + ->setMethods(['getFields']) + ->getMock(); $structure->expects($this->any())->method('getFields')->willReturn([ $fieldName => ['DATA_TYPE' => $dataType] @@ -40,13 +40,13 @@ public function testHandle($timeAndOffset, $expected) $recordToHandle->expects($this->any())->method('getFields')->will($this->returnValue([$fieldName])); $recordToHandle->expects($this->any())->method('getStructure')->will($this->returnValue($structure)); - $oppositeRecord = $this->getMockBuilder('Migration\ResourceModel\Record') + $oppositeRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); $handler = new Timezone($offset); $handler->setField($fieldName); - $handler->handle($recordToHandle, $oppositeRecord); + $this->assertNull($handler->handle($recordToHandle, $oppositeRecord)); } /** diff --git a/tests/unit/testsuite/Migration/Logger/ConsoleHandlerTest.php b/tests/unit/testsuite/Migration/Logger/ConsoleHandlerTest.php index 132f233a7..f26f0c2fb 100644 --- a/tests/unit/testsuite/Migration/Logger/ConsoleHandlerTest.php +++ b/tests/unit/testsuite/Migration/Logger/ConsoleHandlerTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Logger; -class ConsoleHandlerTest extends \PHPUnit_Framework_TestCase +class ConsoleHandlerTest extends \PHPUnit\Framework\TestCase { /** * @var ConsoleHandler @@ -45,7 +45,8 @@ public function testHandleSuccess($recordLevel, $handlerLevel) { $message = 'Success message'; $extra = ['mode' => 'application mode']; - $record = ['message' => $message, 'level' => $recordLevel, 'extra' => $extra]; + $context = []; + $record = ['message' => $message, 'level' => $recordLevel, 'extra' => $extra, 'context' => $context]; $this->consoleHandler->setLevel($handlerLevel); ob_start(); $result = $this->consoleHandler->handle($record); @@ -65,7 +66,8 @@ public function testHandleSuccessWithoutBubble($recordLevel, $handlerLevel) { $message = 'Success message'; $extra = ['mode' => 'application mode']; - $record = ['message' => $message, 'level' => $recordLevel, 'extra' => $extra]; + $context = []; + $record = ['message' => $message, 'level' => $recordLevel, 'extra' => $extra, 'context' => $context]; $this->consoleHandler->setLevel($handlerLevel); ob_start(); $this->consoleHandler->setBubble(false); @@ -97,7 +99,8 @@ public function testHandleError($recordLevel, $handlerLevel) { $message = 'Error message'; $extra = ['mode' => 'application mode']; - $record = ['message' => $message, 'level' => $recordLevel, 'extra' => $extra]; + $context = []; + $record = ['message' => $message, 'level' => $recordLevel, 'extra' => $extra, 'context' => $context]; $this->consoleHandler->setLevel($handlerLevel); $result = $this->consoleHandler->handle($record); $this->assertFalse($result); @@ -110,7 +113,8 @@ public function testHandleWarning() { $message = 'Warnin message'; $extra = ['mode' => 'application mode']; - $record = ['message' => $message, 'level' => 300, 'extra' => $extra]; + $context = []; + $record = ['message' => $message, 'level' => 300, 'extra' => $extra, 'context' => $context]; $this->consoleHandler->setLevel(100); ob_start(); $this->consoleHandler->setBubble(false); @@ -127,7 +131,8 @@ public function testHandleWarning() public function testHandleRed() { $message = 'Colorized message'; - $record = ['message' => $message, 'level' => 400, 'extra' => []]; + $context = []; + $record = ['message' => $message, 'level' => 400, 'extra' => [], 'context' => $context]; $this->consoleHandler->setLevel(100); ob_start(); $result = $this->consoleHandler->handle($record); diff --git a/tests/unit/testsuite/Migration/Logger/FileHandlerTest.php b/tests/unit/testsuite/Migration/Logger/FileHandlerTest.php index cce1ec6f8..8b600ec7d 100644 --- a/tests/unit/testsuite/Migration/Logger/FileHandlerTest.php +++ b/tests/unit/testsuite/Migration/Logger/FileHandlerTest.php @@ -8,7 +8,7 @@ use Magento\Framework\App\Filesystem\DirectoryList; -class FileHandlerTest extends \PHPUnit_Framework_TestCase +class FileHandlerTest extends \PHPUnit\Framework\TestCase { /** * @var FileHandler @@ -50,19 +50,19 @@ class FileHandlerTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->file = $this->getMockBuilder('Magento\Framework\Filesystem\Driver\File') + $this->file = $this->getMockBuilder(\Magento\Framework\Filesystem\Driver\File::class) ->disableOriginalConstructor() ->setMethods(['filePutContents', 'getRealPath', 'createDirectory']) ->getMock(); - $this->config = $this->getMockBuilder('Migration\Config') + $this->config = $this->getMockBuilder(\Migration\Config::class) ->disableOriginalConstructor() ->setMethods(['getOption']) ->getMock(); - $directoryRead = $this->getMockBuilder('\Magento\Framework\Filesystem\Directory\ReadInterface') + $directoryRead = $this->getMockBuilder(\Magento\Framework\Filesystem\Directory\ReadInterface::class) ->disableOriginalConstructor() ->getMock(); $directoryRead->expects($this->any())->method('getAbsolutePath')->willReturn('/path/to/var'); - $this->filesystem = $this->getMockBuilder('\Magento\Framework\Filesystem') + $this->filesystem = $this->getMockBuilder(\Magento\Framework\Filesystem::class) ->disableOriginalConstructor() ->setMethods(['getDirectoryRead']) ->getMock(); @@ -77,7 +77,13 @@ protected function setUp() public function testHandleSuccess() { $extra = ['mode' => 'application mode']; - $record = ['message' => $this->message, 'level' => $this->recordLevel, 'extra' => $extra]; + $context = []; + $record = [ + 'message' => $this->message, + 'level' => $this->recordLevel, + 'extra' => $extra, + 'context' => $context + ]; $this->fileHandler->setLevel($this->handlerLevel); $file = 'file/path/file.log'; $this->file->expects($this->any())->method('filePutContents')->willReturn(1); @@ -100,7 +106,13 @@ public function testHandleSuccess() public function testHandleSuccessWithoutBubble() { $extra = ['mode' => 'application mode']; - $record = ['message' => $this->message, 'level' => $this->recordLevel, 'extra' => $extra]; + $context = []; + $record = [ + 'message' => $this->message, + 'level' => $this->recordLevel, + 'extra' => $extra, + 'context' => $context + ]; $this->fileHandler->setLevel($this->handlerLevel); $this->fileHandler->setBubble(false); $file = 'file/path/file.log'; @@ -124,7 +136,13 @@ public function testHandleSuccessWithoutBubble() public function testHandleError() { $extra = ['mode' => 'application mode']; - $record = ['message' => $this->message, 'level' => $this->recordLevel, 'extra' => $extra]; + $context = []; + $record = [ + 'message' => $this->message, + 'level' => $this->recordLevel, + 'extra' => $extra, + 'context' => $context + ]; $this->fileHandler->setLevel($this->handlerLevel); $result = $this->fileHandler->handle($record); $this->assertFalse($result); diff --git a/tests/unit/testsuite/Migration/Logger/LoggerTest.php b/tests/unit/testsuite/Migration/Logger/LoggerTest.php index d5b12d1e6..3a0f484bd 100644 --- a/tests/unit/testsuite/Migration/Logger/LoggerTest.php +++ b/tests/unit/testsuite/Migration/Logger/LoggerTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Logger; -class LoggerTest extends \PHPUnit_Framework_TestCase +class LoggerTest extends \PHPUnit\Framework\TestCase { /** @var Logger */ protected $logger; @@ -37,7 +37,7 @@ public function testAddRecord() { $infoMessage = 'info1'; $errorMessage = 'error1'; - $consoleHandler = $this->getMockBuilder('\Migration\Logger\ConsoleHandler') + $consoleHandler = $this->getMockBuilder(\Migration\Logger\ConsoleHandler::class) ->disableOriginalConstructor() ->setMethods(['handle']) ->getMock(); diff --git a/tests/unit/testsuite/Migration/Logger/ManagerTest.php b/tests/unit/testsuite/Migration/Logger/ManagerTest.php index ea95e5adb..b47d76510 100644 --- a/tests/unit/testsuite/Migration/Logger/ManagerTest.php +++ b/tests/unit/testsuite/Migration/Logger/ManagerTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Logger; -class ManagerTest extends \PHPUnit_Framework_TestCase +class ManagerTest extends \PHPUnit\Framework\TestCase { /** * @var Manager @@ -42,29 +42,20 @@ class ManagerTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->logger = $this->getMock( - 'Migration\Logger\Logger', - ['pushHandler', 'pushProcessor', 'error'], - [], - '', - false + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['pushHandler', 'pushProcessor', 'error'] ); - $this->consoleHandler = $this->getMock( - 'Migration\Logger\ConsoleHandler', - ['setLevel', 'setFormatter'], - [], - '', - false + $this->consoleHandler = $this->createPartialMock( + \Migration\Logger\ConsoleHandler::class, + ['setLevel', 'setFormatter'] ); - $this->fileHandler = $this->getMock( - 'Migration\Logger\FileHandler', - ['setLevel', 'setFormatter'], - [], - '', - false + $this->fileHandler = $this->createPartialMock( + \Migration\Logger\FileHandler::class, + ['setLevel', 'setFormatter'] ); - $this->messageFormatter = $this->getMock('Migration\Logger\MessageFormatter', [], [], '', false); - $this->messageProcessor = $this->getMock('Migration\Logger\MessageProcessor', [], [], '', false); + $this->messageFormatter = $this->createMock(\Migration\Logger\MessageFormatter::class); + $this->messageProcessor = $this->createMock(\Migration\Logger\MessageProcessor::class); $this->manager = new Manager( $this->logger, $this->consoleHandler, @@ -126,7 +117,8 @@ public function dataProviderProcessInvalidLevel() */ public function testProcessInvalidLevel($logLevel) { - $this->setExpectedException('Migration\Exception', "Invalid log level '$logLevel' provided."); + $this->expectException(\Migration\Exception::class); + $this->expectExceptionMessage("Invalid log level '$logLevel' provided."); $this->manager->process($logLevel); } } diff --git a/tests/unit/testsuite/Migration/Mode/DataTest.php b/tests/unit/testsuite/Migration/Mode/DataTest.php index ba14d73d2..e8a6a3e4f 100644 --- a/tests/unit/testsuite/Migration/Mode/DataTest.php +++ b/tests/unit/testsuite/Migration/Mode/DataTest.php @@ -6,7 +6,7 @@ namespace Migration\Mode; -class DataTest extends \PHPUnit_Framework_TestCase +class DataTest extends \PHPUnit\Framework\TestCase { /** * @var Data @@ -38,27 +38,31 @@ class DataTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->stepList = $this->getMockBuilder('\Migration\App\Mode\StepList')->disableOriginalConstructor() + $this->stepList = $this->getMockBuilder(\Migration\App\Mode\StepList::class)->disableOriginalConstructor() ->setMethods(['getSteps']) ->getMock(); /** @var \Migration\App\Mode\StepListFactory|\PHPUnit_Framework_MockObject_MockObject $stepListFactory */ - $stepListFactory = $this->getMockBuilder('\Migration\App\Mode\StepListFactory')->disableOriginalConstructor() + $stepListFactory = $this->getMockBuilder(\Migration\App\Mode\StepListFactory::class) + ->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); $stepListFactory->expects($this->any())->method('create')->with(['mode' => 'data']) ->willReturn($this->stepList); - $this->logger = $this->getMockBuilder('\Migration\Logger\Logger')->disableOriginalConstructor() - ->setMethods(['info', 'warning']) + $this->logger = $this->getMockBuilder(\Migration\Logger\Logger::class)->disableOriginalConstructor() + ->setMethods(['info', 'warning', 'notice']) ->getMock(); - $this->progress = $this->getMockBuilder('\Migration\App\Progress')->disableOriginalConstructor() + $this->progress = $this->getMockBuilder(\Migration\App\Progress::class)->disableOriginalConstructor() ->setMethods(['saveResult', 'isCompleted', 'reset']) ->getMock(); /** @var \Migration\App\SetupDeltaLog|\PHPUnit_Framework_MockObject_MockObject $setupDeltaLog */ - $setupDeltaLog = $this->getMockBuilder('\Migration\App\SetupDeltaLog')->disableOriginalConstructor() + $setupDeltaLog = $this->getMockBuilder(\Migration\App\SetupDeltaLog::class)->disableOriginalConstructor() ->setMethods(['perform']) ->getMock(); $setupDeltaLog->expects($this->any())->method('perform')->willReturn(true); - $this->config = $this->getMock('\Migration\Config', ['getStep'], [], '', false); + $this->config = $this->createPartialMock( + \Migration\Config::class, + ['getStep'] + ); $this->data = new Data($this->progress, $this->logger, $stepListFactory, $setupDeltaLog, $this->config); } @@ -68,8 +72,9 @@ public function setUp() */ public function testRunStepsIntegrityFail() { - $this->setExpectedException('Migration\Exception', 'Integrity Check failed'); - $step = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $this->expectException(\Migration\Exception::class); + $this->expectExceptionMessage('Integrity Check failed'); + $step = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $step->expects($this->once())->method('perform')->will($this->returnValue(false)); $this->progress->expects($this->any())->method('saveResult')->willReturnSelf(); $this->progress->expects($this->any())->method('isCompleted')->willReturn(false); @@ -85,10 +90,10 @@ public function testRunStepsIntegrityFail() */ public function testRunStepsVolumeFail() { - $stepData = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepData = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepData->expects($this->once())->method('perform')->will($this->returnValue(true)); - $stepVolume = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepVolume = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepVolume->expects($this->once())->method('perform')->will($this->returnValue(false)); $this->progress->expects($this->any())->method('saveResult')->willReturnSelf(); @@ -105,10 +110,11 @@ public function testRunStepsVolumeFail() */ public function testRunStepsDataMigrationFail() { - $this->setExpectedException('Migration\Exception', 'Data Migration failed'); - $stageIntegrity = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $this->expectException(\Migration\Exception::class); + $this->expectExceptionMessage('Data Migration failed'); + $stageIntegrity = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stageIntegrity->expects($this->once())->method('perform')->will($this->returnValue(true)); - $stageData = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stageData = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stageData->expects($this->once())->method('perform')->will($this->returnValue(false)); $this->progress->expects($this->any())->method('saveResult')->willReturnSelf(); $this->progress->expects($this->any())->method('isCompleted')->willReturn(false); @@ -124,11 +130,11 @@ public function testRunStepsDataMigrationFail() */ public function testRunStepsSuccess() { - $stageIntegrity = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stageIntegrity = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stageIntegrity->expects($this->once())->method('perform')->will($this->returnValue(true)); - $stageData = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stageData = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stageData->expects($this->once())->method('perform')->will($this->returnValue(true)); - $stageVolume = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stageVolume = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stageVolume->expects($this->once())->method('perform')->will($this->returnValue(true)); $this->progress->expects($this->any())->method('saveResult')->willReturnSelf(); $this->progress->expects($this->any())->method('isCompleted')->willReturn(false); @@ -154,11 +160,11 @@ public function testRunStepsSuccess() */ public function testRunStepsWithSuccessProgress() { - $stageIntegrity = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stageIntegrity = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stageIntegrity->expects($this->never())->method('perform'); - $stageData = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stageData = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stageData->expects($this->never())->method('perform'); - $stageVolume = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stageVolume = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stageVolume->expects($this->never())->method('perform'); $this->progress->expects($this->never())->method('saveResult'); $this->progress->expects($this->any())->method('isCompleted')->willReturn(true); diff --git a/tests/unit/testsuite/Migration/Mode/SettingsTest.php b/tests/unit/testsuite/Migration/Mode/SettingsTest.php index 12f8590a4..af9a65dc2 100644 --- a/tests/unit/testsuite/Migration/Mode/SettingsTest.php +++ b/tests/unit/testsuite/Migration/Mode/SettingsTest.php @@ -6,7 +6,7 @@ namespace Migration\Mode; -class SettingsTest extends \PHPUnit_Framework_TestCase +class SettingsTest extends \PHPUnit\Framework\TestCase { /** * @var Settings @@ -38,19 +38,20 @@ class SettingsTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->stepList = $this->getMockBuilder('\Migration\App\Mode\StepList')->disableOriginalConstructor() + $this->stepList = $this->getMockBuilder(\Migration\App\Mode\StepList::class)->disableOriginalConstructor() ->setMethods(['getSteps']) ->getMock(); /** @var \Migration\App\Mode\StepListFactory|\PHPUnit_Framework_MockObject_MockObject $stepListFactory */ - $stepListFactory = $this->getMockBuilder('\Migration\App\Mode\StepListFactory')->disableOriginalConstructor() + $stepListFactory = $this->getMockBuilder(\Migration\App\Mode\StepListFactory::class) + ->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); $stepListFactory->expects($this->any())->method('create')->with(['mode' => 'settings']) ->willReturn($this->stepList); - $this->logger = $this->getMockBuilder('\Migration\Logger\Logger')->disableOriginalConstructor() + $this->logger = $this->getMockBuilder(\Migration\Logger\Logger::class)->disableOriginalConstructor() ->setMethods(['info', 'warning']) ->getMock(); - $this->progress = $this->getMockBuilder('\Migration\App\Progress')->disableOriginalConstructor() + $this->progress = $this->getMockBuilder(\Migration\App\Progress::class)->disableOriginalConstructor() ->setMethods(['saveResult', 'isCompleted']) ->getMock(); @@ -62,8 +63,9 @@ public function setUp() */ public function testRunStepsIntegrityFail() { - $this->setExpectedException('Migration\Exception', 'Integrity Check failed'); - $step = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $this->expectException(\Migration\Exception::class); + $this->expectExceptionMessage('Integrity Check failed'); + $step = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $step->expects($this->once())->method('perform')->will($this->returnValue(false)); $this->progress->expects($this->any())->method('saveResult')->willReturnSelf(); $this->progress->expects($this->any())->method('isCompleted')->willReturn(false); @@ -78,13 +80,13 @@ public function testRunStepsIntegrityFail() public function testRunStepsVolumeFail() { $this->logger->expects($this->once())->method('warning')->with('Volume Check failed'); - $stepIntegrity = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepIntegrity = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepIntegrity->expects($this->once())->method('perform')->will($this->returnValue(true)); - $stepData = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepData = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepData->expects($this->once())->method('perform')->will($this->returnValue(true)); - $stepVolume = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepVolume = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepVolume->expects($this->once())->method('perform')->will($this->returnValue(false)); $this->progress->expects($this->any())->method('saveResult')->willReturnSelf(); @@ -100,14 +102,15 @@ public function testRunStepsVolumeFail() */ public function testRunStepsDataMigrationFail() { - $this->setExpectedException('Migration\Exception', 'Data Migration failed'); - $stepIntegrity = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $this->expectException(\Migration\Exception::class); + $this->expectExceptionMessage('Data Migration failed'); + $stepIntegrity = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepIntegrity->expects($this->once())->method('perform')->will($this->returnValue(true)); - $stepData = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepData = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepData->expects($this->once())->method('perform')->will($this->returnValue(false)); - $stepVolume = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepVolume = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepVolume->expects($this->never())->method('perform'); $this->progress->expects($this->any())->method('saveResult')->willReturnSelf(); @@ -123,13 +126,13 @@ public function testRunStepsDataMigrationFail() */ public function testRunStepsSuccess() { - $stepIntegrity = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepIntegrity = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepIntegrity->expects($this->once())->method('perform')->will($this->returnValue(true)); - $stepData = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepData = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepData->expects($this->once())->method('perform')->will($this->returnValue(true)); - $stepVolume = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepVolume = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepVolume->expects($this->once())->method('perform')->will($this->returnValue(true)); $this->progress->expects($this->any())->method('saveResult')->willReturnSelf(); @@ -148,13 +151,13 @@ public function testRunStepsSuccess() */ public function testRunStepsWithSuccessProgress() { - $stepIntegrity = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepIntegrity = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepIntegrity->expects($this->never())->method('perform'); - $stepData = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepData = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepData->expects($this->never())->method('perform'); - $stepVolume = $this->getMockBuilder('\Migration\App\Step\StageInterface')->getMock(); + $stepVolume = $this->getMockBuilder(\Migration\App\Step\StageInterface::class)->getMock(); $stepVolume->expects($this->never())->method('perform'); $this->progress->expects($this->never())->method('saveResult'); diff --git a/tests/unit/testsuite/Migration/Model/Eav/AttributeGroupNameToCodeMapTest.php b/tests/unit/testsuite/Migration/Model/Eav/AttributeGroupNameToCodeMapTest.php index 47665522b..5ef5422b6 100644 --- a/tests/unit/testsuite/Migration/Model/Eav/AttributeGroupNameToCodeMapTest.php +++ b/tests/unit/testsuite/Migration/Model/Eav/AttributeGroupNameToCodeMapTest.php @@ -10,7 +10,7 @@ /** * Class AttributeGroupNameToCodeMapTest */ -class AttributeGroupNameToCodeMapTest extends \PHPUnit_Framework_TestCase +class AttributeGroupNameToCodeMapTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\Model\Eav\AttributeGroupNameToCodeMap|\PHPUnit_Framework_MockObject_MockObject @@ -23,7 +23,7 @@ class AttributeGroupNameToCodeMapTest extends \PHPUnit_Framework_TestCase protected function setUp() { $objectHelper = new ObjectManager($this); - $this->model = $objectHelper->getObject('\Migration\Model\Eav\AttributeGroupNameToCodeMap'); + $this->model = $objectHelper->getObject(\Migration\Model\Eav\AttributeGroupNameToCodeMap::class); } /** diff --git a/tests/unit/testsuite/Migration/Reader/ClassMapTest.php b/tests/unit/testsuite/Migration/Reader/ClassMapTest.php index fff69257e..79ca3a14f 100644 --- a/tests/unit/testsuite/Migration/Reader/ClassMapTest.php +++ b/tests/unit/testsuite/Migration/Reader/ClassMapTest.php @@ -8,7 +8,7 @@ /** * Class ClassMap test */ -class ClassMapTest extends \PHPUnit_Framework_TestCase +class ClassMapTest extends \PHPUnit\Framework\TestCase { /** * @var ClassMap @@ -20,13 +20,13 @@ class ClassMapTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $config = $this->getMockBuilder('\Migration\Config')->disableOriginalConstructor() + $config = $this->getMockBuilder(\Migration\Config::class)->disableOriginalConstructor() ->setMethods(['getOption']) ->getMock(); $config->expects($this->once())->method('getOption')->with('class_map') ->willReturn('tests/unit/testsuite/Migration/_files/class-map.xml'); - $validationState = $this->getMockBuilder('Magento\Framework\App\Arguments\ValidationState') + $validationState = $this->getMockBuilder(\Magento\Framework\App\Arguments\ValidationState::class) ->disableOriginalConstructor() ->setMethods(['isValidationRequired']) ->getMock(); @@ -42,8 +42,8 @@ public function setUp() public function testConvertClassName() { $this->assertEquals( - 'Magento\\Catalog\\Block\\Product\\Widget\\NewWidget', - $this->classMap->convertClassName('catalog/product_widget_new') + \Magento\Catalog\Block\Product\Widget\Link::class, + $this->classMap->convertClassName('catalog/product_widget_link') ); } @@ -53,8 +53,8 @@ public function testConvertClassName() public function testConvertClassNameNotInMap() { $this->assertEquals( - 'catalog/product_widget_new_1', - $this->classMap->convertClassName('catalog/product_widget_new_1') + 'catalog/product_widget_link_1', + $this->classMap->convertClassName('catalog/product_widget_link_1') ); } @@ -64,8 +64,8 @@ public function testConvertClassNameNotInMap() public function testGetMap() { $this->assertEquals( - $this->classMap->getMap('catalog/product_widget_new')['catalog/product_widget_new'], - 'Magento\\Catalog\\Block\\Product\\Widget\\NewWidget' + $this->classMap->getMap('catalog/product_widget_new')['catalog/product_widget_link'], + \Magento\Catalog\Block\Product\Widget\Link::class ); } } diff --git a/tests/unit/testsuite/Migration/Reader/GroupsTest.php b/tests/unit/testsuite/Migration/Reader/GroupsTest.php index 06f484a0d..cac253981 100644 --- a/tests/unit/testsuite/Migration/Reader/GroupsTest.php +++ b/tests/unit/testsuite/Migration/Reader/GroupsTest.php @@ -8,7 +8,7 @@ /** * Class GroupTest */ -class GroupsTest extends \PHPUnit_Framework_TestCase +class GroupsTest extends \PHPUnit\Framework\TestCase { /** * @var Groups @@ -25,7 +25,7 @@ class GroupsTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->validationState = $this->getMockBuilder('Magento\Framework\App\Arguments\ValidationState') + $this->validationState = $this->getMockBuilder(\Magento\Framework\App\Arguments\ValidationState::class) ->disableOriginalConstructor() ->setMethods(['isValidationRequired']) ->getMock(); diff --git a/tests/unit/testsuite/Migration/Reader/MapTest.php b/tests/unit/testsuite/Migration/Reader/MapTest.php index a3293664e..6e07d5b63 100644 --- a/tests/unit/testsuite/Migration/Reader/MapTest.php +++ b/tests/unit/testsuite/Migration/Reader/MapTest.php @@ -8,7 +8,7 @@ /** * Class MapTest */ -class MapTest extends \PHPUnit_Framework_TestCase +class MapTest extends \PHPUnit\Framework\TestCase { /** * @var Map @@ -20,7 +20,7 @@ class MapTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $validationState = $this->getMockBuilder('Magento\Framework\App\Arguments\ValidationState') + $validationState = $this->getMockBuilder(\Magento\Framework\App\Arguments\ValidationState::class) ->disableOriginalConstructor() ->setMethods(['isValidationRequired']) ->getMock(); @@ -103,7 +103,8 @@ public function testGetFieldMap() */ public function testGetFieldMapWithException() { - $this->setExpectedException('Exception', 'Document has ambiguous configuration: source-document-ignored'); + $this->expectException('Exception'); + $this->expectExceptionMessage('Document has ambiguous configuration: source-document-ignored'); $this->map->getFieldMap('source-document-ignored', 'field3', MapInterface::TYPE_SOURCE); } @@ -113,7 +114,8 @@ public function testGetFieldMapWithException() */ public function testGetFieldMapWithException2() { - $this->setExpectedException('Exception', 'Document has ambiguous configuration: dest-document-ignored'); + $this->expectException('Exception'); + $this->expectExceptionMessage('Document has ambiguous configuration: dest-document-ignored'); $this->map->getFieldMap('source-document5', 'field3', MapInterface::TYPE_SOURCE); } @@ -123,7 +125,8 @@ public function testGetFieldMapWithException2() */ public function testGetFieldMapWithException3() { - $this->setExpectedException('Exception', 'Field has ambiguous configuration: dest-document5.field5'); + $this->expectException('Exception'); + $this->expectExceptionMessage('Field has ambiguous configuration: dest-document5.field5'); $this->map->getFieldMap('source-document5', 'field4', MapInterface::TYPE_SOURCE); } @@ -134,7 +137,7 @@ public function testGetHandlerConfigs() { $handlerConfig = [ [ - 'class' => '\Migration\Handler\SetValue', + 'class' => \Migration\Handler\SetValue::class, 'params' => [ 'default_value' => 10 ] diff --git a/tests/unit/testsuite/Migration/Reader/SettingsTest.php b/tests/unit/testsuite/Migration/Reader/SettingsTest.php index 441958099..4091d4720 100644 --- a/tests/unit/testsuite/Migration/Reader/SettingsTest.php +++ b/tests/unit/testsuite/Migration/Reader/SettingsTest.php @@ -8,7 +8,7 @@ /** * Class SettingsTest */ -class SettingsTest extends \PHPUnit_Framework_TestCase +class SettingsTest extends \PHPUnit\Framework\TestCase { /** * @var Settings @@ -22,7 +22,7 @@ public function setUp() { $config = $this->getConfigFile('tests/unit/testsuite/Migration/_files/settings.xml'); - $validationState = $this->getMockBuilder('Magento\Framework\App\Arguments\ValidationState') + $validationState = $this->getMockBuilder(\Magento\Framework\App\Arguments\ValidationState::class) ->disableOriginalConstructor() ->setMethods(['isValidationRequired']) ->getMock(); @@ -39,7 +39,7 @@ public function setUp() protected function getConfigFile($configPath) { /** @var \Migration\Config|\PHPUnit_Framework_MockObject_MockObject $config */ - $config = $this->getMockBuilder('Migration\Config')->disableOriginalConstructor() + $config = $this->getMockBuilder(\Migration\Config::class)->disableOriginalConstructor() ->setMethods(['getOption'])->getMock(); $config->expects($this->once())->method('getOption')->with('settings_map_file')->will( $this->returnValue($configPath) @@ -165,9 +165,10 @@ public function testGetValueHandler($node, $valueHandler) public function testNoConfigFile() { $config = $this->getConfigFile('invalid_file_name'); - $this->setExpectedException('Migration\Exception', 'Invalid map filename:'); + $this->expectException(\Migration\Exception::class); + $this->expectExceptionMessage('Invalid map filename:'); - $validationState = $this->getMockBuilder('Magento\Framework\App\Arguments\ValidationState') + $validationState = $this->getMockBuilder(\Magento\Framework\App\Arguments\ValidationState::class) ->disableOriginalConstructor() ->setMethods(['isValidationRequired']) ->getMock(); @@ -183,9 +184,10 @@ public function testNoConfigFile() public function testInvalidConfigFile() { $config = $this->getConfigFile('tests/unit/testsuite/Migration/_files/settings-invalid.xml'); - $this->setExpectedException('Migration\Exception', 'XML file is invalid.'); + $this->expectException(\Migration\Exception::class); + $this->expectExceptionMessage('XML file is invalid.'); - $validationState = $this->getMockBuilder('Magento\Framework\App\Arguments\ValidationState') + $validationState = $this->getMockBuilder(\Magento\Framework\App\Arguments\ValidationState::class) ->disableOriginalConstructor() ->setMethods(['isValidationRequired']) ->getMock(); diff --git a/tests/unit/testsuite/Migration/RecordTransformerTest.php b/tests/unit/testsuite/Migration/RecordTransformerTest.php index f8c6663a3..6009eceab 100644 --- a/tests/unit/testsuite/Migration/RecordTransformerTest.php +++ b/tests/unit/testsuite/Migration/RecordTransformerTest.php @@ -10,7 +10,7 @@ /** * Class RecordTransformerTest */ -class RecordTransformerTest extends \PHPUnit_Framework_TestCase +class RecordTransformerTest extends \PHPUnit\Framework\TestCase { /** * @var ResourceModel\Document|\PHPUnit_Framework_MockObject_MockObject @@ -42,16 +42,16 @@ class RecordTransformerTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->sourceDocument = $this->getMock( - 'Migration\ResourceModel\Document', - ['getStructure', 'getName'], - [], - '', - false + $this->sourceDocument = $this->createPartialMock( + \Migration\ResourceModel\Document::class, + ['getStructure', 'getName'] + ); + $this->destDocument = $this->createPartialMock( + \Migration\ResourceModel\Document::class, + ['getStructure'] ); - $this->destDocument = $this->getMock('Migration\ResourceModel\Document', ['getStructure'], [], '', false); $this->mapReader = $this->getMockForAbstractClass( - 'Migration\Reader\MapInterface', + \Migration\Reader\MapInterface::class, [], '', false @@ -60,13 +60,10 @@ protected function setUp() ['class' => 'FirstHandlerFullyQualifiedName', 'params' => []], ['class' => 'SecondHandlerFullyQualifiedName', 'params' => []] ]); - $this->handlerManagerFactory = $this->getMock( - 'Migration\Handler\ManagerFactory', - ['create'], - [], - '', - false - ); + $this->handlerManagerFactory = $this->getMockBuilder(\Migration\Handler\ManagerFactory::class) + ->disableOriginalConstructor() + ->setMethods(['create']) + ->getMock(); $this->recordTransformer = new RecordTransformer( $this->sourceDocument, $this->destDocument, @@ -82,11 +79,17 @@ protected function setUp() */ protected function initHandler($document, $callNumber = 1) { - $handlerManager = $this->getMock('Migration\Handler\Manager', ['initHandler', 'getHandlers'], [], '', false); + $handlerManager = $this->createPartialMock( + \Migration\Handler\Manager::class, + ['initHandler', 'getHandlers'] + ); $this->handlerManagerFactory->expects($this->at($callNumber))->method('create')->will( $this->returnValue($handlerManager) ); - $structure = $this->getMock('Migration\ResourceModel\Structure', ['getFields'], [], '', false); + $structure = $this->createPartialMock( + \Migration\ResourceModel\Structure::class, + ['getFields'] + ); $document->expects($this->once())->method('getStructure')->will($this->returnValue($structure)); $fields = ['field1' => '', 'field2' => '', 'field3' => '',]; $structure->expects($this->once())->method('getFields')->will($this->returnValue($fields)); @@ -113,14 +116,17 @@ public function testTransform() $destHandler = $this->initHandler($this->destDocument, 1); $this->recordTransformer->init(); $this->sourceDocument->expects($this->any())->method('getName')->willReturn('source_document_name'); - $recordFrom = $this->getMock('Migration\ResourceModel\Record', [], [], '', false); + $recordFrom = $this->createMock(\Migration\ResourceModel\Record::class); $recordFrom->expects($this->any())->method('getFields')->will($this->returnValue(['field1', 'field2'])); $recordFrom->expects($this->any())->method('getData')->will($this->returnValue(['field1' => 1, 'field2' => 2])); - $recordTo = $this->getMock('Migration\ResourceModel\Record', [], [], '', false); + $recordTo = $this->createMock(\Migration\ResourceModel\Record::class); $recordTo->expects($this->any())->method('getFields')->will($this->returnValue(['field2'])); $recordTo->expects($this->any())->method('setData')->with(['field2' => 2]); - $field2Handler = $this->getMock('Migration\Handler\SetValue', ['handle'], [], '', false); + $field2Handler = $this->createPartialMock( + \Migration\Handler\SetValue::class, + ['handle'] + ); $field2Handler->expects($this->once())->method('handle'); $srcHandler->expects($this->any())->method('getHandlers')->willReturn(['field2' => $field2Handler]); $destHandler->expects($this->any())->method('getHandlers')->willReturn([]); diff --git a/tests/unit/testsuite/Migration/ResourceModel/AbstractCollectionTest.php b/tests/unit/testsuite/Migration/ResourceModel/AbstractCollectionTest.php index d97fde637..9d2bb4723 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/AbstractCollectionTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/AbstractCollectionTest.php @@ -5,7 +5,7 @@ */ namespace Migration\ResourceModel\Document; -class AbstractCollectionTest extends \PHPUnit_Framework_TestCase +class AbstractCollectionTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\ResourceModel\Document\Collection @@ -22,11 +22,11 @@ class AbstractCollectionTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $document1 = $this->getMock('\Migration\ResourceModel\Document', [], [], '', false); + $document1 = $this->createMock(\Migration\ResourceModel\Document::class); $document1->expects($this->any())->method('getName')->will($this->returnValue('Doc1')); - $document2 = $this->getMock('\Migration\ResourceModel\Document', [], [], '', false); + $document2 = $this->createMock(\Migration\ResourceModel\Document::class); $document2->expects($this->any())->method('getName')->will($this->returnValue('Doc2')); - $document3 = $this->getMock('\Migration\ResourceModel\Document', [], [], '', false); + $document3 = $this->createMock(\Migration\ResourceModel\Document::class); $document3->expects($this->any())->method('getName')->will($this->returnValue('Doc3')); $this->data = [$document1, $document2, $document3]; $this->documentCollection = new \Migration\ResourceModel\Document\Collection($this->data); diff --git a/tests/unit/testsuite/Migration/ResourceModel/AbstractResourceTest.php b/tests/unit/testsuite/Migration/ResourceModel/AbstractResourceTest.php index ac69be0b8..de4d5eada 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/AbstractResourceTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/AbstractResourceTest.php @@ -10,7 +10,7 @@ /** * Class AbstractResourceTest */ -class AbstractResourceTest extends \PHPUnit_Framework_TestCase +class AbstractResourceTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\Config|\PHPUnit_Framework_MockObject_MockObject @@ -62,62 +62,41 @@ class AbstractResourceTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->config = $this->getMock( - '\Migration\Config', - ['getOption'], - [], - '', - false + $this->config = $this->createPartialMock( + \Migration\Config::class, + ['getOption'] ); - $this->adapter = $this->getMock( - '\Migration\ResourceModel\Adapter\Mysql', - ['insertRecords', 'getRecordsCount', 'getDocumentStructure', 'getDocumentList', 'loadPage'], - [], - '', - false + $this->adapter = $this->createPartialMock( + \Migration\ResourceModel\Adapter\Mysql::class, + ['insertRecords', 'getRecordsCount', 'getDocumentStructure', 'getDocumentList', 'loadPage'] ); - $this->adapterFactorySource = $this->getMock( - '\Migration\ResourceModel\AdapterFactory', - ['create'], - [], - '', - false + $this->adapterFactorySource = $this->createPartialMock( + \Migration\ResourceModel\AdapterFactory::class, + ['create'] ); $this->adapterFactorySource->expects($this->any()) ->method('create') ->with(['resourceType' => 'source']) ->will($this->returnValue($this->adapter)); - $this->adapterFactoryDestination = $this->getMock( - '\Migration\ResourceModel\AdapterFactory', - ['create'], - [], - '', - false + $this->adapterFactoryDestination = $this->createPartialMock( + \Migration\ResourceModel\AdapterFactory::class, + ['create'] ); $this->adapterFactoryDestination->expects($this->any()) ->method('create') ->with(['resourceType' => 'destination']) ->will($this->returnValue($this->adapter)); - $this->documentFactory = $this->getMock( - '\Migration\ResourceModel\DocumentFactory', - ['create'], - [], - '', - false - ); - $this->structureFactory = $this->getMock( - '\Migration\ResourceModel\StructureFactory', - ['create'], - [], - '', - false - ); - $this->documentCollection = $this->getMock( - '\Migration\ResourceModel\Document\Collection', - ['addDocument'], - [], - '', - false + $this->documentFactory = $this->getMockBuilder(\Migration\ResourceModel\DocumentFactory::class) + ->disableOriginalConstructor() + ->setMethods(['create']) + ->getMock(); + $this->structureFactory = $this->getMockBuilder(\Migration\ResourceModel\StructureFactory::class) + ->disableOriginalConstructor() + ->setMethods(['create']) + ->getMock(); + $this->documentCollection = $this->createPartialMock( + \Migration\ResourceModel\Document\Collection::class, + ['addDocument'] ); $this->resourceDestination = new \Migration\ResourceModel\Destination( @@ -147,10 +126,10 @@ public function testGetDocument($prefix, $optionName) { $resourceName = 'core_config_data'; $structureData = ['id' => 'int']; - $structure = $this->getMock('\Migration\ResourceModel\Structure', [], [], '', false); - $document = $this->getMock('\Migration\ResourceModel\Document', [], [], '', false); + $structure = $this->createMock(\Migration\ResourceModel\Structure::class); + $document = $this->createMock(\Migration\ResourceModel\Document::class); $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], [$optionName, $prefix] ]); $this->documentFactory->expects($this->any()) @@ -190,7 +169,7 @@ public function getDocumentDataSource() public function testGetWrongDocument() { $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], ['dest_prefix', 'prefix_'] ]); $this->adapter->expects($this->any()) @@ -207,7 +186,7 @@ public function testGetRecordsCount() { $prefix = 'prefix_'; $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], ['dest_prefix', $prefix] ]); $resourceName = 'core_config_data'; @@ -227,7 +206,7 @@ public function testGetRecords() $resourceName = 'core_config_data'; $pageNumber = 2; $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], ['bulk_size', 100], ['dest_prefix', 100], ]); @@ -240,7 +219,10 @@ public function testGetRecords() */ public function testGetAdapter() { - $this->config->expects($this->any())->method('getOption')->willReturnMap([['edition_migrate', 'ce-to-ee']]); + $this->config + ->expects($this->any()) + ->method('getOption') + ->willReturnMap([['edition_migrate', 'opensource-to-commerce']]); $this->assertSame($this->adapter, $this->resourceDestination->getAdapter()); } } diff --git a/tests/unit/testsuite/Migration/ResourceModel/Adapter/MysqlTest.php b/tests/unit/testsuite/Migration/ResourceModel/Adapter/MysqlTest.php index 78603a75f..d36dd710e 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/Adapter/MysqlTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/Adapter/MysqlTest.php @@ -6,7 +6,7 @@ namespace Migration\ResourceModel\Adapter; -class MysqlTest extends \PHPUnit_Framework_TestCase +class MysqlTest extends \PHPUnit\Framework\TestCase { /** * @var \Magento\Framework\DB\Adapter\Pdo\Mysql|\PHPUnit_Framework_MockObject_MockObject @@ -23,9 +23,10 @@ class MysqlTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->pdoMysql = $this->getMock( - '\Magento\Framework\DB\Adapter\Pdo\Mysql', - [ + + $this->pdoMysql = $this->getMockBuilder(\Magento\Framework\DB\Adapter\Pdo\Mysql::class) + ->disableOriginalConstructor() + ->setMethods([ 'truncateTable', 'query', 'describeTable', @@ -42,19 +43,22 @@ protected function setUp() 'isTableExists', 'insertFromSelect', 'getConnection' - ], - [], - '', - false - ); + ]) + ->getMock(); $this->pdoMysql->expects($this->any())->method('query'); - $mysqlBuilder = $this->getMock('\Migration\ResourceModel\Adapter\Pdo\MysqlBuilder', ['build'], [], '', false); + $mysqlBuilder = $this->createPartialMock( + \Migration\ResourceModel\Adapter\Pdo\MysqlBuilder::class, + ['build'] + ); $mysqlBuilder->expects($this->any()) ->method('build') ->with('source') ->willReturn($this->pdoMysql); - $triggerFactory = $this->getMock('\Magento\Framework\DB\Ddl\TriggerFactory', ['create'], [], '', false); + $triggerFactory = $this->createPartialMock( + \Magento\Framework\DB\Ddl\TriggerFactory::class, + ['create'] + ); $this->adapterMysql = new Mysql($mysqlBuilder, $triggerFactory, 'source'); } @@ -86,7 +90,10 @@ public function testGetDocumentList() */ public function testGetRecordsCount() { - $select = $this->getMock('\Magento\Framework\DB\Select', ['from'], [], '', false); + $select = $this->createPartialMock( + \Magento\Framework\DB\Select::class, + ['from'] + ); $select->expects($this->any()) ->method('from') ->with($this->equalTo('some_table'), $this->equalTo('COUNT(*)')); @@ -107,7 +114,7 @@ public function testGetRecordsCount() */ public function testLoadPage() { - $select = $this->getMock('\Magento\Framework\DB\Select', [], [], '', false); + $select = $this->createMock(\Magento\Framework\DB\Select::class); $select->expects($this->any()) ->method('from') ->with($this->equalTo('some_table'), $this->equalTo('*')) @@ -135,7 +142,10 @@ public function testInsertRecords() { $data = [['column1' => 'value1'], ['column1' => 'value2']]; - $pdoMock = $this->getMock('\PdoTest', ['prepare', 'execute'], [], '', false); + $pdoMock = $this->getMockBuilder(\PdoTest::class) + ->disableOriginalConstructor() + ->setMethods(['prepare', 'execute']) + ->getMock(); $pdoMock->expects($this->any())->method('prepare')->willReturnSelf(); $pdoMock->expects($this->any())->method('execute')->willReturnSelf(); $this->pdoMysql->expects($this->any())->method('getConnection')->willReturn($pdoMock); @@ -157,7 +167,7 @@ public function testDeleteAllRecords() */ public function testGetSelect() { - $select = $this->getMock('\Magento\Framework\DB\Select', [], [], '', false); + $select = $this->createMock(\Magento\Framework\DB\Select::class); $this->pdoMysql->expects($this->any())->method('select')->willReturn($select); $this->assertSame($select, $this->adapterMysql->getSelect()); } @@ -167,7 +177,7 @@ public function testGetSelect() */ public function testLoadDataFromSelect() { - $select = $this->getMock('\Magento\Framework\DB\Select', [], [], '', false); + $select = $this->createMock(\Magento\Framework\DB\Select::class); $data = [['id' => 1], ['id' => 2]]; $this->pdoMysql->expects($this->any())->method('fetchAll')->with($select)->willReturn($data); $this->assertSame($data, $this->adapterMysql->loadDataFromSelect($select)); @@ -189,7 +199,7 @@ public function testUpdateDocument() */ public function testGetTableDdlCopy() { - $table = $this->getMockBuilder('Magento\Framework\DB\Ddl\Table') + $table = $this->getMockBuilder(\Magento\Framework\DB\Ddl\Table::class) ->disableOriginalConstructor() ->getMock(); $this->pdoMysql->expects($this->once())->method('createTableByDdl') @@ -203,7 +213,7 @@ public function testGetTableDdlCopy() */ public function testCreateTableByDdl() { - $table = $this->getMockBuilder('Magento\Framework\DB\Ddl\Table') + $table = $this->getMockBuilder(\Magento\Framework\DB\Ddl\Table::class) ->setMethods(['getName']) ->disableOriginalConstructor() ->getMock(); @@ -222,11 +232,11 @@ public function testBackupDocument() $documentName = 'document_name'; $backupDocumentName = 'migration_backup_document_name'; - $table = $this->getMockBuilder('Magento\Framework\DB\Ddl\Table')->disableOriginalConstructor() + $table = $this->getMockBuilder(\Magento\Framework\DB\Ddl\Table::class)->disableOriginalConstructor() ->setMethods(['getName']) ->getMock(); $table->expects($this->any())->method('getName')->will($this->returnValue('migration_backup_document_name')); - $select = $this->getMockBuilder('\Magento\Framework\DB\Select')->disableOriginalConstructor() + $select = $this->getMockBuilder(\Magento\Framework\DB\Select::class)->disableOriginalConstructor() ->setMethods(['from'])->getMock(); $select->expects($this->once())->method('from')->with($documentName)->willReturn($select); @@ -253,7 +263,7 @@ public function testRollbackDocument() $documentName = 'document_name'; $backupDocumentName = 'migration_backup_document_name'; - $select = $this->getMockBuilder('\Magento\Framework\DB\Select')->disableOriginalConstructor() + $select = $this->getMockBuilder(\Magento\Framework\DB\Select::class)->disableOriginalConstructor() ->setMethods(['from'])->getMock(); $select->expects($this->once())->method('from')->with($backupDocumentName)->willReturn($select); diff --git a/tests/unit/testsuite/Migration/ResourceModel/Adapter/Pdo/MysqlBuilderTest.php b/tests/unit/testsuite/Migration/ResourceModel/Adapter/Pdo/MysqlBuilderTest.php index 6c7331a5d..a832e06e6 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/Adapter/Pdo/MysqlBuilderTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/Adapter/Pdo/MysqlBuilderTest.php @@ -6,7 +6,7 @@ namespace Migration\ResourceModel\Adapter\Pdo; -class MysqlBuilderTest extends \PHPUnit_Framework_TestCase +class MysqlBuilderTest extends \PHPUnit\Framework\TestCase { /** * @var \Magento\Framework\DB\Adapter\Pdo\Mysql|\PHPUnit_Framework_MockObject_MockObject @@ -38,18 +38,18 @@ class MysqlBuilderTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->objectManager = $this->getMockBuilder('\Magento\Framework\ObjectManager\ObjectManager') + $this->objectManager = $this->getMockBuilder(\Magento\Framework\ObjectManager\ObjectManager::class) ->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); - $this->config = $this->getMockBuilder('Migration\Config') + $this->config = $this->getMockBuilder(\Migration\Config::class) ->disableOriginalConstructor() ->setMethods(['getResourceConfig', 'getOption']) ->getMock(); - $this->selectFactory = $this->getMockBuilder('Magento\Framework\DB\SelectFactory') + $this->selectFactory = $this->getMockBuilder(\Magento\Framework\DB\SelectFactory::class) ->disableOriginalConstructor() ->getMock(); - $this->pdoMysql = $this->getMockBuilder('\Magento\Framework\DB\Adapter\Pdo\Mysql') + $this->pdoMysql = $this->getMockBuilder(\Magento\Framework\DB\Adapter\Pdo\Mysql::class) ->disableOriginalConstructor() ->setMethods(['disallowDdlCache', 'query']) ->getMock(); @@ -74,8 +74,7 @@ public function testBuild() ], ]; $mysqlPdoConfig = [ - 'host' => 'localhost', - 'port' => '9999', + 'host' => 'localhost:9999', 'dbname' => 'db1', 'username' => 'root', 'password' => 'root' @@ -85,17 +84,17 @@ public function testBuild() ->with($resourceType) ->willReturn($resourceConfig); $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ce'], + ['edition_migrate', 'opensource-to-opensource'], ['init_statements_' . $resourceType, $initStatements] ]); $this->objectManager->expects($this->at(0)) ->method('create') - ->with('\Magento\Framework\DB\SelectFactory', ['parts' => []]) + ->with(\Magento\Framework\DB\SelectFactory::class, ['parts' => []]) ->willReturn($this->selectFactory); $this->objectManager->expects($this->at(1)) ->method('create') ->with( - '\Magento\Framework\DB\Adapter\Pdo\Mysql', + \Magento\Framework\DB\Adapter\Pdo\Mysql::class, ['config' => $mysqlPdoConfig, 'selectFactory' => $this->selectFactory] ) ->willReturn($this->pdoMysql); diff --git a/tests/unit/testsuite/Migration/ResourceModel/AdapterFactoryTest.php b/tests/unit/testsuite/Migration/ResourceModel/AdapterFactoryTest.php index 0ea13f508..c4ac2255c 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/AdapterFactoryTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/AdapterFactoryTest.php @@ -9,7 +9,7 @@ /** * Adapter Factory Test */ -class AdapterFactoryTest extends \PHPUnit_Framework_TestCase +class AdapterFactoryTest extends \PHPUnit\Framework\TestCase { /** * @var \Magento\Framework\ObjectManager\ObjectManager|\PHPUnit_Framework_MockObject_MockObject @@ -31,13 +31,13 @@ class AdapterFactoryTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->config = $this->getMock('\Migration\Config', ['getOption'], [], '', false); - $this->objectManager = $this->getMock( - '\Magento\Framework\ObjectManager\ObjectManager', - ['create'], - [], - '', - false + $this->config = $this->createPartialMock( + \Migration\Config::class, + ['getOption'] + ); + $this->objectManager = $this->createPartialMock( + \Magento\Framework\ObjectManager\ObjectManager::class, + ['create'] ); $this->adapterFactory = new \Migration\ResourceModel\AdapterFactory($this->objectManager, $this->config); } @@ -47,16 +47,18 @@ protected function setUp() */ public function testCreate() { - $adapterClassName = '\Migration\ResourceModel\Adapter\Mysql'; + $adapterClassName = \Migration\ResourceModel\Adapter\Mysql::class; $data = ['config' => ['key' => 'value']]; - $adapter = $this->getMock($adapterClassName, [], [], '', false); + $adapter = $this->getMockBuilder($adapterClassName) + ->disableOriginalConstructor() + ->getMock(); $this->config->expects($this->once()) ->method('getOption') ->with('resource_adapter_class_name') ->will($this->returnValue(null)); $this->objectManager->expects($this->once()) ->method('create') - ->with('\Migration\ResourceModel\Adapter\Mysql', $data) + ->with(\Migration\ResourceModel\Adapter\Mysql::class, $data) ->will($this->returnValue($adapter)); $this->assertInstanceOf($adapterClassName, $this->adapterFactory->create($data)); } diff --git a/tests/unit/testsuite/Migration/ResourceModel/DestinationTest.php b/tests/unit/testsuite/Migration/ResourceModel/DestinationTest.php index 2ff983bf8..df592a0ed 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/DestinationTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/DestinationTest.php @@ -9,7 +9,7 @@ /** * ResourceModel destination test class */ -class DestinationTest extends \PHPUnit_Framework_TestCase +class DestinationTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\Config|\PHPUnit_Framework_MockObject_MockObject @@ -52,22 +52,25 @@ class DestinationTest extends \PHPUnit_Framework_TestCase protected function setUp() { $adapterConfigs = ['resourceType' => 'destination']; - $this->config = $this->getMock('\Migration\Config', ['getOption'], [], '', false); - $this->adapter = $this->getMock( - '\Migration\ResourceModel\Adapter\Mysql', - ['insertRecords', 'deleteAllRecords', 'backupDocument', 'rollbackDocument', 'deleteBackup'], - [], - '', - false + $this->config = $this->createPartialMock( + \Migration\Config::class, + ['getOption'] + ); + $this->adapter = $this->createPartialMock( + \Migration\ResourceModel\Adapter\Mysql::class, + ['insertRecords', 'deleteAllRecords', 'backupDocument', 'rollbackDocument', 'deleteBackup'] + ); + $this->adapterFactory = $this->createPartialMock( + \Migration\ResourceModel\AdapterFactory::class, + ['create'] ); - $this->adapterFactory = $this->getMock('\Migration\ResourceModel\AdapterFactory', ['create'], [], '', false); $this->adapterFactory->expects($this->once()) ->method('create') ->with($adapterConfigs) ->will($this->returnValue($this->adapter)); - $this->documentFactory = $this->getMock('\Migration\ResourceModel\DocumentFactory', [], [], '', false); - $this->structureFactory = $this->getMock('\Migration\ResourceModel\StructureFactory', [], [], '', false); - $this->documentCollection = $this->getMock('\Migration\ResourceModel\Document\Collection', [], [], '', false); + $this->documentFactory = $this->createMock(\Migration\ResourceModel\DocumentFactory::class); + $this->structureFactory = $this->createMock(\Migration\ResourceModel\StructureFactory::class); + $this->documentCollection = $this->createMock(\Migration\ResourceModel\Document\Collection::class); $this->resourceDestination = new \Migration\ResourceModel\Destination( $this->adapterFactory, @@ -88,7 +91,7 @@ public function testSaveRecords($prefix) $resourceName = 'core_config_data'; $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], ['bulk_size', 3], ['dest_prefix', $prefix], ['init_statements_destination', 'SET NAMES utf8;'] @@ -102,14 +105,17 @@ public function testSaveRecords($prefix) ->with($prefix . $resourceName, [['data' => 'value4']]) ->will($this->returnSelf()); - $records = $this->getMock('\Migration\ResourceModel\Record\Collection', [], [], '', false); + $records = $this->createMock(\Migration\ResourceModel\Record\Collection::class); $records->expects($this->any()) ->method('current') ->willReturnCallback(function () { static $count = 0; $count++; $data = ['data' => "value$count"]; - $record = $this->getMock('\Migration\ResourceModel\Record', ['getData'], [], '', false); + $record = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['getData'] + ); $record->expects($this->once())->method('getData')->will($this->returnValue($data)); return $record; }); @@ -147,7 +153,7 @@ public function testClearDocument() $docName = 'somename'; $this->adapter->expects($this->once())->method('deleteAllRecords')->with('pfx_' . $docName); $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], ['dest_prefix', 'pfx_'], ['init_statements_destination', 'SET NAMES utf8;'] ]); @@ -162,7 +168,7 @@ public function testBackupDocument() $docName = 'somename'; $this->adapter->expects($this->once())->method('backupDocument')->with('pfx_' . $docName); $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], ['dest_prefix', 'pfx_'], ['init_statements_destination', 'SET NAMES utf8;'] ]); @@ -177,7 +183,7 @@ public function testRollbackDocument() $docName = 'somename'; $this->adapter->expects($this->once())->method('rollbackDocument')->with('pfx_' . $docName); $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], ['dest_prefix', 'pfx_'], ['init_statements_destination', 'SET NAMES utf8;'] ]); @@ -192,7 +198,7 @@ public function testDeleteDocumentBackup() $docName = 'somename'; $this->adapter->expects($this->once())->method('deleteBackup')->with('pfx_' . $docName); $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], ['dest_prefix', 'pfx_'], ['init_statements_destination', 'SET NAMES utf8;'] ]); diff --git a/tests/unit/testsuite/Migration/ResourceModel/Document/CollectionTest.php b/tests/unit/testsuite/Migration/ResourceModel/Document/CollectionTest.php index ac103488e..f74b43339 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/Document/CollectionTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/Document/CollectionTest.php @@ -5,7 +5,7 @@ */ namespace Migration\ResourceModel\Document; -class CollectionTest extends \PHPUnit_Framework_TestCase +class CollectionTest extends \PHPUnit\Framework\TestCase { /** * @var [] @@ -22,11 +22,11 @@ class CollectionTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $document1 = $this->getMock('\Migration\ResourceModel\Document', [], [], '', false); + $document1 = $this->createMock(\Migration\ResourceModel\Document::class); $document1->expects($this->any())->method('getName')->will($this->returnValue('Doc1')); - $document2 = $this->getMock('\Migration\ResourceModel\Document', [], [], '', false); + $document2 = $this->createMock(\Migration\ResourceModel\Document::class); $document2->expects($this->any())->method('getName')->will($this->returnValue('Doc2')); - $document3 = $this->getMock('\Migration\ResourceModel\Document', [], [], '', false); + $document3 = $this->createMock(\Migration\ResourceModel\Document::class); $document3->expects($this->any())->method('getName')->will($this->returnValue('Doc3')); $this->data = [$document1, $document2, $document3]; $this->documentCollection = new \Migration\ResourceModel\Document\Collection($this->data); @@ -66,7 +66,7 @@ public function testGetDocumentNotExists() */ public function testAddDocument() { - $document = $this->getMock('\Migration\ResourceModel\Document', [], [], '', false); + $document = $this->createMock(\Migration\ResourceModel\Document::class); $document->expects($this->any())->method('getName')->will($this->returnValue('Doc4')); $this->documentCollection->addDocument($document); $this->assertSame($document, $this->documentCollection->getDocument('Doc4')); diff --git a/tests/unit/testsuite/Migration/ResourceModel/DocumentTest.php b/tests/unit/testsuite/Migration/ResourceModel/DocumentTest.php index 5e9ace461..86033cc1e 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/DocumentTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/DocumentTest.php @@ -5,7 +5,7 @@ */ namespace Migration\ResourceModel; -class DocumentTest extends \PHPUnit_Framework_TestCase +class DocumentTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\ResourceModel\Record\CollectionFactory|\PHPUnit_Framework_MockObject_MockObject @@ -27,20 +27,11 @@ class DocumentTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->structure = $this->getMock( - '\Migration\ResourceModel\Structure', - [], - [], - '', - false - ); - $this->recordCollectionFactory = $this->getMock( - '\Migration\ResourceModel\Record\CollectionFactory', - ['create'], - [], - '', - false - ); + $this->structure = $this->createMock(\Migration\ResourceModel\Structure::class); + $this->recordCollectionFactory = $this->getMockBuilder(\Migration\ResourceModel\Record\CollectionFactory::class) + ->disableOriginalConstructor() + ->setMethods(['create']) + ->getMock(); $this->document = new \Migration\ResourceModel\Document( $this->recordCollectionFactory, $this->structure, @@ -53,13 +44,7 @@ protected function setUp() */ public function testGetRecords() { - $recordCollection = $this->getMock( - '\Migration\ResourceModel\Record\RecordCollection', - [], - [], - '', - false - ); + $recordCollection = $this->createMock(\Migration\ResourceModel\Record\Collection::class); $this->recordCollectionFactory->expects($this->atLeastOnce()) ->method('create') ->with($this->equalTo([ diff --git a/tests/unit/testsuite/Migration/ResourceModel/Record/CollectionTest.php b/tests/unit/testsuite/Migration/ResourceModel/Record/CollectionTest.php index f6879ab62..1872460b3 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/Record/CollectionTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/Record/CollectionTest.php @@ -5,7 +5,7 @@ */ namespace Migration\ResourceModel\Record; -class CollectionTest extends \PHPUnit_Framework_TestCase +class CollectionTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\ResourceModel\Record[]|\PHPUnit_Framework_MockObject_MockObject[] @@ -27,18 +27,12 @@ class CollectionTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->structure = $this->getMock( - '\Migration\ResourceModel\Structure', - [], - [], - '', - false - ); - $record1 = $this->getMock('\Migration\ResourceModel\Record', [], [], '', false); + $this->structure = $this->createMock(\Migration\ResourceModel\Structure::class); + $record1 = $this->createMock(\Migration\ResourceModel\Record::class); $record1->expects($this->any())->method('getValue')->with('fieldName')->willReturn('item1'); - $record2 = $this->getMock('\Migration\ResourceModel\Record', [], [], '', false); + $record2 = $this->createMock(\Migration\ResourceModel\Record::class); $record2->expects($this->any())->method('getValue')->with('fieldName')->willReturn('item2'); - $record3 = $this->getMock('\Migration\ResourceModel\Record', [], [], '', false); + $record3 = $this->createMock(\Migration\ResourceModel\Record::class); $record3->expects($this->any())->method('getValue')->with('fieldName')->willReturn('item3'); $this->records = [$record1, $record2, $record3]; $this->recordCollection = new \Migration\ResourceModel\Record\Collection($this->structure, $this->records); @@ -73,7 +67,7 @@ public function testIterator() public function testAddRecord() { $this->assertEquals(3, count($this->recordCollection)); - $record = $this->getMock('\Migration\ResourceModel\Record', [], [], '', false); + $record = $this->createMock(\Migration\ResourceModel\Record::class); $record->expects($this->any())->method('getStructure')->willReturn($this->structure); $record->expects($this->any())->method('validateStructure')->with($this->equalTo($this->structure)) ->willReturn(true); @@ -90,7 +84,7 @@ public function testAddRecord() public function testAddRecordWithException() { $this->assertEquals(3, count($this->recordCollection)); - $record = $this->getMock('\Migration\ResourceModel\Record', [], [], '', false); + $record = $this->createMock(\Migration\ResourceModel\Record::class); $this->recordCollection->addRecord($record); $this->assertEquals(4, count($this->recordCollection)); } @@ -133,7 +127,10 @@ public function testSetValue() $this->records[2]->expects($this->any()) ->method('setValue') ->with($this->equalTo('fieldName'), $this->equalTo('default')); - $this->recordCollection->setValue('fieldName', 'default'); + $this->assertInstanceOf( + \Migration\ResourceModel\Record\Collection::class, + $this->recordCollection->setValue('fieldName', 'default') + ); } /** diff --git a/tests/unit/testsuite/Migration/ResourceModel/RecordTest.php b/tests/unit/testsuite/Migration/ResourceModel/RecordTest.php index 946fa1487..0ada41e90 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/RecordTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/RecordTest.php @@ -5,7 +5,7 @@ */ namespace Migration\ResourceModel; -class RecordTest extends \PHPUnit_Framework_TestCase +class RecordTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\ResourceModel\Record @@ -22,17 +22,14 @@ class RecordTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->structure = $this->getMock( - '\Migration\ResourceModel\Structure', - [], - [], - '', - false - ); + $this->structure = $this->createMock(\Migration\ResourceModel\Structure::class); $this->structure->expects($this->any())->method('hasField')->willReturnCallback(function ($fieldName) { return in_array($fieldName, ['id', 'name']); }); - $document = $this->getMock('\Migration\ResourceModel\Document', ['getStructure'], [], '', false); + $document = $this->createPartialMock( + \Migration\ResourceModel\Document::class, + ['getStructure'] + ); $document->expects($this->any())->method('getStructure')->will($this->returnValue($this->structure)); $this->record = new \Migration\ResourceModel\Record(['id' => 10, 'name' => 'item1'], $document); } @@ -66,17 +63,17 @@ public function testValidateStructure($result, $structure) */ public function validateStructureDataProvider() { - $structureValid = $this->getMock('\Migration\ResourceModel\Structure', [], [], '', false); + $structureValid = $this->createMock(\Migration\ResourceModel\Structure::class); $structureValid->expects($this->any())->method('getFields')->willReturn(['id' => [], 'name' => []]); $structureValid->expects($this->any())->method('hasField')->willReturnCallback(function ($fieldName) { return in_array($fieldName, ['id', 'name']); }); - $structureValid2 = $this->getMock('\Migration\ResourceModel\Structure', [], [], '', false); + $structureValid2 = $this->createMock(\Migration\ResourceModel\Structure::class); $structureValid2->expects($this->any())->method('getFields') ->willReturn(['id' => [], 'name' => [], 'address' => []]); $structureValid2->expects($this->any())->method('hasField')->willReturn(false); - $structureNotValid = $this->getMock('\Migration\ResourceModel\Structure', [], [], '', false); + $structureNotValid = $this->createMock(\Migration\ResourceModel\Structure::class); $structureNotValid->expects($this->any())->method('getFields') ->willReturn(['id' => []]); $structureNotValid->expects($this->any())->method('hasField')->willReturn(false); @@ -183,7 +180,10 @@ public function getFieldsDataProvider() */ public function testGetFields($structureData, $fields) { - $structure = $this->getMock('\Migration\ResourceModel\Structure', ['getFields'], [], '', false); + $structure = $this->createPartialMock( + \Migration\ResourceModel\Structure::class, + ['getFields'] + ); $structure->expects($this->once())->method('getFields')->will($this->returnValue($structureData)); $this->record->setStructure($structure); $this->assertEquals($fields, $this->record->getFields()); @@ -196,7 +196,8 @@ public function testGetFields($structureData, $fields) public function testGetFieldsInvalid() { $this->record->setStructure(null); - $this->setExpectedException('Exception', 'Structure not set'); + $this->expectException('Exception'); + $this->expectExceptionMessage('Structure not set'); $this->record->getFields(); } } diff --git a/tests/unit/testsuite/Migration/ResourceModel/SourceTest.php b/tests/unit/testsuite/Migration/ResourceModel/SourceTest.php index 13d71032c..00efceafc 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/SourceTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/SourceTest.php @@ -9,7 +9,7 @@ /** * ResourceModel source test class */ -class SourceTest extends \PHPUnit_Framework_TestCase +class SourceTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\Config|\PHPUnit_Framework_MockObject_MockObject @@ -57,22 +57,29 @@ class SourceTest extends \PHPUnit_Framework_TestCase protected function setUp() { $adapterConfigs = ['resourceType' => 'source']; - $this->config = $this->getMock('\Migration\Config', ['getOption'], [], '', false); - $this->adapter = $this->getMock( - '\Migration\ResourceModel\Adapter\Mysql', - ['select', 'fetchAll', 'query', 'loadPage', 'createDelta', 'loadChangedRecords', 'loadDeletedRecords'], - [], - '', - false + $this->config = $this->createPartialMock( + \Migration\Config::class, + ['getOption'] + ); + $this->adapter = $this->createPartialMock( + \Migration\ResourceModel\Adapter\Mysql::class, + ['select', 'fetchAll', 'query', 'loadPage', 'createDelta', 'loadChangedRecords', 'loadDeletedRecords'] + ); + $this->adapterFactory = $this->createPartialMock( + \Migration\ResourceModel\AdapterFactory::class, + ['create'] ); - $this->adapterFactory = $this->getMock('\Migration\ResourceModel\AdapterFactory', ['create'], [], '', false); $this->adapterFactory->expects($this->once()) ->method('create') ->with($adapterConfigs) ->will($this->returnValue($this->adapter)); - $this->documentFactory = $this->getMock('\Migration\ResourceModel\DocumentFactory', [], [], '', false); - $this->structureFactory = $this->getMock('\Migration\ResourceModel\StructureFactory', [], [], '', false); - $this->documentCollection = $this->getMock('\Migration\ResourceModel\Document\Collection', [], [], '', false); + $this->documentFactory = $this->getMockBuilder(\Migration\ResourceModel\DocumentFactory::class) + ->disableOriginalConstructor() + ->getMock(); + $this->structureFactory = $this->getMockBuilder(\Migration\ResourceModel\StructureFactory::class) + ->disableOriginalConstructor() + ->getMock(); + $this->documentCollection = $this->createMock(\Migration\ResourceModel\Document\Collection::class); $this->resourceSource = new \Migration\ResourceModel\Source( $this->adapterFactory, $this->config, @@ -88,7 +95,7 @@ protected function setUp() public function testLoadPage() { $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], ['bulk_size', $this->bulkSize], ['init_statements_source', 'SET NAMES utf8;'] ]); @@ -104,7 +111,7 @@ public function testCreateDelta() $this->adapter->expects($this->once())->method('createDelta') ->with('spfx_document', 'spfx_m2_cl_document', 'key_field'); $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], [Source::CONFIG_DOCUMENT_PREFIX, 'spfx_'], ['init_statements_source', 'SET NAMES utf8;'] ]); @@ -119,7 +126,7 @@ public function testGetChangedRecords() $this->adapter->expects($this->once())->method('loadChangedRecords') ->with('document', 'm2_cl_document', 'key_field', 0, 100); $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], ['source_prefix', ''], ['bulk_size', 100], ['init_statements_source', 'SET NAMES utf8;'] @@ -135,7 +142,7 @@ public function testGetDeletedRecords() $this->adapter->expects($this->once())->method('loadDeletedRecords') ->with('m2_cl_document', 'key_field', 0, 100); $this->config->expects($this->any())->method('getOption')->willReturnMap([ - ['edition_migrate', 'ce-to-ee'], + ['edition_migrate', 'opensource-to-commerce'], ['source_prefix', ''], ['bulk_size', 100], ['init_statements_source', 'SET NAMES utf8;'] diff --git a/tests/unit/testsuite/Migration/ResourceModel/Structure/CollectionTest.php b/tests/unit/testsuite/Migration/ResourceModel/Structure/CollectionTest.php index 69ed55c83..56d26b1f5 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/Structure/CollectionTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/Structure/CollectionTest.php @@ -5,7 +5,7 @@ */ namespace Migration\ResourceModel\Structure; -class CollectionTest extends \PHPUnit_Framework_TestCase +class CollectionTest extends \PHPUnit\Framework\TestCase { /** * @var [] @@ -22,9 +22,9 @@ class CollectionTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $structure1 = $this->getMock('\Migration\ResourceModel\Structure', [], [], '', false); - $structure2 = $this->getMock('\Migration\ResourceModel\Structure', [], [], '', false); - $structure3 = $this->getMock('\Migration\ResourceModel\Structure', [], [], '', false); + $structure1 = $this->createMock(\Migration\ResourceModel\Structure::class); + $structure2 = $this->createMock(\Migration\ResourceModel\Structure::class); + $structure3 = $this->createMock(\Migration\ResourceModel\Structure::class); $this->structures = ['table1' => $structure1, 'table2' => $structure2, 'table3' => $structure3]; $this->structureCollection = new \Migration\ResourceModel\Structure\Collection($this->structures); } @@ -35,7 +35,7 @@ protected function setUp() public function testAddStructure() { $this->assertEquals(3, count($this->structureCollection)); - $structure = $this->getMock('\Migration\ResourceModel\Structure', [], [], '', false); + $structure = $this->createMock(\Migration\ResourceModel\Structure::class); $this->structureCollection->addStructure('table4', $structure); $this->assertEquals(4, count($this->structureCollection)); } diff --git a/tests/unit/testsuite/Migration/ResourceModel/StructureTest.php b/tests/unit/testsuite/Migration/ResourceModel/StructureTest.php index 19e7d5bef..e79bd9d01 100644 --- a/tests/unit/testsuite/Migration/ResourceModel/StructureTest.php +++ b/tests/unit/testsuite/Migration/ResourceModel/StructureTest.php @@ -5,7 +5,7 @@ */ namespace Migration\ResourceModel; -class StructureTest extends \PHPUnit_Framework_TestCase +class StructureTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\ResourceModel\Structure diff --git a/tests/unit/testsuite/Migration/Step/CustomCustomerAttributes/DataTest.php b/tests/unit/testsuite/Migration/Step/CustomCustomerAttributes/DataTest.php index bb056aca6..397634ac9 100644 --- a/tests/unit/testsuite/Migration/Step/CustomCustomerAttributes/DataTest.php +++ b/tests/unit/testsuite/Migration/Step/CustomCustomerAttributes/DataTest.php @@ -12,7 +12,7 @@ /** * Class DataTest */ -class DataTest extends \PHPUnit_Framework_TestCase +class DataTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\Step\CustomCustomerAttributes\Data @@ -64,26 +64,27 @@ class DataTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->config = $this->getMockBuilder('Migration\Config')->disableOriginalConstructor() + $this->config = $this->getMockBuilder(\Migration\Config::class)->disableOriginalConstructor() ->setMethods(['getSource']) ->getMock(); $this->config->expects($this->any())->method('getSource')->will( $this->returnValue(['type' => DatabaseStage::SOURCE_TYPE]) ); - $this->source = $this->getMockBuilder('Migration\ResourceModel\Source')->disableOriginalConstructor() + $this->source = $this->getMockBuilder(\Migration\ResourceModel\Source::class)->disableOriginalConstructor() ->setMethods(['getDocument', 'getRecordsCount', 'getAdapter', 'addDocumentPrefix', 'getRecords']) ->getMock(); $this->source->expects($this->any())->method('addDocumentPrefix')->willReturnCallback(function ($name) { return 'source_suffix_' . $name; }); - $this->destination = $this->getMockBuilder('Migration\ResourceModel\Destination')->disableOriginalConstructor() + $this->destination = $this->getMockBuilder(\Migration\ResourceModel\Destination::class) + ->disableOriginalConstructor() ->setMethods(['getDocument', 'getRecordsCount', 'getAdapter', 'addDocumentPrefix', 'saveRecords']) ->getMock(); $this->destination->expects($this->any())->method('addDocumentPrefix')->willReturnCallback(function ($name) { return 'destination_suffix_' . $name; }); - $this->progress = $this->getMockBuilder('Migration\App\ProgressBar\LogLevelProcessor') + $this->progress = $this->getMockBuilder(\Migration\App\ProgressBar\LogLevelProcessor::class) ->disableOriginalConstructor() ->setMethods(['start', 'finish', 'advance']) ->getMock(); @@ -91,27 +92,27 @@ public function setUp() $this->progress->expects($this->any())->method('finish'); $this->progress->expects($this->any())->method('advance'); - $this->recordFactory = $this->getMockBuilder('Migration\ResourceModel\RecordFactory') + $this->recordFactory = $this->getMockBuilder(\Migration\ResourceModel\RecordFactory::class) ->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); - $this->logger = $this->getMockBuilder('Migration\Logger\Logger')->disableOriginalConstructor() + $this->logger = $this->getMockBuilder(\Migration\Logger\Logger::class)->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); - $this->map = $this->getMockBuilder('Migration\Reader\Map')->disableOriginalConstructor() + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->setMethods(['getDocumentMap', 'init', 'getDocumentList', 'getDestDocumentsToClear']) ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMockBuilder('Migration\Reader\MapFactory')->disableOriginalConstructor() + $mapFactory = $this->getMockBuilder(\Migration\Reader\MapFactory::class)->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); $mapFactory->expects($this->any())->method('create')->with('customer_attr_map_file')->willReturn($this->map); - $this->groups = $this->getMockBuilder('Migration\Reader\Groups')->disableOriginalConstructor() + $this->groups = $this->getMockBuilder(\Migration\Reader\Groups::class)->disableOriginalConstructor() ->getMock(); $this->groups->expects($this->any())->method('getGroup')->with('source_documents')->willReturn([ @@ -119,14 +120,14 @@ public function setUp() ]); /** @var \Migration\Reader\GroupsFactory|\PHPUnit_Framework_MockObject_MockObject $groupsFactory */ - $groupsFactory = $this->getMockBuilder('Migration\Reader\GroupsFactory')->disableOriginalConstructor() + $groupsFactory = $this->getMockBuilder(\Migration\Reader\GroupsFactory::class)->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); $groupsFactory->expects($this->any())->method('create')->with('customer_attr_document_groups_file') ->willReturn($this->groups); - $this->logger = $this->getMockBuilder('Migration\Logger\Logger')->disableOriginalConstructor() + $this->logger = $this->getMockBuilder(\Migration\Logger\Logger::class)->disableOriginalConstructor() ->setMethods(['debug']) ->getMock(); $this->step = new Data( @@ -151,21 +152,23 @@ public function testPerform() ['source_document_1', MapInterface::TYPE_SOURCE, 'destination_document_1'], ] ) ; - $sourceTable = $this->getMockBuilder('Magento\Framework\DB\Ddl\Table')->disableOriginalConstructor() + $sourceTable = $this->getMockBuilder(\Magento\Framework\DB\Ddl\Table::class)->disableOriginalConstructor() ->setMethods(['getColumns'])->getMock(); $sourceTable->expects($this->any())->method('getColumns')->will($this->returnValue([['asdf']])); - $sourceAdapter = $this->getMockBuilder('\Migration\ResourceModel\Adapter\Mysql')->disableOriginalConstructor() + $sourceAdapter = $this->getMockBuilder(\Migration\ResourceModel\Adapter\Mysql::class) + ->disableOriginalConstructor() ->setMethods(['getTableDdlCopy']) ->getMock(); $sourceAdapter->expects($this->any())->method('getTableDdlCopy') ->with('source_suffix_source_document_1', 'destination_suffix_destination_document_1') ->will($this->returnValue($sourceTable)); - $destinationTable = $this->getMockBuilder('Magento\Framework\DB\Ddl\Table')->disableOriginalConstructor() + $destinationTable = $this->getMockBuilder(\Magento\Framework\DB\Ddl\Table::class)->disableOriginalConstructor() ->setMethods(['setColumn'])->getMock(); $destinationTable->expects($this->any())->method('setColumn')->with(['asdf']); - $destAdapter = $this->getMockBuilder('\Migration\ResourceModel\Adapter\Mysql')->disableOriginalConstructor() + $destAdapter = $this->getMockBuilder(\Migration\ResourceModel\Adapter\Mysql::class) + ->disableOriginalConstructor() ->setMethods(['createTableByDdl', 'getTableDdlCopy']) ->getMock(); $destAdapter->expects($this->any())->method('getTableDdlCopy') @@ -176,18 +179,18 @@ public function testPerform() $this->source->expects($this->once())->method('getAdapter')->will($this->returnValue($sourceAdapter)); $this->destination->expects($this->once())->method('getAdapter')->will($this->returnValue($destAdapter)); - $recordsCollection = $this->getMockBuilder('Migration\ResourceModel\Record\Collection') + $recordsCollection = $this->getMockBuilder(\Migration\ResourceModel\Record\Collection::class) ->disableOriginalConstructor() ->setMethods(['addRecord']) ->getMock(); - $destDocument = $this->getMockBuilder('Migration\ResourceModel\Document')->disableOriginalConstructor() + $destDocument = $this->getMockBuilder(\Migration\ResourceModel\Document::class)->disableOriginalConstructor() ->setMethods(['getRecords', 'getName']) ->getMock(); $destDocument->expects($this->any())->method('getName')->will($this->returnValue('some_name')); $destDocument->expects($this->any())->method('getRecords')->will($this->returnValue($recordsCollection)); - $record = $this->getMockBuilder('Migration\ResourceModel\Record')->disableOriginalConstructor() + $record = $this->getMockBuilder(\Migration\ResourceModel\Record::class)->disableOriginalConstructor() ->setMethods(['setData']) ->getMock(); $record->expects($this->once())->method('setData')->with(['field_1' => 1, 'field_2' => 2]); diff --git a/tests/unit/testsuite/Migration/Step/CustomCustomerAttributes/IntegrityTest.php b/tests/unit/testsuite/Migration/Step/CustomCustomerAttributes/IntegrityTest.php index 3915e22ca..be5f34894 100644 --- a/tests/unit/testsuite/Migration/Step/CustomCustomerAttributes/IntegrityTest.php +++ b/tests/unit/testsuite/Migration/Step/CustomCustomerAttributes/IntegrityTest.php @@ -11,7 +11,7 @@ /** * Class IntegrityTest */ -class IntegrityTest extends \PHPUnit_Framework_TestCase +class IntegrityTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\App\ProgressBar\LogLevelProcessor|\PHPUnit_Framework_MockObject_MockObject @@ -53,36 +53,33 @@ class IntegrityTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->logger = $this->getMock('\Migration\Logger\Logger', ['debug', 'error'], [], '', false); - $this->source = $this->getMock( - '\Migration\ResourceModel\Source', - ['getDocumentList', 'getDocument'], - [], - '', - false + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['debug', 'error'] ); - $this->progress = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getDocumentList', 'getDocument'] ); - $this->destination = $this->getMock( - '\Migration\ResourceModel\Destination', - ['getDocumentList', 'getDocument'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] ); - $this->map = $this->getMockBuilder('\Migration\Reader\Map')->disableOriginalConstructor() + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getDocumentList', 'getDocument'] + ); + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('customer_attr_map_file')->willReturn($this->map); - $this->readerGroups = $this->getMock('\Migration\Reader\Groups', ['getGroup'], [], '', false); + $this->readerGroups = $this->createPartialMock( + \Migration\Reader\Groups::class, + ['getGroup'] + ); $this->readerGroups->expects($this->any())->method('getGroup')->willReturnMap( [ ['source_documents', ['document1' => '']] @@ -90,15 +87,22 @@ public function setUp() ); /** @var \Migration\Reader\GroupsFactory|\PHPUnit_Framework_MockObject_MockObject $groupsFactory */ - $groupsFactory = $this->getMock('\Migration\Reader\GroupsFactory', ['create'], [], '', false); + $groupsFactory = $this->createPartialMock( + \Migration\Reader\GroupsFactory::class, + ['create'] + ); $groupsFactory->expects($this->any()) ->method('create') ->with('customer_attr_document_groups_file') ->willReturn($this->readerGroups); + $config = $this->getMockBuilder(\Migration\Config::class)->disableOriginalConstructor() + ->getMock(); + $this->log = new Integrity( $this->progress, $this->logger, + $config, $this->source, $this->destination, $mapFactory, @@ -114,14 +118,16 @@ public function testPerform() { $fields = ['field1' => ['DATA_TYPE' => 'int']]; - $structure = $this->getMockBuilder('\Migration\ResourceModel\Structure') + $structure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) ->disableOriginalConstructor()->setMethods([])->getMock(); $structure->expects($this->any())->method('getFields')->will($this->returnValue($fields)); $this->source->expects($this->atLeastOnce())->method('getDocumentList') ->will($this->returnValue(['document1'])); $this->destination->expects($this->atLeastOnce())->method('getDocumentList') ->will($this->returnValue(['document2'])); - $document = $this->getMockBuilder('\Migration\ResourceModel\Document')->disableOriginalConstructor()->getMock(); + $document = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() + ->getMock(); $document->expects($this->any())->method('getStructure')->will($this->returnValue($structure)); $this->map->expects($this->any())->method('getDocumentMap')->willReturnMap( diff --git a/tests/unit/testsuite/Migration/Step/CustomCustomerAttributes/VolumeTest.php b/tests/unit/testsuite/Migration/Step/CustomCustomerAttributes/VolumeTest.php index acae6181b..39570fdfd 100644 --- a/tests/unit/testsuite/Migration/Step/CustomCustomerAttributes/VolumeTest.php +++ b/tests/unit/testsuite/Migration/Step/CustomCustomerAttributes/VolumeTest.php @@ -12,7 +12,7 @@ /** * Class VolumeTest */ -class VolumeTest extends \PHPUnit_Framework_TestCase +class VolumeTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\App\ProgressBar\LogLevelProcessor|\PHPUnit_Framework_MockObject_MockObject @@ -54,37 +54,34 @@ class VolumeTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->logger = $this->getMock('Migration\Logger\Logger', ['error'], [], '', false); - $this->progress = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['error'] ); - $this->source = $this->getMock( - 'Migration\ResourceModel\Source', - ['getDocumentList', 'getRecordsCount', 'getDocument'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] ); - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['getRecordsCount', 'getDocument'], - [], - '', - false + $this->source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getDocumentList', 'getRecordsCount', 'getDocument'] + ); + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getRecordsCount', 'getDocument'] ); - $this->map = $this->getMockBuilder('Migration\Reader\Map')->disableOriginalConstructor() + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('customer_attr_map_file')->willReturn($this->map); - $this->readerGroups = $this->getMock('\Migration\Reader\Groups', ['getGroup'], [], '', false); + $this->readerGroups = $this->createPartialMock( + \Migration\Reader\Groups::class, + ['getGroup'] + ); $this->readerGroups->expects($this->any())->method('getGroup')->willReturnMap( [ ['source_documents', ['document1' => '']] @@ -92,7 +89,10 @@ public function setUp() ); /** @var \Migration\Reader\GroupsFactory|\PHPUnit_Framework_MockObject_MockObject $groupsFactory */ - $groupsFactory = $this->getMock('\Migration\Reader\GroupsFactory', ['create'], [], '', false); + $groupsFactory = $this->createPartialMock( + \Migration\Reader\GroupsFactory::class, + ['create'] + ); $groupsFactory->expects($this->any()) ->method('create') ->with('customer_attr_document_groups_file') @@ -115,11 +115,13 @@ public function testPerform() { $fields = ['field1' => []]; - $structure = $this->getMockBuilder('\Migration\ResourceModel\Structure') + $structure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) ->disableOriginalConstructor()->setMethods([])->getMock(); $structure->expects($this->any())->method('getFields')->will($this->returnValue($fields)); - $document = $this->getMockBuilder('\Migration\ResourceModel\Document')->disableOriginalConstructor()->getMock(); + $document = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() + ->getMock(); $document->expects($this->any())->method('getStructure')->will($this->returnValue($structure)); $this->map->expects($this->once())->method('getDocumentMap')->with('document1')->willReturn('document2'); diff --git a/tests/unit/testsuite/Migration/Step/CustomCustomerAttributesTest.php b/tests/unit/testsuite/Migration/Step/CustomCustomerAttributesTest.php index 5b1a43184..c0884c649 100644 --- a/tests/unit/testsuite/Migration/Step/CustomCustomerAttributesTest.php +++ b/tests/unit/testsuite/Migration/Step/CustomCustomerAttributesTest.php @@ -9,6 +9,6 @@ /** * Class CustomCustomerAttributesTest */ -abstract class CustomCustomerAttributesTest extends \PHPUnit_Framework_TestCase +abstract class CustomCustomerAttributesTest extends \PHPUnit\Framework\TestCase { } diff --git a/tests/unit/testsuite/Migration/Step/Eav/HelperTest.php b/tests/unit/testsuite/Migration/Step/Eav/HelperTest.php index aec5260a0..2ed4e2c67 100644 --- a/tests/unit/testsuite/Migration/Step/Eav/HelperTest.php +++ b/tests/unit/testsuite/Migration/Step/Eav/HelperTest.php @@ -14,7 +14,7 @@ /** * Class HelperTest */ -class HelperTest extends \PHPUnit_Framework_TestCase +class HelperTest extends \PHPUnit\Framework\TestCase { /** * @var Helper @@ -71,33 +71,34 @@ class HelperTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->map = $this->getMockBuilder('Migration\Reader\Map')->disableOriginalConstructor() + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->setMethods(['getDocumentMap']) ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('eav_map_file')->willReturn($this->map); - $this->source = $this->getMockBuilder('Migration\ResourceModel\Source')->disableOriginalConstructor() + $this->source = $this->getMockBuilder(\Migration\ResourceModel\Source::class)->disableOriginalConstructor() ->setMethods(['getRecordsCount', 'getRecords', 'getAdapter', 'addDocumentPrefix']) ->getMock(); - $this->destination = $this->getMockBuilder('Migration\ResourceModel\Destination')->disableOriginalConstructor() + $this->destination = $this->getMockBuilder(\Migration\ResourceModel\Destination::class) + ->disableOriginalConstructor() ->setMethods(['getRecordsCount', 'getRecords', 'deleteDocumentBackup']) ->getMock(); - $this->factory = $this->getMockBuilder('Migration\RecordTransformerFactory')->disableOriginalConstructor() + $this->factory = $this->getMockBuilder(\Migration\RecordTransformerFactory::class)->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); - $this->readerGroups = $this->getMockBuilder('\Migration\Reader\Groups') + $this->readerGroups = $this->getMockBuilder(\Migration\Reader\Groups::class) ->disableOriginalConstructor() ->setMethods([]) ->getMock(); - $this->readerAttributes = $this->getMockBuilder('\Migration\Reader\Groups') + $this->readerAttributes = $this->getMockBuilder(\Migration\Reader\Groups::class) ->disableOriginalConstructor() ->setMethods([]) ->getMock(); /** @var \Migration\Reader\GroupsFactory|\PHPUnit_Framework_MockObject_MockObject $groupsFactory */ - $groupsFactory = $this->getMockBuilder('\Migration\Reader\GroupsFactory') + $groupsFactory = $this->getMockBuilder(\Migration\Reader\GroupsFactory::class) ->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); @@ -109,21 +110,18 @@ public function setUp() ['eav_attribute_groups_file', $this->readerAttributes] ] ); - $this->adapter = $this->getMock( - 'Migration\ResourceModel\Adapter\Mysql', - ['getSelect'], - [], - '', - false + $this->adapter = $this->createPartialMock( + \Migration\ResourceModel\Adapter\Mysql::class, + ['getSelect'] + ); + $this->pdoMysql = $this->createPartialMock( + \Magento\Framework\DB\Adapter\Pdo\Mysql::class, + ['fetchPairs'] ); - $this->pdoMysql = $this->getMock( - 'Magento\Framework\DB\Adapter\Pdo\Mysql', - ['fetchPairs'], - [], - '', - false + $this->select = $this->createPartialMock( + \Magento\Framework\DB\Select::class, + ['from', 'getAdapter'] ); - $this->select = $this->getMock('Magento\Framework\DB\Select', ['from', 'getAdapter'], [], '', false); $this->helper = new Helper($mapFactory, $this->source, $this->destination, $this->factory, $groupsFactory); } @@ -218,11 +216,12 @@ public function testGetDestinationRecordsNoKey() */ public function testGetRecordTransformer() { - $sourceDocument = $this->getMockBuilder('Migration\ResourceModel\Document')->disableOriginalConstructor() + $sourceDocument = $this->getMockBuilder(\Migration\ResourceModel\Document::class)->disableOriginalConstructor() ->getMock(); - $destinationDocument = $this->getMockBuilder('Migration\ResourceModel\Document')->disableOriginalConstructor() + $destinationDocument = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() ->getMock(); - $recordTransformer = $this->getMockBuilder('Migration\RecordTransformer')->disableOriginalConstructor() + $recordTransformer = $this->getMockBuilder(\Migration\RecordTransformer::class)->disableOriginalConstructor() ->setMethods(['init']) ->getMock(); diff --git a/tests/unit/testsuite/Migration/Step/Eav/InitialDataTest.php b/tests/unit/testsuite/Migration/Step/Eav/InitialDataTest.php index 583a3c738..4bec2a5a0 100644 --- a/tests/unit/testsuite/Migration/Step/Eav/InitialDataTest.php +++ b/tests/unit/testsuite/Migration/Step/Eav/InitialDataTest.php @@ -8,7 +8,7 @@ /** * Class InitialDataTest */ -class InitialDataTest extends \PHPUnit_Framework_TestCase +class InitialDataTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\Step\Eav\InitialData @@ -40,21 +40,22 @@ class InitialDataTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->map = $this->getMockBuilder('\Migration\Reader\Map')->disableOriginalConstructor() + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->setMethods([]) ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('eav_map_file')->willReturn($this->map); - $this->source = $this->getMockBuilder('\Migration\ResourceModel\Source')->disableOriginalConstructor() + $this->source = $this->getMockBuilder(\Migration\ResourceModel\Source::class)->disableOriginalConstructor() ->setMethods([]) ->getMock(); - $this->destination = $this->getMockBuilder('\Migration\ResourceModel\Destination')->disableOriginalConstructor() + $this->destination = $this->getMockBuilder(\Migration\ResourceModel\Destination::class) + ->disableOriginalConstructor() ->setMethods([]) ->getMock(); - $this->helper = $this->getMockBuilder('\Migration\Step\Eav\Helper')->disableOriginalConstructor() + $this->helper = $this->getMockBuilder(\Migration\Step\Eav\Helper::class)->disableOriginalConstructor() ->setMethods(['getSourceRecords', 'getDestinationRecords']) ->getMock(); diff --git a/tests/unit/testsuite/Migration/Step/Eav/Integrity/AttributeFrontendInputTest.php b/tests/unit/testsuite/Migration/Step/Eav/Integrity/AttributeFrontendInputTest.php index 0a42af61c..675652ab9 100644 --- a/tests/unit/testsuite/Migration/Step/Eav/Integrity/AttributeFrontendInputTest.php +++ b/tests/unit/testsuite/Migration/Step/Eav/Integrity/AttributeFrontendInputTest.php @@ -12,7 +12,7 @@ /** * Class AttributeFrontendInputTest */ -class AttributeFrontendInputTest extends \PHPUnit_Framework_TestCase +class AttributeFrontendInputTest extends \PHPUnit\Framework\TestCase { /** * @var AttributeFrontendInput|\PHPUnit_Framework_MockObject_MockObject diff --git a/tests/unit/testsuite/Migration/Step/Eav/Integrity/AttributeGroupNamesTest.php b/tests/unit/testsuite/Migration/Step/Eav/Integrity/AttributeGroupNamesTest.php index 07b77ce63..42f6d8c55 100644 --- a/tests/unit/testsuite/Migration/Step/Eav/Integrity/AttributeGroupNamesTest.php +++ b/tests/unit/testsuite/Migration/Step/Eav/Integrity/AttributeGroupNamesTest.php @@ -13,7 +13,7 @@ /** * Class AttributeGroupNamesTest */ -class AttributeGroupNamesTest extends \PHPUnit_Framework_TestCase +class AttributeGroupNamesTest extends \PHPUnit\Framework\TestCase { /** * @var AttributeGroupNames|\PHPUnit_Framework_MockObject_MockObject @@ -30,15 +30,15 @@ class AttributeGroupNamesTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->helper = $this->getMockBuilder('\Migration\Step\Eav\Helper') + $this->helper = $this->getMockBuilder(\Migration\Step\Eav\Helper::class) ->disableOriginalConstructor() ->setMethods(['getSourceRecords']) ->getMock(); $objectHelper = new ObjectManager($this); - $groupNameToCodeMap = $objectHelper->getObject('\Migration\Model\Eav\AttributeGroupNameToCodeMap'); + $groupNameToCodeMap = $objectHelper->getObject(\Migration\Model\Eav\AttributeGroupNameToCodeMap::class); - $this->model = $objectHelper->getObject('\Migration\Step\Eav\Integrity\AttributeGroupNames', [ + $this->model = $objectHelper->getObject(\Migration\Step\Eav\Integrity\AttributeGroupNames::class, [ 'helper' => $this->helper, 'groupNameToCodeMap' => $groupNameToCodeMap ]); @@ -78,7 +78,7 @@ public function getFixtureData() 7 => ['attribute_set_id' => 4, 'attribute_group_name' => 'General'], 8 => ['attribute_set_id' => 4, 'attribute_group_name' => 'Prices'], 11 => ['attribute_set_id' => 4, 'attribute_group_name' => 'Design'], - 13 => ['attribute_set_id' => 4, 'attribute_group_name' => 'Images'] + 14 => ['attribute_set_id' => 4, 'attribute_group_name' => 'Images'] ], 'eav_entity_type' => [ 'catalog_product' => ['entity_type_id' => 4] @@ -96,8 +96,8 @@ public function getFixtureData() 7 => ['attribute_set_id' => 3, 'attribute_group_name' => 'General'], 8 => ['attribute_set_id' => 3, 'attribute_group_name' => 'Prices'], 11 => ['attribute_set_id' => 3, 'attribute_group_name' => 'Design'], - 13 => ['attribute_set_id' => 3, 'attribute_group_name' => 'Images'], - 12 => ['attribute_set_id' => 4, 'attribute_group_name' => 'General'] + 12 => ['attribute_set_id' => 4, 'attribute_group_name' => 'General'], + 14 => ['attribute_set_id' => 4, 'attribute_group_name' => 'Images'] ], 'eav_entity_type' => [ 'catalog_product' => ['entity_type_id' => 4] @@ -109,7 +109,7 @@ public function getFixtureData() 4 => ['attribute_set_id' => 4, 'entity_type_id' => 4, 'attribute_set_name' => 'Default_3'] ] ], - 2 + 3 ], [ [ 'eav_attribute_group' => [ @@ -117,8 +117,8 @@ public function getFixtureData() 7 => ['attribute_set_id' => 3, 'attribute_group_name' => 'General'], 8 => ['attribute_set_id' => 3, 'attribute_group_name' => 'Prices'], 11 => ['attribute_set_id' => 3, 'attribute_group_name' => 'Design'], - 13 => ['attribute_set_id' => 3, 'attribute_group_name' => 'Images'], - 12 => ['attribute_set_id' => 4, 'attribute_group_name' => 'General'] + 12 => ['attribute_set_id' => 4, 'attribute_group_name' => 'General'], + 14 => ['attribute_set_id' => 4, 'attribute_group_name' => 'Images'] ], 'eav_entity_type' => [ 'customer' => ['entity_type_id' => 1], @@ -132,7 +132,7 @@ public function getFixtureData() 4 => ['attribute_set_id' => 4, 'entity_type_id' => 4, 'attribute_set_name' => 'Default_3'] ] ], - 1 + 2 ], ]; } diff --git a/tests/unit/testsuite/Migration/Step/Eav/IntegrityTest.php b/tests/unit/testsuite/Migration/Step/Eav/IntegrityTest.php index c829c5749..ee970a6ea 100644 --- a/tests/unit/testsuite/Migration/Step/Eav/IntegrityTest.php +++ b/tests/unit/testsuite/Migration/Step/Eav/IntegrityTest.php @@ -10,7 +10,7 @@ /** * Class IntegrityTest */ -class IntegrityTest extends \PHPUnit_Framework_TestCase +class IntegrityTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\Step\Eav\Integrity|\PHPUnit_Framework_MockObject_MockObject @@ -62,30 +62,32 @@ class IntegrityTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->progress = $this->getMockBuilder('\Migration\App\ProgressBar\LogLevelProcessor') + $this->progress = $this->getMockBuilder(\Migration\App\ProgressBar\LogLevelProcessor::class) ->disableOriginalConstructor() ->setMethods(['start', 'finish', 'advance']) ->getMock(); - $this->logger = $this->getMockBuilder('\Migration\Logger\Logger')->disableOriginalConstructor() + $this->logger = $this->getMockBuilder(\Migration\Logger\Logger::class)->disableOriginalConstructor() ->setMethods([]) ->getMock(); - $this->source = $this->getMockBuilder('\Migration\ResourceModel\Source')->disableOriginalConstructor() + $this->source = $this->getMockBuilder(\Migration\ResourceModel\Source::class)->disableOriginalConstructor() ->setMethods([]) ->getMock(); - $this->destination = $this->getMockBuilder('\Migration\ResourceModel\Destination')->disableOriginalConstructor() + $this->destination = $this->getMockBuilder(\Migration\ResourceModel\Destination::class) + ->disableOriginalConstructor() ->setMethods([]) ->getMock(); - $this->map = $this->getMockBuilder('\Migration\Reader\Map')->disableOriginalConstructor() + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->setMethods(['getDocumentMap', 'getDocumentList', 'getFieldMap', 'isDocumentIgnored']) ->getMock(); - $this->attributeGroupNames = $this->getMockBuilder('Migration\Step\Eav\Integrity\AttributeGroupNames') + $this->attributeGroupNames = $this->getMockBuilder(\Migration\Step\Eav\Integrity\AttributeGroupNames::class) ->setMethods(['checkAttributeGroupNames']) ->disableOriginalConstructor() ->getMock(); $this->attributeGroupNames->expects($this->once()) ->method('checkAttributeGroupNames') ->willReturn([]); - $this->attributeFrontendInput = $this->getMockBuilder('Migration\Step\Eav\Integrity\AttributeFrontendInput') + $this->attributeFrontendInput = + $this->getMockBuilder(\Migration\Step\Eav\Integrity\AttributeFrontendInput::class) ->setMethods(['checkAttributeFrontendInput']) ->disableOriginalConstructor() ->getMock(); @@ -94,15 +96,15 @@ public function setUp() ->willReturn([]); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('eav_map_file')->willReturn($this->map); - $this->readerGroups = $this->getMockBuilder('\Migration\Reader\Groups') + $this->readerGroups = $this->getMockBuilder(\Migration\Reader\Groups::class) ->disableOriginalConstructor() ->setMethods([]) ->getMock(); /** @var \Migration\Reader\GroupsFactory|\PHPUnit_Framework_MockObject_MockObject $groupsFactory */ - $groupsFactory = $this->getMockBuilder('\Migration\Reader\GroupsFactory') + $groupsFactory = $this->getMockBuilder(\Migration\Reader\GroupsFactory::class) ->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); @@ -110,9 +112,12 @@ public function setUp() ->method('create') ->with('eav_document_groups_file') ->willReturn($this->readerGroups); + $config = $this->getMockBuilder(\Migration\Config::class)->disableOriginalConstructor() + ->getMock(); $this->integrity = new Integrity( $this->progress, $this->logger, + $config, $this->source, $this->destination, $mapFactory, @@ -137,11 +142,13 @@ public function testPerformWithoutError() $this->map->expects($this->atLeastOnce())->method('getFieldMap')->willReturn('field1'); $this->map->expects($this->atLeastOnce())->method('isDocumentIgnored')->willReturn(false); - $structure = $this->getMockBuilder('\Migration\ResourceModel\Structure') + $structure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) ->disableOriginalConstructor()->setMethods([])->getMock(); $structure->expects($this->any())->method('getFields')->will($this->returnValue($fields)); - $document = $this->getMockBuilder('\Migration\ResourceModel\Document')->disableOriginalConstructor()->getMock(); + $document = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() + ->getMock(); $document->expects($this->any())->method('getStructure')->will($this->returnValue($structure)); $this->source->expects($this->any())->method('getDocument')->will($this->returnValue($document)); @@ -152,7 +159,7 @@ public function testPerformWithoutError() ->will($this->returnValue(['destination_document'])); $this->destination->expects($this->atLeastOnce())->method('getDocument')->will($this->returnValue($document)); - $this->logger->expects($this->never())->method('error'); + $this->logger->expects($this->never())->method('addRecord'); $this->readerGroups->expects($this->any())->method('getGroup')->with('documents') ->willReturn(['source_document' => 0]); @@ -173,11 +180,13 @@ public function testPerformWithError() ['common_document', MapInterface::TYPE_DEST, 'common_document'], ] ) ; - $structure = $this->getMockBuilder('\Migration\ResourceModel\Structure') + $structure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) ->disableOriginalConstructor()->setMethods([])->getMock(); $structure->expects($this->any())->method('getFields')->will($this->returnValue($fields)); - $document = $this->getMockBuilder('\Migration\ResourceModel\Document')->disableOriginalConstructor()->getMock(); + $document = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() + ->getMock(); $document->expects($this->any())->method('getStructure')->will($this->returnValue($structure)); $this->source->expects($this->atLeastOnce())->method('getDocumentList') @@ -188,8 +197,8 @@ public function testPerformWithError() ->will($this->returnValue(['common_document'])); $this->destination->expects($this->atLeastOnce())->method('getDocument')->willReturn($document); - $this->logger->expects($this->once())->method('error') - ->with('Source documents are not mapped: source_document'); + $this->logger->expects($this->once())->method('addRecord') + ->with(400, 'Source documents are not mapped: source_document'); $this->readerGroups->expects($this->any())->method('getGroup')->with('documents') ->willReturn(['source_document' => 0, 'common_document' => 1]); diff --git a/tests/unit/testsuite/Migration/Step/Eav/Model/IgnoredAttributesTest.php b/tests/unit/testsuite/Migration/Step/Eav/Model/IgnoredAttributesTest.php index ff9b95647..f8256954d 100644 --- a/tests/unit/testsuite/Migration/Step/Eav/Model/IgnoredAttributesTest.php +++ b/tests/unit/testsuite/Migration/Step/Eav/Model/IgnoredAttributesTest.php @@ -11,7 +11,7 @@ /** * Class IgnoredAttributesTest */ -class IgnoredAttributesTest extends \PHPUnit_Framework_TestCase +class IgnoredAttributesTest extends \PHPUnit\Framework\TestCase { /** * @var IgnoredAttributes diff --git a/tests/unit/testsuite/Migration/Step/Eav/VolumeTest.php b/tests/unit/testsuite/Migration/Step/Eav/VolumeTest.php index 4a5e3b5c6..7cb0d4825 100644 --- a/tests/unit/testsuite/Migration/Step/Eav/VolumeTest.php +++ b/tests/unit/testsuite/Migration/Step/Eav/VolumeTest.php @@ -8,7 +8,7 @@ /** * Class VolumeTest */ -class VolumeTest extends \PHPUnit_Framework_TestCase +class VolumeTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\Step\Eav\Helper|\PHPUnit_Framework_MockObject_MockObject @@ -55,10 +55,10 @@ class VolumeTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->initialData = $this->getMockBuilder('\Migration\Step\Eav\InitialData')->disableOriginalConstructor() + $this->initialData = $this->getMockBuilder(\Migration\Step\Eav\InitialData::class)->disableOriginalConstructor() ->setMethods(['getAttributes', 'getAttributeSets', 'getAttributeGroups']) ->getMock(); - $this->helper = $this->getMockBuilder('\Migration\Step\Eav\Helper')->disableOriginalConstructor() + $this->helper = $this->getMockBuilder(\Migration\Step\Eav\Helper::class)->disableOriginalConstructor() ->setMethods( [ 'getDestinationRecords', @@ -67,19 +67,19 @@ public function setUp() 'deleteBackups' ] )->getMock(); - $this->logger = $this->getMockBuilder('\Migration\Logger\Logger')->disableOriginalConstructor() + $this->logger = $this->getMockBuilder(\Migration\Logger\Logger::class)->disableOriginalConstructor() ->setMethods(['warning', 'addRecord']) ->getMock(); - $this->progress = $this->getMockBuilder('\Migration\App\ProgressBar\LogLevelProcessor') + $this->progress = $this->getMockBuilder(\Migration\App\ProgressBar\LogLevelProcessor::class) ->disableOriginalConstructor() ->setMethods(['start', 'finish', 'advance']) ->getMock(); - $this->readerGroups = $this->getMockBuilder('\Migration\Reader\Groups') + $this->readerGroups = $this->getMockBuilder(\Migration\Reader\Groups::class) ->disableOriginalConstructor() ->setMethods([]) ->getMock(); /** @var \Migration\Reader\GroupsFactory|\PHPUnit_Framework_MockObject_MockObject $groupsFactory */ - $groupsFactory = $this->getMockBuilder('\Migration\Reader\GroupsFactory') + $groupsFactory = $this->getMockBuilder(\Migration\Reader\GroupsFactory::class) ->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); @@ -87,7 +87,7 @@ public function setUp() ->method('create') ->with('eav_document_groups_file') ->willReturn($this->readerGroups); - $this->destination = $this->getMockBuilder('\Migration\ResourceModel\Destination') + $this->destination = $this->getMockBuilder(\Migration\ResourceModel\Destination::class) ->disableOriginalConstructor() ->setMethods(['getDocument']) ->getMock(); @@ -243,35 +243,33 @@ public function testPerformWithError() protected function getDocumentsMap() { $structureFields = [ - 'eav_attribute' => - [ - 'attribute_id' => ['COLUMN_NAME' => 'attribute_id', 'PRIMARY' => true], - 'field' => ['COLUMN_NAME' => 'field', 'PRIMARY' => false], - ], - 'catalog_eav_attribute' => - [ - 'attribute_id' => ['COLUMN_NAME' => 'attribute_id', 'PRIMARY' => true], - 'field' => ['COLUMN_NAME' => 'field', 'PRIMARY' => false], - ], - 'customer_eav_attribute' => - [ - 'attribute_id' => ['COLUMN_NAME' => 'attribute_id', 'PRIMARY' => true], - 'field' => ['COLUMN_NAME' => 'field', 'PRIMARY' => false], - ], - 'eav_entity_type' => - [ - 'attribute_id' => ['COLUMN_NAME' => 'attribute_id', 'PRIMARY' => true], - 'field' => ['COLUMN_NAME' => 'field', 'PRIMARY' => false], - ], + 'eav_attribute' => [ + 'attribute_id' => ['COLUMN_NAME' => 'attribute_id', 'PRIMARY' => true], + 'field' => ['COLUMN_NAME' => 'field', 'PRIMARY' => false], + ], + 'catalog_eav_attribute' => [ + 'attribute_id' => ['COLUMN_NAME' => 'attribute_id', 'PRIMARY' => true], + 'field' => ['COLUMN_NAME' => 'field', 'PRIMARY' => false], + ], + 'customer_eav_attribute' => [ + 'attribute_id' => ['COLUMN_NAME' => 'attribute_id', 'PRIMARY' => true], + 'field' => ['COLUMN_NAME' => 'field', 'PRIMARY' => false], + ], + 'eav_entity_type' => [ + 'attribute_id' => ['COLUMN_NAME' => 'attribute_id', 'PRIMARY' => true], + 'field' => ['COLUMN_NAME' => 'field', 'PRIMARY' => false], + ], ]; $documentsMap = []; foreach ($structureFields as $documentName => $structure) { $structure = new \Migration\ResourceModel\Structure($structureFields[$documentName]); - $destDocument = $this->getMock('\Migration\ResourceModel\Document', ['getStructure'], [], '', false); + $destDocument = $this->createPartialMock( + \Migration\ResourceModel\Document::class, + ['getStructure'] + ); $destDocument->expects($this->once())->method('getStructure')->willReturn($structure); $documentsMap[] = [$documentName, $destDocument]; } - return $documentsMap; } } diff --git a/tests/unit/testsuite/Migration/Step/Log/DataTest.php b/tests/unit/testsuite/Migration/Step/Log/DataTest.php index d2637d312..9d0f281c7 100644 --- a/tests/unit/testsuite/Migration/Step/Log/DataTest.php +++ b/tests/unit/testsuite/Migration/Step/Log/DataTest.php @@ -12,7 +12,7 @@ /** * Class DataTest */ -class DataTest extends \PHPUnit_Framework_TestCase +class DataTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\App\ProgressBar\LogLevelProcessor|\PHPUnit_Framework_MockObject_MockObject @@ -69,49 +69,39 @@ class DataTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->progress = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] ); - $this->source = $this->getMock( - 'Migration\ResourceModel\Source', - [ + $this->source = $this->getMockBuilder(\Migration\ResourceModel\Source::class) + ->disableOriginalConstructor() + ->setMethods([ 'getDocument', 'getDocumentList', 'getRecords', 'getRecordsCount', 'getAdapter', 'addDocumentPrefix', 'getPageSize' - ], - [], - '', - false + ])->getMock(); + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getDocument', 'getDocumentList', 'saveRecords', 'clearDocument'] ); - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['getDocument', 'getDocumentList', 'saveRecords', 'clearDocument'], - [], - '', - false + $this->recordFactory = $this->createPartialMock( + \Migration\ResourceModel\RecordFactory::class, + ['create'] ); - $this->recordFactory = $this->getMock('Migration\ResourceModel\RecordFactory', ['create'], [], '', false); - $this->recordTransformerFactory = $this->getMock( - 'Migration\RecordTransformerFactory', - ['create'], - [], - '', - false + $this->recordTransformerFactory = $this->createPartialMock( + \Migration\RecordTransformerFactory::class, + ['create'] ); - $this->map = $this->getMockBuilder('Migration\Reader\Map')->disableOriginalConstructor() + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->setMethods(['getDocumentMap', 'init', 'getDocumentList', 'getDestDocumentsToClear']) ->getMock(); - $this->sourceAdapter = $this->getMockBuilder('Migration\ResourceModel\Adapter\Mysql') + $this->sourceAdapter = $this->getMockBuilder(\Migration\ResourceModel\Adapter\Mysql::class) ->disableOriginalConstructor() ->setMethods(['getSelect', 'loadDataFromSelect']) ->getMock(); - $select = $this->getMockBuilder('Magento\Framework\DB\Select') - ->setMethods(['from', 'joinLeft', 'where', 'group']) + $select = $this->getMockBuilder(\Magento\Framework\DB\Select::class) + ->setMethods(['from', 'joinLeft', 'where', 'group', 'order']) ->disableOriginalConstructor() ->getMock(); @@ -119,6 +109,7 @@ public function setUp() $select->expects($this->any())->method('joinLeft')->willReturnSelf(); $select->expects($this->any())->method('where')->willReturnSelf(); $select->expects($this->any())->method('group')->willReturnSelf(); + $select->expects($this->any())->method('order')->willReturnSelf(); $this->sourceAdapter->expects($this->any())->method('getSelect')->willReturn($select); @@ -126,10 +117,13 @@ public function setUp() $this->source->expects($this->any())->method('addDocumentPrefix')->willReturn($this->returnArgument(1)); $this->source->expects($this->any())->method('getPageSize')->willReturn(100); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('log_map_file')->willReturn($this->map); - $this->readerGroups = $this->getMock('\Migration\Reader\Groups', ['getGroup'], [], '', false); + $this->readerGroups = $this->createPartialMock( + \Migration\Reader\Groups::class, + ['getGroup'] + ); $this->readerGroups->expects($this->any())->method('getGroup')->willReturnMap( [ ['source_documents', ['source_document' => '']], @@ -138,12 +132,15 @@ public function setUp() ); /** @var \Migration\Reader\GroupsFactory|\PHPUnit_Framework_MockObject_MockObject $groupsFactory */ - $groupsFactory = $this->getMock('\Migration\Reader\GroupsFactory', ['create'], [], '', false); + $groupsFactory = $this->createPartialMock( + \Migration\Reader\GroupsFactory::class, + ['create'] + ); $groupsFactory->expects($this->any()) ->method('create') ->with('log_document_groups_file') ->willReturn($this->readerGroups); - $this->logger = $this->getMockBuilder('Migration\Logger\Logger')->disableOriginalConstructor() + $this->logger = $this->getMockBuilder(\Migration\Logger\Logger::class)->disableOriginalConstructor() ->setMethods(['debug']) ->getMock(); $this->data = new Data( @@ -168,9 +165,12 @@ public function testPerform() $dstDocName = 'config_data'; $this->map->expects($this->once())->method('getDocumentMap')->will($this->returnValue($dstDocName)); - $sourceDocument = $this->getMock('\Migration\ResourceModel\Document', ['getRecords'], [], '', false); + $sourceDocument = $this->createPartialMock( + \Migration\ResourceModel\Document::class, + ['getRecords'] + ); $this->source->expects($this->once())->method('getDocument')->will($this->returnValue($sourceDocument)); - $destinationDocument = $this->getMock('\Migration\ResourceModel\Document', [], [], '', false); + $destinationDocument = $this->createMock(\Migration\ResourceModel\Document::class); $this->destination->expects($this->once())->method('getDocument')->will( $this->returnValue($destinationDocument) ); @@ -189,10 +189,10 @@ public function testPerform() $this->sourceAdapter->expects($this->at(2))->method('loadDataFromSelect')->willReturn([]); - $destinationRecords = $this->getMock('\Migration\ResourceModel\Record\Collection', [], [], '', false); + $destinationRecords = $this->createMock(\Migration\ResourceModel\Record\Collection::class); $destinationDocument->expects($this->once())->method('getRecords') ->will($this->returnValue($destinationRecords)); - $srcRecord = $this->getMock('\Migration\ResourceModel\Record', [], [], '', false); + $srcRecord = $this->createMock(\Migration\ResourceModel\Record::class); $this->recordFactory->expects($this->at(0))->method('create')->will($this->returnValue($srcRecord)); $this->destination->expects($this->once())->method('saveRecords')->with($dstDocName, $destinationRecords); @@ -207,7 +207,10 @@ public function testPerform() */ public function testGetMapEmptyDestinationDocumentName() { - $sourceDocument = $this->getMock('\Migration\ResourceModel\Document', ['getRecords'], [], '', false); + $sourceDocument = $this->createPartialMock( + \Migration\ResourceModel\Document::class, + ['getRecords'] + ); $this->source->expects($this->once())->method('getDocument')->will($this->returnValue($sourceDocument)); $this->data->perform(); diff --git a/tests/unit/testsuite/Migration/Step/Log/IntegrityTest.php b/tests/unit/testsuite/Migration/Step/Log/IntegrityTest.php index b3f9a4d8b..b99152927 100644 --- a/tests/unit/testsuite/Migration/Step/Log/IntegrityTest.php +++ b/tests/unit/testsuite/Migration/Step/Log/IntegrityTest.php @@ -11,7 +11,7 @@ /** * Class IntegrityTest */ -class IntegrityTest extends \PHPUnit_Framework_TestCase +class IntegrityTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\App\ProgressBar\LogLevelProcessor|\PHPUnit_Framework_MockObject_MockObject @@ -53,36 +53,33 @@ class IntegrityTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->logger = $this->getMock('\Migration\Logger\Logger', ['debug', 'error'], [], '', false); - $this->source = $this->getMock( - '\Migration\ResourceModel\Source', - ['getDocumentList', 'getDocument'], - [], - '', - false + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['debug', 'addRecord'] ); - $this->progress = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getDocumentList', 'getDocument'] ); - $this->destination = $this->getMock( - '\Migration\ResourceModel\Destination', - ['getDocumentList', 'getDocument'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] ); - $this->map = $this->getMockBuilder('\Migration\Reader\Map')->disableOriginalConstructor() + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getDocumentList', 'getDocument'] + ); + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('log_map_file')->willReturn($this->map); - $this->readerGroups = $this->getMock('\Migration\Reader\Groups', ['getGroup'], [], '', false); + $this->readerGroups = $this->createPartialMock( + \Migration\Reader\Groups::class, + ['getGroup'] + ); $this->readerGroups->expects($this->any())->method('getGroup')->willReturnMap( [ ['source_documents', ['document1' => '']], @@ -91,15 +88,21 @@ public function setUp() ); /** @var \Migration\Reader\GroupsFactory|\PHPUnit_Framework_MockObject_MockObject $groupsFactory */ - $groupsFactory = $this->getMock('\Migration\Reader\GroupsFactory', ['create'], [], '', false); + $groupsFactory = $this->createPartialMock( + \Migration\Reader\GroupsFactory::class, + ['create'] + ); $groupsFactory->expects($this->any()) ->method('create') ->with('log_document_groups_file') ->willReturn($this->readerGroups); + $config = $this->getMockBuilder(\Migration\Config::class)->disableOriginalConstructor()->getMock(); + $this->log = new Integrity( $this->progress, $this->logger, + $config, $this->source, $this->destination, $mapFactory, @@ -115,14 +118,16 @@ public function testPerformMainFlow() { $fields = ['field1' => ['DATA_TYPE' => 'int']]; - $structure = $this->getMockBuilder('\Migration\ResourceModel\Structure') + $structure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) ->disableOriginalConstructor()->setMethods([])->getMock(); $structure->expects($this->any())->method('getFields')->will($this->returnValue($fields)); $this->source->expects($this->atLeastOnce())->method('getDocumentList') ->will($this->returnValue(['document1'])); $this->destination->expects($this->atLeastOnce())->method('getDocumentList') ->will($this->returnValue(['document2', 'document_to_clear'])); - $document = $this->getMockBuilder('\Migration\ResourceModel\Document')->disableOriginalConstructor()->getMock(); + $document = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() + ->getMock(); $document->expects($this->any())->method('getStructure')->will($this->returnValue($structure)); $this->map->expects($this->any())->method('getDocumentMap')->willReturnMap( @@ -135,7 +140,7 @@ public function testPerformMainFlow() $this->source->expects($this->any())->method('getDocument')->will($this->returnValue($document)); $this->destination->expects($this->any())->method('getDocument')->will($this->returnValue($document)); $this->map->expects($this->any())->method('getFieldMap')->will($this->returnValue('field1')); - $this->logger->expects($this->never())->method('error'); + $this->logger->expects($this->never())->method('addRecord'); $this->assertTrue($this->log->perform()); } @@ -148,14 +153,16 @@ public function testPerformMissingDocument() { $fields = ['field1' => ['DATA_TYPE' => 'int']]; - $structure = $this->getMockBuilder('\Migration\ResourceModel\Structure') + $structure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) ->disableOriginalConstructor()->setMethods([])->getMock(); $structure->expects($this->any())->method('getFields')->will($this->returnValue($fields)); $this->source->expects($this->atLeastOnce())->method('getDocumentList') ->will($this->returnValue(['document1'])); $this->destination->expects($this->atLeastOnce())->method('getDocumentList') ->will($this->returnValue(['document2'])); - $document = $this->getMockBuilder('\Migration\ResourceModel\Document')->disableOriginalConstructor()->getMock(); + $document = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() + ->getMock(); $document->expects($this->any())->method('getStructure')->will($this->returnValue($structure)); $this->map->expects($this->any())->method('getDocumentMap')->willReturnMap( @@ -170,8 +177,8 @@ public function testPerformMissingDocument() $this->map->expects($this->any())->method('getFieldMap')->will($this->returnValue('field1')); $this->logger ->expects($this->once()) - ->method('error') - ->with('Destination documents are missing: document_to_clear'); + ->method('addRecord') + ->with(400, 'Destination documents are missing: document_to_clear'); $this->assertFalse($this->log->perform()); } diff --git a/tests/unit/testsuite/Migration/Step/Log/VolumeTest.php b/tests/unit/testsuite/Migration/Step/Log/VolumeTest.php index a408353a2..e5f8bdcdc 100644 --- a/tests/unit/testsuite/Migration/Step/Log/VolumeTest.php +++ b/tests/unit/testsuite/Migration/Step/Log/VolumeTest.php @@ -12,7 +12,7 @@ /** * Class VolumeTest */ -class VolumeTest extends \PHPUnit_Framework_TestCase +class VolumeTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\App\ProgressBar\LogLevelProcessor|\PHPUnit_Framework_MockObject_MockObject @@ -54,37 +54,34 @@ class VolumeTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->logger = $this->getMock('Migration\Logger\Logger', ['addRecord'], [], '', false); - $this->progress = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['addRecord'] ); - $this->source = $this->getMock( - 'Migration\ResourceModel\Source', - ['getDocumentList', 'getRecordsCount'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] ); - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['getRecordsCount'], - [], - '', - false + $this->source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getDocumentList', 'getRecordsCount'] + ); + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getRecordsCount'] ); - $this->map = $this->getMockBuilder('Migration\Reader\Map')->disableOriginalConstructor() + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('log_map_file')->willReturn($this->map); - $this->readerGroups = $this->getMock('\Migration\Reader\Groups', ['getGroup'], [], '', false); + $this->readerGroups = $this->createPartialMock( + \Migration\Reader\Groups::class, + ['getGroup'] + ); $this->readerGroups->expects($this->any())->method('getGroup')->willReturnMap( [ ['source_documents', ['document1' => '']], @@ -93,7 +90,10 @@ public function setUp() ); /** @var \Migration\Reader\GroupsFactory|\PHPUnit_Framework_MockObject_MockObject $groupsFactory */ - $groupsFactory = $this->getMock('\Migration\Reader\GroupsFactory', ['create'], [], '', false); + $groupsFactory = $this->createPartialMock( + \Migration\Reader\GroupsFactory::class, + ['create'] + ); $groupsFactory->expects($this->any()) ->method('create') ->with('log_document_groups_file') diff --git a/tests/unit/testsuite/Migration/Step/Map/DataTest.php b/tests/unit/testsuite/Migration/Step/Map/DataTest.php index dc4e2573a..e2b79af10 100644 --- a/tests/unit/testsuite/Migration/Step/Map/DataTest.php +++ b/tests/unit/testsuite/Migration/Step/Map/DataTest.php @@ -12,7 +12,7 @@ /** * Class DataTest */ -class DataTest extends \PHPUnit_Framework_TestCase +class DataTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\App\ProgressBar\LogLevelProcessor|\PHPUnit_Framework_MockObject_MockObject @@ -76,41 +76,32 @@ class DataTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->progressBar = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->progressBar = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] ); - $this->source = $this->getMock( - 'Migration\ResourceModel\Source', - ['getDocument', 'getDocumentList', 'getRecords', 'getRecordsCount', 'getPageSize', 'setLastLoadedRecord'], - [], - '', - false + $this->source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getDocument', 'getDocumentList', 'getRecords', 'getRecordsCount', 'getPageSize', 'setLastLoadedRecord'] ); - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['getDocument', 'getDocumentList', 'saveRecords', 'clearDocument'], - [], - '', - false + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getDocument', 'getDocumentList', 'saveRecords', 'clearDocument'] ); - $this->recordFactory = $this->getMock('Migration\ResourceModel\RecordFactory', ['create'], [], '', false); - $this->recordTransformerFactory = $this->getMock( - 'Migration\RecordTransformerFactory', - ['create'], - [], - '', - false + $this->recordFactory = $this->createPartialMock( + \Migration\ResourceModel\RecordFactory::class, + ['create'] ); - $this->map = $this->getMockBuilder('Migration\Reader\Map')->disableOriginalConstructor() + $this->recordTransformerFactory = $this->createPartialMock( + \Migration\RecordTransformerFactory::class, + ['create'] + ); + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->setMethods(['getDocumentMap', 'getHandlerConfigs']) ->getMock(); /** @var \Migration\Config|\PHPUnit_Framework_MockObject_MockObject $config */ - $this->config = $this->getMockBuilder('Migration\Config')->setMethods(['getOption']) + $this->config = $this->getMockBuilder(\Migration\Config::class)->setMethods(['getOption']) ->disableOriginalConstructor()->getMock(); $this->config->expects($this->any())->method('getOption')->willReturnMap( [ @@ -120,22 +111,19 @@ public function setUp() ); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('map_file')->willReturn($this->map); - $this->progress = $this->getMock( - 'Migration\App\Progress', - ['getProcessedEntities', 'addProcessedEntity'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\Progress::class, + ['getProcessedEntities', 'addProcessedEntity'] ); - $this->logger = $this->getMockBuilder('Migration\Logger\Logger')->disableOriginalConstructor() + $this->logger = $this->getMockBuilder(\Migration\Logger\Logger::class)->disableOriginalConstructor() ->setMethods(['debug']) ->getMock(); - $this->helper = $this->getMockBuilder('\Migration\Step\Map\Helper')->disableOriginalConstructor() + $this->helper = $this->getMockBuilder(\Migration\Step\Map\Helper::class)->disableOriginalConstructor() ->setMethods(['getFieldsUpdateOnDuplicate']) ->getMock(); @@ -177,23 +165,21 @@ public function testPerform() $this->map->expects($this->once())->method('getDocumentMap')->will($this->returnValue($dstDocName)); $this->map->expects($this->any())->method('getHandlerConfigs')->willReturn(['class' => 'Handler\Class']); - $sourceDocument = $this->getMock( - '\Migration\ResourceModel\Document', - ['getRecords', 'getStructure'], - [], - '', - false + $sourceDocument = $this->createPartialMock( + \Migration\ResourceModel\Document::class, + ['getRecords', 'getStructure'] ); $this->source->expects($this->once())->method('getDocument')->will( $this->returnValue($sourceDocument) ); - $destinationDocument = $this->getMockBuilder('\Migration\ResourceModel\Document')->disableOriginalConstructor() + $destinationDocument = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() ->setMethods(['getStructure', 'getRecords']) ->getMock(); $this->destination->expects($this->once())->method('getDocument')->will( $this->returnValue($destinationDocument) ); - $structure = $this->getMockBuilder('\Migration\ResourceModel\Structure')->disableOriginalConstructor() + $structure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class)->disableOriginalConstructor() ->setMethods(['getFields']) ->getMock(); $structure->expects($this->any())->method('getFields')->willReturn(['field' => []]); @@ -201,12 +187,9 @@ public function testPerform() $sourceDocument->expects($this->any())->method('getStructure')->willReturn($structure); $destinationDocument->expects($this->any())->method('getStructure')->willReturn($structure); - $recordTransformer = $this->getMock( - 'Migration\RecordTransformer', - ['init', 'transform'], - [], - '', - false + $recordTransformer = $this->createPartialMock( + \Migration\RecordTransformer::class, + ['init', 'transform'] ); $this->recordTransformerFactory->expects($this->once())->method('create')->will( $this->returnValue($recordTransformer) @@ -221,13 +204,13 @@ public function testPerform() ); $this->source->expects($this->any())->method('getPageSize')->willReturn(100); - $destinationRecords = $this->getMock('\Migration\ResourceModel\Record\Collection', [], [], '', false); + $destinationRecords = $this->createMock(\Migration\ResourceModel\Record\Collection::class); $destinationDocument->expects($this->once())->method('getRecords')->will( $this->returnValue($destinationRecords) ); - $srcRecord = $this->getMock('\Migration\ResourceModel\Record', [], [], '', false); - $dstRecord = $this->getMock('\Migration\ResourceModel\Record', [], [], '', false); + $srcRecord = $this->createMock(\Migration\ResourceModel\Record::class); + $dstRecord = $this->createMock(\Migration\ResourceModel\Record::class); $this->recordFactory->expects($this->at(0))->method('create')->will($this->returnValue($srcRecord)); $this->recordFactory->expects($this->at(1))->method('create')->will($this->returnValue($dstRecord)); $recordTransformer->expects($this->once())->method('transform')->with($srcRecord, $dstRecord); @@ -252,14 +235,11 @@ public function testPerformJustCopy() $dstDocName = 'config_data'; $this->progress->expects($this->once())->method('getProcessedEntities')->will($this->returnValue([])); $this->map->expects($this->once())->method('getDocumentMap')->will($this->returnValue($dstDocName)); - $this->map->expects($this->any())->method('getHandlerConfig')->willReturn([]); - - $sourceDocument = $this->getMock( - '\Migration\ResourceModel\Document', - ['getRecords', 'getStructure'], - [], - '', - false + $this->map->expects($this->any())->method('getHandlerConfigs')->willReturn([]); + + $sourceDocument = $this->createPartialMock( + \Migration\ResourceModel\Document::class, + ['getRecords', 'getStructure'] ); $bulk = [['id' => 4, 'name' => 'john']]; $this->source->expects($this->any())->method('getRecords')->willReturnOnConsecutiveCalls($bulk, []); @@ -269,13 +249,15 @@ public function testPerformJustCopy() [$sourceDocName, $bulk[0]], [$sourceDocName, []] ); - $destinationDocument = $this->getMockBuilder('\Migration\ResourceModel\Document')->disableOriginalConstructor() + $destinationDocument = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() ->setMethods(['getStructure', 'getRecords']) ->getMock(); $this->destination->expects($this->once())->method('getDocument')->will( $this->returnValue($destinationDocument) ); - $structure = $this->getMockBuilder('\Migration\ResourceModel\Structure')->disableOriginalConstructor() + $structure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) + ->disableOriginalConstructor() ->setMethods(['getFields']) ->getMock(); $structure->expects($this->any())->method('getFields')->willReturn(['field' => []]); @@ -283,12 +265,12 @@ public function testPerformJustCopy() $sourceDocument->expects($this->any())->method('getStructure')->willReturn($structure); $destinationDocument->expects($this->any())->method('getStructure')->willReturn($structure); - $destinationRecords = $this->getMock('\Migration\ResourceModel\Record\Collection', [], [], '', false); + $destinationRecords = $this->createMock(\Migration\ResourceModel\Record\Collection::class); $destinationDocument->expects($this->once())->method('getRecords')->will( $this->returnValue($destinationRecords) ); - $dstRecord = $this->getMock('\Migration\ResourceModel\Record', [], [], '', false); + $dstRecord = $this->createMock(\Migration\ResourceModel\Record::class); $this->recordFactory->expects($this->at(0))->method('create')->will($this->returnValue($dstRecord)); $this->destination->expects($this->once())->method('saveRecords')->with($dstDocName, $destinationRecords); diff --git a/tests/unit/testsuite/Migration/Step/Map/DeltaTest.php b/tests/unit/testsuite/Migration/Step/Map/DeltaTest.php index 778d02a17..631c3f2a3 100644 --- a/tests/unit/testsuite/Migration/Step/Map/DeltaTest.php +++ b/tests/unit/testsuite/Migration/Step/Map/DeltaTest.php @@ -7,7 +7,7 @@ use Migration\Reader\MapInterface; -class DeltaTest extends \PHPUnit_Framework_TestCase +class DeltaTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\ResourceModel\Source|\PHPUnit_Framework_MockObject_MockObject @@ -49,6 +49,11 @@ class DeltaTest extends \PHPUnit_Framework_TestCase */ protected $data; + /** + * @var Helper|\PHPUnit_Framework_MockObject_MockObject + */ + protected $helper; + /** * @var Delta|\PHPUnit_Framework_MockObject_MockObject */ @@ -59,28 +64,45 @@ class DeltaTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->source = $this->getMock('\Migration\ResourceModel\Source', [], [], '', false); - $this->logger = $this->getMock('\Migration\Logger\Logger', [], [], '', false); - $this->map = $this->getMock('\Migration\Reader\Map', [], [], '', false); + $this->source = $this->createMock(\Migration\ResourceModel\Source::class); + $this->logger = $this->createMock(\Migration\Logger\Logger::class); + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() + ->setMethods(['getDocumentMap', 'getDeltaDocuments']) + ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('map_file')->willReturn($this->map); - $this->destination = $this->getMock('\Migration\ResourceModel\Destination', ['getAdapter'], [], '', false); - $this->recordFactory = $this->getMock('\Migration\ResourceModel\RecordFactory', [], [], '', false); - $this->recordTransformerFactory = $this->getMock('\Migration\RecordTransformerFactory', [], [], '', false); - $this->data = $this->getMock('\Migration\Step\Map\Data', [], [], '', false); + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getAdapter'] + ); + $this->recordFactory = $this->createMock(\Migration\ResourceModel\RecordFactory::class); + $this->recordTransformerFactory = $this->createMock(\Migration\RecordTransformerFactory::class); + $this->data = $this->createMock(\Migration\Step\Map\Data::class); - $this->readerGroups = $this->getMock('\Migration\Reader\Groups', ['getGroup'], [], '', false); + $this->readerGroups = $this->createPartialMock( + \Migration\Reader\Groups::class, + ['getGroup'] + ); $this->readerGroups->expects($this->any())->method('getGroup')->willReturnMap( [ ['delta_map', ['orders' => 'order_id']] ] ); + $this->helper = $this->createPartialMock( + \Migration\Step\Map\Helper::class, + ['getDocumentsDuplicateOnUpdate'] + ); + $this->helper->expects($this->any())->method('getDocumentsDuplicateOnUpdate')->willReturn(false); + /** @var \Migration\Reader\GroupsFactory|\PHPUnit_Framework_MockObject_MockObject $groupsFactory */ - $groupsFactory = $this->getMock('\Migration\Reader\GroupsFactory', ['create'], [], '', false); + $groupsFactory = $this->createPartialMock( + \Migration\Reader\GroupsFactory::class, + ['create'] + ); $groupsFactory->expects($this->any()) ->method('create') ->with('delta_document_groups_file') @@ -94,7 +116,8 @@ public function setUp() $this->destination, $this->recordFactory, $this->recordTransformerFactory, - $this->data + $this->data, + $this->helper ); } @@ -117,12 +140,9 @@ public function testDelta() ->method('getRecordsCount') ->with($sourceDeltaName) ->willReturn(1); - $adapter = $this->getMock( - '\Migration\ResourceModel\Adapter\Mysql', - ['setForeignKeyChecks'], - [], - '', - false + $adapter = $this->createPartialMock( + \Migration\ResourceModel\Adapter\Mysql::class, + ['setForeignKeyChecks'] ); $adapter->expects($this->at(0)) ->method('setForeignKeyChecks') @@ -134,7 +154,7 @@ public function testDelta() ->method('getAdapter') ->willReturn($adapter); /** @var \Migration\ResourceModel\Document|\PHPUnit_Framework_MockObject_MockObject $source */ - $document = $this->getMock('\Migration\ResourceModel\Document', [], [], '', false); + $document = $this->createMock(\Migration\ResourceModel\Document::class); $this->source->expects($this->any()) ->method('getDocument') ->willReturn($document); diff --git a/tests/unit/testsuite/Migration/Step/Map/HelperTest.php b/tests/unit/testsuite/Migration/Step/Map/HelperTest.php index d663eaafa..061b05f22 100644 --- a/tests/unit/testsuite/Migration/Step/Map/HelperTest.php +++ b/tests/unit/testsuite/Migration/Step/Map/HelperTest.php @@ -12,7 +12,7 @@ /** * Class HelperTest */ -class HelperTest extends \PHPUnit_Framework_TestCase +class HelperTest extends \PHPUnit\Framework\TestCase { /** * @var Helper @@ -34,7 +34,7 @@ class HelperTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->groups = $this->getMockBuilder('Migration\Reader\Groups') + $this->groups = $this->getMockBuilder(\Migration\Reader\Groups::class) ->disableOriginalConstructor() ->setMethods(['getGroup']) ->getMock(); @@ -46,7 +46,7 @@ public function setUp() $this->fieldsUpdateOnDuplicate['document'] => implode(',', $this->fieldsUpdateOnDuplicate['fields']) ]); /** @var \Migration\Reader\GroupsFactory|\PHPUnit_Framework_MockObject_MockObject $groupsFactory */ - $groupsFactory = $this->getMockBuilder('Migration\Reader\GroupsFactory') + $groupsFactory = $this->getMockBuilder(\Migration\Reader\GroupsFactory::class) ->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); diff --git a/tests/unit/testsuite/Migration/Step/Map/IntegrityTest.php b/tests/unit/testsuite/Migration/Step/Map/IntegrityTest.php index 62038416a..233cb7182 100644 --- a/tests/unit/testsuite/Migration/Step/Map/IntegrityTest.php +++ b/tests/unit/testsuite/Migration/Step/Map/IntegrityTest.php @@ -8,7 +8,7 @@ /** * Class IntegrityTest */ -class IntegrityTest extends \PHPUnit_Framework_TestCase +class IntegrityTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\App\ProgressBar\LogLevelProcessor|\PHPUnit_Framework_MockObject_MockObject @@ -55,39 +55,36 @@ class IntegrityTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->logger = $this->getMock('\Migration\Logger\Logger', ['debug', 'error', 'warning'], [], '', false); - $this->source = $this->getMock( - '\Migration\ResourceModel\Source', - ['getDocumentList', 'getDocument'], - [], - '', - false + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['debug', 'addRecord', 'warning'] ); - $this->progress = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getDocumentList', 'getDocument'] ); - $this->destination = $this->getMock( - '\Migration\ResourceModel\Destination', - ['getDocumentList', 'getDocument'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] ); - $this->map = $this->getMockBuilder('\Migration\Reader\Map')->disableOriginalConstructor() + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getDocumentList', 'getDocument'] + ); + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->setMethods(['getFieldMap', 'getDocumentMap', 'init', 'isDocumentIgnored', 'isFieldDataTypeIgnored']) ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('map_file')->willReturn($this->map); + $config = $this->getMockBuilder(\Migration\Config::class)->disableOriginalConstructor()->getMock(); + $this->integrity = new Integrity( $this->progress, $this->logger, + $config, $this->source, $this->destination, $mapFactory @@ -110,7 +107,7 @@ public function testPerformMainFlow() $this->map->expects($this->any())->method('getFieldMap')->will($this->returnValue('field1')); - $this->logger->expects($this->never())->method('error'); + $this->logger->expects($this->never())->method('addRecord'); $this->integrity->perform(); } @@ -125,7 +122,7 @@ public function testPerformDocumentIgnored() ->will($this->returnValue(['document2'])); $this->map->expects($this->any())->method('getDocumentMap')->will($this->returnValue(false)); $this->map->expects($this->any())->method('isDocumentIgnored')->willReturn(true); - $this->logger->expects($this->never())->method('error'); + $this->logger->expects($this->never())->method('addRecord'); $this->integrity->perform(); } @@ -141,8 +138,8 @@ public function testPerformWithDestinationDocMissed() ->will($this->returnValue(['document2'])); $this->map->expects($this->any())->method('getDocumentMap')->will($this->returnArgument(0)); $this->map->expects($this->any())->method('isDocumentIgnored')->willReturn(false); - $this->logger->expects($this->exactly(1))->method('error') - ->with('Source documents are not mapped: document1'); + $this->logger->expects($this->exactly(1))->method('addRecord') + ->with(400, 'Source documents are not mapped: document1'); $this->integrity->perform(); } @@ -158,8 +155,8 @@ public function testPerformWithSourceDocMissed() $this->destination->expects($this->atLeastOnce())->method('getDocumentList') ->will($this->returnValue(['document1', 'document2'])); $this->map->expects($this->any())->method('getDocumentMap')->will($this->returnArgument(0)); - $this->logger->expects($this->once())->method('error') - ->with('Destination documents are not mapped: document1'); + $this->logger->expects($this->once())->method('addRecord') + ->with(400, 'Destination documents are not mapped: document1'); $this->integrity->perform(); } @@ -169,7 +166,7 @@ public function testPerformWithSourceDocMissed() */ public function testPerformWithSourceFieldErrors() { - $structure = $this->getMockBuilder('\Migration\ResourceModel\Structure') + $structure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) ->disableOriginalConstructor() ->setMethods([]) ->getMock(); @@ -178,7 +175,9 @@ public function testPerformWithSourceFieldErrors() $structure->expects($this->at(2))->method('getFields')->will($this->returnValue(['field2' => []])); $structure->expects($this->at(3))->method('getFields')->will($this->returnValue(['field1' => []])); - $document = $this->getMockBuilder('\Migration\ResourceModel\Document')->disableOriginalConstructor()->getMock(); + $document = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() + ->getMock(); $document->expects($this->any())->method('getStructure')->willReturn($structure); $document->expects($this->any())->method('getName')->willReturn('document'); @@ -198,10 +197,12 @@ public function testPerformWithSourceFieldErrors() $this->map->expects($this->at(5))->method('getFieldMap')->with('document', 'field2') ->will($this->returnValue('field2')); - $this->logger->expects($this->at(0))->method('error')->with( + $this->logger->expects($this->at(0))->method('addRecord')->with( + 400, 'Source fields are not mapped. Document: document. Fields: field1' ); - $this->logger->expects($this->at(1))->method('error')->with( + $this->logger->expects($this->at(1))->method('addRecord')->with( + 400, 'Destination fields are not mapped. Document: document. Fields: field2' ); @@ -240,20 +241,20 @@ protected function setupFieldsValidation($dataTypeMismatch = false) { $dataTypeSource = $dataTypeMismatch ? 'varchar' : 'int'; $fieldsSource = ['field1' => ['DATA_TYPE' => $dataTypeSource]]; - $structureSource = $this->getMockBuilder('\Migration\ResourceModel\Structure') + $structureSource = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) ->disableOriginalConstructor()->setMethods([])->getMock(); $structureSource->expects($this->any())->method('getFields')->will($this->returnValue($fieldsSource)); - $this->documentSource = $this->getMockBuilder('\Migration\ResourceModel\Document') + $this->documentSource = $this->getMockBuilder(\Migration\ResourceModel\Document::class) ->disableOriginalConstructor()->getMock(); $this->documentSource->expects($this->any())->method('getStructure') ->will($this->returnValue($structureSource)); $dataTypeDestination = 'int'; $fieldsDestination = ['field1' => ['DATA_TYPE' => $dataTypeDestination]]; - $structureDestination = $this->getMockBuilder('\Migration\ResourceModel\Structure') + $structureDestination = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) ->disableOriginalConstructor()->setMethods([])->getMock(); $structureDestination->expects($this->any())->method('getFields')->will($this->returnValue($fieldsDestination)); - $this->documentDestination = $this->getMockBuilder('\Migration\ResourceModel\Document') + $this->documentDestination = $this->getMockBuilder(\Migration\ResourceModel\Document::class) ->disableOriginalConstructor()->getMock(); $this->documentDestination->expects($this->any())->method('getStructure') ->will($this->returnValue($structureDestination)); diff --git a/tests/unit/testsuite/Migration/Step/Map/VolumeTest.php b/tests/unit/testsuite/Migration/Step/Map/VolumeTest.php index 6c982716f..4891a5c1e 100644 --- a/tests/unit/testsuite/Migration/Step/Map/VolumeTest.php +++ b/tests/unit/testsuite/Migration/Step/Map/VolumeTest.php @@ -9,7 +9,7 @@ use Migration\Reader\Map; use Migration\ResourceModel; -class VolumeTest extends \PHPUnit_Framework_TestCase +class VolumeTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\App\ProgressBar\LogLevelProcessor|\PHPUnit_Framework_MockObject_MockObject @@ -56,45 +56,36 @@ class VolumeTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->logger = $this->getMock('Migration\Logger\Logger', ['addRecord'], [], '', false); - $this->progressBar = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['addRecord'] ); - $this->progress = $this->getMock( - '\Migration\App\Progress', - ['getProcessedEntities'], - [], - '', - false + $this->progressBar = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] ); - $this->source = $this->getMock( - 'Migration\ResourceModel\Source', - ['getDocumentList', 'getRecordsCount'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\Progress::class, + ['getProcessedEntities'] ); - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['getRecordsCount'], - [], - '', - false + $this->source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getDocumentList', 'getRecordsCount'] + ); + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getRecordsCount', 'getDocument'] ); - $this->map = $this->getMockBuilder('Migration\Reader\Map')->disableOriginalConstructor() + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class)->disableOriginalConstructor() ->setMethods(['getDocumentMap']) ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('map_file')->willReturn($this->map); - $this->helper = $this->getMockBuilder('\Migration\Step\Map\Helper')->disableOriginalConstructor() + $this->helper = $this->getMockBuilder(\Migration\Step\Map\Helper::class)->disableOriginalConstructor() ->setMethods(['getFieldsUpdateOnDuplicate']) ->getMock(); @@ -117,9 +108,17 @@ public function testPerform() $sourceDocName = 'core_config_data'; $this->source->expects($this->once())->method('getDocumentList')->willReturn([$sourceDocName]); $dstDocName = 'config_data'; + $destinationDocument = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() + ->getMock(); $this->map->expects($this->once())->method('getDocumentMap')->willReturn($dstDocName); $this->source->expects($this->once())->method('getRecordsCount')->willReturn(3); $this->destination->expects($this->once())->method('getRecordsCount')->willReturn(3); + $this->destination + ->expects($this->once()) + ->method('getDocument') + ->with($dstDocName) + ->willReturn($destinationDocument); $this->helper->expects($this->once())->method('getFieldsUpdateOnDuplicate')->with($dstDocName) ->willReturn(false); $this->assertTrue($this->volume->perform()); @@ -136,6 +135,7 @@ public function testPerformIgnored() $this->map->expects($this->once())->method('getDocumentMap')->willReturn($dstDocName); $this->source->expects($this->never())->method('getRecordsCount'); $this->destination->expects($this->never())->method('getRecordsCount'); + $this->destination->expects($this->never())->method('getDocument'); $this->helper->expects($this->never())->method('getFieldsUpdateOnDuplicate'); $this->assertTrue($this->volume->perform()); } @@ -147,10 +147,18 @@ public function testPerformFailed() { $sourceDocName = 'core_config_data'; $dstDocName = 'config_data'; + $destinationDocument = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() + ->getMock(); $this->source->expects($this->once())->method('getDocumentList')->willReturn([$sourceDocName]); $this->map->expects($this->once())->method('getDocumentMap')->willReturn($dstDocName); $this->source->expects($this->once())->method('getRecordsCount')->willReturn(2); $this->destination->expects($this->once())->method('getRecordsCount')->willReturn(3); + $this->destination + ->expects($this->once()) + ->method('getDocument') + ->with($dstDocName) + ->willReturn($destinationDocument); $this->logger->expects($this->once())->method('addRecord')->with( Logger::WARNING, 'Mismatch of entities in the document: ' . $dstDocName diff --git a/tests/unit/testsuite/Migration/Step/PostProcessing/Data/EavLeftoverDataCleanerTest.php b/tests/unit/testsuite/Migration/Step/PostProcessing/Data/EavLeftoverDataCleanerTest.php index 8eb43910c..69deaf2a4 100644 --- a/tests/unit/testsuite/Migration/Step/PostProcessing/Data/EavLeftoverDataCleanerTest.php +++ b/tests/unit/testsuite/Migration/Step/PostProcessing/Data/EavLeftoverDataCleanerTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Step\PostProcessing\Data; -class EavLeftoverDataCleanerTest extends \PHPUnit_Framework_TestCase +class EavLeftoverDataCleanerTest extends \PHPUnit\Framework\TestCase { /** * @var EavLeftoverDataCleaner @@ -37,33 +37,21 @@ class EavLeftoverDataCleanerTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['deleteRecords', 'getRecordsCount'], - [], - '', - false + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['deleteRecords', 'getRecordsCount'] ); - $this->progressBar = $this->getMock( - 'Migration\App\ProgressBar\LogLevelProcessor', - ['advance'], - [], - '', - false + $this->progressBar = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['advance'] ); - $this->progress = $this->getMock( - 'Migration\App\Progress', - ['saveProcessedEntities'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\Progress::class, + ['saveProcessedEntities'] ); - $this->eavLeftoverDataModel = $this->getMock( - 'Migration\Step\PostProcessing\Model\EavLeftoverData', - ['getDocumentsToCheck', 'getLeftoverAttributeIds'], - [], - '', - false + $this->eavLeftoverDataModel = $this->createPartialMock( + \Migration\Step\PostProcessing\Model\EavLeftoverData::class, + ['getDocumentsToCheck', 'getLeftoverAttributeIds'] ); } diff --git a/tests/unit/testsuite/Migration/Step/PostProcessing/Data/ProductsInRootCatalogCleanerTest.php b/tests/unit/testsuite/Migration/Step/PostProcessing/Data/ProductsInRootCatalogCleanerTest.php index 09f980f6a..f2a6dbc28 100644 --- a/tests/unit/testsuite/Migration/Step/PostProcessing/Data/ProductsInRootCatalogCleanerTest.php +++ b/tests/unit/testsuite/Migration/Step/PostProcessing/Data/ProductsInRootCatalogCleanerTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Step\PostProcessing\Data; -class ProductsInRootCatalogCleanerTest extends \PHPUnit_Framework_TestCase +class ProductsInRootCatalogCleanerTest extends \PHPUnit\Framework\TestCase { /** * @var ProductsInRootCatalogCleaner @@ -27,19 +27,13 @@ class ProductsInRootCatalogCleanerTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['deleteRecords'], - [], - '', - false + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['deleteRecords'] ); - $this->productsInRootCatalogModel = $this->getMock( - 'Migration\Step\PostProcessing\Model\ProductsInRootCatalog', - ['getProductIds', 'getCatalogCategoryProductDocument'], - [], - '', - false + $this->productsInRootCatalogModel = $this->createPartialMock( + \Migration\Step\PostProcessing\Model\ProductsInRootCatalog::class, + ['getProductIds', 'getCatalogCategoryProductDocument'] ); } diff --git a/tests/unit/testsuite/Migration/Step/PostProcessing/DataTest.php b/tests/unit/testsuite/Migration/Step/PostProcessing/DataTest.php index 756ed035a..3f99b6b9b 100644 --- a/tests/unit/testsuite/Migration/Step/PostProcessing/DataTest.php +++ b/tests/unit/testsuite/Migration/Step/PostProcessing/DataTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Step\PostProcessing; -class DataTest extends \PHPUnit_Framework_TestCase +class DataTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\Step\PostProcessing\Data\EavLeftoverDataCleaner|\PHPUnit_Framework_MockObject_MockObject @@ -32,26 +32,17 @@ class DataTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->eavLeftoverDataCleaner = $this->getMock( - 'Migration\Step\PostProcessing\Data\EavLeftoverDataCleaner', - ['clean', 'getIterationsCount'], - [], - '', - false + $this->eavLeftoverDataCleaner = $this->createPartialMock( + \Migration\Step\PostProcessing\Data\EavLeftoverDataCleaner::class, + ['clean', 'getIterationsCount'] ); - $this->productsInRootCatalogCleaner = $this->getMock( - 'Migration\Step\PostProcessing\Data\ProductsInRootCatalogCleaner', - ['clean'], - [], - '', - false + $this->productsInRootCatalogCleaner = $this->createPartialMock( + \Migration\Step\PostProcessing\Data\ProductsInRootCatalogCleaner::class, + ['clean'] ); - $this->progress = $this->getMock( - 'Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish'] ); } diff --git a/tests/unit/testsuite/Migration/Step/Ratings/DataTest.php b/tests/unit/testsuite/Migration/Step/Ratings/DataTest.php index 01971aee7..171da1173 100644 --- a/tests/unit/testsuite/Migration/Step/Ratings/DataTest.php +++ b/tests/unit/testsuite/Migration/Step/Ratings/DataTest.php @@ -5,7 +5,7 @@ */ namespace Migration\Step\Ratings; -class DataTest extends \PHPUnit_Framework_TestCase +class DataTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\ResourceModel\Destination|\PHPUnit_Framework_MockObject_MockObject @@ -37,31 +37,25 @@ class DataTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['getAdapter', 'getDocumentList', 'getDocument', 'addDocumentPrefix'], - [], - '', - false + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getAdapter', 'getDocumentList', 'getDocument', 'addDocumentPrefix'] ); $this->destination ->expects($this->any()) ->method('addDocumentPrefix') ->will($this->returnValueMap([['rating_store', 'rating_store'], ['rating', 'rating']])); - $this->select = $this->getMock('Magento\Framework\DB\Select', ['from', 'where'], [], '', false); - $this->adapter = $this->getMock( - 'Migration\ResourceModel\Adapter\Mysql', - ['getSelect', 'loadDataFromSelect', 'updateDocument'], - [], - '', - false + $this->select = $this->createPartialMock( + \Magento\Framework\DB\Select::class, + ['from', 'where'] ); - $this->progress = $this->getMock( - 'Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'advance', 'finish'], - [], - '', - false + $this->adapter = $this->createPartialMock( + \Migration\ResourceModel\Adapter\Mysql::class, + ['getSelect', 'loadDataFromSelect', 'updateDocument'] + ); + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'advance', 'finish'] ); } diff --git a/tests/unit/testsuite/Migration/Step/Ratings/IntegrityTest.php b/tests/unit/testsuite/Migration/Step/Ratings/IntegrityTest.php index 80cb12067..6fb556ac1 100644 --- a/tests/unit/testsuite/Migration/Step/Ratings/IntegrityTest.php +++ b/tests/unit/testsuite/Migration/Step/Ratings/IntegrityTest.php @@ -8,7 +8,7 @@ /** * Class IntegrityTest */ -class IntegrityTest extends \PHPUnit_Framework_TestCase +class IntegrityTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\ResourceModel\Destination|\PHPUnit_Framework_MockObject_MockObject @@ -45,27 +45,30 @@ class IntegrityTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['getAdapter', 'getDocumentList', 'getDocument', 'addDocumentPrefix'], - [], - '', - false + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getAdapter', 'getDocumentList', 'getDocument', 'addDocumentPrefix'] ); $this->destination ->expects($this->any()) ->method('addDocumentPrefix') ->will($this->returnValueMap([['rating_store', 'rating_store'], ['rating', 'rating']])); - $this->structure = $this->getMock('Migration\ResourceModel\Structure', ['getFields'], [], '', false); - $this->document = $this->getMock('Migration\ResourceModel\Document', ['getStructure'], [], '', false); - $this->logger = $this->getMock('Migration\Logger\Logger', ['warning', 'error'], [], '', false); - $this->progress = $this->getMock( - 'Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'advance', 'finish'], - [], - '', - false + $this->structure = $this->createPartialMock( + \Migration\ResourceModel\Structure::class, + ['getFields'] + ); + $this->document = $this->createPartialMock( + \Migration\ResourceModel\Document::class, + ['getStructure'] + ); + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['warning', 'error'] + ); + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'advance', 'finish'] ); } diff --git a/tests/unit/testsuite/Migration/Step/Ratings/VolumeTest.php b/tests/unit/testsuite/Migration/Step/Ratings/VolumeTest.php index 20de2b57a..2b96a4982 100644 --- a/tests/unit/testsuite/Migration/Step/Ratings/VolumeTest.php +++ b/tests/unit/testsuite/Migration/Step/Ratings/VolumeTest.php @@ -10,7 +10,7 @@ /** * Class VolumeTest */ -class VolumeTest extends \PHPUnit_Framework_TestCase +class VolumeTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\ResourceModel\Destination|\PHPUnit_Framework_MockObject_MockObject @@ -47,32 +47,29 @@ class VolumeTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['getAdapter', 'getDocumentList', 'getDocument', 'addDocumentPrefix'], - [], - '', - false + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getAdapter', 'getDocumentList', 'getDocument', 'addDocumentPrefix'] ); $this->destination ->expects($this->any()) ->method('addDocumentPrefix') ->will($this->returnValueMap([['rating_store', 'rating_store'], ['rating', 'rating']])); - $this->select = $this->getMock('Magento\Framework\DB\Select', ['from', 'where'], [], '', false); - $this->adapter = $this->getMock( - 'Migration\ResourceModel\Adapter\Mysql', - ['getSelect', 'loadDataFromSelect', 'updateDocument'], - [], - '', - false + $this->select = $this->createPartialMock( + \Magento\Framework\DB\Select::class, + ['from', 'where'] ); - $this->logger = $this->getMock('Migration\Logger\Logger', ['addRecord'], [], '', false); - $this->progress = $this->getMock( - 'Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'advance', 'finish'], - [], - '', - false + $this->adapter = $this->createPartialMock( + \Migration\ResourceModel\Adapter\Mysql::class, + ['getSelect', 'loadDataFromSelect', 'updateDocument'] + ); + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['addRecord'] + ); + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'advance', 'finish'] ); } diff --git a/tests/unit/testsuite/Migration/Step/SalesOrder/DataTest.php b/tests/unit/testsuite/Migration/Step/SalesOrder/DataTest.php index 685acba3f..ff8e387a5 100644 --- a/tests/unit/testsuite/Migration/Step/SalesOrder/DataTest.php +++ b/tests/unit/testsuite/Migration/Step/SalesOrder/DataTest.php @@ -11,7 +11,7 @@ use Migration\ResourceModel\Record; use Migration\App\ProgressBar; -class DataTest extends \PHPUnit_Framework_TestCase +class DataTest extends \PHPUnit\Framework\TestCase { /** * @var ResourceModel\Source|\PHPUnit_Framework_MockObject_MockObject @@ -65,50 +65,41 @@ class DataTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->progress = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] ); - $this->source = $this->getMock( - 'Migration\ResourceModel\Source', - ['getDocument', 'getDocumentList', 'getRecords', 'getRecordsCount'], - [], - '', - false + $this->source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getDocument', 'getDocumentList', 'getRecords', 'getRecordsCount'] ); - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['getDocument', 'getDocumentList', 'getRecords', 'saveRecords', 'clearDocument'], - [], - '', - false + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getDocument', 'getDocumentList', 'getRecords', 'saveRecords', 'clearDocument'] ); - $this->recordFactory = $this->getMock('Migration\ResourceModel\RecordFactory', ['create'], [], '', false); - $this->recordTransformerFactory = $this->getMock( - 'Migration\RecordTransformerFactory', - ['create'], - [], - '', - false + $this->recordFactory = $this->createPartialMock( + \Migration\ResourceModel\RecordFactory::class, + ['create'] + ); + $this->recordTransformerFactory = $this->createPartialMock( + \Migration\RecordTransformerFactory::class, + ['create'] + ); + $this->map = $this->createPartialMock( + \Migration\Reader\Map::class, + ['getDocumentMap'] ); - $this->map = $this->getMock('Migration\Reader\Map', ['getDocumentMap'], [], '', false); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('sales_order_map_file')->willReturn($this->map); - $this->helper = $this->getMock( - 'Migration\Step\SalesOrder\Helper', - ['getDocumentList', 'getDestEavDocument', 'getEavAttributes'], - [], - '', - false + $this->helper = $this->createPartialMock( + \Migration\Step\SalesOrder\Helper::class, + ['getDocumentList', 'getDestEavDocument', 'getEavAttributes'] ); - $this->logger = $this->getMockBuilder('Migration\Logger\Logger')->disableOriginalConstructor() + $this->logger = $this->getMockBuilder(\Migration\Logger\Logger::class)->disableOriginalConstructor() ->setMethods(['debug']) ->getMock(); @@ -147,11 +138,14 @@ public function testGetMap() $this->helper->expects($this->at(3))->method('getEavAttributes')->willReturn($eavAttributes); $this->map->expects($this->once())->method('getDocumentMap') ->willReturn($destinationDocumentName); - $sourceDocument = $this->getMock('\Migration\ResourceModel\Document', ['getRecords'], [], '', false); + $sourceDocument = $this->createPartialMock( + \Migration\ResourceModel\Document::class, + ['getRecords'] + ); $this->source->expects($this->once())->method('getDocument')->willReturn($sourceDocument); $this->source->expects($this->any())->method('getRecordsCount')->willReturn(2); - $destinationDocument = $this->getMock('\Migration\ResourceModel\Document', [], [], '', false); - $eavDestinationDocument = $this->getMock('\Migration\ResourceModel\Document', [], [], '', false); + $destinationDocument = $this->createMock(\Migration\ResourceModel\Document::class); + $eavDestinationDocument = $this->createMock(\Migration\ResourceModel\Document::class); $dstDocName = 'destination_document'; $eavDstDocName = 'eav_document'; $this->destination->expects($this->any())->method('getDocument')->willReturnMap( @@ -160,23 +154,20 @@ public function testGetMap() [$eavDstDocName, $eavDestinationDocument] ] ); - $recordTransformer = $this->getMock( - 'Migration\RecordTransformer', - ['init', 'transform'], - [], - '', - false + $recordTransformer = $this->createPartialMock( + \Migration\RecordTransformer::class, + ['init', 'transform'] ); $this->recordTransformerFactory->expects($this->once())->method('create')->willReturn($recordTransformer); $recordTransformer->expects($this->once())->method('init'); $bulk = [['eav_attr_1' => 'attribute_value', 'store_id' => '1', 'entity_id' => '2']]; $this->source->expects($this->at(3))->method('getRecords')->willReturn($bulk); $this->source->expects($this->at(4))->method('getRecords')->willReturn([]); - $destinationRecords = $this->getMock('\Migration\ResourceModel\Record\Collection', [], [], '', false); - $eavDestinationRecords = $this->getMock('\Migration\ResourceModel\Record\Collection', [], [], '', false); + $destinationRecords = $this->createMock(\Migration\ResourceModel\Record\Collection::class); + $eavDestinationRecords = $this->createMock(\Migration\ResourceModel\Record\Collection::class); $destinationDocument->expects($this->once())->method('getRecords')->willReturn($destinationRecords); - $srcRecord = $this->getMock('\Migration\ResourceModel\Record', [], [], '', false); - $dstRecord = $this->getMock('\Migration\ResourceModel\Record', [], [], '', false); + $srcRecord = $this->createMock(\Migration\ResourceModel\Record::class); + $dstRecord = $this->createMock(\Migration\ResourceModel\Record::class); $this->recordFactory->expects($this->at(0))->method('create')->willReturn($srcRecord); $this->recordFactory->expects($this->at(1))->method('create')->willReturn($dstRecord); $recordTransformer->expects($this->once())->method('transform')->with($srcRecord, $dstRecord); diff --git a/tests/unit/testsuite/Migration/Step/SalesOrder/HelperTest.php b/tests/unit/testsuite/Migration/Step/SalesOrder/HelperTest.php index 1c37c062b..c8e09fbe8 100644 --- a/tests/unit/testsuite/Migration/Step/SalesOrder/HelperTest.php +++ b/tests/unit/testsuite/Migration/Step/SalesOrder/HelperTest.php @@ -11,7 +11,7 @@ /** * Class Helper */ -class HelperTest extends \PHPUnit_Framework_TestCase +class HelperTest extends \PHPUnit\Framework\TestCase { /** * @var Source|\PHPUnit_Framework_MockObject_MockObject @@ -28,7 +28,7 @@ class HelperTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->source = $this->getMockBuilder('\Migration\ResourceModel\Source') + $this->source = $this->getMockBuilder(\Migration\ResourceModel\Source::class) ->setMethods(['getAdapter', 'addDocumentPrefix']) ->disableOriginalConstructor() ->getMock(); @@ -46,14 +46,14 @@ public function testGetSourceAttributes() 'value' => 'entity_value' ] ]; - $mySqlAdapter = $this->getMock( - '\Migration\ResourceModel\Adapter\Mysql', - ['getSelect', 'loadDataFromSelect'], - [], - '', - false + $mySqlAdapter = $this->createPartialMock( + \Migration\ResourceModel\Adapter\Mysql::class, + ['getSelect', 'loadDataFromSelect'] + ); + $dbSelect = $this->createPartialMock( + \Magento\Framework\DB\Select::class, + ['from', 'where'] ); - $dbSelect = $this->getMock('\Magento\Framework\DB\Select', ['from', 'where'], [], '', false); $mySqlAdapter->expects($this->any())->method('getSelect')->willReturn($dbSelect); $this->source->expects($this->any())->method('getAdapter')->willReturn($mySqlAdapter); $this->source->expects($this->any())->method('addDocumentPrefix')->willReturnArgument(0); diff --git a/tests/unit/testsuite/Migration/Step/SalesOrder/InitialDataTest.php b/tests/unit/testsuite/Migration/Step/SalesOrder/InitialDataTest.php index 125357dab..c0620f5c9 100644 --- a/tests/unit/testsuite/Migration/Step/SalesOrder/InitialDataTest.php +++ b/tests/unit/testsuite/Migration/Step/SalesOrder/InitialDataTest.php @@ -12,7 +12,7 @@ /** * Class InitialDataTest */ -class InitialDataTest extends \PHPUnit_Framework_TestCase +class InitialDataTest extends \PHPUnit\Framework\TestCase { /** * @var Source|\PHPUnit_Framework_MockObject_MockObject @@ -39,9 +39,15 @@ class InitialDataTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->source = $this->getMock('\Migration\ResourceModel\Source', [], [], '', false); - $this->destination = $this->getMock('\Migration\ResourceModel\Destination', ['getRecordsCount'], [], '', false); - $this->helper = $this->getMock('\Migration\Step\SalesOrder\Helper', ['getDestEavDocument'], [], '', false); + $this->source = $this->createMock(\Migration\ResourceModel\Source::class); + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getRecordsCount'] + ); + $this->helper = $this->createPartialMock( + \Migration\Step\SalesOrder\Helper::class, + ['getDestEavDocument'] + ); $this->initialData = new InitialData($this->source, $this->destination, $this->helper); } diff --git a/tests/unit/testsuite/Migration/Step/SalesOrder/IntegrityTest.php b/tests/unit/testsuite/Migration/Step/SalesOrder/IntegrityTest.php index 937a57bf3..828c81165 100644 --- a/tests/unit/testsuite/Migration/Step/SalesOrder/IntegrityTest.php +++ b/tests/unit/testsuite/Migration/Step/SalesOrder/IntegrityTest.php @@ -10,7 +10,7 @@ /** * Class IntegrityTest */ -class IntegrityTest extends \PHPUnit_Framework_TestCase +class IntegrityTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\App\ProgressBar\LogLevelProcessor|\PHPUnit_Framework_MockObject_MockObject @@ -57,49 +57,43 @@ class IntegrityTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->logger = $this->getMock('\Migration\Logger\Logger', ['debug', 'error'], [], '', false); - $this->source = $this->getMock( - '\Migration\ResourceModel\Source', - ['getDocumentList', 'getDocument'], - [], - '', - false + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['debug', 'addRecord', 'error'] ); - $this->progress = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getDocumentList', 'getDocument'] ); - $this->helper = $this->getMock( - '\Migration\Step\SalesOrder\Helper', - ['getDocumentList', 'getEavAttributes', 'getDestEavDocument'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] ); - $this->destination = $this->getMock( - '\Migration\ResourceModel\Destination', - ['getDocumentList', 'getDocument', 'getRecords'], - [], - '', - false + $this->helper = $this->createPartialMock( + \Migration\Step\SalesOrder\Helper::class, + ['getDocumentList', 'getEavAttributes', 'getDestEavDocument'] ); - $this->map = $this->getMockBuilder('\Migration\Reader\Map') + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getDocumentList', 'getDocument', 'getRecords'] + ); + $this->map = $this->getMockBuilder(\Migration\Reader\Map::class) ->disableOriginalConstructor() ->setMethods(['getFieldMap', 'getDocumentMap', 'isDocumentIgnored']) ->getMock(); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('sales_order_map_file')->willReturn($this->map); - $this->config = $this->getMockBuilder('\Migration\Config')->disableOriginalConstructor() + $this->config = $this->getMockBuilder(\Migration\Config::class)->disableOriginalConstructor() ->setMethods([])->getMock(); + + $config = $this->getMockBuilder(\Migration\Config::class)->disableOriginalConstructor()->getMock(); $this->salesOrder = new Integrity( $this->progress, $this->logger, + $config, $this->source, $this->destination, $mapFactory, @@ -122,10 +116,12 @@ public function testPerform() $this->helper->expects($this->once())->method('getEavAttributes')->willReturn(['eav_entity']); $this->progress->expects($this->once())->method('start')->with(3); $this->progress->expects($this->any())->method('advance'); - $structure = $this->getMockBuilder('\Migration\ResourceModel\Structure') + $structure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) ->disableOriginalConstructor()->setMethods([])->getMock(); $structure->expects($this->any())->method('getFields')->willReturn($fields); - $document = $this->getMockBuilder('\Migration\ResourceModel\Document')->disableOriginalConstructor()->getMock(); + $document = $this->getMockBuilder(\Migration\ResourceModel\Document::class) + ->disableOriginalConstructor() + ->getMock(); $document->expects($this->any())->method('getStructure')->willReturn($structure); $this->source->expects($this->any())->method('getDocumentList')->willReturn(['source_doc']); $this->destination->expects($this->once())->method('getDocumentList')->willReturn(['dest_doc']); diff --git a/tests/unit/testsuite/Migration/Step/SalesOrder/VolumeTest.php b/tests/unit/testsuite/Migration/Step/SalesOrder/VolumeTest.php index 619808463..b94f246a6 100644 --- a/tests/unit/testsuite/Migration/Step/SalesOrder/VolumeTest.php +++ b/tests/unit/testsuite/Migration/Step/SalesOrder/VolumeTest.php @@ -11,7 +11,7 @@ use Migration\ResourceModel\Source; use Migration\App\ProgressBar; -class VolumeTest extends \PHPUnit_Framework_TestCase +class VolumeTest extends \PHPUnit\Framework\TestCase { /** * @var InitialData|\PHPUnit_Framework_MockObject_MockObject @@ -58,46 +58,37 @@ class VolumeTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->logger = $this->getMock('Migration\Logger\Logger', ['addRecord'], [], '', false); - $this->progress = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['addRecord'] ); - $this->initialData = $this->getMock( - '\Migration\Step\SalesOrder\InitialData', - ['getDestEavAttributesCount'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] ); - $this->helper = $this->getMock( - '\Migration\Step\SalesOrder\Helper', - ['getDocumentList', 'getDestEavDocument', 'getEavAttributes', 'getSourceAttributes'], - [], - '', - false + $this->initialData = $this->createPartialMock( + \Migration\Step\SalesOrder\InitialData::class, + ['getDestEavAttributesCount'] ); - $this->source = $this->getMock( - 'Migration\ResourceModel\Source', - ['getDocumentList', 'getRecordsCount'], - [], - '', - false + $this->helper = $this->createPartialMock( + \Migration\Step\SalesOrder\Helper::class, + ['getDocumentList', 'getDestEavDocument', 'getEavAttributes', 'getSourceAttributes'] ); - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['getRecordsCount'], - [], - '', - false + $this->source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getDocumentList', 'getRecordsCount'] + ); + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getRecordsCount'] + ); + $this->map = $this->createPartialMock( + \Migration\Reader\Map::class, + ['getDocumentMap'] ); - $this->map = $this->getMock('Migration\Reader\Map', ['getDocumentMap'], [], '', false); /** @var \Migration\Reader\MapFactory|\PHPUnit_Framework_MockObject_MockObject $mapFactory */ - $mapFactory = $this->getMock('\Migration\Reader\MapFactory', [], [], '', false); + $mapFactory = $this->createMock(\Migration\Reader\MapFactory::class); $mapFactory->expects($this->any())->method('create')->with('sales_order_map_file')->willReturn($this->map); $this->salesOrder = new Volume( diff --git a/tests/unit/testsuite/Migration/Step/Settings/DataTest.php b/tests/unit/testsuite/Migration/Step/Settings/DataTest.php index ee0902040..ccfef8e75 100644 --- a/tests/unit/testsuite/Migration/Step/Settings/DataTest.php +++ b/tests/unit/testsuite/Migration/Step/Settings/DataTest.php @@ -8,7 +8,7 @@ /** * Class DataTest */ -class DataTest extends \PHPUnit_Framework_TestCase +class DataTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\ResourceModel\Destination|\PHPUnit_Framework_MockObject_MockObject @@ -55,36 +55,33 @@ class DataTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['getRecordsCount', 'getRecords', 'getDocument', 'getDocumentList', 'clearDocument', 'saveRecords'], - [], - '', - false + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getRecordsCount', 'getRecords', 'getDocument', 'getDocumentList', 'clearDocument', 'saveRecords'] ); - $this->source = $this->getMock( - 'Migration\ResourceModel\Source', - ['getRecordsCount', 'getRecords', 'getDocumentList'], - [], - '', - false + $this->source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getRecordsCount', 'getRecords', 'getDocumentList'] ); - $this->readerSettings = $this->getMock( - 'Migration\Reader\Settings', - ['isNodeIgnored', 'getNodeMap', 'getValueHandler'], - [], - '', - false + $this->readerSettings = $this->createPartialMock( + \Migration\Reader\Settings::class, + ['isNodeIgnored', 'getNodeMap', 'getValueHandler'] ); - $this->recordFactory = $this->getMock('Migration\ResourceModel\RecordFactory', ['create'], [], '', false); - $this->handlerManagerFactory = $this->getMock('Migration\Handler\ManagerFactory', ['create'], [], '', false); - $this->logger = $this->getMock('Migration\Logger\Logger', ['error'], [], '', false); - $this->progress = $this->getMock( - 'Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'advance', 'finish'], - [], - '', - false + $this->recordFactory = $this->getMockBuilder(\Migration\ResourceModel\RecordFactory::class) + ->disableOriginalConstructor() + ->setMethods(['create']) + ->getMock(); + $this->handlerManagerFactory = $this->getMockBuilder(\Migration\Handler\ManagerFactory::class) + ->disableOriginalConstructor() + ->setMethods(['create']) + ->getMock(); + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['error'] + ); + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'advance', 'finish'] ); } @@ -115,14 +112,11 @@ public function testPerform() ['some/path1', ['class' => 'Some\\Class', 'params' => []]], ['some/path3', []] ]; - $document = $this->getMock('Migration\ResourceModel\Document', [], [], '', false); - $destinationRecord = $this->getMock('Migration\ResourceModel\Record', [], [], '', false); - $sourceRecord = $this->getMock( - 'Migration\ResourceModel\Record', - ['getData', 'getValue', 'setValue'], - [], - '', - false + $document = $this->createMock(\Migration\ResourceModel\Document::class); + $destinationRecord = $this->createMock(\Migration\ResourceModel\Record::class); + $sourceRecord = $this->createPartialMock( + \Migration\ResourceModel\Record::class, + ['getData', 'getValue', 'setValue'] ); $sourceRecord->expects($this->any()) ->method('getValue') @@ -130,9 +124,12 @@ public function testPerform() ->willReturn($destinationRecords[0]['value']); $sourceRecord->expects($this->any())->method('setValue')->with('path', $pathMapped[1][0]); $sourceRecord->expects($this->any())->method('getData')->willReturn($sourceRecords[1]); - $handler = $this->getMockBuilder('\Migration\Handler\HandlerInterface')->getMock(); + $handler = $this->getMockBuilder(\Migration\Handler\HandlerInterface::class)->getMock(); $handler->expects($this->any())->method('handle')->with($sourceRecord, $destinationRecord); - $handlerManager = $this->getMock('Migration\Handler\Manager', ['initHandler', 'getHandler'], [], '', false); + $handlerManager = $this->createPartialMock( + \Migration\Handler\Manager::class, + ['initHandler', 'getHandler'] + ); $handlerManager->expects($this->once()) ->method('initHandler') ->with('value', $handlerParams[0][1], 'some/path1'); diff --git a/tests/unit/testsuite/Migration/Step/Settings/IntegrityTest.php b/tests/unit/testsuite/Migration/Step/Settings/IntegrityTest.php index 399aab1ce..a60e7a32f 100644 --- a/tests/unit/testsuite/Migration/Step/Settings/IntegrityTest.php +++ b/tests/unit/testsuite/Migration/Step/Settings/IntegrityTest.php @@ -8,7 +8,7 @@ /** * Class IntegrityTest */ -class IntegrityTest extends \PHPUnit_Framework_TestCase +class IntegrityTest extends \PHPUnit\Framework\TestCase { /** * @var \Migration\ResourceModel\Destination|\PHPUnit_Framework_MockObject_MockObject @@ -55,36 +55,33 @@ class IntegrityTest extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->destination = $this->getMock( - 'Migration\ResourceModel\Destination', - ['getRecordsCount', 'getRecords', 'getDocument', 'getDocumentList', 'clearDocument', 'saveRecords'], - [], - '', - false + $this->destination = $this->createPartialMock( + \Migration\ResourceModel\Destination::class, + ['getRecordsCount', 'getRecords', 'getDocument', 'getDocumentList', 'clearDocument', 'saveRecords'] ); - $this->source = $this->getMock( - 'Migration\ResourceModel\Source', - ['getRecordsCount', 'getRecords', 'getDocumentList'], - [], - '', - false + $this->source = $this->createPartialMock( + \Migration\ResourceModel\Source::class, + ['getRecordsCount', 'getRecords', 'getDocumentList'] ); - $this->readerSettings = $this->getMock( - 'Migration\Reader\Settings', - ['isNodeIgnored', 'getNodeMap', 'getValueHandler'], - [], - '', - false + $this->readerSettings = $this->createPartialMock( + \Migration\Reader\Settings::class, + ['isNodeIgnored', 'getNodeMap', 'getValueHandler'] ); - $this->recordFactory = $this->getMock('Migration\ResourceModel\RecordFactory', ['create'], [], '', false); - $this->handlerManagerFactory = $this->getMock('Migration\Handler\ManagerFactory', ['create'], [], '', false); - $this->logger = $this->getMock('Migration\Logger\Logger', ['error'], [], '', false); - $this->progress = $this->getMock( - 'Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'advance', 'finish'], - [], - '', - false + $this->recordFactory = $this->createPartialMock( + \Migration\ResourceModel\RecordFactory::class, + ['create'] + ); + $this->handlerManagerFactory = $this->createPartialMock( + \Migration\Handler\ManagerFactory::class, + ['create'] + ); + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['error'] + ); + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'advance', 'finish'] ); } diff --git a/tests/unit/testsuite/Migration/Step/Stores/DataTest.php b/tests/unit/testsuite/Migration/Step/Stores/DataTest.php deleted file mode 100644 index 5d421cee6..000000000 --- a/tests/unit/testsuite/Migration/Step/Stores/DataTest.php +++ /dev/null @@ -1,138 +0,0 @@ -progress = $this->getMockBuilder('Migration\App\ProgressBar\LogLevelProcessor') - ->disableOriginalConstructor() - ->setMethods([]) - ->getMock(); - $this->source = $this->getMockBuilder('Migration\ResourceModel\Source') - ->disableOriginalConstructor() - ->getMock(); - $this->destination = $this->getMockBuilder('Migration\ResourceModel\Destination') - ->disableOriginalConstructor() - ->setMethods([]) - ->getMock(); - $this->helper = $this->getMockBuilder('Migration\Step\Stores\Helper') - ->disableOriginalConstructor() - ->setMethods([]) - ->getMock(); - $this->recordFactory = $this->getMockBuilder('Migration\ResourceModel\RecordFactory') - ->disableOriginalConstructor() - ->setMethods(['create']) - ->getMock(); - } - - /** - * @return void - */ - public function testPerform() - { - $recordsData = [ - 'record_1' => ['field_name' => []], - 'record_2' => ['field_name' => []], - 'record_3' => ['field_name' => []] - ]; - $this->progress->expects($this->once())->method('start')->with('3'); - $this->progress->expects($this->any())->method('advance'); - $this->progress->expects($this->once())->method('finish'); - $fields = ['field_name' => []]; - $differentFields = ['field_different' => []]; - - $structure = $this->getMockBuilder('Migration\ResourceModel\Structure')->disableOriginalConstructor() - ->setMethods(['getFields'])->getMock(); - $structure->expects($this->at(0))->method('getFields')->willReturn($differentFields); - $structure->expects($this->any())->method('getFields')->willReturn($fields); - $document = $this->getMockBuilder('Migration\ResourceModel\Document')->disableOriginalConstructor() - ->setMethods(['getName', 'getRecords', 'getStructure']) - ->getMock(); - $document->expects($this->any())->method('getStructure')->willReturn($structure); - $recordsCollection = $this->getMockBuilder('Migration\ResourceModel\Record\Collection') - ->disableOriginalConstructor() - ->setMethods(['addRecord']) - ->getMock(); - $document->expects($this->any())->method('getRecords')->willReturn($recordsCollection); - $record = $this->getMockBuilder('Migration\ResourceModel\Record')->disableOriginalConstructor() - ->setMethods(['getFields', 'setValue']) - ->getMock(); - $record->expects($this->once())->method('getFields')->willReturn(array_keys($fields)); - $record->expects($this->once())->method('setValue')->willReturnSelf(); - $this->recordFactory->expects($this->any())->method('create')->with(['document' => $document]) - ->will($this->returnValue($record)); - $recordsCollection->expects($this->any())->method('addRecord')->with($record); - $this->source->expects($this->any())->method('getDocument')->willReturn($document); - $this->source->expects($this->any())->method('getRecords')->willReturnMap( - [ - ['core_store', 0, null, $recordsData], - ['core_store_group', 0, null, $recordsData], - ['core_website', 0, null, $recordsData] - - ] - ); - $this->destination->expects($this->any())->method('getDocument')->willReturn($document); - $this->destination->expects($this->any())->method('clearDocument')->willReturnSelf(); - - $this->helper->expects($this->any())->method('getDocumentList') - ->willReturn([ - 'core_store' => 'store', - 'core_store_group' => 'store_group', - 'core_website' => 'store_website' - ]); - - $this->data = new Data( - $this->progress, - $this->source, - $this->destination, - $this->recordFactory, - $this->helper - ); - $this->data->perform(); - } -} diff --git a/tests/unit/testsuite/Migration/Step/Stores/IntegrityTest.php b/tests/unit/testsuite/Migration/Step/Stores/IntegrityTest.php deleted file mode 100644 index 47a7fe301..000000000 --- a/tests/unit/testsuite/Migration/Step/Stores/IntegrityTest.php +++ /dev/null @@ -1,91 +0,0 @@ -progress = $this->getMockBuilder('Migration\App\ProgressBar\LogLevelProcessor') - ->disableOriginalConstructor() - ->setMethods([]) - ->getMock(); - $this->source = $this->getMockBuilder('Migration\ResourceModel\Source') - ->disableOriginalConstructor() - ->getMock(); - $this->destination = $this->getMockBuilder('Migration\ResourceModel\Destination') - ->disableOriginalConstructor() - ->setMethods([]) - ->getMock(); - $this->helper = $this->getMockBuilder('Migration\Step\Stores\Helper') - ->disableOriginalConstructor() - ->setMethods([]) - ->getMock(); - } - - /** - * @return void - */ - public function testPerform() - { - $document = $this->getMockBuilder('Migration\ResourceModel\Document')->disableOriginalConstructor()->getMock(); - - $this->progress->expects($this->once())->method('start')->with('3'); - $this->progress->expects($this->any())->method('advance'); - $this->progress->expects($this->once())->method('finish'); - $this->source->expects($this->any())->method('getDocument', 'getRecords')->willReturn($document); - $this->destination->expects($this->any())->method('getDocument')->willReturn($document); - $this->helper->expects($this->any())->method('getDocumentList') - ->willReturn([ - 'core_store' => 'store', - 'core_store_group' => 'store_group', - 'core_website' => 'store_website' - ]); - - $this->integrity = new Integrity( - $this->progress, - $this->source, - $this->destination, - $this->helper - ); - $this->assertTrue($this->integrity->perform()); - } -} diff --git a/tests/unit/testsuite/Migration/Step/Stores/VolumeTest.php b/tests/unit/testsuite/Migration/Step/Stores/VolumeTest.php deleted file mode 100644 index 60a0a528c..000000000 --- a/tests/unit/testsuite/Migration/Step/Stores/VolumeTest.php +++ /dev/null @@ -1,108 +0,0 @@ -progress = $this->getMockBuilder('Migration\App\ProgressBar\LogLevelProcessor') - ->disableOriginalConstructor() - ->setMethods([]) - ->getMock(); - $this->source = $this->getMockBuilder('Migration\ResourceModel\Source') - ->disableOriginalConstructor() - ->getMock(); - $this->destination = $this->getMockBuilder('Migration\ResourceModel\Destination') - ->disableOriginalConstructor() - ->setMethods([]) - ->getMock(); - $this->helper = $this->getMockBuilder('Migration\Step\Stores\Helper') - ->disableOriginalConstructor() - ->setMethods([]) - ->getMock(); - $this->logger = $this->getMock('Migration\Logger\Logger', ['addRecord'], [], '', false); - } - - /** - * @return void - */ - public function testPerform() - { - $fields = ['field_name' => []]; - - $structure = $this->getMockBuilder('Migration\ResourceModel\Structure')->disableOriginalConstructor() - ->setMethods(['getFields'])->getMock(); - $structure->expects($this->any())->method('getFields')->will($this->returnValue($fields)); - $document = $this->getMockBuilder('Migration\ResourceModel\Document')->disableOriginalConstructor() - ->setMethods(['getStructure']) - ->getMock(); - - $this->progress->expects($this->once())->method('start')->with('3'); - $this->progress->expects($this->any())->method('advance'); - $this->progress->expects($this->once())->method('finish'); - $document->expects($this->any())->method('getStructure')->willReturn($structure); - $this->source->expects($this->any())->method('getDocument')->willReturn($document); - $this->destination->expects($this->any())->method('getDocument')->willReturn($document); - $this->source->expects($this->any())->method('getRecordsCount')->with()->willReturn(1); - $this->destination->expects($this->any())->method('getRecordsCount')->with()->willReturn(1); - $this->helper->expects($this->any())->method('getDocumentList') - ->willReturn([ - 'core_store' => 'store', - 'core_store_group' => 'store_group', - 'core_website' => 'store_website' - ]); - - $this->volume = new Volume( - $this->progress, - $this->source, - $this->destination, - $this->helper, - $this->logger - ); - $this->assertTrue($this->volume->perform()); - } -} diff --git a/tests/unit/testsuite/Migration/Step/UrlRewrite/Version11410to2000Test.php b/tests/unit/testsuite/Migration/Step/UrlRewrite/Version11410to2000Test.php index 173d1bc81..420e08d1a 100644 --- a/tests/unit/testsuite/Migration/Step/UrlRewrite/Version11410to2000Test.php +++ b/tests/unit/testsuite/Migration/Step/UrlRewrite/Version11410to2000Test.php @@ -5,13 +5,14 @@ */ namespace Migration\Step\UrlRewrite; -use Migration\Step\UrlRewrite\Model\Version11410to2000; +use Migration\Step\UrlRewrite\Model\Version11410to2000\ProductRewritesWithoutCategories; +use Migration\Step\UrlRewrite\Model\Version11410to2000\ProductRewritesIncludedIntoCategories; /** * Class UrlRewriteTest * @SuppressWarnings(PHPMD) */ -class Version11410to2000Test extends \PHPUnit_Framework_TestCase +class Version11410to2000Test extends \PHPUnit\Framework\TestCase { /** * @var \Migration\Step\UrlRewrite\Version11410to2000 @@ -83,46 +84,42 @@ class Version11410to2000Test extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->progress = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] ); - $this->logger = $this->getMock('\Migration\Logger\Logger', ['debug', 'error'], [], '', false); - $this->config = $this->getMock('\Migration\Config', [], [], '', false); + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['debug', 'error'] + ); + $this->config = $this->createMock(\Migration\Config::class); $this->config->expects($this->any())->method('getSource')->willReturn([ 'type' => 'database', 'version' => '1.14.1.0' ]); - $this->source = $this->getMock('\Migration\ResourceModel\Source', [], [], '', false); - $this->destination = $this->getMock('\Migration\ResourceModel\Destination', [], [], '', false); - $this->recordCollectionFactory = $this->getMock( - '\Migration\ResourceModel\Record\CollectionFactory', - ['create'], - [], - '', - false - ); - $this->recordFactory = $this->getMock('\Migration\ResourceModel\RecordFactory', ['create'], [], '', false); - $this->helper = $this->getMock('\Migration\Step\UrlRewrite\Helper', [], ['processFields'], '', false); - $this->productRewritesWithoutCategories = $this->getMock( - '\Migration\Step\UrlRewrite\Model\Version11410to2000\ProductRewritesWithoutCategories', - [], - [], - '', - false + $this->source = $this->createMock(\Migration\ResourceModel\Source::class); + $this->destination = $this->createMock(\Migration\ResourceModel\Destination::class); + $this->recordCollectionFactory = $this->createPartialMock( + \Migration\ResourceModel\Record\CollectionFactory::class, + ['create'] ); - $this->productRewritesIncludedIntoCategories = $this->getMock( - '\Migration\Step\UrlRewrite\Model\Version11410to2000\ProductRewritesIncludedIntoCategories', - [], - [], - '', - false + $this->recordFactory = $this->createPartialMock( + \Migration\ResourceModel\RecordFactory::class, + ['create'] ); - $this->suffix = $this->getMock('\Migration\Step\UrlRewrite\Model\Suffix', [], [], '', false); - $this->temporaryTable = $this->getMock('\Migration\Step\UrlRewrite\Model\TemporaryTable', [], [], '', false); + $this->helper = $this->getMockBuilder(\Migration\Step\UrlRewrite\Helper::class) + ->disableOriginalConstructor() + ->setMethods(['processFields']) + ->getMock(); + $this->productRewritesWithoutCategories = $this->getMockBuilder(ProductRewritesWithoutCategories::class) + ->disableOriginalConstructor() + ->getMock(); + $this->productRewritesIncludedIntoCategories = + $this->getMockBuilder(ProductRewritesIncludedIntoCategories::class) + ->disableOriginalConstructor() + ->getMock(); + $this->suffix = $this->createMock(\Migration\Step\UrlRewrite\Model\Suffix::class); + $this->temporaryTable = $this->createMock(\Migration\Step\UrlRewrite\Model\TemporaryTable::class); } /** @@ -148,5 +145,6 @@ public function testIntegrity() $this->temporaryTable, 'integrity' ); + $this->assertTrue(true); } } diff --git a/tests/unit/testsuite/Migration/Step/UrlRewrite/Version191to2000Test.php b/tests/unit/testsuite/Migration/Step/UrlRewrite/Version191to2000Test.php index df03fc092..4ca7731b3 100644 --- a/tests/unit/testsuite/Migration/Step/UrlRewrite/Version191to2000Test.php +++ b/tests/unit/testsuite/Migration/Step/UrlRewrite/Version191to2000Test.php @@ -10,7 +10,7 @@ * Class Version19Test * Test for \Migration\Step\UrlRewrite\Version19 */ -class Version191to2000Test extends \PHPUnit_Framework_TestCase +class Version191to2000Test extends \PHPUnit\Framework\TestCase { /** * @var \Migration\App\ProgressBar\LogLevelProcessor|\PHPUnit_Framework_MockObject_MockObject @@ -62,24 +62,27 @@ class Version191to2000Test extends \PHPUnit_Framework_TestCase */ public function setUp() { - $this->logger = $this->getMock('Migration\Logger\Logger', ['error'], [], '', false); - $this->progress = $this->getMock( - '\Migration\App\ProgressBar\LogLevelProcessor', - ['start', 'finish', 'advance'], - [], - '', - false + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['error'] ); - $this->logger = $this->getMock('\Migration\Logger\Logger', ['debug', 'error'], [], '', false); - $this->config = $this->getMock('\Migration\Config', [], [], '', false); + $this->progress = $this->createPartialMock( + \Migration\App\ProgressBar\LogLevelProcessor::class, + ['start', 'finish', 'advance'] + ); + $this->logger = $this->createPartialMock( + \Migration\Logger\Logger::class, + ['debug', 'error'] + ); + $this->config = $this->createMock(\Migration\Config::class); $this->config->expects($this->any())->method('getSource')->willReturn([ 'type' => 'database', 'version' => '1.9' ]); - $this->source = $this->getMock('\Migration\ResourceModel\Source', [], [], '', false); + $this->source = $this->createMock(\Migration\ResourceModel\Source::class); - $select = $this->getMockBuilder('Magento\Framework\DB\Select') - ->setMethods(['from', 'joinLeft', 'where', 'group']) + $select = $this->getMockBuilder(\Magento\Framework\DB\Select::class) + ->setMethods(['from', 'joinLeft', 'where', 'group', 'distinct']) ->disableOriginalConstructor() ->getMock(); @@ -87,8 +90,10 @@ public function setUp() $select->expects($this->any())->method('joinLeft')->willReturnSelf(); $select->expects($this->any())->method('where')->willReturnSelf(); $select->expects($this->any())->method('group')->willReturnSelf(); + $select->expects($this->any())->method('distinct')->willReturnSelf(); - $sourceAdapter = $this->getMockBuilder('Migration\ResourceModel\Adapter\Mysql')->disableOriginalConstructor() + $sourceAdapter = $this->getMockBuilder(\Migration\ResourceModel\Adapter\Mysql::class) + ->disableOriginalConstructor() ->setMethods(['getSelect', 'loadDataFromSelect']) ->getMock(); @@ -96,15 +101,15 @@ public function setUp() $this->source->expects($this->any())->method('getAdapter')->willReturn($sourceAdapter); - $this->destination = $this->getMock('\Migration\ResourceModel\Destination', [], [], '', false); - $this->recordCollection = $this->getMock( - '\Migration\ResourceModel\Record\Collection', - ['addRecord'], - [], - '', - false + $this->destination = $this->createMock(\Migration\ResourceModel\Destination::class); + $this->recordCollection = $this->createPartialMock( + \Migration\ResourceModel\Record\Collection::class, + ['addRecord'] + ); + $this->recordFactory = $this->createPartialMock( + \Migration\ResourceModel\RecordFactory::class, + ['create'] ); - $this->recordFactory = $this->getMock('\Migration\ResourceModel\RecordFactory', ['create'], [], '', false); } /** @@ -133,7 +138,7 @@ public function testIntegrity() $this->progress->expects($this->at(0)) ->method('start') ->with($this->equalTo(1)); - $sourceStructure = $this->getMockBuilder('\Migration\ResourceModel\Structure') + $sourceStructure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) ->disableOriginalConstructor() ->getMock(); $sourceStructure->expects($this->once()) @@ -154,7 +159,7 @@ public function testIntegrity() ->method('getStructure') ->with($this->equalTo(\Migration\Step\UrlRewrite\Version191to2000::SOURCE)) ->willReturn($sourceStructure); - $destinationStructure = $this->getMockBuilder('\Migration\ResourceModel\Structure') + $destinationStructure = $this->getMockBuilder(\Migration\ResourceModel\Structure::class) ->disableOriginalConstructor() ->getMock(); $destinationStructure->expects($this->once()) @@ -211,21 +216,21 @@ public function testData() ->method('start') ->with($this->equalTo($progressRecordsAmount)); - $sourceDocument = $this->getMockBuilder('\Migration\ResourceModel\Document') + $sourceDocument = $this->getMockBuilder(\Migration\ResourceModel\Document::class) ->disableOriginalConstructor() ->getMock(); $this->source->expects($this->once()) ->method('getDocument') ->with($this->equalTo(\Migration\Step\UrlRewrite\Version191to2000::SOURCE)) ->willReturn($sourceDocument); - $destinationDocument = $this->getMockBuilder('\Migration\ResourceModel\Document') + $destinationDocument = $this->getMockBuilder(\Migration\ResourceModel\Document::class) ->disableOriginalConstructor() ->getMock(); $this->destination->expects($this->at(0)) ->method('getDocument') ->with($this->equalTo(\Migration\Step\UrlRewrite\Version191to2000::DESTINATION)) ->willReturn($destinationDocument); - $destinationProductCategory = $this->getMockBuilder('\Migration\ResourceModel\Document') + $destinationProductCategory = $this->getMockBuilder(\Migration\ResourceModel\Document::class) ->setMethods(['setValue', 'getRecords']) ->disableOriginalConstructor() ->getMock(); @@ -246,7 +251,7 @@ public function testData() ->with($this->equalTo(\Migration\Step\UrlRewrite\Version191to2000::SOURCE), $this->equalTo(0)) ->willReturn(['RecordData1']); - $sourceRecord = $this->getMockBuilder('\Migration\ResourceModel\Record') + $sourceRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); @@ -255,7 +260,7 @@ public function testData() ->with($this->equalTo(['document' => $sourceDocument, 'data' => 'RecordData1'])) ->willReturn($sourceRecord); - $destinationRecord = $this->getMockBuilder('\Migration\ResourceModel\Record') + $destinationRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); @@ -264,7 +269,7 @@ public function testData() ->with($this->equalTo(['document' => $destinationDocument])) ->willReturn($destinationRecord); - $destinationCategoryRecord = $this->getMockBuilder('\Migration\ResourceModel\Record') + $destinationCategoryRecord = $this->getMockBuilder(\Migration\ResourceModel\Record::class) ->disableOriginalConstructor() ->getMock(); @@ -355,7 +360,7 @@ private function mockDestinationRecordSetters($destinationRecord) ->willReturnSelf(); $destinationRecord->expects($this->at(7)) ->method('setValue') - ->with('metadata', 'a:1:{s:11:"category_id";s:17:"category_id_value";}')->willReturnSelf(); + ->with('metadata', '{"category_id":"category_id_value"}')->willReturnSelf(); $destinationRecord->expects($this->at(8)) ->method('setValue') ->with('entity_id', 'product_id_value') diff --git a/tests/unit/testsuite/Migration/_files/class-map.xml b/tests/unit/testsuite/Migration/_files/class-map.xml index 9ce28df6b..6194cf9ac 100644 --- a/tests/unit/testsuite/Migration/_files/class-map.xml +++ b/tests/unit/testsuite/Migration/_files/class-map.xml @@ -7,7 +7,7 @@ -->