<html>
<head>
<script>
function finishTest()
{
    if (window.layoutTestController)
        layoutTestController.notifyDone();
}

function log(message)
{
    document.getElementById("console").innerText += message + "\n";
}

function runTest() {
    if (window.layoutTestController) {
        layoutTestController.dumpAsText();
        layoutTestController.waitUntilDone();
    }

    var db = window.openDatabase("ChangeVersionFailureTest", "1", "Test the preflight step", 1024);
    db.changeVersion("2", "3", null, function(error) {
        log("PASS: db.changeVersion() failed as expected, and no assertions were triggered.");
        finishTest();
    }, function() {
        log("FAIL: db.changeVersion() was expected to fail.");
        finishTest();
    });
}
</script>
</head>
<body onload="runTest();">
This test verifies that no assertion is triggered when changeVersion()'s preflight step fails.
<pre id="console"></pre>
</body>
</html>
