trait OffCanvasTestTrait in Drupal 10
Provides helper methods for interacting with the off-canvas area.
This trait is only useful in functional JavaScript tests which need to use the off-canvas area. Tests using this trait should also list off_canvas_test in their $modules property.
Hierarchy
- trait \Drupal\Tests\system\Traits\OffCanvasTestTrait
2 files declare their use of OffCanvasTestTrait
- LayoutBuilderDisableInteractionsTest.php in core/
modules/ layout_builder/ tests/ src/ FunctionalJavascript/ LayoutBuilderDisableInteractionsTest.php - LayoutBuilderTest.php in core/
modules/ layout_builder/ tests/ src/ FunctionalJavascript/ LayoutBuilderTest.php
File
- core/
modules/ system/ tests/ src/ Traits/ OffCanvasTestTrait.php, line 12
Namespace
Drupal\Tests\system\TraitsView source
trait OffCanvasTestTrait {
/**
* Waits for the off-canvas area to appear, resized and visible.
*/
protected function waitForOffCanvasArea() : void {
// The data-resize-done attribute is added by the off_canvas_test module's
// wrapper around Drupal.offCanvas.resetSize.
$this
->assertNotEmpty($this
->assertSession()
->waitForElementVisible('css', '[data-resize-done="true"]'));
// Remove the data-resize-done attribute so in scenarios where off-canvas
// opens yet another off-canvas, waitForOffCanvasArea() is looking for the
// attribute on a new dialog, not an existing one.
$this
->getSession()
->executeScript('document.querySelector("[data-resize-done]").removeAttribute("data-resize-done")');
}
}