Skip to content

Commit 9115780

Browse files
committed
MAGETWO-96118: Few optimizations on category & product pages
1 parent c4b394a commit 9115780

File tree

1 file changed

+25
-16
lines changed

1 file changed

+25
-16
lines changed

app/code/Magento/ConfigurableProduct/Test/Unit/Model/Product/Type/ConfigurableTest.php

Lines changed: 25 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
* @SuppressWarnings(PHPMD.LongVariable)
2828
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
2929
* @SuppressWarnings(PHPMD.TooManyFields)
30+
* @codingStandardsIgnoreFile
3031
*/
3132
class ConfigurableTest extends \PHPUnit\Framework\TestCase
3233
{
@@ -154,8 +155,7 @@ protected function setUp()
154155
->setMethods(['create'])
155156
->getMock();
156157
$this->productCollectionFactory = $this->getMockBuilder(
157-
\Magento\ConfigurableProduct\Model\ResourceModel\Product\Type\Configurable\Product\CollectionFactory::class
158-
)
158+
\Magento\ConfigurableProduct\Model\ResourceModel\Product\Type\Configurable\Product\CollectionFactory::class)
159159
->disableOriginalConstructor()
160160
->setMethods(['create'])
161161
->getMock();
@@ -197,11 +197,6 @@ protected function setUp()
197197
->disableOriginalConstructor()
198198
->getMock();
199199

200-
$this->productFactory = $this->getMockBuilder(\Magento\Catalog\Api\Data\ProductInterfaceFactory::class)
201-
->setMethods(['create'])
202-
->disableOriginalConstructor()
203-
->getMock();
204-
205200
$this->salableProcessor = $this->createMock(SalableProcessor::class);
206201

207202
$this->model = $this->objectHelper->getObject(
@@ -287,8 +282,7 @@ public function testSave()
287282
->method('getData')
288283
->willReturnMap($dataMap);
289284
$attribute = $this->getMockBuilder(
290-
\Magento\ConfigurableProduct\Model\Product\Type\Configurable\Attribute::class
291-
)
285+
\Magento\ConfigurableProduct\Model\Product\Type\Configurable\Attribute::class)
292286
->disableOriginalConstructor()
293287
->setMethods(['addData', 'setStoreId', 'setProductId', 'save', '__wakeup', '__sleep'])
294288
->getMock();
@@ -385,7 +379,7 @@ public function testGetUsedProducts()
385379
['_cache_instance_used_product_attributes', null, []]
386380
]
387381
);
388-
382+
$this->catalogConfig->expects($this->any())->method('getProductAttributes')->willReturn([]);
389383
$productCollection->expects($this->atLeastOnce())->method('addAttributeToSelect')->willReturnSelf();
390384
$productCollection->expects($this->once())->method('setProductFilter')->willReturnSelf();
391385
$productCollection->expects($this->atLeastOnce())->method('setFlag')->willReturnSelf();
@@ -471,8 +465,7 @@ public function testGetConfigurableAttributesAsArray($productStore)
471465
$eavAttribute->expects($this->atLeastOnce())->method('getStoreLabel')->willReturn('Store Label');
472466

473467
$attribute = $this->getMockBuilder(
474-
\Magento\ConfigurableProduct\Model\Product\Type\Configurable\Attribute::class
475-
)
468+
\Magento\ConfigurableProduct\Model\Product\Type\Configurable\Attribute::class)
476469
->disableOriginalConstructor()
477470
->setMethods(['getProductAttribute', '__wakeup', '__sleep'])
478471
->getMock();
@@ -515,17 +508,34 @@ public function getConfigurableAttributesAsArrayDataProvider()
515508
];
516509
}
517510

518-
public function testGetConfigurableAttributes()
511+
public function testGetConfigurableAttributesNewProduct()
519512
{
520513
$configurableAttributes = '_cache_instance_configurable_attributes';
521514

522515
/** @var \Magento\Catalog\Model\Product|\PHPUnit_Framework_MockObject_MockObject $product */
523516
$product = $this->getMockBuilder(\Magento\Catalog\Model\Product::class)
524-
->setMethods(['getData', 'hasData', 'setData'])
517+
->setMethods(['hasData', 'getId'])
525518
->disableOriginalConstructor()
526519
->getMock();
527520

528521
$product->expects($this->once())->method('hasData')->with($configurableAttributes)->willReturn(false);
522+
$product->expects($this->once())->method('getId')->willReturn(null);
523+
524+
$this->assertEquals([], $this->model->getConfigurableAttributes($product));
525+
}
526+
527+
public function testGetConfigurableAttributes()
528+
{
529+
$configurableAttributes = '_cache_instance_configurable_attributes';
530+
531+
/** @var \Magento\Catalog\Model\Product|\PHPUnit_Framework_MockObject_MockObject $product */
532+
$product = $this->getMockBuilder(\Magento\Catalog\Model\Product::class)
533+
->setMethods(['getData', 'hasData', 'setData', 'getId'])
534+
->disableOriginalConstructor()
535+
->getMock();
536+
537+
$product->expects($this->once())->method('hasData')->with($configurableAttributes)->willReturn(false);
538+
$product->expects($this->once())->method('getId')->willReturn(1);
529539

530540
$attributeCollection = $this->getMockBuilder(Collection::class)
531541
->setMethods(['setProductFilter', 'orderByPosition', 'load'])
@@ -582,8 +592,7 @@ public function testHasOptionsConfigurableAttribute()
582592
->disableOriginalConstructor()
583593
->getMock();
584594
$attributeMock = $this->getMockBuilder(
585-
\Magento\ConfigurableProduct\Model\Product\Type\Configurable\Attribute::class
586-
)
595+
\Magento\ConfigurableProduct\Model\Product\Type\Configurable\Attribute::class)
587596
->disableOriginalConstructor()
588597
->getMock();
589598

0 commit comments

Comments
 (0)