public function GlobalSettingsTest::testSettingSaving in Simplify 8
Check that Simplify module global configuration files saves settings.
File
- src/
Tests/ GlobalSettingsTest.php, line 46
Class
- GlobalSettingsTest
- Test Simplify module global settings.
Namespace
Drupal\simplify\TestsCode
public function testSettingSaving() {
// Open admin UI.
$this
->drupalGet('/admin/config/user-interface/simplify');
/* -------------------------------------------------------.
* 1/ Check only basic options are there but unchecked.
*/
// Admin user option.
$this
->assertField('edit-simplify-admin', 'Admin user option is here.');
$this
->assertNoFieldChecked('edit-simplify-admin', 'Admin user option is unchecked.');
// Node globals.
$this
->assertNoRaw('Nodes', 'Nodes options are not available.');
$this
->assertNoField('edit-simplify-nodes-global-author', 'Author option is not available.');
// User globals.
$this
->assertRaw('Users', 'Users options are not available.');
$this
->assertNoFieldChecked('edit-simplify-users-global-format', 'Text selection option is not available.');
// Taxonomy is not here.
$this
->assertNoRaw('Taxonomy', 'Taxonomy options are not available.');
$this
->assertNoField('edit-simplify-taxonomy-global-format', 'Text selection from taxonomy option is not available.');
// Blocks is not here.
$this
->assertNoRaw('Block', 'Blocks options are now available.');
$this
->assertNoField('edit-simplify-blocks-global-format', 'Text format option is not available.');
/* -------------------------------------------------------.
* 2/ Check optionnal options are added if modules becomes available.
*/
$this->container
->get('module_installer')
->install([
'node',
'book',
'taxonomy',
'block',
'comment',
'menu_ui',
'path',
], TRUE);
$this
->drupalGet('/admin/config/user-interface/simplify');
// Node globals.
$this
->assertRaw('Nodes', 'Nodes options are now available.');
$this
->assertNoFieldChecked('edit-simplify-nodes-global-author', 'Author option is unchecked.');
$this
->assertNoFieldChecked('edit-simplify-nodes-global-format', 'Format option is unchecked.');
$this
->assertNoFieldChecked('edit-simplify-nodes-global-options', 'Publishing option is unchecked.');
$this
->assertNoFieldChecked('edit-simplify-nodes-global-revision-information', 'Revision option is unchecked.');
// User globals.
$this
->assertRaw('Users', 'Users options are now available.');
$this
->assertNoFieldChecked('edit-simplify-users-global-format', 'Text selection option is unchecked.');
$this
->assertNoFieldChecked('edit-simplify-users-global-status', 'Status option is unchecked.');
// Taxonomy is not here.
$this
->assertRaw('Taxonomy', 'Taxonomy options are now available.');
$this
->assertNoFieldChecked('edit-simplify-taxonomies-global-format', 'Taxonomy selection option is unchecked.');
$this
->assertNoFieldChecked('edit-simplify-taxonomies-global-relations', 'Taxonomy relation option is unchecked.');
$this
->assertNoFieldChecked('edit-simplify-taxonomies-global-path', 'Taxonomy url alias option is unchecked.');
// Blocks is not here.
$this
->assertRaw('Block', 'Blocks options are now available.');
$this
->assertNoFieldChecked('edit-simplify-blocks-global-format', 'Text format option is unchecked.');
/* -------------------------------------------------------.
* 3/ Check and validate some options.
*/
$options = [
'simplify_admin' => TRUE,
'simplify_nodes_global[author]' => 'author',
'simplify_nodes_global[comment]' => 'comment',
'simplify_nodes_global[options]' => 'options',
'simplify_taxonomies_global[format]' => 'format',
'simplify_taxonomies_global[path]' => 'path',
];
$this
->drupalPostForm(NULL, $options, $this
->t('Save configuration'));
// User1.
$this
->assertFieldChecked('edit-simplify-admin', 'Admin user option is checked.');
// Nodes.
$this
->assertFieldChecked('edit-simplify-nodes-global-author', 'Node authoring information option is checked.');
$this
->assertNoFieldChecked('edit-simplify-nodes-global-format', 'Node text fomat selection option is not checked.');
$this
->assertFieldChecked('edit-simplify-nodes-global-options', 'Node promoting options option is checked.');
$this
->assertNoFieldChecked('edit-simplify-nodes-global-revision-information', 'Node revision information option is not checked.');
$this
->assertNoFieldChecked('edit-simplify-nodes-global-book', 'Node book outline option is not checked.');
$this
->assertFieldChecked('edit-simplify-nodes-global-comment', 'Node comment settings option is checked.');
$this
->assertNoFieldChecked('edit-simplify-nodes-global-menu', 'Node menu settings option is not checked.');
$this
->assertNoFieldChecked('edit-simplify-nodes-global-path-settings', 'Node URL path settings option is not checked.');
// Vocabularies.
$this
->assertFieldChecked('edit-simplify-taxonomies-global-format', 'Taxonomy text fomat selection option is checked.');
$this
->assertNoFieldChecked('edit-simplify-taxonomies-global-relations', 'Taxonomy relation option is not checked.');
$this
->assertFieldChecked('edit-simplify-taxonomies-global-path', 'Taxonomy url alias option is checked.');
}