Skip to content

Commit 10d1600

Browse files
committed
Merge pull request #125 from magento-goinc/MAGETWO-31159
[GoInc] HHVM Compatibility, Varnish coverage increase, Bug Fixes
2 parents 689db78 + 9cd7866 commit 10d1600

File tree

140 files changed

+1214
-995
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

140 files changed

+1214
-995
lines changed

app/code/Magento/Backend/Test/Unit/Model/Menu/Filter/IteratorTest.php

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,6 @@ class IteratorTest extends \PHPUnit_Framework_TestCase
1212
*/
1313
protected $_menuModel;
1414

15-
/**
16-
* @var \Magento\Backend\Model\Menu\Filter\Iterator
17-
*/
18-
protected $_filterIteratorModel;
19-
2015
/**
2116
* @var \Magento\Backend\Model\Menu\Item[]
2217
*/
@@ -42,9 +37,6 @@ protected function setUp()
4237
$loggerMock = $this->getMock('Psr\Log\LoggerInterface');
4338

4439
$this->_menuModel = new \Magento\Backend\Model\Menu($loggerMock);
45-
$this->_filterIteratorModel = new \Magento\Backend\Model\Menu\Filter\Iterator(
46-
$this->_menuModel->getIterator()
47-
);
4840
}
4941

