Example #1
0
 /**
  * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
  */
 protected function setUp()
 {
     $this->request = $this->getMockBuilder('\\Magento\\Framework\\App\\RequestInterface')->disableOriginalConstructor()->setMethods(['getParam'])->getMockForAbstractClass();
     $dataProviderFactory = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\DataProvider\\PriceFactory')->disableOriginalConstructor()->setMethods(['create'])->getMock();
     $this->dataProvider = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\DataProvider\\Price')->disableOriginalConstructor()->setMethods(['setPriceId', 'getPrice', 'getResource'])->getMock();
     $this->resource = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Resource\\Layer\\Filter\\Price')->disableOriginalConstructor()->setMethods(['applyPriceRange'])->getMock();
     $this->dataProvider->expects($this->any())->method('getResource')->will($this->returnValue($this->resource));
     $dataProviderFactory->expects($this->once())->method('create')->will($this->returnValue($this->dataProvider));
     $this->layer = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer')->disableOriginalConstructor()->setMethods(['getState'])->getMock();
     $this->state = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\State')->disableOriginalConstructor()->setMethods(['addFilter'])->getMock();
     $this->layer->expects($this->any())->method('getState')->will($this->returnValue($this->state));
     $this->itemDataBuilder = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\Item\\DataBuilder')->disableOriginalConstructor()->setMethods(['addItemData', 'build'])->getMock();
     $this->filterItemFactory = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\ItemFactory')->disableOriginalConstructor()->setMethods(['create'])->getMock();
     $filterItem = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\Item')->disableOriginalConstructor()->setMethods(['setFilter', 'setLabel', 'setValue', 'setCount'])->getMock();
     $filterItem->expects($this->any())->method($this->anything())->will($this->returnSelf());
     $this->filterItemFactory->expects($this->any())->method('create')->will($this->returnValue($filterItem));
     $escaper = $this->getMockBuilder('\\Magento\\Framework\\Escaper')->disableOriginalConstructor()->setMethods(['escapeHtml'])->getMock();
     $escaper->expects($this->any())->method('escapeHtml')->will($this->returnArgument(0));
     $this->attribute = $this->getMockBuilder('\\Magento\\Eav\\Model\\Entity\\Attribute')->disableOriginalConstructor()->setMethods(['getAttributeCode', 'getFrontend', 'getIsFilterable'])->getMock();
     $algorithmFactory = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\Dynamic\\AlgorithmFactory')->disableOriginalConstructor()->setMethods(['create'])->getMock();
     $this->algorithm = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\Dynamic\\Auto')->disableOriginalConstructor()->setMethods(['getItemsData'])->getMock();
     $algorithmFactory->expects($this->any())->method('create')->will($this->returnValue($this->algorithm));
     $objectManagerHelper = new ObjectManagerHelper($this);
     $this->target = $objectManagerHelper->getObject('Magento\\Catalog\\Model\\Layer\\Filter\\Price', ['dataProviderFactory' => $dataProviderFactory, 'layer' => $this->layer, 'itemDataBuilder' => $this->itemDataBuilder, 'filterItemFactory' => $this->filterItemFactory, 'escaper' => $escaper, 'algorithmFactory' => $algorithmFactory]);
 }
 /**
  * @param int $index
  * @param string $label
  * @param string $value
  * @param int $count
  * @return \Magento\Catalog\Model\Layer\Filter\Item|MockObject
  */
 private function createFilterItem($index, $label, $value, $count)
 {
     $filterItem = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\Item')->disableOriginalConstructor()->setMethods(['setFilter', 'setLabel', 'setValue', 'setCount'])->getMock();
     $filterItem->expects($this->once())->method('setFilter')->with($this->target)->will($this->returnSelf());
     $filterItem->expects($this->once())->method('setLabel')->with($label)->will($this->returnSelf());
     $filterItem->expects($this->once())->method('setValue')->with($value)->will($this->returnSelf());
     $filterItem->expects($this->once())->method('setCount')->with($count)->will($this->returnSelf());
     $this->filterItemFactory->expects($this->at($index))->method('create')->will($this->returnValue($filterItem));
     return $filterItem;
 }
