Bug 126142 - REGRESSION (Lazy tree creation): css3/calc/transitions-dependent.html is frequently failing
Summary: REGRESSION (Lazy tree creation): css3/calc/transitions-dependent.html is freq...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: CSS (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P1 Normal
Assignee: Diego Pino
URL:
Keywords: InRadar, Regression
: 132182 (view as bug list)
Depends on:
Blocks:
 
Reported: 2013-12-22 17:47 PST by Alexey Proskuryakov
Modified: 2022-01-11 05:23 PST (History)
8 users (show)

See Also:


Attachments
Patch (3.70 KB, patch)
2021-08-17 01:07 PDT, Diego Pino
no flags Details | Formatted Diff | Diff
Patch (8.31 KB, patch)
2021-11-16 23:39 PST, Diego Pino
no flags Details | Formatted Diff | Diff
Patch (8.70 KB, patch)
2022-01-10 18:20 PST, Diego Pino
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Alexey Proskuryakov 2013-12-22 17:47:07 PST
css3/calc/transitions-dependent.html started to fail at around the time lazy render tree patch was landed:

http://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=css3%2Fcalc%2Ftransitions-dependent.html
Comment 1 Alexey Proskuryakov 2013-12-23 09:37:42 PST
@@ -1,12 +1,12 @@
 This tests that calc() expressions depending on transitioning elements behave correctly.
-PASS - "width" property for "inner" element at 0s was: 60
-PASS - "width" property for "inner" element at 0.25s was: 110
-PASS - "width" property for "inner" element at 0.5s was: 160
-PASS - "width" property for "inner" element at 0.75s was: 210
+FAIL - "width" property for "inner" element at 0s expected: 60 but saw: 260
+FAIL - "width" property for "inner" element at 0.25s expected: 110 but saw: 260
+FAIL - "width" property for "inner" element at 0.5s expected: 160 but saw: 260
+FAIL - "width" property for "inner" element at 0.75s expected: 210 but saw: 260
 PASS - "width" property for "inner" element at 1s was: 260
-PASS - "width" property for "innerTransition" element at 0s was: 20
-PASS - "width" property for "innerTransition" element at 0.25s was: 70
-PASS - "width" property for "innerTransition" element at 0.5s was: 165
-PASS - "width" property for "innerTransition" element at 0.75s was: 305
+FAIL - "width" property for "innerTransition" element at 0s expected: 20 but saw: 490
+FAIL - "width" property for "innerTransition" element at 0.25s expected: 70 but saw: 490
+FAIL - "width" property for "innerTransition" element at 0.5s expected: 165 but saw: 490
+FAIL - "width" property for "innerTransition" element at 0.75s expected: 305 but saw: 490
 PASS - "width" property for "innerTransition" element at 1s was: 490
Comment 2 Alexey Proskuryakov 2013-12-25 15:45:47 PST
<rdar://problem/15725243>
Comment 3 Alexey Proskuryakov 2013-12-25 15:51:37 PST
Marked the test as flaky in <http://trac.webkit.org/r161073>.
Comment 4 Alexey Proskuryakov 2014-02-06 14:59:03 PST
Antti, did you have a chance to look into this?
Comment 5 Diego Pino 2021-08-17 01:00:24 PDT
*** Bug 132182 has been marked as a duplicate of this bug. ***
Comment 6 Diego Pino 2021-08-17 01:07:03 PDT
Created attachment 435670 [details]
Patch
Comment 7 Alexey Proskuryakov 2021-09-01 09:17:28 PDT
Do the new results match other browsers? Not sure how to tell if the test is failing or passing now.
Comment 8 Diego Pino 2021-11-16 23:39:55 PST
Created attachment 444485 [details]
Patch
Comment 9 Diego Pino 2021-11-16 23:42:00 PST
I modernized the code of the test to be able to run it in other browsers. I run it in Chrome and Firefox and I got the same expected results.
Comment 10 Alexey Proskuryakov 2022-01-10 08:53:46 PST
Comment on attachment 444485 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=444485&action=review

> LayoutTests/TestExpectations:1209
> +css3/calc/transitions-dependent.html [ DumpJSConsoleLogInStdErr ]

What does this test dump to console? DumpJSConsoleLogInStdErr is supposed to only be used for imported tests, which we cannot modify.

> LayoutTests/css3/calc/transitions-dependent.html:77
> +  let element = document.getElementById(elementId);

Looks like existing code in this test uses four-space indentation.

> LayoutTests/css3/calc/transitions-dependent.html:111
> +  window.testRunner.waitUntilDone();

Ditto. Also, no need to prefix with window. on this line.
Comment 11 Diego Pino 2022-01-10 18:20:15 PST
Created attachment 448823 [details]
Patch
Comment 12 Diego Pino 2022-01-10 18:27:23 PST
(In reply to Alexey Proskuryakov from comment #10)
> Comment on attachment 444485 [details]
> Patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=444485&action=review
> 
> > LayoutTests/TestExpectations:1209
> > +css3/calc/transitions-dependent.html [ DumpJSConsoleLogInStdErr ]
> 
> What does this test dump to console? DumpJSConsoleLogInStdErr is supposed to
> only be used for imported tests, which we cannot modify.
> 

The `pauseTransitionAtTimeOnElement` call was printing out several messages on console:

https://webkit-search.igalia.com/webkit/source/LayoutTests/transitions/resources/transition-test-helpers.js#374

It seems the first 5 expected values should only check the `dependsOn` property while the last 5 expected values should check the `elementId` property.

I changed the test accordingly.
Comment 13 EWS 2022-01-11 05:23:21 PST
Committed r287874 (245918@main): <https://commits.webkit.org/245918@main>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 448823 [details].