Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Warnings
- This test has a WPT meta file that expects 1 subtest issues.
- This WPT test may be referenced by the following Test IDs:
- /speech-api/SpeechSynthesisUtterance-basics.https.html - WPT Dashboard Interop Dashboard
<!DOCTYPE html>
<title>SpeechSynthesisUtterance basics</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
const DEFAULTS = {
text: '',
lang: '',
voice: null,
volume: 1,
rate: 1,
pitch: 1,
};
for (const prop in DEFAULTS) {
test(function() {
const utt = new SpeechSynthesisUtterance();
assert_equals(utt[prop], DEFAULTS[prop], prop);
}, `new SpeechSynthesisUtterance() default ${prop}`);
}
test(function() {
const utt = new SpeechSynthesisUtterance("hello");
assert_equals(utt.text, 'hello', 'text');
// check that the other properties retain their defaults
for (const prop in DEFAULTS) {
if (prop != 'text') {
assert_equals(utt[prop], DEFAULTS[prop], prop);
}
}
}, 'new SpeechSynthesisUtterance("hello") text and defaults');
test(function() {
const utt = new SpeechSynthesisUtterance(null);
assert_equals(utt.text, 'null');
}, 'new SpeechSynthesisUtterance(null)');
test(function() {
const utt = new SpeechSynthesisUtterance(undefined);
assert_equals(utt.text, '');
}, 'new SpeechSynthesisUtterance(undefined)');
test(function() {
const utt = new SpeechSynthesisUtterance();
utt.text = 'word';
assert_equals(utt.text, 'word');
}, 'SpeechSynthesisUtterance text setter');
</script>