Coverage for selenible/drivers/firefox.py: 24%
21 statements
« prev ^ index » next coverage.py v7.16.0, created at 2026-09-05 14:24 +0000
« prev ^ index » next coverage.py v7.16.0, created at 2026-09-05 14:24 +0000
1from selenium import webdriver
2from selenium.webdriver.firefox.options import Options
4from . import Base
7class Firefox(Base):
8 def get_options(self):
9 return Options()
11 def boot_driver(self):
12 return webdriver.Firefox(**self.browser_args)
14 def do_install_addon(self, params):
15 """
16 - name: install local addons
17 install_addon:
18 install: /path/to/addon.xpi
19 register: addon_id
20 - name: uninstall addon
21 install_addon:
22 uninstall: "{{addon_id}}"
23 """
24 to_uninstall = params.get("uninstall", [])
25 if isinstance(to_uninstall, (tuple, list)):
26 for i in to_uninstall:
27 self.driver.uninstall_addon(i)
28 else:
29 self.driver.uninstall_addon(to_uninstall)
30 to_install = params.get("install", [])
31 if isinstance(to_install, (tuple, list)):
32 res = []
33 for i in to_install:
34 res.append(self.driver.install_addon(i))
35 return res
36 else:
37 return self.driver.install_addon(to_install)