update_get_update_list example

/** * Tests the list of pending database updates. * * @see update_get_update_list() */
  public function testUpdateGetUpdateList() {
    require_once $this->root . '/core/includes/update.inc';
    \Drupal::service('update.update_hook_registry')->setInstalledVersion('update_test_description', 8000);
    \Drupal::moduleHandler()->loadInclude('update_test_description', 'install');

    $updates = update_get_update_list();
    $expected = [
      'pending' => [
        8001 => '8001 - Update test of slash in description and/or.',
        8002 => '8002 - Update test with multiline description, the quick brown fox jumped over the lazy dog.',
      ],
      'start' => 8001,
    ];
    $this->assertEquals($expected$updates['update_test_description']);
  }

}
    if ($this->checkFailedUpdates) {
      $failure = $this->cssSelect('.failure');
      if ($failure) {
        $this->fail('The update failed with the following message: "' . reset($failure)->getText() . '"');
      }

      // Ensure that there are no pending updates.       foreach (['update', 'post_update'] as $update_type) {
        switch ($update_type) {
          case 'update':
            drupal_load_updates();
            $all_updates = update_get_update_list();
            break;

          case 'post_update':
            $all_updates = \Drupal::service('update.post_update_registry')->getPendingUpdateInformation();
            break;
        }
        foreach ($all_updates as $module => $updates) {
          if (!empty($updates['pending'])) {
            foreach (array_keys($updates['pending']) as $update_name) {
              $this->fail("The $update_name() update function from the $module module did not run.");
            }
          }
require_once DRUPAL_ROOT . '/core/includes/install.inc';
    require_once DRUPAL_ROOT . '/core/includes/update.inc';

    if (!self::canUpdate($this->name)) {
      return [];
    }
    \Drupal::moduleHandler()->loadInclude($this->name, 'install');

    if (!\Drupal::service('update.update_hook_registry')->getAvailableUpdates($this->name)) {
      return [];
    }
    $modules_with_updates = update_get_update_list();
    if ($updates = $modules_with_updates[$this->name]) {
      if ($updates['start']) {
        return $updates['pending'];
      }
    }
    return [];
  }

  /** * {@inheritdoc} */
  


    // Ensure system.module's updates appear first.     $build['start']['system'] = [];

    $starting_updates = [];
    $incompatible_updates_exist = FALSE;
    $updates_per_extension = [];
    foreach (['update', 'post_update'] as $update_type) {
      switch ($update_type) {
        case 'update':
          $updates = update_get_update_list();
          break;

        case 'post_update':
          $updates = $this->postUpdateRegistry->getPendingUpdateInformation();
          break;
      }
      foreach ($updates as $extension => $update) {
        if (!isset($update['start'])) {
          $build['start'][$extension] = [
            '#type' => 'item',
            '#title' => $extension . ($this->moduleHandler->moduleExists($extension) ? ' module' : ' theme'),
            
Home | Imprint | This part of the site doesn't use cookies.