<!DOCTYPE html>
<title>TextTrackCue exceptions are properly messaged to developers</title>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script>
function getExceptionMsg(property) {
return "Failed to set the '" + property
+ "' property on 'TextTrackCue': The provided double value is non-finite.";
}
var cue = new VTTCue(0, 0, "Test.");
function testProperty(property) {
var expected_exception_msg = getExceptionMsg(property);
test(function() {
var testValues = [Number.NaN, Number.POSITIVE_INFINITY, Number.NEGATIVE_INFINITY];
testValues.forEach(function(value) {
try {
cue[property] = value;
assert_unreached("should throw");
} catch (e) {
assert_equals(e.name, "TypeError");
assert_equals(e.message, expected_exception_msg);
}
});
}, expected_exception_msg);
}
testProperty("startTime");
testProperty("endTime");
</script>