class Speedos::Page
Public Instance Methods
driver()
click to toggle source
# File lib/speedos/page.rb, line 34 def driver @driver ||= reset_driver end
firefox_profile()
click to toggle source
# File lib/speedos/page.rb, line 26 def firefox_profile profile = Selenium::WebDriver::Firefox::Profile.new profile.proxy = server_proxy.selenium_proxy profile["network.proxy.ssl"] = server_proxy.host profile["network.proxy.ssl_port"] = server_proxy.port profile end
get_har()
click to toggle source
# File lib/speedos/page.rb, line 18 def get_har server_proxy.har end
is(value) { || ... }
click to toggle source
# File lib/speedos/page.rb, line 51 def is value raise "Page name cannot be empty" if value.empty? server_proxy.new_page value yield end
new_har()
click to toggle source
# File lib/speedos/page.rb, line 22 def new_har server_proxy.new_har "", capture_headers: true end
reset_driver()
click to toggle source
# File lib/speedos/page.rb, line 38 def reset_driver Capybara.register_driver :selenium do |app| http_client = Selenium::WebDriver::Remote::Http::Default.new http_client.timeout = 300 Capybara::Selenium::Driver.new(app, :profile => firefox_profile, :http_client => http_client, ) end Capybara.default_driver = :selenium @driver = Capybara::Session.new(:selenium) end
server()
click to toggle source
# File lib/speedos/page.rb, line 3 def server if !@server @server = BrowserMob::Proxy::Server.new(File.join(File.dirname(__FILE__), '..', '..', 'bin', 'browsermob-proxy-2.0-beta-8', 'bin', 'browsermob-proxy')) @server.start end @server end
server_proxy()
click to toggle source
# File lib/speedos/page.rb, line 11 def server_proxy if !@proxy @proxy = server.create_proxy end @proxy end