<!DOCTYPE html>
<html>
<head>
    <style>
        #wpadminbar {
            height: 28px;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            min-width: 600px;
            z-index: 99999;
            background-color: gray;
        }
        
        #overflow {
            overflow: scroll;
            height: 300px;
        }
        
        #contents {
            height: 500px;
            background-color: green;
        }
    </style>
    <script>
        if (window.testRunner)
            testRunner.dumpAsText();

        function doTest()
        {
            document.getElementById('overflow').scrollTop = 200;
            var contents = document.getElementById('contents');
            contents.style.height = '200' + 'px';
        }
        window.addEventListener('load', doTest, false);
    </script>
</head>
<body>
    <p>This test should not hit an assertion in debug builds.</p>
    <div id="wpadminbar" class="" role="navigation"></div>
    <div id="overflow" style="width: 430px; margin-left: 100px; margin-top: 100px;">
        <div id="contents">
        </div>
    </div>

</body>
</html>
