<div dir="ltr">Can you expose a time or setTime function in DRT and some option that says &quot;let JS control the clock&quot;?<div><br></div><div style>Then a test could do something like</div><div style><br></div><div style>
<div>  layoutTestController.overridePreference(&quot;JsControlledClock&quot;, &quot;1&quot;);</div><div><br></div><div style> // Render 5 frames over 1 second</div><div style> var frame =0;</div><div style> function renderFrame() {</div>
<div style>   layoutTestController.getWindowSnapshot(...);</div><div style>   if (frame == 5) {</div><div style>    finishTest();</div><div style>    return;</div><div style>   }</div><div style>   ++frame;</div>
<div>   layoutTestController.setAnimationClock(frame * 1000 / 5); // assumes clock is in ms.</div><div style>   requestAnimationFrame(renderFrame);</div><div style> }<br></div><div><br></div></div></div><div class="gmail_extra">
<br><br><div class="gmail_quote">On Fri, Feb 8, 2013 at 3:52 PM, Benjamin Poulain <span dir="ltr">&lt;<a href="mailto:benjamin@webkit.org" target="_blank">benjamin@webkit.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Fri, Feb 8, 2013 at 3:16 PM,  <span dir="ltr">&lt;<a href="mailto:noam.rosenthal@nokia.com" target="_blank">noam.rosenthal@nokia.com</a>&gt;</span> wrote:<br></div><div class="gmail_quote"><div class="im">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">




<div style="font-size:14px;font-family:Calibri,sans-serif;word-wrap:break-word">
<div>The problem with dynamic features of the web like animations/interactions is that they&#39;re non-deterministic, or at least a lot less deterministic than static features of the web like layouts.</div>
<div>Ref tests, pixel tests etc. are tools built for deterministic testing: load a file, take a snapshot, compare against a result. Testing an animation (or a filter) needs to feel a lot more dynamic and expressive: Animate green boxes, make sure that they&#39;re
 within a particular range at particular points in time&quot;.</div></div></blockquote><div><br></div></div><div><div>The tests also have to be deterministic and comprehensive. I am afraid of loosing both with the Render-to-Canvas approach.</div>

<div><br></div><div>Can you give concrete examples of the kind of bugs you are hunting, and why testing cannot use the two methods suggested?</div></div><div class="im"><div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div style="font-size:14px;font-family:Calibri,sans-serif;word-wrap:break-word">
<div>I think that when testing some of the dynamic features it&#39;s best to create a minimal mechanism such as retrieving snapshot pixels, giving more power to the tests themselves in a dynamic language like JavaScript, rather than try to force the tests to fit
 into a predefined set of features supported by the DRT/WTR infrastructure. Also this would allow some differences between the ports, which implement animations a bit differently, without constant rebaselines of reference results  e.g. A heuristic animation
 timing test may stay valid across platform even if the actual animation implementation is different.</div></div></blockquote><div><br></div></div><div>Again, can you give concrete examples of this?</div><span class="HOEnZb"><font color="#888888"><div>
<br></div><div>Benjamin</div>
</font></span></div>
<br>_______________________________________________<br>
webkit-dev mailing list<br>
<a href="mailto:webkit-dev@lists.webkit.org">webkit-dev@lists.webkit.org</a><br>
<a href="https://lists.webkit.org/mailman/listinfo/webkit-dev" target="_blank">https://lists.webkit.org/mailman/listinfo/webkit-dev</a><br>
<br></blockquote></div><br></div>