| Index: third_party/WebKit/LayoutTests/imported/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-navigation-samedoc.html
 | 
| diff --git a/third_party/WebKit/LayoutTests/fast/history/scroll-restoration/scroll-restoration-push-replace.html b/third_party/WebKit/LayoutTests/imported/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-navigation-samedoc.html
 | 
| similarity index 54%
 | 
| copy from third_party/WebKit/LayoutTests/fast/history/scroll-restoration/scroll-restoration-push-replace.html
 | 
| copy to third_party/WebKit/LayoutTests/imported/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-navigation-samedoc.html
 | 
| index 88537534df61b8c61038f910c146bf4be16d6108..ee10ca71d2df66141d4f623556e9b9e37d87338f 100644
 | 
| --- a/third_party/WebKit/LayoutTests/fast/history/scroll-restoration/scroll-restoration-push-replace.html
 | 
| +++ b/third_party/WebKit/LayoutTests/imported/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-navigation-samedoc.html
 | 
| @@ -1,4 +1,6 @@
 | 
|  <!DOCTYPE html>
 | 
| +<title>Correct behaviour of scroll restoration mode in same document history traversals</title>
 | 
| +
 | 
|  <style>
 | 
|    body {
 | 
|      height: 10000px;
 | 
| @@ -7,8 +9,8 @@
 | 
|  </style>
 | 
|  
 | 
|  <body></body>
 | 
| -<script src="../../../resources/testharness.js"></script>
 | 
| -<script src="../../../resources/testharnessreport.js"></script>
 | 
| +<script src="../../../../../../../resources/testharness.js"></script>
 | 
| +<script src="../../../../../../../resources/testharnessreport.js"></script>
 | 
|  <script type="text/javascript">
 | 
|    'use strict';
 | 
|  
 | 
| @@ -16,13 +18,16 @@
 | 
|      history.scrollRestoration = 'auto';
 | 
|      window.scrollTo(0, 0);
 | 
|  
 | 
| -    // create history entries and then verify the impact of scrollRestoration 
 | 
| +    // create history entries and then verify the impact of scrollRestoration
 | 
|      // when they are popped
 | 
|      var entries = {
 | 
| -      /* TODO: spec does not defines behavior of 'auto' so we should not expect scroll position for these */
 | 
| -      '#1': {type: 'push',    expectedScroll: [50, 100],  scrollRestoration: 'auto'},
 | 
| -      '#2': {type: 'replace', expectedScroll: [100, 200], scrollRestoration: 'auto'},
 | 
| -      /* Scroll position should not be restored for these. */
 | 
| +      /* For scroll restoration mode 'auto', the spec does not require scroll
 | 
| +         position to be restored at any particular value. */
 | 
| +      '#1': {type: 'push',    expectedScroll: null,  scrollRestoration: 'auto'},
 | 
| +      '#2': {type: 'replace', expectedScroll: null, scrollRestoration: 'auto'},
 | 
| +      /* For scroll restoration mode 'manual', the spec requires scroll position
 | 
| +         not to be restored. So we expect [555,555] which is the latest position
 | 
| +         before navigation. */
 | 
|        '#3': {type: 'push',    expectedScroll: [555, 555], scrollRestoration: 'manual'},
 | 
|        '#4': {type: 'replace', expectedScroll: [555, 555], scrollRestoration: 'manual'}
 | 
|      };
 | 
| @@ -40,9 +45,9 @@
 | 
|          history.pushState(null, '', key);
 | 
|          history.replaceState.apply(history, args);
 | 
|        }
 | 
| -      assert_equals(history.scrollRestoration, beforeValue, `${entry.type} retain current history.scrollRestoration value`);
 | 
| +      assert_equals(history.scrollRestoration, beforeValue, `history.scrollRestoration value is retained after pushing new state`);
 | 
|        history.scrollRestoration = newValue;
 | 
| -      assert_equals(history.scrollRestoration, newValue, `Setting scrollRestoration to ${newValue} does expected`);
 | 
| +      assert_equals(history.scrollRestoration, newValue, `Setting scrollRestoration to ${newValue} works as expected`);
 | 
|        window.scrollBy(50, 100);
 | 
|      }
 | 
|  
 | 
| @@ -55,10 +60,12 @@
 | 
|          t.done();
 | 
|          return;
 | 
|        }
 | 
| -      console.log(`verifying ${key}`);
 | 
|        assert_equals(history.state.key, key, `state should have key: ${key}`);
 | 
| -      assert_equals(document.scrollingElement.scrollLeft, entry.expectedScroll[0], `scrollLeft is correct for ${key}`);
 | 
| -      assert_equals(document.scrollingElement.scrollTop, entry.expectedScroll[1], `scrollTop is correct ${key}`);
 | 
| +      assert_equals(history.scrollRestoration, entry.scrollRestoration, 'scrollRestoration is updated correctly');
 | 
| +      if (entry.expectedScroll) {
 | 
| +        assert_equals(window.scrollX, entry.expectedScroll[0], `scrollX is correct for ${key}`);
 | 
| +        assert_equals(window.scrollY, entry.expectedScroll[1], `scrollY is correct for ${key}`);
 | 
| +      }
 | 
|  
 | 
|        window.history.back();
 | 
|      }));
 | 
| @@ -70,5 +77,5 @@
 | 
|        window.history.back();
 | 
|      }, 0);
 | 
|  
 | 
| -  }, 'history.{push,replace}State retain and respect history.scrollRestoration');
 | 
| +  }, 'history.{push,replace}State retain scroll restoration mode and navigation in the same document respects it');
 | 
|  </script>
 | 
| 
 |