Class: Playwright::Worker

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

Overview

The Worker class represents a [WebWorker](developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API). ‘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.

“‘js page.on(’worker’, worker =>

console.log('Worker created: ' + worker.url());
worker.on('close', worker => console.log('Worker destroyed: ' + worker.url()));

);

console.log(‘Current workers:’); for (const worker of page.workers())

console.log('  ' + worker.url());

“‘

Instance Method Summary collapse

Methods inherited from PlaywrightApi

from_channel_owner

Instance Method Details

#evaluate(pageFunction, arg: nil) ⇒ Object

Returns the return value of ‘pageFunction`

If the function passed to the ‘worker.evaluate` returns a [Promise], then `worker.evaluate` would wait for the promise to resolve and return its value.

If the function passed to the ‘worker.evaluate` returns a non- value, then `worker.evaluate` returns `undefined`. DevTools Protocol also supports transferring some additional values that are not serializable by `JSON`: `-0`, `NaN`, `Infinity`, `-Infinity`, and bigint literals.

Raises:

  • (NotImplementedError)


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

def evaluate(pageFunction, arg: nil)
  raise NotImplementedError.new('evaluate is not implemented yet.')
end

#evaluate_handle(pageFunction, arg: nil) ⇒ Object

Returns the return value of ‘pageFunction` as in-page object (JSHandle).

The only difference between ‘worker.evaluate` and `worker.evaluateHandle` is that `worker.evaluateHandle` returns in-page object (JSHandle).

If the function passed to the ‘worker.evaluateHandle` returns a [Promise], then `worker.evaluateHandle` would wait for the promise to resolve and return its value.

Raises:

  • (NotImplementedError)


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

def evaluate_handle(pageFunction, arg: nil)
  raise NotImplementedError.new('evaluate_handle is not implemented yet.')
end

#urlObject

Raises:

  • (NotImplementedError)


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

def url
  raise NotImplementedError.new('url is not implemented yet.')
end