Index: content/test/data/media/getusermedia.html |
diff --git a/content/test/data/media/getusermedia.html b/content/test/data/media/getusermedia.html |
index f194e1a57d98329a45543d087e5c669345e7254b..0197cd6d55fa4224be224e825e4bb72afcd35f0d 100644 |
--- a/content/test/data/media/getusermedia.html |
+++ b/content/test/data/media/getusermedia.html |
@@ -281,6 +281,46 @@ |
} |
} |
+ function getUserMediaInIframeAndCloseInSuccessCb(constraints) { |
+ var iframe = document.createElement('iframe'); |
+ iframe.onload = onIframeLoaded; |
+ document.body.appendChild(iframe); |
+ iframe.src = window.location; |
+ |
+ function onIframeLoaded() { |
+ var iframe = window.document.querySelector('iframe'); |
+ iframe.contentWindow.navigator.webkitGetUserMedia( |
+ constraints, |
+ function (stream) { |
+ // Remove the iframe from the parent within the callback scope. |
+ window.parent.document.querySelector('iframe').remove(); |
+ window.parent.reportTestSuccess(); |
+ }, |
+ window.parent.failedCallback); |
+ } |
+ } |
+ |
+ function getUserMediaInIframeAndCloseInFailureCb(constraints) { |
+ var iframe = document.createElement('iframe'); |
+ iframe.onload = onIframeLoaded; |
+ document.body.appendChild(iframe); |
+ iframe.src = window.location; |
+ |
+ function onIframeLoaded() { |
+ var iframe = window.document.querySelector('iframe'); |
+ iframe.contentWindow.navigator.webkitGetUserMedia( |
+ constraints, |
+ function (stream) { |
+ window.parent.failTest('GetUserMedia call succeeded unexpectedly.'); |
+ }, |
+ function (error) { |
+ // Remove the iframe from the parent within the callback scope. |
+ window.parent.document.querySelector('iframe').remove(); |
+ window.parent.reportTestSuccess(); |
+ }); |
+ } |
+ } |
+ |
function failedCallback(error) { |
failTest('GetUserMedia call failed with code ' + error.code); |
} |