How to use update_user_prefs_in method of Selenium.WebDriver.Firefox Package

Best Selenium code snippet using Selenium.WebDriver.Firefox.update_user_prefs_in


Source:profile.rb Github


Full Screen

...62 FileReaper << profile_dir63 install_extensions(profile_dir)64 delete_lock_files(profile_dir)65 delete_extensions_cache(profile_dir)66 update_user_prefs_in(profile_dir)67 profile_dir68 end69 #70 # Set a preference for this particular profile.71 #72 # @see # @see #75 def []=(key, value)76 unless VALID_PREFERENCE_TYPES.any? { |e| value.kind_of? e }77 raise TypeError, "expected one of #{VALID_PREFERENCE_TYPES.inspect}, got #{value.inspect}:#{value.class}"78 end79 if value.kind_of?(String) && Util.stringified?(value)80 raise ArgumentError, "preference values must be plain strings: #{key.inspect} => #{value.inspect}"81 end82 @additional_prefs[key.to_s] = value83 end84 def port=(port)85 self[WEBDRIVER_PREFS[:port]] = port86 end87 def log_file=(file)88 @log_file = file89 self[WEBDRIVER_PREFS[:log_file]] = file90 end91 def add_webdriver_extension92 unless @extensions.has_key?(:webdriver)93 add_extension(WEBDRIVER_EXTENSION_PATH, :webdriver)94 end95 end96 #97 # Add the extension (directory, .zip or .xpi) at the given path to the profile.98 #99 def add_extension(path, name = extension_name_for(path))100 @extensions[name] = end102 def native_events?103 @native_events == true104 end105 def load_no_focus_lib?106 @load_no_focus_lib == true107 end108 def secure_ssl?109 @secure_ssl == true110 end111 def assume_untrusted_certificate_issuer?112 @untrusted_issuer == true113 end114 def assume_untrusted_certificate_issuer=(bool)115 @untrusted_issuer = bool116 end117 def proxy=(proxy)118 unless proxy.kind_of? Proxy119 raise TypeError, "expected #{}, got #{proxy.inspect}:#{proxy.class}"120 end121 case proxy.type122 when :manual123 self['network.proxy.type'] = 1124 set_manual_proxy_preference "ftp", proxy.ftp125 set_manual_proxy_preference "http", proxy.http126 set_manual_proxy_preference "ssl", proxy.ssl127 if proxy.no_proxy128 self["network.proxy.no_proxies_on"] = proxy.no_proxy129 else130 self["network.proxy.no_proxies_on"] = ""131 end132 when :pac133 self['network.proxy.type'] = 2134 self['network.proxy.autoconfig_url'] = proxy.pac135 when :auto_detect136 self['network.proxy.type'] = 4137 else138 raise ArgumentError, "unsupported proxy type #{proxy.type}"139 end140 proxy141 end142 private143 def set_manual_proxy_preference(key, value)144 return unless value145 host, port = value.to_s.split(":", 2)146 self["network.proxy.#{key}"] = host147 self["network.proxy.#{key}_port"] = Integer(port) if port148 end149 def install_extensions(directory)150 destination = File.join(directory, "extensions")151 @extensions.each do |name, extension|152 p :extension => name if $DEBUG153 extension.write_to(destination)154 end155 end156 def read_model_prefs157 return {} unless @model158 read_user_prefs(File.join(@model, 'user.js'))159 end160 def delete_extensions_cache(directory)161 FileUtils.rm_f File.join(directory, "extensions.cache")162 end163 def delete_lock_files(directory)164 %w[.parentlock parent.lock].each do |name|165 FileUtils.rm_f File.join(directory, name)166 end167 end168 def extension_name_for(path)169 File.basename(path, File.extname(path))170 end171 def update_user_prefs_in(directory)172 path = File.join(directory, 'user.js')173 prefs = read_user_prefs(path)174 prefs.merge! self.class.default_preferences.fetch 'mutable'175 prefs.merge! @additional_prefs176 prefs.merge! self.class.default_preferences.fetch 'frozen'177 prefs[WEBDRIVER_PREFS[:untrusted_certs]] = !secure_ssl?178 prefs[WEBDRIVER_PREFS[:native_events]] = native_events?179 prefs[WEBDRIVER_PREFS[:untrusted_issuer]] = assume_untrusted_certificate_issuer?180 # If the user sets the home page, we should also start up there181 prefs["startup.homepage_welcome_url"] = prefs["browser.startup.homepage"]182 write_prefs prefs, path183 end184 def read_user_prefs(path)185 prefs = {}...

Full Screen

Full Screen


Using AI Code Generation


Full Screen

1driver.find_element(:link_text, "Download").click2driver.find_element(:link_text, "Download").click3driver.find_element(:link_text, "Download").click

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:


You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?