You are here

public function RelationshipUserFileDataTest::testViewsHandlerRelationshipUserFileData in Drupal 9

Tests using the views file relationship.

File

core/modules/file/tests/src/Kernel/Views/RelationshipUserFileDataTest.php, line 76

Class

RelationshipUserFileDataTest
Tests file on user relationship handler.

Namespace

Drupal\Tests\file\Kernel\Views

Code

public function testViewsHandlerRelationshipUserFileData() {
  $file = File::create([
    'fid' => 2,
    'uid' => 2,
    'filename' => 'image-test.jpg',
    'uri' => "public://image-test.jpg",
    'filemime' => 'image/jpeg',
    'created' => 1,
    'changed' => 1,
  ]);
  $file
    ->enforceIsNew()
    ->setPermanent();
  file_put_contents($file
    ->getFileUri(), file_get_contents('core/tests/fixtures/files/image-1.png'));
  $file
    ->save();
  $account = $this
    ->createUser();
  $account->user_file->target_id = 2;
  $account
    ->save();
  $view = Views::getView('test_file_user_file_data');

  // Tests \Drupal\taxonomy\Plugin\views\relationship\NodeTermData::calculateDependencies().
  $expected = [
    'module' => [
      'file',
      'user',
    ],
  ];
  $this
    ->assertSame($expected, $view
    ->getDependencies());
  $view
    ->preview();
  $expected_result = [
    [
      'file_managed_user__user_file_fid' => '2',
    ],
  ];
  $column_map = [
    'file_managed_user__user_file_fid' => 'file_managed_user__user_file_fid',
  ];
  $this
    ->assertIdenticalResultset($view, $expected_result, $column_map);
}