Module: Dommy::Js::Quickjs::CapybaraDriver

Defined in:
lib/dommy/js/quickjs/capybara.rb

Overview

Opt-in Capybara integration. Requiring this file enables JS execution on Capybara::Dommy::Driver (via install_capybara! below), so execute_script / evaluate_script run against the current Dommy document through a QuickJS Runtime. Without this require, capybara-dommy stays JS-free (its default).

Instance Method Summary collapse

Instance Method Details

#evaluate_async_script(script, *args) ⇒ Object

No real async loop; evaluate synchronously. Sufficient for scripts that resolve immediately (the common Capybara case).



25
26
27
# File 'lib/dommy/js/quickjs/capybara.rb', line 25

def evaluate_async_script(script, *args)
  evaluate_script(script, *args)
end

#evaluate_script(script, *_args) ⇒ Object



19
20
21
# File 'lib/dommy/js/quickjs/capybara.rb', line 19

def evaluate_script(script, *_args)
  decode_for_capybara(dommy_js_runtime.evaluate(script))
end

#execute_script(script, *_args) ⇒ Object



14
15
16
17
# File 'lib/dommy/js/quickjs/capybara.rb', line 14

def execute_script(script, *_args)
  dommy_js_runtime.execute(script)
  nil
end