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 29 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 33 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 37 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 43 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 54 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