protected function InstallerExistingBrokenDatabaseSettingsTest::prepareEnvironment in Drupal 8
Same name and namespace in other branches
- 9 core/tests/Drupal/FunctionalTests/Installer/InstallerExistingBrokenDatabaseSettingsTest.php \Drupal\FunctionalTests\Installer\InstallerExistingBrokenDatabaseSettingsTest::prepareEnvironment()
Prepares the current environment for running the test.
Also sets up new resources for the testing environment, such as the public filesystem and configuration directories.
This method is private as it must only be called once by BrowserTestBase::setUp() (multiple invocations for the same test would have unpredictable consequences) and it must not be callable or overridable by test classes.
Overrides FunctionalTestSetupTrait::prepareEnvironment
File
- core/
tests/ Drupal/ FunctionalTests/ Installer/ InstallerExistingBrokenDatabaseSettingsTest.php, line 22
Class
- InstallerExistingBrokenDatabaseSettingsTest
- Tests the installer with broken database connection info in settings.php.
Namespace
Drupal\FunctionalTests\InstallerCode
protected function prepareEnvironment() {
parent::prepareEnvironment();
// Pre-configure database credentials in settings.php.
$connection_info = Database::getConnectionInfo();
if ($connection_info['default']['driver'] !== 'mysql') {
$this
->markTestSkipped('This test relies on overriding the mysql driver');
}
// Use a database driver that reports a fake database version that does
// not meet requirements.
unset($connection_info['default']['pdo']);
unset($connection_info['default']['init_commands']);
$connection_info['default']['driver'] = 'DrivertestMysqlDeprecatedVersion';
$namespace = 'Drupal\\driver_test\\Driver\\Database\\DrivertestMysqlDeprecatedVersion';
$connection_info['default']['namespace'] = $namespace;
$connection_info['default']['autoload'] = Database::findDriverAutoloadDirectory($namespace, \Drupal::root());
$this->settings['databases']['default'] = (object) [
'value' => $connection_info,
'required' => TRUE,
];
}