<!doctype html>
<meta charset="utf-8">
<title>cssom-view - elementScroll - 002</title>
<link rel="help" href="https://drafts.csswg.org/cssom-view/#dom-element-scrolltop">
<link rel="help" href="https://drafts.csswg.org/cssom-view/#dom-element-scrollleft">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="scroller1" style="height: 100px; width: 100px; overflow: scroll; background: red;">
    <div style="background: green; margin-top: 100px; margin-left: 100px; width: 100px; height: 100px;"></div>
</div>
<div id="scroller2" style="height: 100px; width: 100px; overflow: hidden; background: red;">
    <div style="background: green; margin-top: 100px; padding-left: 100px; width: 100px; height: 100px;"></div>
</div>
<div id="scroller3" style="height: 100px; width: 100px; overflow: scroll; background: red;">
    <div style="background: green; padding-top: 100px; margin-left: 100px; width: 100px; height: 100px;"></div>
</div>
<div id="scroller4" style="height: 100px; width: 100px; overflow: hidden; background: red;">
    <div style="background: green; padding-top: 100px; padding-left: 100px; width: 100px; height: 100px;"></div>
</div>
<script>
    test(function () {
        var scroller1 = document.getElementById("scroller1");

        scroller1.scrollTop = 100;
        scroller1.scrollLeft = 100;
        assert_equals(scroller1.scrollTop, 100, "changed scrollTop should be 100");
        assert_equals(scroller1.scrollLeft, 100, "changed scrollLeft should be 100");

    }, "simple scroll with style: 'margin' and 'overflow: scroll'");
    test(function () {
        var scroller2 = document.getElementById("scroller2");

        scroller2.scrollTop = 100;
        scroller2.scrollLeft = 100;
        assert_equals(scroller2.scrollTop, 100, "changed scrollTop should be 100");
        assert_equals(scroller2.scrollLeft, 100, "changed scrollLeft should be 100");

    }, "simple scroll with style: 'margin' and 'overflow: hidden'");
    test(function () {
        var scroller3 = document.getElementById("scroller3");

        scroller3.scrollTop = 100;
        scroller3.scrollLeft = 100;
        assert_equals(scroller3.scrollTop, 100, "changed scrollTop should be 100");
        assert_equals(scroller3.scrollLeft, 100, "changed scrollLeft should be 100");

    }, "simple scroll with style: 'padding' and 'overflow: scroll'");
    test(function () {
        var scroller4 = document.getElementById("scroller4");

        scroller4.scrollTop = 100;
        scroller4.scrollLeft = 100;
        assert_equals(scroller4.scrollTop, 100, "changed scrollTop should be 100");
        assert_equals(scroller4.scrollLeft, 100, "changed scrollLeft should be 100");

    }, "simple scroll with style: 'padding' and 'overflow: hidden'");
</script>
