You are here

protected function UpdatePostUpdateFailingTest::setUp in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/system/tests/src/Functional/UpdateSystem/UpdatePostUpdateFailingTest.php \Drupal\Tests\system\Functional\UpdateSystem\UpdatePostUpdateFailingTest::setUp()
  2. 10 core/modules/system/tests/src/Functional/UpdateSystem/UpdatePostUpdateFailingTest.php \Drupal\Tests\system\Functional\UpdateSystem\UpdatePostUpdateFailingTest::setUp()

Overrides BrowserTestBase::setUp

File

core/modules/system/tests/src/Functional/UpdateSystem/UpdatePostUpdateFailingTest.php, line 25

Class

UpdatePostUpdateFailingTest
Tests hook_post_update() when there are failing update hooks.

Namespace

Drupal\Tests\system\Functional\UpdateSystem

Code

protected function setUp() {
  parent::setUp();
  $connection = Database::getConnection();

  // Set the schema version.
  $connection
    ->merge('key_value')
    ->condition('collection', 'system.schema')
    ->condition('name', 'update_test_failing')
    ->fields([
    'collection' => 'system.schema',
    'name' => 'update_test_failing',
    'value' => 'i:8000;',
  ])
    ->execute();

  // Update core.extension.
  $extensions = $connection
    ->select('config')
    ->fields('config', [
    'data',
  ])
    ->condition('collection', '')
    ->condition('name', 'core.extension')
    ->execute()
    ->fetchField();
  $extensions = unserialize($extensions);
  $extensions['module']['update_test_failing'] = 8000;
  $connection
    ->update('config')
    ->fields([
    'data' => serialize($extensions),
  ])
    ->condition('collection', '')
    ->condition('name', 'core.extension')
    ->execute();
}