Mercurial > hg > isophonics-drupal-site
annotate core/tests/Drupal/FunctionalTests/Installer/InstallerExistingDatabaseSettingsTest.php @ 16:c2387f117808
Routine composer update
author | Chris Cannam |
---|---|
date | Tue, 10 Jul 2018 15:07:59 +0100 |
parents | |
children |
rev | line source |
---|---|
Chris@16 | 1 <?php |
Chris@16 | 2 |
Chris@16 | 3 namespace Drupal\FunctionalTests\Installer; |
Chris@16 | 4 |
Chris@16 | 5 use Drupal\Core\Database\Database; |
Chris@16 | 6 |
Chris@16 | 7 /** |
Chris@16 | 8 * Tests the installer with an existing settings file with database connection |
Chris@16 | 9 * info. |
Chris@16 | 10 * |
Chris@16 | 11 * @group Installer |
Chris@16 | 12 */ |
Chris@16 | 13 class InstallerExistingDatabaseSettingsTest extends InstallerTestBase { |
Chris@16 | 14 |
Chris@16 | 15 /** |
Chris@16 | 16 * {@inheritdoc} |
Chris@16 | 17 */ |
Chris@16 | 18 protected function prepareEnvironment() { |
Chris@16 | 19 parent::prepareEnvironment(); |
Chris@16 | 20 // Pre-configure database credentials in settings.php. |
Chris@16 | 21 $connection_info = Database::getConnectionInfo(); |
Chris@16 | 22 unset($connection_info['default']['pdo']); |
Chris@16 | 23 unset($connection_info['default']['init_commands']); |
Chris@16 | 24 |
Chris@16 | 25 $this->settings['databases']['default'] = (object) [ |
Chris@16 | 26 'value' => $connection_info, |
Chris@16 | 27 'required' => TRUE, |
Chris@16 | 28 ]; |
Chris@16 | 29 } |
Chris@16 | 30 |
Chris@16 | 31 /** |
Chris@16 | 32 * {@inheritdoc} |
Chris@16 | 33 * |
Chris@16 | 34 * @todo The database settings form is not supposed to appear if settings.php |
Chris@16 | 35 * contains a valid database connection already (but e.g. no config |
Chris@16 | 36 * directories yet). |
Chris@16 | 37 */ |
Chris@16 | 38 protected function setUpSettings() { |
Chris@16 | 39 // All database settings should be pre-configured, except password. |
Chris@16 | 40 $values = $this->parameters['forms']['install_settings_form']; |
Chris@16 | 41 $driver = $values['driver']; |
Chris@16 | 42 $edit = []; |
Chris@16 | 43 if (isset($values[$driver]['password']) && $values[$driver]['password'] !== '') { |
Chris@16 | 44 $edit = $this->translatePostValues([ |
Chris@16 | 45 $driver => [ |
Chris@16 | 46 'password' => $values[$driver]['password'], |
Chris@16 | 47 ], |
Chris@16 | 48 ]); |
Chris@16 | 49 } |
Chris@16 | 50 $this->drupalPostForm(NULL, $edit, $this->translations['Save and continue']); |
Chris@16 | 51 } |
Chris@16 | 52 |
Chris@16 | 53 /** |
Chris@16 | 54 * Verifies that installation succeeded. |
Chris@16 | 55 */ |
Chris@16 | 56 public function testInstaller() { |
Chris@16 | 57 $this->assertUrl('user/1'); |
Chris@16 | 58 $this->assertResponse(200); |
Chris@16 | 59 } |
Chris@16 | 60 |
Chris@16 | 61 } |