function it_returns_null_if_category_is_not_found(Category $category, $entityRepository, $mappingCollection) { $entityRepository->findOneBy(['category' => $category, 'magentoUrl' => ''])->willReturn(null); $mappingCollection->getTarget('colors')->willReturn('colors'); $category->getCode()->willReturn('colors'); $this->getIdFromCategory($category, '', $mappingCollection)->shouldReturn(null); }
/** * Test getter/setter for code property */ public function testCode() { // assert getter $this->assertNull($this->category->getCode()); // assert setter $testCode = 'test-code'; $this->assertEntity($this->category->setCode($testCode)); $this->assertEquals($testCode, $this->category->getCode()); }
function it_normalizes_category_variations(Category $category, Category $parentCategory, CategoryTranslation $translation, $categoryMapping, $storeViewMapping, $categoryMappingManager) { $this->globalContext = array_merge($this->globalContext, ['magentoStoreViews' => [['code' => 'fr_fr']], 'magentoStoreView' => 'default']); $category->getParent()->willReturn($parentCategory); $category->getLabel()->willReturn('category_label'); $category->setLocale('default_locale')->shouldBeCalled(); $category->getTranslations()->willReturn([$translation]); $category->getCode()->willReturn('category_code'); $translation->getLocale()->willReturn('fr_FR'); $storeViewMapping->getTarget('fr_FR')->willReturn('fr_fr'); $category->setLocale('fr_FR')->shouldBeCalled(); $category->getLabel()->willReturn('Libélé de la catégorie'); $categoryMappingManager->getIdFromCategory($category, 'soap_url')->willReturn(null); $categoryMappingManager->getIdFromCategory($parentCategory, 'soap_url', $categoryMapping)->willReturn(3); $categoryMapping->getTarget('category_code')->willReturn('category_code'); $this->normalize($category, 'MagentoArray', $this->globalContext)->shouldReturn(['create' => [['magentoCategory' => ['3', ['name' => 'Libélé de la catégorie', 'is_active' => 1, 'include_in_menu' => 1, 'available_sort_by' => 1, 'default_sort_by' => 1], 'default'], 'pimCategory' => $category]], 'update' => [], 'move' => [], 'variation' => [['magentoCategory' => [null, ['name' => 'Libélé de la catégorie', 'available_sort_by' => 1, 'default_sort_by' => 1], 'fr_fr'], 'pimCategory' => $category]]]); }
/** * {@inheritDoc} */ public function getCode() { $this->__initializer__ && $this->__initializer__->__invoke($this, 'getCode', array()); return parent::getCode(); }
/** * @param Category $category * * @Given /^I should be on the (category "([^"]*)") node creation page$/ */ public function iShouldBeOnTheCategoryNodeCreationPage(Category $category) { $expectedAddress = $this->getPage('Category node creation')->getUrl(['id' => $category->getId()]); $this->spin(function () use($expectedAddress) { $this->assertAddress($expectedAddress); return true; }, sprintf('Expected to be on the %s category node creation page. But was not', $category->getCode())); }
function it_lists_and_format_categories($registry, CategoryItemsCounterInterface $categoryItemsCounter, Category $category0, Category $category1, Category $category2) { $registry->get('product')->willReturn($categoryItemsCounter); $categoryItemsCounter->getItemsCountInCategory(Argument::any(), null)->willReturn(5); $category1->getId()->willReturn(2); $category1->getCode()->willReturn('some_category1'); $category1->getLabel()->willReturn('Some category 1'); $category1->hasChildren()->willReturn(false); $category1->isRoot()->willReturn(false); $category1Array = ['item' => $category1, '__children' => []]; $category2->getId()->willReturn(3); $category2->getCode()->willReturn('some_category2'); $category2->getLabel()->willReturn('Some category 2'); $category2->hasChildren()->willReturn(false); $category2->isRoot()->willReturn(false); $category2Array = ['item' => $category2, '__children' => []]; $category0->getId()->willReturn(1); $category0->getCode()->willReturn('parent_category'); $category0->getLabel()->willReturn('Parent category'); $category0->hasChildren()->willReturn(true); $category0->isRoot()->willReturn(false); $category0Array = ['item' => $category0, '__children' => [$category1Array, $category2Array]]; $expected = [['attr' => ['id' => 'node_1', 'data-code' => 'parent_category'], 'data' => 'Parent category', 'state' => 'open', 'children' => [['attr' => ['id' => 'node_2', 'data-code' => 'some_category1'], 'data' => 'Some category 1', 'state' => 'leaf', 'children' => [], 'selectedChildrenCount' => 0], ['attr' => ['id' => 'node_3', 'data-code' => 'some_category2'], 'data' => 'Some category 2', 'state' => 'leaf', 'children' => [], 'selectedChildrenCount' => 0]], 'selectedChildrenCount' => 0]]; $this->listCategoriesResponse([$category0Array], new ArrayCollection())->shouldEqualUsingJSON($expected); }