function MigrateTaxonomyTermTest::assertHierarchy
Same name in other branches
- 9 core/modules/taxonomy/tests/src/Kernel/Migrate/d7/MigrateTaxonomyTermTest.php \Drupal\Tests\taxonomy\Kernel\Migrate\d7\MigrateTaxonomyTermTest::assertHierarchy()
- 8.9.x core/modules/taxonomy/tests/src/Kernel/Migrate/d7/MigrateTaxonomyTermTest.php \Drupal\Tests\taxonomy\Kernel\Migrate\d7\MigrateTaxonomyTermTest::assertHierarchy()
- 10 core/modules/taxonomy/tests/src/Kernel/Migrate/d7/MigrateTaxonomyTermTest.php \Drupal\Tests\taxonomy\Kernel\Migrate\d7\MigrateTaxonomyTermTest::assertHierarchy()
Assert that a term is present in the tree storage, with the right parents.
Parameters
string $vid: Vocabulary ID.
int $tid: ID of the term to check.
array $parent_ids: The expected parent term IDs.
1 call to MigrateTaxonomyTermTest::assertHierarchy()
- MigrateTaxonomyTermTest::assertEntity in core/
modules/ taxonomy/ tests/ src/ Kernel/ Migrate/ d7/ MigrateTaxonomyTermTest.php - Validate a migrated term contains the expected values.
File
-
core/
modules/ taxonomy/ tests/ src/ Kernel/ Migrate/ d7/ MigrateTaxonomyTermTest.php, line 227
Class
- MigrateTaxonomyTermTest
- Upgrade taxonomy terms.
Namespace
Drupal\Tests\taxonomy\Kernel\Migrate\d7Code
protected function assertHierarchy(string $vid, int $tid, array $parent_ids) : void {
if (!isset($this->treeData[$vid])) {
$tree = \Drupal::entityTypeManager()->getStorage('taxonomy_term')
->loadTree($vid);
$this->treeData[$vid] = [];
foreach ($tree as $item) {
$this->treeData[$vid][$item->tid] = $item;
}
}
$this->assertArrayHasKey($tid, $this->treeData[$vid], "Term {$tid} exists in taxonomy tree");
$term = $this->treeData[$vid][$tid];
$this->assertEquals($parent_ids, array_filter($term->parents), "Term {$tid} has correct parents in taxonomy tree");
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.