1<?php 2 3namespace Drupal\Tests\user\Kernel\Views; 4 5use Drupal\KernelTests\KernelTestBase; 6 7/** 8 * Contains tests related to the views data for the user entity type. 9 * 10 * @group user 11 * 12 * @see \Drupal\user\UserViewsData 13 */ 14class UserViewsDataTest extends KernelTestBase { 15 16 /** 17 * The views data service. 18 * 19 * @var \Drupal\views\ViewsData 20 */ 21 protected $viewsData; 22 23 /** 24 * The entity field manager. 25 * 26 * @var \Drupal\Core\Entity\EntityFieldManagerInterface 27 */ 28 protected $entityFieldManager; 29 30 /** 31 * {@inheritdoc} 32 */ 33 protected static $modules = [ 34 'system', 35 'user', 36 'views', 37 ]; 38 39 /** 40 * {@inheritdoc} 41 */ 42 protected function setUp(): void { 43 parent::setUp(); 44 $this->viewsData = $this->container->get('views.views_data'); 45 $this->entityFieldManager = $this->container->get('entity_field.manager'); 46 } 47 48 /** 49 * Tests if user views data object doesn't contain pass field. 50 */ 51 public function testUserPasswordFieldNotAvailableToViews() { 52 $field_definitions = $this->entityFieldManager->getBaseFieldDefinitions('user'); 53 $this->assertArrayHasKey('pass', $field_definitions); 54 $this->assertArrayNotHasKey('pass', $this->viewsData->get('users_field_data')); 55 } 56 57} 58