Class: Playwright::Worker

Inherits:
PlaywrightApi show all
Defined in:
lib/playwright_api/worker.rb

Overview

The Worker class represents a WebWorker. worker event is emitted on the page object to signal a worker creation. close event is emitted on the worker object when the worker is gone.

def handle_worker(worker):
    print("worker created: " + worker.url)
    worker.on("close", lambda: print("worker destroyed: " + worker.url))

page.on('worker', handle_worker)

print("current workers:")
for worker in page.workers:
    print("    " + worker.url)

Instance Method Summary collapse

Methods inherited from PlaywrightApi

#initialize, unwrap, wrap

Constructor Details

This class inherits a constructor from Playwright::PlaywrightApi

Instance Method Details

#context=(req) ⇒ Object



52
53
54
# File 'lib/playwright_api/worker.rb', line 52

def context=(req)
  wrap_impl(@impl.context=(unwrap_impl(req)))
end

#evaluate(expression, arg: nil) ⇒ Object

Returns the return value of expression.

If the function passed to the [method: Worker.evaluate] returns a [Promise], then [method: Worker.evaluate] would wait for the promise to resolve and return its value.

If the function passed to the [method: Worker.evaluate] returns a non-[Serializable] value, then [method: Worker.evaluate] returns undefined. Playwright also supports transferring some additional values that are not serializable by JSON: -0, NaN, Infinity, -Infinity.



27
28
29
# File 'lib/playwright_api/worker.rb', line 27

def evaluate(expression, arg: nil)
  wrap_impl(@impl.evaluate(unwrap_impl(expression), arg: unwrap_impl(arg)))
end

#evaluate_handle(expression, arg: nil) ⇒ Object

Returns the return value of expression as a JSHandle.

The only difference between [method: Worker.evaluate] and [method: Worker.evaluateHandle] is that [method: Worker.evaluateHandle] returns JSHandle.

If the function passed to the [method: Worker.evaluateHandle] returns a [Promise], then [method: Worker.evaluateHandle] would wait for the promise to resolve and return its value.



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

def evaluate_handle(expression, arg: nil)
  wrap_impl(@impl.evaluate_handle(unwrap_impl(expression), arg: unwrap_impl(arg)))
end

#off(event, callback) ⇒ Object

-- inherited from EventEmitter --



58
59
60
# File 'lib/playwright_api/worker.rb', line 58

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

#on(event, callback) ⇒ Object

-- inherited from EventEmitter --



70
71
72
# File 'lib/playwright_api/worker.rb', line 70

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

#once(event, callback) ⇒ Object

-- inherited from EventEmitter --



64
65
66
# File 'lib/playwright_api/worker.rb', line 64

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

#page=(req) ⇒ Object



47
48
49
# File 'lib/playwright_api/worker.rb', line 47

def page=(req)
  wrap_impl(@impl.page=(unwrap_impl(req)))
end

#urlObject



42
43
44
# File 'lib/playwright_api/worker.rb', line 42

def url
  wrap_impl(@impl.url)
end