Sha256: b29980c439ed51ba6a5d129d4989c070fa447ad907d3f602a70f7100582c58a5
Contents?: true
Size: 1.1 KB
Versions: 41
Compression:
Stored size: 1.1 KB
Contents
module Perus::Pinger class ChromeExecute < ChromeCommand description 'Executes JavaScript in the top Chrome window. The result of the execution is stored and sent to the server.' option :js def run result = false command = '{"id":1,"method":"Runtime.evaluate","params":{"expression":"' + options.js.gsub('"', '\\"') + '","objectGroup":"perus","returnByValue":true}}' execute([command]) do |message| if message.include?('id') && message['id'] == 1 if message.include?('result') result = message['result'].to_s elsif message.include?('error') result = message['error'].to_s else result = false end # clean up any memory used by the executed command send_command('{"id":2,"method":"Runtime.releaseObjectGroup","params":{"objectGroup":"perus"}}') end end result end end end
Version data entries
41 entries across 41 versions & 1 rubygems