function AdminUiTest::getAjaxResponseCount
Gets the Drupal AJAX response count observed on this page.
Return value
int The number of completed XHR requests observed since the page was loaded.
1 call to AdminUiTest::getAjaxResponseCount()
- AdminUiTest::testSettingsOnlyFireAjaxWithCkeditor5 in core/
modules/ ckeditor5/ tests/ src/ FunctionalJavascript/ AdminUiTest.php - Confirm settings only trigger AJAX when select value is CKEditor 5.
File
-
core/
modules/ ckeditor5/ tests/ src/ FunctionalJavascript/ AdminUiTest.php, line 92
Class
- AdminUiTest
- Tests for CKEditor 5 in the admin UI.
Namespace
Drupal\Tests\ckeditor5\FunctionalJavascriptCode
protected function getAjaxResponseCount() : int {
// Half a second should suffice for any of the test's DOM interactions to
// have triggered an AJAX request, if any.
try {
$this->assertSession()
->assertWaitOnAjaxRequest(500);
} catch (\RuntimeException $e) {
throw new \LogicException('An AJAX request was still being processed, this suggests a assertWaitOnAjaxRequest() call is missing.');
}
// Now that there definitely is no more AJAX request in progress, count the
// number of AJAX responses.
$javascript = <<<JS
(function(){
return window.performance
.getEntries()
.filter(entry => entry.initiatorType === 'xmlhttprequest' && entry.name.indexOf('_wrapper_format=drupal_ajax') !== -1)
.length
})()
JS;
return $this->getSession()
->evaluateScript($javascript);
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.