Index: third_party/WebKit/LayoutTests/http/tests/preload/document-write/document_write_no_preload.html |
diff --git a/third_party/WebKit/LayoutTests/http/tests/preload/document-write/document_write_no_preload.html b/third_party/WebKit/LayoutTests/http/tests/preload/document-write/document_write_no_preload.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..baade14eafa393a263358169a670f51305cc398c |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/http/tests/preload/document-write/document_write_no_preload.html |
@@ -0,0 +1,49 @@ |
+<!DOCTYPE html> |
+<script src="../../resources/testharness.js"></script> |
+<script src="../../resources/testharnessreport.js"></script> |
+<script> |
+var t = async_test('Do not preload for document.write for long scripts or scripts that contain non-determinism'); |
+// We reject scripts with "for", so rename window.performance. |
+window.perf = window.performance; |
+</script> |
+<script> |
+if (window.perf) |
+ var boundedStart1 = window.perf.now(); |
+// This script is too long for preloading. |
+// XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX |
+var src = '../../resources/dummy.js'; |
+document.write('<scr' + 'ipt src="' + src + '"></scr' + 'ipt>'); |
+</script> |
+<script> |
+if (window.perf) |
+ var boundedStart2 = window.perf.now(); |
+// This script has non-determinism. |
+if (Math.random() < .9) { |
+ var src = '../../loading/resources/empty.js'; |
+ document.write('<scr' + 'ipt src="' + src + '"></scr' + 'ipt>'); |
+} |
+</script> |
+<script> |
+if (window.perf) |
+ var boundedStart3 = window.perf.now(); |
+// This script has non-determinism. |
+var src = '../../loading/resources/zero-length.js?date=' + Date.now(); |
+document.write('<scr' + 'ipt src="' + src + '"></scr' + 'ipt>'); |
+</script> |
+<script> |
+window.addEventListener("load", t.step_func(function() { |
+ assert_equals(window.performance.getEntriesByType('resource').length, 5); |
+ window.performance.getEntriesByType('resource').forEach(function(r) { |
+ assert_greater_than(r.startTime, 0); |
+ if (r.name.indexOf('dummy.js') != -1) { |
+ assert_greater_than(r.startTime, boundedStart1); |
+ } else if (r.name.indexOf('empty.js') != -1) { |
+ assert_greater_than(r.startTime, boundedStart2); |
+ } else if (r.name.indexOf('zero-length.js') != -1) { |
+ assert_greater_than(r.startTime, boundedStart3); |
+ } |
+ }); |
+ t.done(); |
+})); |
+</script> |
+ |