5042
public function testLoopWithAllItemsDisabledDoesntIterate()
@@ -54,8 +46,12 @@ public function testLoopWithAllItemsDisabledDoesntIterate()
5446
$this->_menuModel->add($this->getMock('Magento\Backend\Model\Menu\Item', [], [], '', false));
5547
$this->_menuModel->add($this->getMock('Magento\Backend\Model\Menu\Item', [], [], '', false));
5648
$this->_menuModel->add($this->getMock('Magento\Backend\Model\Menu\Item', [], [], '', false));
49+
$filterIteratorModel = new \Magento\Backend\Model\Menu\Filter\Iterator(
50+
$this->_menuModel->getIterator()
51+
);
52+
5753
$items = [];
58-
foreach ($this->_filterIteratorModel as $item) {
54+
foreach ($filterIteratorModel as $item) {
5955
$items[] = $item;
6056
}
6157
$this->assertCount(0, $items);
@@ -70,9 +66,12 @@ public function testLoopIteratesOnlyValidItems()
7066

7167
$this->_menuModel->add($this->getMock('Magento\Backend\Model\Menu\Item', [], [], '', false));
7268
$this->_menuModel->add($this->getMock('Magento\Backend\Model\Menu\Item', [], [], '', false));
69+
$filterIteratorModel = new \Magento\Backend\Model\Menu\Filter\Iterator(
70+
$this->_menuModel->getIterator()
71+
);
7372

7473
$items = [];
75-
foreach ($this->_filterIteratorModel as $item) {
74+
foreach ($filterIteratorModel as $item) {
7675
$items[] = $item;
7776
}
7877
$this->assertCount(1, $items);
@@ -88,9 +87,12 @@ public function testLoopIteratesDosntIterateDisabledItems()
8887

8988
$this->_menuModel->add($this->getMock('Magento\Backend\Model\Menu\Item', [], [], '', false));
9089
$this->_menuModel->add($this->getMock('Magento\Backend\Model\Menu\Item', [], [], '', false));
90+
$filterIteratorModel = new \Magento\Backend\Model\Menu\Filter\Iterator(
91+
$this->_menuModel->getIterator()
92+
);
9193

9294
$items = [];
93-
foreach ($this->_filterIteratorModel as $item) {
95+
foreach ($filterIteratorModel as $item) {
9496
$items[] = $item;
9597
}
9698
$this->assertCount(1, $items);
@@ -106,9 +108,12 @@ public function testLoopIteratesDosntIterateNotAllowedItems()
106108

107109
$this->_menuModel->add($this->getMock('Magento\Backend\Model\Menu\Item', [], [], '', false));
108110
$this->_menuModel->add($this->getMock('Magento\Backend\Model\Menu\Item', [], [], '', false));
111+
$filterIteratorModel = new \Magento\Backend\Model\Menu\Filter\Iterator(
112+
$this->_menuModel->getIterator()
113+
);
109114

110115
$items = [];
111-
foreach ($this->_filterIteratorModel as $item) {
116+
foreach ($filterIteratorModel as $item) {
112117
$items[] = $item;
113118
}
114119
$this->assertCount(1, $items);
@@ -125,9 +130,12 @@ public function testLoopIteratesMixedItems()
125130

126131
$this->_menuModel->add($this->getMock('Magento\Backend\Model\Menu\Item', [], [], '', false));
127132
$this->_menuModel->add($this->getMock('Magento\Backend\Model\Menu\Item', [], [], '', false));
133+
$filterIteratorModel = new \Magento\Backend\Model\Menu\Filter\Iterator(
134+
$this->_menuModel->getIterator()
135+
);
128136

129137
$items = [];
130-
foreach ($this->_filterIteratorModel as $item) {
138+
foreach ($filterIteratorModel as $item) {
131139
$items[] = $item;
132140
}
133141
$this->assertCount(1, $items);

app/code/Magento/Catalog/Api/Data/CategoryAttributeInterface.php

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,4 @@
99
interface CategoryAttributeInterface extends \Magento\Catalog\Api\Data\EavAttributeInterface
1010
{
1111
const ENTITY_TYPE_CODE = 'catalog_category';
12-
13-
const DEFAULT_ATTRIBUTE_SET_ID = 3;
1412
}

app/code/Magento/Catalog/Api/Data/ProductAttributeInterface.php

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,4 @@
99
interface ProductAttributeInterface extends \Magento\Catalog\Api\Data\EavAttributeInterface
1010
{
1111
const ENTITY_TYPE_CODE = 'catalog_product';
12-
13-
const DEFAULT_ATTRIBUTE_SET_ID = 4;
1412
}

app/code/Magento/Catalog/Controller/Adminhtml/Product/Validate.php

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@
99
use Magento\Backend\App\Action;
1010
use Magento\Catalog\Controller\Adminhtml\Product;
1111

12+
/**
13+
* Product validate
14+
*
15+
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
16+
*/
1217
class Validate extends \Magento\Catalog\Controller\Adminhtml\Product
1318
{
1419
/**
@@ -31,27 +36,33 @@ class Validate extends \Magento\Catalog\Controller\Adminhtml\Product
3136
*/
3237
protected $layoutFactory;
3338

39+
/** @var \Magento\Catalog\Model\ProductFactory */
40+
protected $productFactory;
41+
3442
/**
3543
* @param Action\Context $context
3644
* @param Builder $productBuilder
3745
* @param \Magento\Framework\Stdlib\DateTime\Filter\Date $dateFilter
3846
* @param \Magento\Catalog\Model\Product\Validator $productValidator
3947
* @param \Magento\Framework\Controller\Result\JSONFactory $resultJsonFactory
4048
* @param \Magento\Framework\View\LayoutFactory $layoutFactory
49+
* @param \Magento\Catalog\Model\ProductFactory $productFactory
4150
*/
4251
public function __construct(
4352
\Magento\Backend\App\Action\Context $context,
4453
Product\Builder $productBuilder,
4554
\Magento\Framework\Stdlib\DateTime\Filter\Date $dateFilter,
4655
\Magento\Catalog\Model\Product\Validator $productValidator,
4756
\Magento\Framework\Controller\Result\JSONFactory $resultJsonFactory,
48-
\Magento\Framework\View\LayoutFactory $layoutFactory
57+
\Magento\Framework\View\LayoutFactory $layoutFactory,
58+
\Magento\Catalog\Model\ProductFactory $productFactory
4959
) {
5060
$this->_dateFilter = $dateFilter;
5161
$this->productValidator = $productValidator;
5262
parent::__construct($context, $productBuilder);
5363
$this->resultJsonFactory = $resultJsonFactory;
5464
$this->layoutFactory = $layoutFactory;
65+
$this->productFactory = $productFactory;
5566
}
5667

5768
/**
@@ -73,13 +84,13 @@ public function execute()
7384
$productData['stock_data']['use_config_manage_stock'] = 0;
7485
}
7586
/* @var $product \Magento\Catalog\Model\Product */
76-
$product = $this->_objectManager->create('Magento\Catalog\Model\Product');
87+
$product = $this->productFactory->create();
7788
$product->setData('_edit_mode', true);
7889
$storeId = $this->getRequest()->getParam('store');
7990
if ($storeId) {
8091
$product->setStoreId($storeId);
8192
}
82-
$setId = $this->getRequest()->getParam('set');
93+
$setId = $this->getRequest()->getPost('set');
8394
if ($setId) {
8495
$product->setAttributeSetId($setId);
8596
}

app/code/Magento/Catalog/Model/Category/AttributeRepository.php

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,22 +24,30 @@ class AttributeRepository implements CategoryAttributeRepositoryInterface
2424
*/
2525
protected $eavAttributeRepository;
2626

27+
/**
28+
* @var \Magento\Eav\Model\Config
29+
*/
30+
protected $eavConfig;
31+
2732
/**
2833
* @param \Magento\Framework\Api\Config\MetadataConfig $metadataConfig
2934
* @param \Magento\Framework\Api\SearchCriteriaBuilder $searchCriteriaBuilder
3035
* @param \Magento\Framework\Api\FilterBuilder $filterBuilder
3136
* @param \Magento\Eav\Api\AttributeRepositoryInterface $eavAttributeRepository
37+
* @param \Magento\Eav\Model\Config $eavConfig
3238
*/
3339
public function __construct(
3440
\Magento\Framework\Api\Config\MetadataConfig $metadataConfig,
3541
\Magento\Framework\Api\SearchCriteriaBuilder $searchCriteriaBuilder,
3642
\Magento\Framework\Api\FilterBuilder $filterBuilder,
37-
\Magento\Eav\Api\AttributeRepositoryInterface $eavAttributeRepository
43+
\Magento\Eav\Api\AttributeRepositoryInterface $eavAttributeRepository,
44+
\Magento\Eav\Model\Config $eavConfig
3845
) {
3946
$this->metadataConfig = $metadataConfig;
4047
$this->searchCriteriaBuilder = $searchCriteriaBuilder;
4148
$this->filterBuilder = $filterBuilder;
4249
$this->eavAttributeRepository = $eavAttributeRepository;
50+
$this->eavConfig = $eavConfig;
4351
}
4452

4553
/**
@@ -69,11 +77,14 @@ public function get($attributeCode)
6977
*/
7078
public function getCustomAttributesMetadata($dataObjectClassName = null)
7179
{
80+
$defaultAttributeSetId = $this->eavConfig
81+
->getEntityType(\Magento\Catalog\Api\Data\CategoryAttributeInterface::ENTITY_TYPE_CODE)
82+
->getDefaultAttributeSetId();
7283
$searchCriteria = $this->searchCriteriaBuilder->addFilter(
7384
[
7485
$this->filterBuilder
7586
->setField('attribute_set_id')
76-
->setValue(\Magento\Catalog\Api\Data\CategoryAttributeInterface::DEFAULT_ATTRIBUTE_SET_ID)
87+
->setValue($defaultAttributeSetId)
7788
->create(),
7889
]
7990
);

app/code/Magento/Catalog/Model/Product/Attribute/Repository.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -216,11 +216,14 @@ public function deleteById($attributeCode)
216216
*/
217217
public function getCustomAttributesMetadata($dataObjectClassName = null)
218218
{
219+
$defaultAttributeSetId = $this->eavConfig
220+
->getEntityType(\Magento\Catalog\Api\Data\ProductAttributeInterface::ENTITY_TYPE_CODE)
221+
->getDefaultAttributeSetId();
219222
$searchCriteria = $this->searchCriteriaBuilder->addFilter(
220223
[
221224
$this->filterBuilder
222225
->setField('attribute_set_id')
223-
->setValue(\Magento\Catalog\Api\Data\ProductAttributeInterface::DEFAULT_ATTRIBUTE_SET_ID)
226+
->setValue($defaultAttributeSetId)
224227
->create(),
225228
]
226229
);

app/code/Magento/Catalog/Model/Product/Option/Type/File/ValidatorFile.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,6 @@ public function validate($processingParams, $option)
150150

151151
$upload->addFilter(new \Zend_Filter_File_Rename(['target' => $fileFullPath, 'overwrite' => true]));
152152

153-
// TODO: I don't know how change this
154153
if (!is_null($this->product)) {
155154
$this->product->getTypeInstance()->addFileQueue(
156155
[

app/code/Magento/Catalog/Model/ProductRepository.php

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,11 @@ class ProductRepository implements \Magento\Catalog\Api\ProductRepositoryInterfa
7171
*/
7272
protected $metadataService;
7373

74+
/**
75+
* @var \Magento\Eav\Model\Config
76+
*/
77+
protected $eavConfig;
78+
7479
/**
7580
* @param ProductFactory $productFactory
7681
* @param \Magento\Catalog\Controller\Adminhtml\Product\Initialization\Helper $initializationHelper
@@ -81,6 +86,8 @@ class ProductRepository implements \Magento\Catalog\Api\ProductRepositoryInterfa
8186
* @param Resource\Product $resourceModel
8287
* @param \Magento\Framework\Api\FilterBuilder $filterBuilder
8388
* @param \Magento\Catalog\Api\ProductAttributeRepositoryInterface $metadataServiceInterface
89+
* @param \Magento\Eav\Model\Config $eavConfig
90+
* @SuppressWarnings(PHPMD.ExcessiveParameterList)
8491
*/
8592
public function __construct(
8693
ProductFactory $productFactory,
@@ -91,7 +98,8 @@ public function __construct(
9198
\Magento\Catalog\Api\ProductAttributeRepositoryInterface $attributeRepository,
9299
\Magento\Catalog\Model\Resource\Product $resourceModel,
93100
\Magento\Framework\Api\FilterBuilder $filterBuilder,
94-
\Magento\Catalog\Api\ProductAttributeRepositoryInterface $metadataServiceInterface
101+
\Magento\Catalog\Api\ProductAttributeRepositoryInterface $metadataServiceInterface,
102+
\Magento\Eav\Model\Config $eavConfig
95103
) {
96104
$this->productFactory = $productFactory;
97105
$this->collectionFactory = $collectionFactory;
@@ -102,6 +110,7 @@ public function __construct(
102110
$this->attributeRepository = $attributeRepository;
103111
$this->filterBuilder = $filterBuilder;
104112
$this->metadataService = $metadataServiceInterface;
113+
$this->eavConfig = $eavConfig;
105114
}
106115

107116
/**
@@ -261,12 +270,14 @@ public function getList(\Magento\Framework\Api\SearchCriteriaInterface $searchCr
261270
{
262271
/** @var \Magento\Catalog\Model\Resource\Product\Collection $collection */
263272
$collection = $this->collectionFactory->create();
264-
273+
$defaultAttributeSetId = $this->eavConfig
274+
->getEntityType(\Magento\Catalog\Api\Data\ProductAttributeInterface::ENTITY_TYPE_CODE)
275+
->getDefaultAttributeSetId();
265276
$extendedSearchCriteria = $this->searchCriteriaBuilder->addFilter(
266277
[
267278
$this->filterBuilder
268279
->setField('attribute_set_id')
269-
->setValue(\Magento\Catalog\Api\Data\ProductAttributeInterface::DEFAULT_ATTRIBUTE_SET_ID)
280+
->setValue($defaultAttributeSetId)
270281
->create(),
271282
]
272283
);

0 commit comments

Comments
 (0)