Merge pull request #242 from IAmStoxe/master

Fixed Alert Validation
This commit is contained in:
Somdev Sangwan
2019-05-23 17:30:42 +05:30
committed by GitHub

View File

@@ -2,27 +2,41 @@ import re
import os import os
import sys import sys
from core.log import setup_logger
from core.utils import writer from core.utils import writer
from selenium import webdriver from selenium import webdriver
from selenium.webdriver.firefox.options import Options from selenium.webdriver.firefox.options import Options
from selenium.common.exceptions import UnexpectedAlertPresentException from selenium.common.exceptions import UnexpectedAlertPresentException, NoAlertPresentException
from selenium.webdriver.support import expected_conditions as EC
def init_browser(): def init_browser():
global browser global browser
options = Options() options = Options()
options.add_argument('--headless') # options.add_argument('--headless')
browser = webdriver.Firefox(options=options) browser = webdriver.Firefox(options=options)
def kill_browser(): def kill_browser():
global browser
if browser is not None: if browser is not None:
browser.quit() browser.quit()
def is_alert_present():
global browser
try:
print(browser.switch_to.alert.text)
browser.switch_to.alert.dismiss()
return True
except NoAlertPresentException:
return False
except UnexpectedAlertPresentException:
return True
except Exception as e:
print(e)
def browser_engine(response): def browser_engine(response):
global browser
_write_response_to_file(response) _write_response_to_file(response)
navigate_to('file://' + sys.path[0] + '/test.html') navigate_to('file://' + sys.path[0] + '/test.html')
os.remove('test.html') os.remove('test.html')
@@ -31,13 +45,15 @@ def browser_engine(response):
try: try:
actions.move_by_offset(2, 2) actions.move_by_offset(2, 2)
actions.move_by_offset(-2, -2)
actions.perform() actions.perform()
if EC.alert_is_present(): if is_alert_present():
popUp = True popUp = True
except UnexpectedAlertPresentException: except UnexpectedAlertPresentException:
popUp = True popUp = True
except Exception as e:
print(e)
return popUp return popUp
@@ -48,9 +64,7 @@ def _write_response_to_file(response):
def navigate_to(uri): def navigate_to(uri):
global browser
if browser is None: if browser is None:
init_browser() init_browser()
browser.get(uri) browser.get(uri)