class BookUninstallValidatorTest in Drupal 10
Same name and namespace in other branches
- 8 core/modules/book/tests/src/Unit/BookUninstallValidatorTest.php \Drupal\Tests\book\Unit\BookUninstallValidatorTest
- 9 core/modules/book/tests/src/Unit/BookUninstallValidatorTest.php \Drupal\Tests\book\Unit\BookUninstallValidatorTest
@coversDefaultClass \Drupal\book\BookUninstallValidator @group book
Hierarchy
- class \Drupal\Tests\book\Unit\BookUninstallValidatorTest extends \Drupal\Tests\UnitTestCase
Expanded class hierarchy of BookUninstallValidatorTest
File
- core/
modules/ book/ tests/ src/ Unit/ BookUninstallValidatorTest.php, line 11
Namespace
Drupal\Tests\book\UnitView source
class BookUninstallValidatorTest extends UnitTestCase {
/**
* @var \Drupal\book\BookUninstallValidator|\PHPUnit\Framework\MockObject\MockObject
*/
protected $bookUninstallValidator;
/**
* {@inheritdoc}
*/
protected function setUp() : void {
parent::setUp();
$this->bookUninstallValidator = $this
->getMockBuilder('Drupal\\book\\BookUninstallValidator')
->disableOriginalConstructor()
->onlyMethods([
'hasBookOutlines',
'hasBookNodes',
])
->getMock();
$this->bookUninstallValidator
->setStringTranslation($this
->getStringTranslationStub());
}
/**
* @covers ::validate
*/
public function testValidateNotBook() {
$this->bookUninstallValidator
->expects($this
->never())
->method('hasBookOutlines');
$this->bookUninstallValidator
->expects($this
->never())
->method('hasBookNodes');
$module = 'not_book';
$expected = [];
$reasons = $this->bookUninstallValidator
->validate($module);
$this
->assertEquals($expected, $reasons);
}
/**
* @covers ::validate
*/
public function testValidateEntityQueryWithoutResults() {
$this->bookUninstallValidator
->expects($this
->once())
->method('hasBookOutlines')
->willReturn(FALSE);
$this->bookUninstallValidator
->expects($this
->once())
->method('hasBookNodes')
->willReturn(FALSE);
$module = 'book';
$expected = [];
$reasons = $this->bookUninstallValidator
->validate($module);
$this
->assertEquals($expected, $reasons);
}
/**
* @covers ::validate
*/
public function testValidateEntityQueryWithResults() {
$this->bookUninstallValidator
->expects($this
->once())
->method('hasBookOutlines')
->willReturn(FALSE);
$this->bookUninstallValidator
->expects($this
->once())
->method('hasBookNodes')
->willReturn(TRUE);
$module = 'book';
$expected = [
'To uninstall Book, delete all content that has the Book content type',
];
$reasons = $this->bookUninstallValidator
->validate($module);
$this
->assertEquals($expected, $reasons);
}
/**
* @covers ::validate
*/
public function testValidateOutlineStorage() {
$this->bookUninstallValidator
->expects($this
->once())
->method('hasBookOutlines')
->willReturn(TRUE);
$this->bookUninstallValidator
->expects($this
->never())
->method('hasBookNodes');
$module = 'book';
$expected = [
'To uninstall Book, delete all content that is part of a book',
];
$reasons = $this->bookUninstallValidator
->validate($module);
$this
->assertEquals($expected, $reasons);
}
}