Update to Drupal 8.1.8. For more information, see https://www.drupal.org/project/drupal/releases/8.1.8
This commit is contained in:
parent
e9f047ccf8
commit
f9f23cdf38
312 changed files with 6751 additions and 1546 deletions
|
|
@ -50,6 +50,11 @@ class ConfigImportForm extends FormBase {
|
|||
* {@inheritdoc}
|
||||
*/
|
||||
public function buildForm(array $form, FormStateInterface $form_state) {
|
||||
$directory = config_get_config_directory(CONFIG_SYNC_DIRECTORY);
|
||||
$directory_is_writable = is_writable($directory);
|
||||
if (!$directory_is_writable) {
|
||||
drupal_set_message($this->t('The directory %directory is not writable.', ['%directory' => $directory]), 'error');
|
||||
}
|
||||
$form['import_tarball'] = array(
|
||||
'#type' => 'file',
|
||||
'#title' => $this->t('Configuration archive'),
|
||||
|
|
@ -59,6 +64,7 @@ class ConfigImportForm extends FormBase {
|
|||
$form['submit'] = array(
|
||||
'#type' => 'submit',
|
||||
'#value' => $this->t('Upload'),
|
||||
'#disabled' => !$directory_is_writable,
|
||||
);
|
||||
return $form;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -45,6 +45,16 @@ class ConfigImportUploadTest extends WebTestBase {
|
|||
$edit = array('files[import_tarball]' => drupal_realpath($text_file->uri));
|
||||
$this->drupalPostForm('admin/config/development/configuration/full/import', $edit, t('Upload'));
|
||||
$this->assertText(t('Could not extract the contents of the tar file'));
|
||||
|
||||
// Make the sync directory read-only.
|
||||
$directory = config_get_config_directory(CONFIG_SYNC_DIRECTORY);
|
||||
\Drupal::service('file_system')->chmod($directory, 0555);
|
||||
$this->drupalGet('admin/config/development/configuration/full/import');
|
||||
$this->assertRaw(t('The directory %directory is not writable.', ['%directory' => $directory]));
|
||||
// Ensure submit button for \Drupal\config\Form\ConfigImportForm is
|
||||
// disabled.
|
||||
$submit_is_disabled = $this->cssSelect('form.config-import-form input[type="submit"]:disabled');
|
||||
$this->assertTrue(count($submit_is_disabled) === 1, 'The submit button is disabled.');
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ class ConfigInstallWebTest extends WebTestBase {
|
|||
protected function setUp() {
|
||||
parent::setUp();
|
||||
|
||||
$this->adminUser = $this->drupalCreateUser(array('administer modules', 'administer themes'));
|
||||
$this->adminUser = $this->drupalCreateUser(array('administer modules', 'administer themes', 'administer site configuration'));
|
||||
|
||||
// Ensure the global variable being asserted by this test does not exist;
|
||||
// a previous test executed in this request/process might have set it.
|
||||
|
|
@ -188,4 +188,22 @@ class ConfigInstallWebTest extends WebTestBase {
|
|||
$this->assertTrue(entity_load('config_test', 'other_module_test_with_dependency'), 'The config_test.dynamic.other_module_test_with_dependency configuration has been created during install.');
|
||||
}
|
||||
|
||||
/**
|
||||
* Tests config_requirements().
|
||||
*/
|
||||
public function testConfigModuleRequirements() {
|
||||
$this->drupalLogin($this->adminUser);
|
||||
$this->drupalPostForm('admin/modules', array('modules[Core][config][enable]' => TRUE), t('Install'));
|
||||
|
||||
$directory = config_get_config_directory(CONFIG_SYNC_DIRECTORY);
|
||||
file_unmanaged_delete_recursive($directory);
|
||||
$this->drupalGet('/admin/reports/status');
|
||||
$this->assertRaw(t('The directory %directory does not exist.', array('%directory' => $directory)));
|
||||
|
||||
file_prepare_directory($directory, FILE_CREATE_DIRECTORY);
|
||||
\Drupal::service('file_system')->chmod($directory, 0555);
|
||||
$this->drupalGet('/admin/reports/status');
|
||||
$this->assertRaw(t('The directory %directory is not writable.', ['%directory' => $directory]));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Reference in a new issue