<!DOCTYPE html>
<html>
<head>
<script>
if (window.testRunner)
    testRunner.dumpAsText();

function runTest() {
    document.designMode="on";
    document.open();
    window.getSelection().addRange(document.createRange());

    var initialValue = document.queryCommandState('StyleWithCSS');
    document.execCommand("StyleWithCSS", false, !eval(initialValue));
    document.writeln('hello');

    document.open();
    window.getSelection().addRange(document.createRange());
    var valueAfterFirstNegation = document.queryCommandState('StyleWithCSS');

    document.execCommand("StyleWithCSS", false, !eval(valueAfterFirstNegation));
    document.writeln('world');
    var valueAfterSecondNegation = document.queryCommandState('StyleWithCSS');

    document.open();
    document.writeln('This test ensures WebKit executes StyleWithCSS properly even in an empty document.<br>');
    document.write('First negation:' + (initialValue !== valueAfterFirstNegation ? 'PASS' : 'FAIL') + '<br>');
    document.write('Second negation:' + (valueAfterFirstNegation !== valueAfterSecondNegation ? 'PASS' : 'FAIL') + '<br>');
}
</script>
</head>
<body onload="runTest()"></body>
</html>
