| <!DOCTYPE html> |
| <script src="../resources/testharness.js"></script> |
| <script src="../resources/testharnessreport.js"></script> |
| <body> |
| <script> |
| var t = async_test('Test that preloaded resources get evicted from MemoryCache'); |
| var action; |
| var loadTimestampWithXHR = t.step_func(function() { |
| var xhr = new XMLHttpRequest; |
| xhr.withCredentials = true; |
| xhr.open("GET", "resources/timestamp.php"); |
| xhr.send(); |
| xhr.onload = function() { |
| action(xhr.responseText); |
| }; |
| }); |
| |
| var loadTimestampWithLink = t.step_func(function() { |
| var l = document.createElement('link'); |
| l.setAttribute('rel', 'preload'); |
| l.setAttribute('href', "resources/timestamp.php"); |
| l.setAttribute('as', 'fetch'); |
| l.onload = loadTimestampWithXHR; |
| document.body.appendChild(l); |
| }); |
| |
| var writeAndReload = t.step_func(function(text) { |
| sessionStorage.timestamp = text; |
| document.location.reload(true); |
| }); |
| |
| var compare = t.step_func(function(text) { |
| assert_true(sessionStorage.timestamp != text); |
| t.done(); |
| }); |
| |
| if (!sessionStorage.timestamp) { |
| action = writeAndReload; |
| } else { |
| action = compare; |
| } |
| loadTimestampWithLink(); |
| </script> |