| <!DOCTYPE html> |
| <script src="../../../resources/testharness.js"></script> |
| <script src="../../../resources/testharnessreport.js"></script> |
| <script> |
| test(function() { |
| var iframe = document.createElement("iframe"); |
| // Test that setting sandbox is working, for both valid and invalid values |
| iframe.sandbox = "whatever"; |
| assert_true(iframe.sandbox.contains("whatever")); |
| iframe.sandbox = "allow-forms"; |
| assert_true(iframe.sandbox.contains("allow-forms")); |
| // Test that "add()" works |
| iframe.sandbox.add("allow-formssss"); |
| assert_equals(iframe.sandbox.value, "allow-forms allow-formssss"); |
| assert_true(iframe.sandbox.contains("allow-formssss")); |
| // Test that "supports()" is returning true for valid values and false for invalid ones |
| assert_false(iframe.sandbox.supports("bogus")); |
| assert_false(iframe.sandbox.supports("allow-formssss")); |
| assert_true(iframe.sandbox.supports("allow-forms")); |
| assert_true(iframe.sandbox.supports("allow-modals")); |
| assert_true(iframe.sandbox.supports("allow-orientation-lock")); |
| assert_true(iframe.sandbox.supports("allow-pointer-lock")); |
| assert_true(iframe.sandbox.supports("allow-popups")); |
| assert_true(iframe.sandbox.supports("allow-popups-to-escape-sandbox")); |
| assert_true(iframe.sandbox.supports("allow-presentation")); |
| assert_true(iframe.sandbox.supports("allow-same-origin")); |
| assert_true(iframe.sandbox.supports("allow-scripts")); |
| assert_true(iframe.sandbox.supports("allow-top-navigation")); |
| assert_true(iframe.sandbox.supports("allow-top-navigation-by-user-activation")); |
| assert_true(iframe.sandbox.supports("allow-downloads-without-user-activation")); |
| // Test that "supports()" does a case-insensitive comparison |
| assert_true(iframe.sandbox.supports("ALLOW-FORMS")); |
| assert_true(iframe.sandbox.supports("Allow-Forms")); |
| }, "Make sure that sandbox based feature detection is working"); |
| </script> |