<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Security-Policy" content="object-src 'none'">
<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.waitUntilDone();
}

if (window.internals)
    window.internals.settings.setYouTubeFlashPluginReplacementEnabled(true);

function done()
{
    if (window.testRunner)
        testRunner.notifyDone();
}

document.addEventListener("securitypolicyviolation", done, false);
</script>
</head>
<body>
<object width="425" height="350" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
    codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0">
    <embed width="425" height="350" type="application/x-shockwave-flash" src="https://www.youtube.com/v/UF8uR6Z6KLc">
</object>
</body>
</html>
