<html>
<head>
<script src="../../../../resources/js-test-pre.js"></script>
<style id="style" media="screen">
.non-existent-class {
    color: black;
    clip: rect(0, 0, 1, 1);
    content: counter(dummy, square);
}
</style>
</head>
<body>
<p id="description"></p>
<div id="console"></div>
<script>
function runTest()
{
    description("This tests wrapper round-tripping between JavaScript and Objective-C.");
    if (!window.testRunner) {
        debug("This test only works in DumpRenderTree.\n");
        return;
    }
    
    testRunner.dumpAsText();

    var message = "FAIL: Test did not run properly.";
    try {
        var object = { returnThis: function() { return this; } };
        success = objCController.testWrapperRoundTripping(object);
        message = success
            ? "PASS."
            : "FAIL: wrapper round tripping failed.";
    } catch (e) {
        message = "FAIL: caught exception: " + e;
    }
    debug(message);
}

window.onload = runTest;
</script>
</body>
</html>
