[webkit-dev] Settings and Preferences in layout tests
Brady Eidson
beidson at apple.com
Wed Sep 26 16:51:20 PDT 2012
On Sep 26, 2012, at 4:43 PM, Adam Barth <abarth at webkit.org> wrote:
> Maybe a better solution is auto-generate all this boilerplate code? If we had a Settings.in file, we could generate all the port-specific code (and maybe even much of Settings.h/cpp) automatically. Then all of these patches would be one-liners and work correctly on every port.
I would be all for that. I'm fuzzy on how the WebCore::Settings boiler plate would correctly apply to all WebKit ports in general, but I can see how it would easily solve our use case.
~Brady
>
> Adam
>
>
> On Wed, Sep 26, 2012 at 4:28 PM, Brady Eidson <beidson at apple.com> wrote:
>
> On Sep 26, 2012, at 4:15 PM, Simon Fraser <simon.fraser at apple.com> wrote:
>
>> On Sep 26, 2012, at 4:13 PM, Brady Eidson <beidson at apple.com> wrote:
>>
>>> This works for any preference; Even a new one that has never been twiddled in a regression test before.
>>>
>>> For example in http://trac.webkit.org/changeset/127956 we added a new test that twiddled the "WebKitStorageBlockingPolicy" preference and we didn't need to change any DRT Mac code to accomplish this.
>>>
>>> Compared to adding a single implementation to internal.settings, this was *NO* additional work.
>>
>> But is there code to undo this pref change for subsequent tests?
>
> I looked into the mechanism that does this.
>
> On Sep 26, 2012, at 1:44 PM, Simon Fraser <simon.fraser at apple.com> wrote:
>
>> I looked at testRunner.overridePreference(), and it doesn't appear to reset the value at the end of the test.
>
> That happens elsewhere, in:
> static void resetDefaultsToConsistentValues()
>
> Indeed, each individual pref is currently managed with unique API calls here, and the example I provided of WebKitStorageBlockingPolicy leaks.
>
> However, the key/value based preference mechanism can easily be augmented within DRT in a general way that will fix this and all future key/value preference usage. That change would only have to happen once per port (assuming the port supports key/value based prefs)
>
> Brady
>
>
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> http://lists.webkit.org/mailman/listinfo/webkit-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20120926/6449ee4a/attachment.html>
More information about the webkit-dev
mailing list