RESOLVED FIXED Bug 97457
[WK2] TestRunner does not support overridePreference with value "0"
https://bugs.webkit.org/show_bug.cgi?id=97457
Summary [WK2] TestRunner does not support overridePreference with value "0"
Dominik Röttsches (drott)
Reported 2012-09-24 08:29:16 PDT
fast/regions/css-regions-disabled.html disables CSS Regions with an overridePreference call, that doesn't seem to have any effect on EFL WebKit2.
Attachments
Patch (7.35 KB, patch)
2012-09-24 12:03 PDT, Chris Dumez
no flags
Chris Dumez
Comment 1 2012-09-24 09:53:28 PDT
There seems to be support for this in WebKitTestRunner already. I will debug this once the dependency patch lands.
Chris Dumez
Comment 2 2012-09-24 11:47:01 PDT
The issue is that the current WKTR overridePreference() takes a boolean in argument even though the tests are passing a string. The issue is that "0" and "1" are both evaluated to true boolean value. As a consequence, CSS regions do not get disabled despite the fact that the test calls: testRunner.overridePreference("WebKitCSSRegionsEnabled", "0"); I will upload a patch soon.
Tony Chang
Comment 3 2012-09-24 12:01:41 PDT
I had the same problem when adding an overridePreference value for CSS Grid Layout. Then I noticed that some features are set in internals.settings instead of overridePreference. This is cross platform code rather than needing to modify testRunner.overridePreference in every port. I think we should try to move more runtime flags into internals.settings.
Chris Dumez
Comment 4 2012-09-24 12:03:05 PDT
Chris Dumez
Comment 5 2012-09-24 12:15:17 PDT
(In reply to comment #3) > I had the same problem when adding an overridePreference value for CSS Grid Layout. > > Then I noticed that some features are set in internals.settings instead of overridePreference. This is cross platform code rather than needing to modify testRunner.overridePreference in every port. > > I think we should try to move more runtime flags into internals.settings. In this case, it is a preference that is already present (I'm not adding it). I'm merely fixing an issue with the current implementation of testRunner.overridePreference() for WebKit2. Also note that on WebKit2, we use the same testRunner.overridePreference() implementation for all ports. Anyway, I think my patch is still valid since it fixes an issue with the existing implementation.
Alexey Proskuryakov
Comment 6 2012-09-24 12:22:40 PDT
Hmm, this is an interesting case. Mac preferences also support "YES", but I don't know how exactly the conversion to boolean works.
Alexey Proskuryakov
Comment 7 2012-09-24 12:25:05 PDT
Comment on attachment 165422 [details] Patch Certainly looks like an improvement to me.
Chris Dumez
Comment 8 2012-09-24 12:27:50 PDT
(In reply to comment #6) > Hmm, this is an interesting case. Mac preferences also support "YES", but I don't know how exactly the conversion to boolean works. I don't mind adding support for "YES" but there does not seem to be any test case using it. Do you think it is worth adding?
WebKit Review Bot
Comment 9 2012-09-24 17:04:45 PDT
Comment on attachment 165422 [details] Patch Clearing flags on attachment: 165422 Committed r129430: <http://trac.webkit.org/changeset/129430>
WebKit Review Bot
Comment 10 2012-09-24 17:04:51 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.