module Selenium::WebDriver::ProfileHelper
@api private
Common
methods for Chrome::Profile
and Firefox::Profile
Includers must implement layout_on_disk
Public Class Methods
included(base)
click to toggle source
# File lib/selenium/webdriver/common/profile_helper.rb, line 30 def self.included(base) base.extend ClassMethods end
Public Instance Methods
as_json(*)
click to toggle source
# File lib/selenium/webdriver/common/profile_helper.rb, line 34 def as_json(*) {"zip" => Zipper.zip(layout_on_disk)} end
to_json(*)
click to toggle source
# File lib/selenium/webdriver/common/profile_helper.rb, line 38 def to_json(*) JSON.generate as_json end
Private Instance Methods
create_tmp_copy(directory)
click to toggle source
# File lib/selenium/webdriver/common/profile_helper.rb, line 44 def create_tmp_copy(directory) tmp_directory = Dir.mktmpdir('webdriver-rb-profilecopy') # TODO: must be a better way.. FileUtils.rm_rf tmp_directory FileUtils.mkdir_p File.dirname(tmp_directory), mode: 0o700 FileUtils.cp_r directory, tmp_directory tmp_directory end
verify_model(model)
click to toggle source
# File lib/selenium/webdriver/common/profile_helper.rb, line 55 def verify_model(model) return unless model raise Errno::ENOENT, model unless File.exist?(model) raise Errno::ENOTDIR, model unless File.directory?(model) model end