code: def _wait_until_connectable(self, timeout=30):
          
          count = 0
          while not utils.is_connectable(self.profile.port):
              if self.process.poll() is not None:
                  # Browser has exited
                  raise WebDriverException(
                      "The browser appears to have exited "
                      "before we could connect. If you specified a log_file in "
                      "the FirefoxBinary constructor, check it for details.")
              if count >= timeout:
                  self.kill()
                  raise WebDriverException(
                      "Can't load the profile. Possible firefox version mismatch. "
                      "You must use GeckoDriver instead for Firefox 48+. Profile "
                      "Dir: %s If you specified a log_file in the "
                      "FirefoxBinary constructor, check it for details."
                      % (self.profile.path))
              count += 1
              time.sleep(1)
          return True
docs: Blocks until the extension is connectable in the firefox.