mirror of
https://github.com/servo/servo.git
synced 2025-08-11 00:15:32 +01:00
Update web-platform-tests to revision 0d318188757a9c996e20b82db201fd04de5aa255
This commit is contained in:
parent
b2a5225831
commit
1a81b18b9f
12321 changed files with 544385 additions and 6 deletions
0
tests/wpt/web-platform-tests/webdriver/modal/__init__.py
Normal file
0
tests/wpt/web-platform-tests/webdriver/modal/__init__.py
Normal file
|
@ -0,0 +1,25 @@
|
|||
import os
|
||||
import sys
|
||||
import unittest
|
||||
|
||||
sys.path.insert(1, os.path.abspath(os.path.join(__file__, "../..")))
|
||||
import base_test
|
||||
from webdriver import exceptions, wait
|
||||
|
||||
|
||||
class AlertsQuitTest(base_test.WebDriverBaseTest):
|
||||
def setUp(self):
|
||||
self.wait = wait.WebDriverWait(self.driver, 5, ignored_exceptions=[exceptions.NoSuchAlertException])
|
||||
self.driver.get(self.webserver.where_is('modal/res/alerts.html'))
|
||||
|
||||
def test_can_quit_when_an_alert_is_present(self):
|
||||
self.driver.find_element_by_css('#alert').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
self.driver.quit()
|
||||
with self.assertRaises(Exception):
|
||||
alert.accept()
|
||||
AlertsQuitTest.driver = None
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
147
tests/wpt/web-platform-tests/webdriver/modal/alerts_test.py
Normal file
147
tests/wpt/web-platform-tests/webdriver/modal/alerts_test.py
Normal file
|
@ -0,0 +1,147 @@
|
|||
import os
|
||||
import sys
|
||||
import unittest
|
||||
|
||||
sys.path.insert(1, os.path.abspath(os.path.join(__file__, "../..")))
|
||||
import base_test
|
||||
from webdriver import exceptions, wait
|
||||
|
||||
|
||||
class AlertsTest(base_test.WebDriverBaseTest):
|
||||
def setUp(self):
|
||||
self.wait = wait.WebDriverWait(self.driver, 5, ignored_exceptions = [exceptions.NoSuchAlertException])
|
||||
self.driver.get(self.webserver.where_is('modal/res/alerts.html'))
|
||||
|
||||
def tearDown(self):
|
||||
try:
|
||||
self.driver.switch_to_alert().dismiss()
|
||||
except exceptions.NoSuchAlertException:
|
||||
pass
|
||||
|
||||
# Alerts
|
||||
def test_should_allow_user_to_accept_an_alert(self):
|
||||
self.driver.find_element_by_css('#alert').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.accept()
|
||||
self.driver.get_current_url()
|
||||
|
||||
def test_should_allow_user_to_accept_an_alert_with_no_text(self):
|
||||
self.driver.find_element_by_css('#empty-alert').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.accept()
|
||||
self.driver.get_current_url()
|
||||
|
||||
def test_should_allow_user_to_dismiss_an_alert(self):
|
||||
self.driver.find_element_by_css('#alert').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.dismiss()
|
||||
self.driver.get_current_url()
|
||||
|
||||
def test_should_allow_user_to_get_text_of_an_alert(self):
|
||||
self.driver.find_element_by_css('#alert').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
value = alert.get_text()
|
||||
alert.accept()
|
||||
self.assertEquals('cheese', value)
|
||||
|
||||
def test_setting_the_value_of_an_alert_throws(self):
|
||||
self.driver.find_element_by_css('#alert').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
with self.assertRaises(exceptions.ElementNotVisibleException):
|
||||
alert.send_keys('cheese')
|
||||
alert.accept()
|
||||
|
||||
def test_alert_should_not_allow_additional_commands_if_dismissed(self):
|
||||
self.driver.find_element_by_css('#alert').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.accept()
|
||||
with self.assertRaises(exceptions.NoSuchAlertException):
|
||||
alert.get_text()
|
||||
|
||||
# Prompts
|
||||
def test_should_allow_user_to_accept_a_prompt(self):
|
||||
self.driver.find_element_by_css('#prompt').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.accept()
|
||||
self.wait.until(lambda x: x.find_element_by_css('#text').text == '')
|
||||
|
||||
def test_should_allow_user_to_dismiss_a_prompt(self):
|
||||
self.driver.find_element_by_css('#prompt').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.dismiss()
|
||||
self.wait.until(lambda x: x.find_element_by_css('#text').text == 'null')
|
||||
|
||||
def test_should_allow_user_to_set_the_value_of_a_prompt(self):
|
||||
self.driver.find_element_by_css('#prompt').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.send_keys('cheese')
|
||||
alert.accept()
|
||||
self.wait.until(lambda x: x.find_element_by_css('#text').text == 'cheese')
|
||||
|
||||
def test_should_allow_user_to_get_text_of_a_prompt(self):
|
||||
self.driver.find_element_by_css('#prompt').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
value = alert.get_text()
|
||||
alert.accept()
|
||||
self.assertEquals('Enter something', value)
|
||||
|
||||
def test_prompt_should_not_allow_additional_commands_if_dismissed(self):
|
||||
self.driver.find_element_by_css('#prompt').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.accept()
|
||||
with self.assertRaises(exceptions.NoSuchAlertException):
|
||||
alert.get_text()
|
||||
|
||||
def test_prompt_should_use_default_value_if_no_keys_sent(self):
|
||||
self.driver.find_element_by_css('#prompt-with-default').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.accept()
|
||||
self.wait.until(lambda x: x.find_element_by_css('#text').text == 'This is a default value')
|
||||
|
||||
def test_prompt_should_have_null_value_if_dismissed(self):
|
||||
self.driver.find_element_by_css('#prompt-with-default').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.dismiss()
|
||||
self.wait.until(lambda x: x.find_element_by_css('#text').text == 'null')
|
||||
|
||||
# Confirmations
|
||||
def test_should_allow_user_to_accept_a_confirm(self):
|
||||
self.driver.find_element_by_css('#confirm').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.accept()
|
||||
self.wait.until(lambda x: x.find_element_by_css('#text').text == 'true')
|
||||
|
||||
def test_should_allow_user_to_dismiss_a_confirm(self):
|
||||
self.driver.find_element_by_css('#confirm').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.dismiss()
|
||||
self.wait.until(lambda x: x.find_element_by_css('#text').text == 'false')
|
||||
|
||||
def test_setting_the_value_of_a_confirm_throws(self):
|
||||
self.driver.find_element_by_css('#confirm').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
with self.assertRaises(exceptions.ElementNotVisibleException):
|
||||
alert.send_keys('cheese')
|
||||
alert.accept()
|
||||
|
||||
def test_should_allow_user_to_get_text_of_a_confirm(self):
|
||||
self.driver.find_element_by_css('#confirm').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
value = alert.get_text()
|
||||
alert.accept()
|
||||
self.assertEquals('cheese', value)
|
||||
|
||||
def test_confirm_should_not_allow_additional_commands_if_dismissed(self):
|
||||
self.driver.find_element_by_css('#confirm').click()
|
||||
alert = self.wait.until(lambda x: x.switch_to_alert())
|
||||
alert.accept()
|
||||
with self.assertRaises(exceptions.NoSuchAlertException):
|
||||
alert.get_text()
|
||||
|
||||
def test_switch_to_missing_alert_fails(self):
|
||||
with self.assertRaises(exceptions.NoSuchAlertException):
|
||||
self.driver.switch_to_alert()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
53
tests/wpt/web-platform-tests/webdriver/modal/res/alerts.html
Normal file
53
tests/wpt/web-platform-tests/webdriver/modal/res/alerts.html
Normal file
|
@ -0,0 +1,53 @@
|
|||
<html>
|
||||
<!-- Padding to account for small screens of mobile devices -->
|
||||
<style>
|
||||
p {margin-top:48px;}
|
||||
</style>
|
||||
<head>
|
||||
<title>Testing Alerts</title>
|
||||
|
||||
<script type="text/javascript">
|
||||
function setInnerText(id, value) {
|
||||
document.getElementById(id).innerHTML = '<p>' + value + '</p>';
|
||||
}
|
||||
|
||||
function displayPrompt() {
|
||||
setInnerText('text', prompt('Enter something'));
|
||||
}
|
||||
|
||||
function displayPromptWithDefault() {
|
||||
setInnerText('text', prompt('Enter something', 'This is a default value'));
|
||||
}
|
||||
|
||||
function displayTwoPrompts() {
|
||||
setInnerText('text1', prompt('First'));
|
||||
setInnerText('text2', prompt('Second'));
|
||||
}
|
||||
|
||||
function displayConfirm() {
|
||||
setInnerText('text', confirm('cheese'));
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h1>Testing Alerts and Stuff</h1>
|
||||
|
||||
<p>This tests alerts: <a href="#" id="alert" onclick="alert('cheese');">click me</a></p>
|
||||
|
||||
<p>This tests alerts: <a href="#" id="empty-alert" onclick="alert('');">click me</a></p>
|
||||
|
||||
<p>Let's make the <a href="#" id="prompt" onclick="displayPrompt();">prompt happen</a></p>
|
||||
|
||||
<p>Let's make the <a href="#" id="prompt-with-default" onclick="displayPromptWithDefault();">prompt with default happen</a></p>
|
||||
|
||||
<p>Let's make TWO <a href="#" id="double-prompt" onclick="displayTwoPrompts();">prompts happen</a></p>
|
||||
|
||||
<p>This tests confirm: <a href="#" id="confirm" onclick="displayConfirm();">test confirm</a></p>
|
||||
|
||||
<div id="text"></div>
|
||||
<div id="text1"></div>
|
||||
<div id="text2"></div>
|
||||
|
||||
</body>
|
||||
</html>
|
Loading…
Add table
Add a link
Reference in a new issue