mirror of
https://github.com/servo/servo.git
synced 2025-08-14 18:05:36 +01:00
Update web-platform-tests to revision 1aaada4bbc936024441fe7995b77c21a2c554da1
This commit is contained in:
parent
1e1eca07ed
commit
5e9d150c07
140 changed files with 3413 additions and 553 deletions
|
@ -0,0 +1,50 @@
|
|||
<!doctype html>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/resources/testdriver.js"></script>
|
||||
<script src="/resources/testdriver-vendor.js"></script>
|
||||
<body>
|
||||
<script>
|
||||
// This test is tentative because timing isn't defined:
|
||||
// https://github.com/w3c/speech-api/issues/39
|
||||
// https://github.com/w3c/speech-api/issues/40
|
||||
async_test(t => {
|
||||
assert_false(speechSynthesis.paused, 'initial paused state');
|
||||
|
||||
test_driver.bless('speechSynthesis.speak', t.step_func(() => {
|
||||
const sentence = `long sentence which will take at least a few seconds to
|
||||
utter so that it's possible to pause and resume before the end`;
|
||||
const utter = new SpeechSynthesisUtterance(sentence);
|
||||
t.add_cleanup(() => speechSynthesis.pause());
|
||||
utter.onerror = t.unreached_func('error event');
|
||||
|
||||
speechSynthesis.speak(utter);
|
||||
|
||||
assert_false(speechSynthesis.paused, 'paused state after speak()');
|
||||
|
||||
utter.onstart = t.step_func(() => {
|
||||
utter.onstart = null;
|
||||
assert_false(speechSynthesis.paused, 'paused state at start event');
|
||||
|
||||
speechSynthesis.pause();
|
||||
|
||||
// paused state changes async, right before the pause event
|
||||
assert_false(speechSynthesis.paused, 'paused state after pause()');
|
||||
|
||||
utter.onpause = t.step_func(() => {
|
||||
utter.onpause = null;
|
||||
assert_true(speechSynthesis.paused, 'paused state at pause event');
|
||||
|
||||
speechSynthesis.resume();
|
||||
|
||||
// paused state changes async, right before the resume event
|
||||
assert_true(speechSynthesis.paused, 'paused state after resume()');
|
||||
|
||||
utter.onresume = t.step_func_done(() => {
|
||||
assert_false(speechSynthesis.paused, 'paused state at resume event');
|
||||
});
|
||||
});
|
||||
});
|
||||
}));
|
||||
}, 'speechSynthesis.pause() and resume() state and events');
|
||||
</script>
|
|
@ -7,9 +7,12 @@
|
|||
<script>
|
||||
async_test(t => {
|
||||
test_driver.bless('speechSynthesis.speak', t.step_func(() => {
|
||||
const utter = new SpeechSynthesisUtterance('1');
|
||||
utter.onend = t.step_func_done();
|
||||
const utter = new SpeechSynthesisUtterance('test');
|
||||
utter.onerror = t.unreached_func('error event');
|
||||
speechSynthesis.speak(utter);
|
||||
utter.onstart = t.step_func(() => {
|
||||
utter.onend = t.step_func_done();
|
||||
});
|
||||
}));
|
||||
}, 'speechSynthesis.speak requires user activation');
|
||||
}, 'speechSynthesis.speak() fires start and end events');
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue