Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(94)

Unified Diff: LayoutTests/webmidi/requestmidiaccess-in-detached-frame.html

Issue 77773003: Make WebMIDI use blink Promise. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: LayoutTests/webmidi/requestmidiaccess-in-detached-frame.html
diff --git a/LayoutTests/webmidi/requestmidiaccess-fail.html b/LayoutTests/webmidi/requestmidiaccess-in-detached-frame.html
similarity index 50%
copy from LayoutTests/webmidi/requestmidiaccess-fail.html
copy to LayoutTests/webmidi/requestmidiaccess-in-detached-frame.html
index 1baaedc91786a059725b7dedbe3d573359556086..47273b629dac451a1062547b7038f139afb51278 100644
--- a/LayoutTests/webmidi/requestmidiaccess-fail.html
+++ b/LayoutTests/webmidi/requestmidiaccess-in-detached-frame.html
@@ -5,25 +5,27 @@
</head>
<body>
<script>
-description("Tests navigator.requestMIDIAccess failure.");
+description("Tests navigator.requestMIDIAccess fails in a detached frame.");
-function successCallback(access) {
+window.jsTestIsAsync = true;
+iframe = document.createElement('iframe');
+document.body.appendChild(iframe);
+contentNavigator = iframe.contentWindow.navigator;
+document.body.removeChild(iframe);
+
+// set testRunner configuration so that requestMIDIAccess returns "InvalidStateError".
+contentNavigator.requestMIDIAccess().then(function() {
testFailed("requestMIDIAccess() does not fail unexpectedly.");
finishJSTest();
-}
-
-function errorCallback(error) {
+}, function() {
errorName = error.name;
shouldBe("errorName", "'InvalidStateError'");
testPassed("requestMIDIAccess() fail as expected.");
finishJSTest();
-}
-
-window.jsTestIsAsync = true;
-
-// set testRunner configuration so that requestMIDIAccess returns "InvalidStateError".
-testRunner.setMIDIAccessorResult(false);
-shouldNotThrow("navigator.requestMIDIAccess().then(successCallback, errorCallback)");
+});
+// FIXME: errorCallback should be called, but due to the Blink Promise impelementation the
+// returned Promise never be resolved nor rejected.
+finishJSTest();
</script>
</body>

Powered by Google App Engine
This is Rietveld 408576698