9 use Magento\Catalog\Model\CategoryFactory;
11 use Magento\Catalog\Model\ResourceModel\Category\CollectionFactory;
21 private $fixtureModelMock;
31 private $collectionFactoryMock;
36 private $collectionMock;
41 private $categoryFactoryMock;
45 $this->fixtureModelMock = $this->createMock(FixtureModel::class);
46 $this->collectionFactoryMock = $this->createPartialMock(CollectionFactory::class, [
'create']);
47 $this->collectionMock = $this->createMock(Collection::class);
48 $this->categoryFactoryMock = $this->createPartialMock(CategoryFactory::class, [
'create']);
50 $this->model = (
new ObjectManager($this))->getObject(CategoriesFixture::class, [
51 'fixtureModel' => $this->fixtureModelMock,
52 'collectionFactory' => $this->collectionFactoryMock,
53 'rootCategoriesIds' => [2],
54 'categoryFactory' => $this->categoryFactoryMock,
55 'firstLevelCategoryIndex' => 1,
61 $this->collectionFactoryMock->expects($this->once())->method(
'create')->willReturn($this->collectionMock);
62 $this->collectionMock->expects($this->once())->method(
'getSize')->willReturn(32);
63 $this->fixtureModelMock
64 ->expects($this->once())
67 $this->categoryFactoryMock->expects($this->never())->method(
'create');
69 $this->model->execute();
76 [
'categories_nesting_level', 3, 3]
79 $this->fixtureModelMock
80 ->expects($this->exactly(2))
82 ->will($this->returnValueMap($valueMap));
84 $this->collectionFactoryMock->expects($this->once())->method(
'create')->willReturn($this->collectionMock);
85 $this->collectionMock->expects($this->once())->method(
'getSize')->willReturn(2);
87 $parentCategoryMock = $this->createPartialMock(\
Magento\Catalog\Model\Category::class, [
106 $parentCategoryMock->expects($this->once())->method(
'getId')->willReturn(5);
107 $parentCategoryMock->expects($this->once())->method(
'getLevel')->willReturn(3);
108 $categoryMock = clone $parentCategoryMock;
109 $categoryMock->expects($this->once())
112 ->will($this->returnValue(
'category_name'));
113 $categoryMock->expects($this->once())
116 $categoryMock->expects($this->once())
117 ->method(
'setUrlKey')
119 $categoryMock->expects($this->once())
120 ->method(
'setUrlPath')
122 $categoryMock->expects($this->once())
125 $categoryMock->expects($this->once())
126 ->method(
'setParentId')
129 $categoryMock->expects($this->once())
132 $categoryMock->expects($this->once())
133 ->method(
'setIsAnchor')
136 $categoryMock->expects($this->once())
140 $categoryMock->expects($this->once())
141 ->method(
'setAvailableSortBy')
143 $categoryMock->expects($this->once())
144 ->method(
'setDefaultSortBy')
146 $categoryMock->expects($this->once())
147 ->method(
'setIsActive')
150 $this->categoryFactoryMock->expects($this->once())->method(
'create')->willReturn($categoryMock);
152 $this->model->execute();
157 $this->assertSame(
'Generating categories', $this->model->getActionTitle());
163 'categories' =>
'Categories' 164 ], $this->model->introduceParamLabels());
testDoNoExecuteIfCategoriesAlreadyGenerated()
testIntroduceParamLabels()