function UpdateRegistryTest::testGetPendingUpdateFunctionsWithLoadedModulesButNotEnabled

Same name and namespace in other branches
  1. 9 core/tests/Drupal/Tests/Core/Update/UpdateRegistryTest.php \Drupal\Tests\Core\Update\UpdateRegistryTest::testGetPendingUpdateFunctionsWithLoadedModulesButNotEnabled()
  2. 8.9.x core/tests/Drupal/Tests/Core/Update/UpdateRegistryTest.php \Drupal\Tests\Core\Update\UpdateRegistryTest::testGetPendingUpdateFunctionsWithLoadedModulesButNotEnabled()
  3. 11.x core/tests/Drupal/Tests/Core/Update/UpdateRegistryTest.php \Drupal\Tests\Core\Update\UpdateRegistryTest::testGetPendingUpdateFunctionsWithLoadedModulesButNotEnabled()

@covers ::getPendingUpdateFunctions

File

core/tests/Drupal/Tests/Core/Update/UpdateRegistryTest.php, line 229

Class

UpdateRegistryTest
@coversDefaultClass \Drupal\Core\Update\UpdateRegistry[[api-linebreak]] @group Update

Namespace

Drupal\Tests\Core\Update

Code

public function testGetPendingUpdateFunctionsWithLoadedModulesButNotEnabled() : void {
  $this->setupBasicExtensions();
  $key_value = $this->prophesize(KeyValueStoreInterface::class);
  $key_value->get('existing_updates', [])
    ->willReturn([]);
  $key_value = $key_value->reveal();
  $theme_handler = $this->prophesize(ThemeHandlerInterface::class);
  $theme_handler->listInfo()
    ->willReturn([]);
  $theme_handler = $theme_handler->reveal();
  // Preload modules to ensure that ::getAvailableUpdateFunctions filters out
  // not enabled modules.
  include_once 'vfs://drupal/sites/default/modules/module_a/module_a.post_update.php';
  include_once 'vfs://drupal/sites/default/modules/module_b/module_b.post_update.php';
  $update_registry = new UpdateRegistry('vfs://drupal', 'sites/default', [
    'module_a' => [
      'type' => 'module',
      'pathname' => 'core/modules/module_a/module_a.info.yml',
      'filename' => 'module_a.module',
    ],
  ], $key_value, $theme_handler, 'post_update');
  // Confirm the updates are sorted alphabetically.
  $this->assertEquals([
    'module_a_post_update_a',
    'module_a_post_update_b',
  ], $update_registry->getPendingUpdateFunctions());
}

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