Index: third_party/WebKit/LayoutTests/resize-observer/resources/iframe.html |
diff --git a/third_party/WebKit/LayoutTests/resize-observer/resources/iframe.html b/third_party/WebKit/LayoutTests/resize-observer/resources/iframe.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..9f0c447628e8ec5c83cf424d973208558b55faed |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/resize-observer/resources/iframe.html |
@@ -0,0 +1,38 @@ |
+<!doctype html> |
+<head> |
+ <script src="./resizeTestHelper.js"></script> |
+</head> |
+<p>iframe test</p> |
+<div id="itarget1" style="width:100px;height:100px;">t1</div> |
+<script> |
+'use strict'; |
+let t1 = document.querySelector('#itarget1'); |
+function test0() { |
+ let timeoutId = window.setTimeout( () => { |
+ window.parent.postMessage('fail', '*'); |
+ }, ResizeTestHelper.TIMEOUT); |
+ let ro = new ResizeObserver(function(entries) { |
+ window.clearTimeout(timeoutId); |
+ window.parent.postMessage('success', '*'); |
+ }); |
+ ro.observe(t1); |
+} |
+let testStarted = false; |
+window.addEventListener('message', function(ev) { |
+ switch(ev.data) { |
+ case 'startTest': |
+ testStarted = true; |
+ test0(); |
+ break; |
+ } |
+}); |
+// How does parent know we've loaded problem is solved by |
+// broadcasting readyToTest message. |
+function broadcastReady() { |
+ if (!testStarted) { |
+ window.parent.postMessage('readyToTest', '*'); |
+ window.requestAnimationFrame(broadcastReady); |
+ } |
+} |
+broadcastReady(); |
+</script> |