Class: Playwright::Dialog

Inherits:
PlaywrightApi show all
Defined in:
lib/playwright_api/dialog.rb,
sig/playwright.rbs

Overview

Dialog objects are dispatched by page via the [event: Page.dialog] event.

An example of using Dialog class:

from playwright.sync_api import sync_playwright, Playwright

def handle_dialog(dialog):
    print(dialog.message)
    dialog.dismiss()

def run(playwright: Playwright):
    chromium = playwright.chromium
    browser = chromium.launch()
    page = browser.new_page()
    page.on("dialog", handle_dialog)
    page.evaluate("alert('1')")
    browser.close()

with sync_playwright() as playwright:
    run(playwright)

NOTE: Dialogs are dismissed automatically, unless there is a [event: Page.dialog] listener. When listener is present, it must either [method: Dialog.accept] or [method: Dialog.dismiss] the dialog - otherwise the page will freeze waiting for the dialog, and actions like click will never finish.

Instance Method Summary collapse

Methods inherited from PlaywrightApi

#initialize, unwrap, wrap

Constructor Details

This class inherits a constructor from Playwright::PlaywrightApi

Instance Method Details

#accept(promptText: nil) ⇒ void

This method returns an undefined value.

Returns when the dialog has been accepted.

Parameters:

  • promptText: (String) (defaults to: nil)


32
33
34
# File 'lib/playwright_api/dialog.rb', line 32

def accept(promptText: nil)
  wrap_impl(@impl.accept(promptText: unwrap_impl(promptText)))
end

#accept_async(promptText: nil) ⇒ Object



67
68
69
# File 'lib/playwright_api/dialog.rb', line 67

def accept_async(promptText: nil)
  wrap_impl(@impl.accept_async(promptText: unwrap_impl(promptText)))
end

#default_valueString

If dialog is prompt, returns default prompt value. Otherwise, returns empty string.

Returns:

  • (String)


38
39
40
# File 'lib/playwright_api/dialog.rb', line 38

def default_value
  wrap_impl(@impl.default_value)
end

#dismissvoid

This method returns an undefined value.

Returns when the dialog has been dismissed.



44
45
46
# File 'lib/playwright_api/dialog.rb', line 44

def dismiss
  wrap_impl(@impl.dismiss)
end

#messageString

A message displayed in the dialog.

Returns:

  • (String)


50
51
52
# File 'lib/playwright_api/dialog.rb', line 50

def message
  wrap_impl(@impl.message)
end

#off(event, callback) ⇒ Object

-- inherited from EventEmitter --



73
74
75
# File 'lib/playwright_api/dialog.rb', line 73

def off(event, callback)
  event_emitter_proxy.off(event, callback)
end

#on(event, callback) ⇒ Object

-- inherited from EventEmitter --



85
86
87
# File 'lib/playwright_api/dialog.rb', line 85

def on(event, callback)
  event_emitter_proxy.on(event, callback)
end

#once(event, callback) ⇒ Object

-- inherited from EventEmitter --



79
80
81
# File 'lib/playwright_api/dialog.rb', line 79

def once(event, callback)
  event_emitter_proxy.once(event, callback)
end

#pagenil, Page

The page that initiated this dialog, if available.

Returns:



56
57
58
# File 'lib/playwright_api/dialog.rb', line 56

def page
  wrap_impl(@impl.page)
end

#typeString

Returns dialog's type, can be one of alert, beforeunload, confirm or prompt.

Returns:

  • (String)


62
63
64
# File 'lib/playwright_api/dialog.rb', line 62

def type
  wrap_impl(@impl.type)
end