Example #3
0
 protected function setUp()
 {
     $this->request = $this->getMockBuilder('\\Magento\\Framework\\App\\RequestInterface')->disableOriginalConstructor()->setMethods(['getParam'])->getMockForAbstractClass();
     $this->layer = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer')->disableOriginalConstructor()->setMethods(['getState', 'getProductCollection'])->getMock();
     $this->filterItemFactory = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\ItemFactory')->disableOriginalConstructor()->setMethods(['create'])->getMock();
     $this->filterItem = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\Item')->disableOriginalConstructor()->setMethods(['setFilter', 'setLabel', 'setValue', 'setCount'])->getMock();
     $this->filterItem->expects($this->any())->method($this->anything())->will($this->returnSelf());
     $this->filterItemFactory->expects($this->any())->method('create')->will($this->returnValue($this->filterItem));
     $this->fulltextCollection = $this->fulltextCollection = $this->getMockBuilder('\\Magento\\CatalogSearch\\Model\\ResourceModel\\Fulltext\\Collection')->disableOriginalConstructor()->getMock();
     $this->layer->expects($this->any())->method('getProductCollection')->will($this->returnValue($this->fulltextCollection));
     $filterDecimalFactory = $this->getMockBuilder('\\Magento\\Catalog\\Model\\ResourceModel\\Layer\\Filter\\DecimalFactory')->disableOriginalConstructor()->setMethods(['create'])->getMock();
     $resource = $this->getMockBuilder('\\Magento\\Catalog\\Model\\ResourceModel\\Layer\\Filter\\Decimal')->disableOriginalConstructor()->setMethods([])->getMock();
     $filterDecimalFactory->expects($this->once())->method('create')->will($this->returnValue($resource));
     $this->attribute = $this->getMockBuilder('\\Magento\\Eav\\Model\\Entity\\Attribute')->disableOriginalConstructor()->setMethods(['getAttributeCode', 'getFrontend', 'getIsFilterable'])->getMock();
     $this->state = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\State')->disableOriginalConstructor()->setMethods(['addFilter'])->getMock();
     $this->layer->expects($this->any())->method('getState')->will($this->returnValue($this->state));
     $objectManagerHelper = new ObjectManagerHelper($this);
     $this->target = $objectManagerHelper->getObject('Magento\\CatalogSearch\\Model\\Layer\\Filter\\Decimal', ['filterItemFactory' => $this->filterItemFactory, 'layer' => $this->layer, 'filterDecimalFactory' => $filterDecimalFactory]);
     $this->target->setAttributeModel($this->attribute);
 }
Example #4
0
 protected function setUp()
 {
     $this->request = $this->getMockBuilder('\\Magento\\Framework\\App\\RequestInterface')->disableOriginalConstructor()->setMethods(['getParam'])->getMockForAbstractClass();
     $dataProviderFactory = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\DataProvider\\CategoryFactory')->disableOriginalConstructor()->setMethods(['create'])->getMock();
     $this->dataProvider = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\DataProvider\\Category')->disableOriginalConstructor()->setMethods(['setCategoryId', 'getCategory'])->getMock();
     $dataProviderFactory->expects($this->once())->method('create')->will($this->returnValue($this->dataProvider));
     $this->category = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Category')->disableOriginalConstructor()->setMethods(['getId', 'getChildrenCategories', 'getIsActive'])->getMock();
     $this->dataProvider->expects($this->any())->method('getCategory', 'isValid')->will($this->returnValue($this->category));
     $this->layer = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer')->disableOriginalConstructor()->setMethods(['getState', 'getProductCollection'])->getMock();
     $this->fulltextCollection = $this->fulltextCollection = $this->getMockBuilder('\\Magento\\CatalogSearch\\Model\\Resource\\Fulltext\\Collection')->disableOriginalConstructor()->setMethods(['addCategoryFilter', 'getFacetedData', 'getSize'])->getMock();
     $this->layer->expects($this->any())->method('getProductCollection')->will($this->returnValue($this->fulltextCollection));
     $this->itemDataBuilder = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\Item\\DataBuilder')->disableOriginalConstructor()->setMethods(['addItemData', 'build'])->getMock();
     $this->filterItemFactory = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\ItemFactory')->disableOriginalConstructor()->setMethods(['create'])->getMock();
     $filterItem = $this->getMockBuilder('\\Magento\\Catalog\\Model\\Layer\\Filter\\Item')->disableOriginalConstructor()->setMethods(['setFilter', 'setLabel', 'setValue', 'setCount'])->getMock();
     $filterItem->expects($this->any())->method($this->anything())->will($this->returnSelf());
     $this->filterItemFactory->expects($this->any())->method('create')->will($this->returnValue($filterItem));
     $escaper = $this->getMockBuilder('\\Magento\\Framework\\Escaper')->disableOriginalConstructor()->setMethods(['escapeHtml'])->getMock();
     $escaper->expects($this->any())->method('escapeHtml')->will($this->returnArgument(0));
     $objectManagerHelper = new ObjectManagerHelper($this);
     $this->target = $objectManagerHelper->getObject('Magento\\CatalogSearch\\Model\\Layer\\Filter\\Category', ['categoryDataProviderFactory' => $dataProviderFactory, 'layer' => $this->layer, 'itemDataBuilder' => $this->itemDataBuilder, 'filterItemFactory' => $this->filterItemFactory, 'escaper' => $escaper]);
 }
 /**
  * Create filter item object
  *
  * @param   string $label
  * @param   mixed $value
  * @param   int $count
  * @return  \Magento\Catalog\Model\Layer\Filter\Item
  */
 protected function _createItem($label, $value, $count = 0)
 {
     return $this->_filterItemFactory->create()->setFilter($this)->setLabel($label)->setValue($value)->setCount($count);
 }