class WebDriver(RemoteWebDriver): """The main interface to use for testing, which represents an idealised web browser.""" def __init__(self, profile=None, timeout=30): """Creates a webdriver instance. Args: profile: a FirefoxProfile object (it can also be a profile name, but the support for that may be removed in future, it is recommended to pass in a FirefoxProfile object) timeout: the amount of time to wait for extension socket """ self.browser = FirefoxLauncher() if type(profile) == str: # This is to be Backward compatible because we used to take a # profile name profile = FirefoxProfile(name=profile) if not profile: profile = FirefoxProfile() self.browser.launch_browser(profile) RemoteWebDriver.__init__(self, command_executor=ExtensionConnection(timeout), browser_name='firefox', platform='ANY', version='', javascript_enabled=True) def _execute(self, command, params=None): try: return RemoteWebDriver.execute(self, command, params) except ErrorInResponseException, e: # Legacy behavior: calling close() multiple times should not raise # an error if command != Command.CLOSE and command != Command.QUIT: raise e except urllib2.URLError, e: # Legacy behavior: calling quit() multiple times should not raise # an error if command != Command.QUIT: raise e
def __init__(self, profile=None, timeout=30): """Creates a webdriver instance. Args: profile: a FirefoxProfile object (it can also be a profile name, but the support for that may be removed in future, it is recommended to pass in a FirefoxProfile object) timeout: the amount of time to wait for extension socket """ self.browser = FirefoxLauncher() if type(profile) == str: # This is to be Backward compatible because we used to take a # profile name profile = FirefoxProfile(name=profile) if not profile: profile = FirefoxProfile() self.browser.launch_browser(profile) RemoteWebDriver.__init__(self, command_executor=ExtensionConnection(timeout), browser_name='firefox', platform='ANY', version='', javascript_enabled=True)