123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Customer\Block\Adminhtml\Group;
- use Magento\Customer\Api\GroupManagementInterface;
- use Magento\Customer\Api\GroupRepositoryInterface;
- use Magento\Customer\Controller\RegistryConstants;
- use Magento\TestFramework\Helper\Bootstrap;
- use Magento\TestFramework\TestCase\AbstractController;
- /**
- * Magento\Customer\Block\Adminhtml\Group\Edit
- *
- * @magentoAppArea adminhtml
- */
- class EditTest extends AbstractController
- {
- /**
- * @var \Magento\Framework\View\LayoutInterface
- */
- private $layout;
- /**
- * @var GroupRepositoryInterface
- */
- private $groupRepository;
- /**
- * @var GroupManagementInterface
- */
- private $groupManagement;
- /**
- * @var \Magento\Framework\Registry
- */
- private $registry;
- /**
- * Execute per test initialization.
- */
- public function setUp()
- {
- parent::setUp();
- $this->layout = Bootstrap::getObjectManager()->get(\Magento\Framework\View\LayoutInterface::class);
- $this->groupRepository = Bootstrap::getObjectManager()->create(
- \Magento\Customer\Api\GroupRepositoryInterface::class
- );
- $this->groupManagement = Bootstrap::getObjectManager()->create(
- \Magento\Customer\Api\GroupManagementInterface::class
- );
- $this->registry = Bootstrap::getObjectManager()->get(\Magento\Framework\Registry::class);
- }
- /**
- * Execute per test cleanup.
- */
- public function tearDown()
- {
- $this->registry->unregister(RegistryConstants::CURRENT_GROUP_ID);
- }
- /**
- * Verify that the Delete button does not exist for the default group.
- * @magentoAppIsolation enabled
- */
- public function testDeleteButtonNotExistInDefaultGroup()
- {
- $groupId = $this->groupManagement->getDefaultGroup(0)->getId();
- $this->registry->register(RegistryConstants::CURRENT_GROUP_ID, $groupId);
- $this->getRequest()->setParam('id', $groupId);
- /** @var $block Edit */
- $block = $this->layout->createBlock(\Magento\Customer\Block\Adminhtml\Group\Edit::class, 'block');
- $buttonsHtml = $block->getButtonsHtml();
- $this->assertNotContains('delete', $buttonsHtml);
- }
- /**
- * @magentoDataFixture Magento/Customer/_files/customer_group.php
- */
- public function testDeleteButtonExistInCustomGroup()
- {
- $builder = Bootstrap::getObjectManager()->create(\Magento\Framework\Api\FilterBuilder::class);
- /** @var \Magento\Framework\Api\SearchCriteriaBuilder $searchCriteria */
- $searchCriteria = Bootstrap::getObjectManager()
- ->create(\Magento\Framework\Api\SearchCriteriaBuilder::class)
- ->addFilters([$builder->setField('code')->setValue('custom_group')->create()])->create();
- $customerGroup = $this->groupRepository->getList($searchCriteria)->getItems()[0];
- $this->getRequest()->setParam('id', $customerGroup->getId());
- $this->registry->register(RegistryConstants::CURRENT_GROUP_ID, $customerGroup->getId());
- /** @var $block Edit */
- $block = $this->layout->createBlock(\Magento\Customer\Block\Adminhtml\Group\Edit::class, 'block');
- $buttonsHtml = $block->getButtonsHtml();
- $this->assertContains('delete', $buttonsHtml);
- }
- }
|