You are here

public function MigrateUserPictureD6FileTest::testUserPictures in Drupal 10

Same name and namespace in other branches
  1. 9 core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserPictureD6FileTest.php \Drupal\Tests\user\Kernel\Migrate\d6\MigrateUserPictureD6FileTest::testUserPictures()

Tests the Drupal 6 user pictures to Drupal 8 migration.

File

core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserPictureD6FileTest.php, line 32

Class

MigrateUserPictureD6FileTest
User pictures migration.

Namespace

Drupal\Tests\user\Kernel\Migrate\d6

Code

public function testUserPictures() {
  $file_ids = [];
  foreach ($this->migration
    ->getIdMap() as $destination_ids) {
    $file_ids[] = reset($destination_ids);
  }
  $files = File::loadMultiple($file_ids);

  /** @var \Drupal\file\FileInterface $file */
  $file = array_shift($files);
  $this
    ->assertSame('image-test.jpg', $file
    ->getFilename());
  $this
    ->assertSame('public://image-test.jpg', $file
    ->getFileUri());
  $this
    ->assertSame('2', $file
    ->getOwnerId());
  $this
    ->assertSame('1901', $file
    ->getSize());
  $this
    ->assertSame('image/jpeg', $file
    ->getMimeType());
  $file = array_shift($files);
  $this
    ->assertSame('image-test.png', $file
    ->getFilename());
  $this
    ->assertSame('public://image-test.png', $file
    ->getFileUri());
  $this
    ->assertSame('8', $file
    ->getOwnerId());
  $this
    ->assertEmpty($files);

  // Tests the D6 user pictures migration in combination with D6 file.
  $this
    ->setUpMigratedFiles();
  $this
    ->assertEntity(1, 'image-test.jpg', 1901, 'public://image-test.jpg', 'image/jpeg', 2);
  $this
    ->assertEntity(2, 'image-test.png', 125, 'public://image-test.png', 'image/png', 8);
  $this
    ->assertEntity(3, 'Image1.png', 39325, 'public://image-1.png', 'image/png', 1);
  $this
    ->assertEntity(4, 'Image2.jpg', 1831, 'public://image-2.jpg', 'image/jpeg', 1);
  $this
    ->assertEntity(5, 'Image-test.gif', 183, 'public://image-test.gif', 'image/jpeg', 1);
  $this
    ->assertEntity(6, 'html-1.txt', 19, 'public://html-1.txt', 'text/plain', 1);
}