blob: 201b7a6a17bd58cf583bd413674d434bcf44af35 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<script src="../resources/js-test.js"></script>
</head>
<body>
<script>
description("Test if sysex permission request is handled.");
shouldBeDefined("testRunner.setMIDISysExPermission");
shouldBeDefined("navigator.requestMIDIAccess");
window.jsTestIsAsync = true;
var finishSuccessfully = function () {
testPassed("all permission request rests pass successfully.");
finishJSTest();
}
var rejectSysEx = function (next) {
testRunner.setMIDISysExPermission(false);
shouldNotThrow("promise = navigator.requestMIDIAccess({sysex: true})");
shouldBeDefined("promise");
shouldBeDefined("promise.then");
promise.then(function(access) {
testFailed("sysex permission request should be rejected.");
finishJSTest();
}, function (error) {
testPassed("sysex permission request is successfully rejected.");
if (next)
next();
else
finishSuccessfully();
});
}
var acceptSysEx = function (next) {
testRunner.setMIDISysExPermission(true);
shouldNotThrow("promise = navigator.requestMIDIAccess({sysex: true})");
shouldBeDefined("promise");
shouldBeDefined("promise.then");
promise.then(function(access) {
testPassed("sysex permission request is successfully accepted.");
if (next)
next();
else
finishSuccessfully();
}, function (error) {
testFailed("sysex permission request should be accepted.");
finishJSTest();
});
}
rejectSysEx(acceptSysEx);
</script>
</body>
</html>