class MigrateNodeTitleLabelTest

Same name and namespace in other branches
  1. 11.x core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTitleLabelTest.php \Drupal\Tests\node\Kernel\Migrate\d7\MigrateNodeTitleLabelTest

Tests migration of the title field label for node types.

@group node

Hierarchy

Expanded class hierarchy of MigrateNodeTitleLabelTest

File

core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTitleLabelTest.php, line 13

Namespace

Drupal\Tests\node\Kernel\Migrate\d7
View source
class MigrateNodeTitleLabelTest extends MigrateDrupal7TestBase {
  protected static $modules = [
    'node',
    'text',
    'menu_ui',
  ];
  
  /**
   * {@inheritdoc}
   */
  protected function setUp() : void {
    parent::setUp();
    $this->migrateContentTypes();
    $this->executeMigration('d7_node_title_label');
  }
  
  /**
   * Asserts various aspects of a base_field_override entity.
   *
   * @param string $id
   *   The override ID.
   * @param string $label
   *   The label's expected (overridden) value.
   *
   * @internal
   */
  protected function assertEntity(string $id, string $label) : void {
    $override = BaseFieldOverride::load($id);
    $this->assertInstanceOf(BaseFieldOverride::class, $override);
    /** @var \Drupal\Core\Field\Entity\BaseFieldOverride $override */
    $this->assertSame($label, $override->getLabel());
  }
  
  /**
   * Tests migration of node title field overrides.
   */
  public function testMigration() {
    // Forum title labels are overridden to 'Subject'.
    $this->assertEntity('node.forum.title', 'Subject');
    // Other content types use the default of 'Title' and are not overridden.
    $no_override_node_type = [
      'article',
      'blog',
      'book',
      'page',
      'test_content_type',
    ];
    foreach ($no_override_node_type as $type) {
      $override = BaseFieldOverride::load("node.{$type}.title");
      $this->assertNotInstanceOf(BaseFieldOverride::class, $override);
    }
  }

}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.