<html>
    <head>
        <style>
        body {
            -webkit-user-select: none;
        }
        </style>
        <script>
            function test() {
                if (window.layoutTestController)
                    layoutTestController.dumpAsText();
                document.execCommand('SelectAll');
                if (window.getSelection().toString() == "")
                    document.body.innerHTML = "Test Passed";
            }
        </script>
    </head>
    <body onload="test()">
    Test Failed (this should not be selected)
    </body>
</html>
