Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / web / core / modules / field / tests / src / Unit / FieldStorageConfigAccessControlHandlerTest.php
index 4ed751233305ebb7ddb107a3117d9d3c4549bc08..83abd3cad61eaf1f30bde1f3330b2a6f5b59c1d0 100644 (file)
@@ -6,8 +6,9 @@ use Drupal\Component\Uuid\UuidInterface;
 use Drupal\Core\Cache\Context\CacheContextsManager;
 use Drupal\Core\Config\Entity\ConfigEntityTypeInterface;
 use Drupal\Core\DependencyInjection\Container;
-use Drupal\Core\Entity\EntityManagerInterface;
+use Drupal\Core\Entity\EntityManager;
 use Drupal\Core\Entity\EntityStorageInterface;
+use Drupal\Core\Entity\EntityTypeManagerInterface;
 use Drupal\Core\Extension\ModuleHandlerInterface;
 use Drupal\Core\Session\AccountInterface;
 use Drupal\field\Entity\FieldStorageConfig;
@@ -52,17 +53,10 @@ class FieldStorageConfigAccessControlHandlerTest extends UnitTestCase {
   protected $member;
 
   /**
-   * The mocked test field storage config.
+   * The FieldStorageConfig entity used for testing.
    *
    * @var \Drupal\field\FieldStorageConfigInterface
    */
-  protected $fieldStorage;
-
-  /**
-   * The main entity used for testing.
-   *
-   * @var \Drupal\Core\Config\Entity\ConfigEntityInterface
-   */
   protected $entity;
 
   /**
@@ -126,34 +120,40 @@ class FieldStorageConfigAccessControlHandlerTest extends UnitTestCase {
     $storage_access_control_handler = new FieldStorageConfigAccessControlHandler($storageType);
     $storage_access_control_handler->setModuleHandler($this->moduleHandler);
 
-    $entityManager = $this->getMock(EntityManagerInterface::class);
-    $entityManager
+    $entity_type_manager = $this->getMock(EntityTypeManagerInterface::class);
+    $entity_type_manager
       ->expects($this->any())
       ->method('getDefinition')
       ->willReturnMap([
         ['field_storage_config', TRUE, $storageType],
         ['node', TRUE, $entityType],
       ]);
-    $entityManager
+    $entity_type_manager
       ->expects($this->any())
       ->method('getStorage')
       ->willReturnMap([
         ['field_storage_config', $this->getMock(EntityStorageInterface::class)],
       ]);
-    $entityManager
+    $entity_type_manager
       ->expects($this->any())
       ->method('getAccessControlHandler')
       ->willReturnMap([
         ['field_storage_config', $storage_access_control_handler],
       ]);
 
+    $entity_manager = new EntityManager();
+
     $container = new Container();
-    $container->set('entity.manager', $entityManager);
+    $container->set('entity.manager', $entity_manager);
+    $container->set('entity_type.manager', $entity_type_manager);
     $container->set('uuid', $this->getMock(UuidInterface::class));
     $container->set('cache_contexts_manager', $this->prophesize(CacheContextsManager::class));
+    // Inject the container into entity.manager so it can defer to
+    // entity_type.manager.
+    $entity_manager->setContainer($container);
     \Drupal::setContainer($container);
 
-    $this->fieldStorage = new FieldStorageConfig([
+    $this->entity = new FieldStorageConfig([
       'field_name' => 'test_field',
       'entity_type' => 'node',
       'type' => 'boolean',
@@ -161,7 +161,6 @@ class FieldStorageConfigAccessControlHandlerTest extends UnitTestCase {
       'uuid' => '6f2f259a-f3c7-42ea-bdd5-111ad1f85ed1',
     ]);
 
-    $this->entity = $this->fieldStorage;
     $this->accessControlHandler = $storage_access_control_handler;
   }
 
@@ -188,7 +187,7 @@ class FieldStorageConfigAccessControlHandlerTest extends UnitTestCase {
     $this->assertAllowOperations([], $this->anon);
     $this->assertAllowOperations(['view', 'update', 'delete'], $this->member);
 
-    $this->fieldStorage->setLocked(TRUE)->save();
+    $this->entity->setLocked(TRUE)->save();
     // Unfortunately, EntityAccessControlHandler has a static cache, which we
     // therefore must reset manually.
     $this->accessControlHandler->resetCache();