protected function TaxonomyTermArgumentDepthTest::setUp in Drupal 9
Same name in this branch
- 9 core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermArgumentDepthTest.php \Drupal\Tests\taxonomy\Functional\Views\TaxonomyTermArgumentDepthTest::setUp()
- 9 core/modules/taxonomy/tests/src/Kernel/Views/TaxonomyTermArgumentDepthTest.php \Drupal\Tests\taxonomy\Kernel\Views\TaxonomyTermArgumentDepthTest::setUp()
Parameters
bool $import_test_views: Should the views specified on the test class be imported. If you need to setup some additional stuff, like fields, you need to call false and then call createTestViews for your own.
Overrides TaxonomyTestBase::setUp
File
- core/
modules/ taxonomy/ tests/ src/ Kernel/ Views/ TaxonomyTermArgumentDepthTest.php, line 48
Class
- TaxonomyTermArgumentDepthTest
- Test the taxonomy term with depth argument.
Namespace
Drupal\Tests\taxonomy\Kernel\ViewsCode
protected function setUp($import_test_views = TRUE) : void {
parent::setUp($import_test_views);
// Install node_access schema in order to successfully re-save nodes.
$this
->installSchema('node', [
'node_access',
]);
// Create a hierarchy 5 deep. Note the parent setup function creates two
// top-level terms w/o children.
$first = $this
->createTerm([
'name' => 'First',
]);
$second = $this
->createTerm([
'name' => 'Second',
'parent' => $first
->id(),
]);
$third = $this
->createTerm([
'name' => 'Third',
'parent' => $second
->id(),
]);
$fourth = $this
->createTerm([
'name' => 'Fourth',
'parent' => $third
->id(),
]);
$fifth = $this
->createTerm([
'name' => 'Fifth',
'parent' => $fourth
->id(),
]);
$this->terms = [
$first,
$second,
$third,
$fourth,
$fifth,
];
// Create a node w/o any terms.
$settings = [
'type' => 'article',
];
$this->nodes[] = $this
->drupalCreateNode($settings);
// Create a node with only the top level term.
$settings['field_views_testing_tags'][0]['target_id'] = $first
->id();
$this->nodes[] = $this
->drupalCreateNode($settings);
// Create a node with only the third level term.
$settings['field_views_testing_tags'][0]['target_id'] = $third
->id();
$this->nodes[] = $this
->drupalCreateNode($settings);
// Create a node with only the fifth level term.
$settings['field_views_testing_tags'][0]['target_id'] = $fifth
->id();
$this->nodes[] = $this
->drupalCreateNode($settings);
$this->view = Views::getView(self::$testViews[0]);
// Fix the created date to match the expectations of the order by in the
// view. Node 1 should be the most recent node and node 6 should be the
// oldest.
$time = \Drupal::time();
foreach ($this->nodes as $i => $node) {
$node
->setCreatedTime($time
->getRequestTime() - $i)
->save();
}
}