--- a/testing/web-platform/tests/webdriver/tests/support/fixtures.py
+++ b/testing/web-platform/tests/webdriver/tests/support/fixtures.py
@@ -3,16 +3,17 @@ import os
import urlparse
import re
import webdriver
import mozlog
from tests.support.asserts import assert_error
from tests.support.http_request import HTTPRequest
+from tests.support.wait import wait
from tests.support import merge_dictionaries
default_host = "http://127.0.0.1"
default_port = "4444"
logger = mozlog.get_default_logger()
@@ -241,15 +242,28 @@ def create_dialog(session):
setTimeout(function() {{
window.{0} = window.{1}("{2}");
}}, 0);
""".format(result_var, dialog_type, text)
session.send_session_command("POST",
"execute/async",
{"script": spawn, "args": []})
+ import datetime
+ print("waiting time is {}".format(datetime.datetime.now()))
+ try:
+ wait(session,
+ lambda s:s.send_session_command("GET", "alert/text"),
+ "modal has not appeared", timeout=15)
+ print("waiting time is {}".format(datetime.datetime.now()))
+
+ except:
+ print session.send_session_command("POST",
+ "execute/sync",
+ {"script": "return window.__WEBDRIVER == undefined", "args": []})
+
+
return create_dialog
def clear_all_cookies(session):
"""Removes all cookies associated with the current active document"""
session.transport.send("DELETE", "session/%s/cookie" % session.session_id)
-