Test case for jQuery Ticket 3105

Adapted from original report (append script re-executes them)

by jitter

HTML

<script src="https://getfirebug.com/firebug-lite-debug.js"></script>
<script type="text/javascript" id="script-test">
  ranScript = true;
</script>

<script type="metadata/metadata" id="meta-test">
  ranMeta = true;
</script>

JavaScript

var ranScript = false,
    ranMeta = false;

$(document).ready(function() {
    if (!ranScript) {
        console.log("Curious; script block didn't run");
    }
    if (ranMeta) {
        console.log("Curious; metadata was executed");
    }

    ranScript = false;
    $('<script type="text/javascript">ranScript = true;</scr' + 'ipt>').appendTo('body');
    if (!ranScript) {
        console.log("Script test 1 failed");
    }

    ranScript = false;
    $('<div><script type="text/javascript">ranScript = true;</scr' + 'ipt></div>').appendTo('body');
    if (!ranScript) {
        console.log("Script test 2 failed");
    }

    ranScript = false;
    $('#script-test').appendTo('body');
    if (ranScript) {
        console.log("Script test 3 failed");
    }

    ranScript = false;
    $('#meta-test').appendTo('body');
    if (ranScript || ranMeta) {
        console.log("Script test 4 failed");
    }

});