function ConfigFormTestBase::testConfigForm
Same name in other branches
- 9 core/tests/Drupal/KernelTests/ConfigFormTestBase.php \Drupal\KernelTests\ConfigFormTestBase::testConfigForm()
- 8.9.x core/tests/Drupal/KernelTests/ConfigFormTestBase.php \Drupal\KernelTests\ConfigFormTestBase::testConfigForm()
- 11.x core/tests/Drupal/KernelTests/ConfigFormTestBase.php \Drupal\KernelTests\ConfigFormTestBase::testConfigForm()
Submit the system_config_form ensure the configuration has expected values.
File
-
core/
tests/ Drupal/ KernelTests/ ConfigFormTestBase.php, line 45
Class
- ConfigFormTestBase
- Full generic test suite for any form that data with the configuration system.
Namespace
Drupal\KernelTestsCode
public function testConfigForm() : void {
// Programmatically submit the given values.
$values = [];
foreach ($this->values as $form_key => $data) {
$values[$form_key] = $data['#value'];
}
$form_state = (new FormState())->setValues($values);
\Drupal::formBuilder()->submitForm($this->form, $form_state);
// Check that the form returns an error when expected, and vice versa.
$errors = $form_state->getErrors();
$valid_form = empty($errors);
$values = print_r($values, TRUE);
$errors = $valid_form ? t('None') : implode(' ', $errors);
$this->assertTrue($valid_form, sprintf('Input values: %s<br/>Validation handler errors: %s', $values, $errors));
foreach ($this->values as $data) {
$this->assertEquals($this->config($data['#config_name'])
->get($data['#config_key']), $data['#value']);
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.