<script>
function test()
{
    (function ()
    {
        (function ()
        {
            (function ()
            {
                frameElement.src = "javascript:'<pre>PASS: You didn\\'t crash.</pre>'";
            })()
        })()
    })()
}

setTimeout(function ()
{
    test();
    top.setTimeout(() => {
        if (window.testRunner)
            testRunner.notifyDone();
    }, 0);
}, 0);
</script>
