| <!DOCTYPE html> |
| <html> |
| <body> |
| <script src="../resources/testharness.js"></script> |
| <script src="../resources/testharnessreport.js"></script> |
| |
| <iframe id="allowedIframe" sandbox="allow-scripts allow-same-origin allow-orientation-lock" style="display:none"> |
| </iframe> |
| |
| <iframe id="disallowedIframe" sandbox="allow-scripts allow-same-origin" style="display:none"> |
| </iframe> |
| <script> |
| var testNotAllowed = async_test("Test without 'allow-orientation-lock' sandboxing directive"); |
| var testAllowed = async_test("Test with 'allow-orientation-lock' sandboxing directive"); |
| |
| function runTestAllowed() { |
| window.onmessage = testAllowed.step_func(function (ev) { |
| // FIXME: re-enable when mock screen orientation controller is |
| // plugged to WebFrameTestProxy. |
| // assert_equals(ev.data, "", "screen.orientation.lock() does not throw"); |
| testAllowed.done(); |
| }); |
| var allowedIframe = document.getElementById("allowedIframe"); |
| allowedIframe.src = "resources/sandboxed-iframe-locking.html"; |
| } |
| |
| function runTestNotAllowed() { |
| window.onmessage = testNotAllowed.step_func(function (ev) { |
| assert_equals(ev.data, "SecurityError", "screen.orientation.lock() throws a SecurityError"); |
| testNotAllowed.done(); |
| runTestAllowed(); |
| }); |
| var disallowedIframe = document.getElementById("disallowedIframe"); |
| disallowedIframe.src = "resources/sandboxed-iframe-locking.html"; |
| } |
| runTestNotAllowed(); |
| </script> |
| </body> |
| </html> |