Mercurial > hg > isophonics-drupal-site
view core/modules/book/tests/src/Unit/BookManagerTest.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | af1871eacc83 |
children |
line wrap: on
line source
<?php namespace Drupal\Tests\book\Unit; use Drupal\book\BookManager; use Drupal\Core\Entity\EntityTypeManagerInterface; use Drupal\Tests\UnitTestCase; /** * @coversDefaultClass \Drupal\book\BookManager * @group book */ class BookManagerTest extends UnitTestCase { /** * The mocked entity manager. * * @var \Drupal\Core\Entity\EntityManager|\PHPUnit_Framework_MockObject_MockObject */ protected $entityManager; /** * The mocked config factory. * * @var \Drupal\Core\Config\ConfigFactory|\PHPUnit_Framework_MockObject_MockObject */ protected $configFactory; /** * The mocked translation manager. * * @var \Drupal\Core\StringTranslation\TranslationInterface|\PHPUnit_Framework_MockObject_MockObject */ protected $translation; /** * The mocked renderer. * * @var \Drupal\Core\Render\RendererInterface|\PHPUnit_Framework_MockObject_MockObject */ protected $renderer; /** * The tested book manager. * * @var \Drupal\book\BookManager */ protected $bookManager; /** * Book outline storage. * * @var \Drupal\book\BookOutlineStorageInterface */ protected $bookOutlineStorage; /** * {@inheritdoc} */ protected function setUp() { $this->entityManager = $this->createMock(EntityTypeManagerInterface::class); $this->translation = $this->getStringTranslationStub(); $this->configFactory = $this->getConfigFactoryStub([]); $this->bookOutlineStorage = $this->getMock('Drupal\book\BookOutlineStorageInterface'); $this->renderer = $this->getMock('\Drupal\Core\Render\RendererInterface'); $this->bookManager = new BookManager($this->entityManager, $this->translation, $this->configFactory, $this->bookOutlineStorage, $this->renderer); } /** * Tests the getBookParents() method. * * @dataProvider providerTestGetBookParents */ public function testGetBookParents($book, $parent, $expected) { $this->assertEquals($expected, $this->bookManager->getBookParents($book, $parent)); } /** * Provides test data for testGetBookParents. * * @return array * The test data. */ public function providerTestGetBookParents() { $empty = [ 'p1' => 0, 'p2' => 0, 'p3' => 0, 'p4' => 0, 'p5' => 0, 'p6' => 0, 'p7' => 0, 'p8' => 0, 'p9' => 0, ]; return [ // Provides a book without an existing parent. [ ['pid' => 0, 'nid' => 12], [], ['depth' => 1, 'p1' => 12] + $empty, ], // Provides a book with an existing parent. [ ['pid' => 11, 'nid' => 12], ['nid' => 11, 'depth' => 1, 'p1' => 11], ['depth' => 2, 'p1' => 11, 'p2' => 12] + $empty, ], // Provides a book with two existing parents. [ ['pid' => 11, 'nid' => 12], ['nid' => 11, 'depth' => 2, 'p1' => 10, 'p2' => 11], ['depth' => 3, 'p1' => 10, 'p2' => 11, 'p3' => 12] + $empty, ], ]; } }