Skip to main content
Version: 1.x

Class: OverlayHandler

Registers and tracks SAP overlay interruption handlers for one page.

Remarks​

Handlers registered through page.addLocatorHandler() live for the lifetime of the page, so a handler must be disposed at the end of the test that registered it. dispose does that.

Capability​

ui5Overlays.register

Example​

const overlays = new OverlayHandler({ page });
await overlays.register({ name: 'tour', selector: '.tourPopover' });
// ... test body ...
await overlays.dispose();

Constructors​

Constructor​

new OverlayHandler(options): OverlayHandler

Parameters​

options​

OverlayHandlerOptions

Returns​

OverlayHandler

Accessors​

detections​

Get Signature​

get detections(): readonly OverlayDetection[]

Every overlay interruption recorded so far, in the order they occurred.

Example​
if (overlays.detections.length > 0) {
logger.warn(`${overlays.detections.length} overlays interrupted this test`);
}
Returns​

readonly OverlayDetection[]

Methods​

dispose()​

dispose(): Promise<void>

Unregisters every rule this handler registered.

Returns​

Promise<void>

Remarks​

Safe to call on a closed page — removal failures are logged and swallowed, because teardown must never mask the test's own result.

Capability​

ui5Overlays.dispose

Example​

await overlays.dispose();

register()​

register(rule): Promise<void>

Registers one overlay rule with Playwright.

Parameters​

rule​

OverlayRule

The overlay rule to register.

Returns​

Promise<void>

Throws​

PramanError with ERR_CONFIG_INVALID when the rule name is already registered.

Capability​

ui5Overlays.register

Example​

await overlays.register({ name: 'cookie-consent', selector: '#cookieBar' });

registerAll()​

registerAll(rules): Promise<void>

Registers several overlay rules.

Parameters​

rules​

readonly OverlayRule[]

The overlay rules to register.

Returns​

Promise<void>

Capability​

ui5Overlays.registerAll

Example​

await overlays.registerAll(BUILT_IN_OVERLAY_RULES);