
| Current Path : /var/www/html1/web/core/tests/Drupal/Tests/Core/Extension/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : /var/www/html1/web/core/tests/Drupal/Tests/Core/Extension/RequiredModuleUninstallValidatorTest.php |
<?php
namespace Drupal\Tests\Core\Extension;
use Drupal\Tests\AssertHelperTrait;
use Drupal\Tests\UnitTestCase;
/**
* @coversDefaultClass \Drupal\Core\Extension\RequiredModuleUninstallValidator
* @group Extension
*/
class RequiredModuleUninstallValidatorTest extends UnitTestCase {
use AssertHelperTrait;
/**
* @var \Drupal\Core\Extension\RequiredModuleUninstallValidator|\PHPUnit\Framework\MockObject\MockObject
*/
protected $uninstallValidator;
/**
* {@inheritdoc}
*/
protected function setUp() {
parent::setUp();
$this->uninstallValidator = $this->getMockBuilder('Drupal\Core\Extension\RequiredModuleUninstallValidator')
->disableOriginalConstructor()
->setMethods(['getModuleInfoByModule'])
->getMock();
$this->uninstallValidator->setStringTranslation($this->getStringTranslationStub());
}
/**
* @covers ::validate
*/
public function testValidateNoModule() {
$this->uninstallValidator->expects($this->once())
->method('getModuleInfoByModule')
->willReturn([]);
$module = $this->randomMachineName();
$expected = [];
$reasons = $this->uninstallValidator->validate($module);
$this->assertSame($expected, $reasons);
}
/**
* @covers ::validate
*/
public function testValidateNotRequired() {
$module = $this->randomMachineName();
$this->uninstallValidator->expects($this->once())
->method('getModuleInfoByModule')
->willReturn(['required' => FALSE, 'name' => $module]);
$expected = [];
$reasons = $this->uninstallValidator->validate($module);
$this->assertSame($expected, $reasons);
}
/**
* @covers ::validate
*/
public function testValidateRequired() {
$module = $this->randomMachineName();
$this->uninstallValidator->expects($this->once())
->method('getModuleInfoByModule')
->willReturn(['required' => TRUE, 'name' => $module]);
$expected = ["The $module module is required"];
$reasons = $this->uninstallValidator->validate($module);
$this->assertSame($expected, $this->castSafeStrings($reasons));
}
}