function AjaxInGroupTest::testSimpleAjaxFormValue
Same name in other branches
- 9 core/tests/Drupal/FunctionalJavascriptTests/Ajax/AjaxInGroupTest.php \Drupal\FunctionalJavascriptTests\Ajax\AjaxInGroupTest::testSimpleAjaxFormValue()
- 10 core/tests/Drupal/FunctionalJavascriptTests/Ajax/AjaxInGroupTest.php \Drupal\FunctionalJavascriptTests\Ajax\AjaxInGroupTest::testSimpleAjaxFormValue()
- 11.x core/tests/Drupal/FunctionalJavascriptTests/Ajax/AjaxInGroupTest.php \Drupal\FunctionalJavascriptTests\Ajax\AjaxInGroupTest::testSimpleAjaxFormValue()
Submits forms with select and checkbox elements via Ajax.
File
-
core/
tests/ Drupal/ FunctionalJavascriptTests/ Ajax/ AjaxInGroupTest.php, line 36
Class
- AjaxInGroupTest
- Tests that form elements in groups work correctly with AJAX.
Namespace
Drupal\FunctionalJavascriptTests\AjaxCode
public function testSimpleAjaxFormValue() {
$this->drupalGet('/ajax_forms_test_get_form');
$assert_session = $this->assertSession();
$assert_session->responseContains('Test group');
$assert_session->responseContains('AJAX checkbox in a group');
$session = $this->getSession();
$checkbox_original = $session->getPage()
->findField('checkbox_in_group');
$this->assertNotNull($checkbox_original, 'The checkbox_in_group is on the page.');
$original_id = $checkbox_original->getAttribute('id');
// Triggers a AJAX request/response.
$checkbox_original->check();
// The response contains a new nested "test group" form element, similar
// to the one already in the DOM except for a change in the form build id.
$checkbox_new = $assert_session->waitForElement('xpath', "//input[@name='checkbox_in_group' and not(@id='{$original_id}')]");
$this->assertNotNull($checkbox_new, 'DOM update: clicking the checkbox refreshed the checkbox_in_group structure');
$assert_session->responseContains('Test group');
$assert_session->responseContains('AJAX checkbox in a group');
$assert_session->responseContains('AJAX checkbox in a nested group');
$assert_session->responseContains('Another AJAX checkbox in a nested group');
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.