Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / fast / scroll-behavior / subframe-scrollTop.html
blob920ab67d0ca41f18289d99ed7247c046c1f09788
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <style>
5 #subframe {
6 width: 200px;
7 height: 200px;
9 </style>
10 <script src="../../resources/testharness.js"></script>
11 <script src="../../resources/testharnessreport.js"></script>
12 <script src="resources/scroll-behavior-test.js"></script>
13 <script type="text/javascript">
14 function getEndPosition(testCase, startPosition) {
15 var endPosition = {};
16 endPosition.x = startPosition.x;
17 endPosition.y = testCase.y;
18 return endPosition;
21 function jsScroll(testCase) {
22 var subframe = document.getElementById("subframe");
23 subframe.contentDocument.scrollingElement.scrollTop = testCase.y;
26 const testScrolls = [
27 {css: "auto", x: 0, y: 2},
28 {css: "auto", x: 0, y: 4},
29 {css: "smooth", waitForEnd: true, x: 0, y: 25},
30 {css: "smooth", waitForEnd: true, x: 0, y: 45},
31 {css: "smooth", waitForEnd: false, x: 0, y: 4100},
32 {css: "smooth", waitForEnd: false, x: 0, y: 20},
35 function doTest()
37 var testCases = [];
38 for (var i = 0; i < testScrolls.length; i++) {
39 testCases.push(new ScrollBehaviorTestCase(testScrolls[i]));
42 var subframe = document.getElementById("subframe");
43 var scrollBehaviorTest = new ScrollBehaviorTest(subframe.contentDocument.scrollingElement,
44 subframe.contentDocument,
45 testCases,
46 getEndPosition,
47 jsScroll);
48 scrollBehaviorTest.run();
51 window.addEventListener('load', doTest, false);
52 </script>
53 </head>
55 <body>
56 <p>Test that setting scrollTop on a subframe works with both scroll behaviors</p>
57 <iframe id="subframe" src="resources/large-subframe.html"></iframe>
58 </body>
59 </html>