test262/Runner.pm: save summary to file
[WebKit-https.git] / Tools / ChangeLog
1 2018-05-02  Valerie R Young  <valerie@bocoup.com>
2
3         test262/Runner.pm: save summary to file
4         https://bugs.webkit.org/show_bug.cgi?id=185200
5
6         Reviewed by Michael Saboff.
7
8         * Scripts/test262/Runner.pm:
9         (processCLI):
10         (main):
11         (summarizeResults):
12
13 2018-05-02  Carlos Alberto Lopez Perez  <clopez@igalia.com>
14
15         [GTK] Generate a JSC bundle on the 64 and 32 bit release bots and upload it to webkitgtk.org
16         https://bugs.webkit.org/show_bug.cgi?id=184699
17
18         Reviewed by Gustavo Noronha Silva.
19
20         This adds a new step for the GTK 64-bit release build bot and the
21         GTK 32-bit release build&test bot.
22
23         This step will be run as one of the lasts ones (after the product
24         is built) and will execute the script generate-jsc-bundle.
25         This script will take care of creating a JSC bundle and uploading
26         it to a server defined on a configuration file that has to be
27         deployed on the bots with the required server data and credentials
28         for this upload.
29
30         In this case, the built products should then be accessible at
31         <https://webkitgtk.org/jsc-built-products>. But the implementation
32         is not tied to any specific server. All the details about where
33         to upload the file is done in configuration file that is kept
34         private on each bot outside of the WebKit source tree.
35
36         The script also supports generating a JSC bundle locally and not
37         uploading it anywhere. This is the default mode of running.
38         The remote upload will only be activated if a --remote-config-file
39         parameter is passed (which is done from the buildbot config)
40
41         * BuildSlaveSupport/build.webkit.org-config/config.json:
42         * BuildSlaveSupport/build.webkit.org-config/factories.py:
43         (BuildFactory):
44         (BuildFactory.__init__):
45         (TestFactory):
46         (TestFactory.__init__):
47         (BuildAndGenerateJSCBundleFactory):
48         (BuildAndNonLayoutTestAndGenerateJSCBundleFactory):
49         * BuildSlaveSupport/build.webkit.org-config/steps.py:
50         (GenerateJSCBundle):
51         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
52         * Scripts/generate-jsc-bundle: Added.
53         (ldd_get_libs_and_interpreter):
54         (generate_readme):
55         (generate_wrapper_script):
56         (copy_and_remove_rpath):
57         (createJSCBundle):
58         (sha256sum):
59         (uploadJSCBundle):
60         (main):
61
62 2018-05-01  Ryosuke Niwa  <rniwa@webkit.org>
63
64         PSON: Make WebKitTestRunner work with process swap on navigation turned on
65         https://bugs.webkit.org/show_bug.cgi?id=185111
66
67         Reviewed by Chris Dumez.
68
69         Add the basic support for running layout tests with process-swap-on-navigation turned on.
70
71         First, move m_whatToDump, m_dumpPixels, m_waitToDump, and m_dumpFrameLoadCallbacks from WebContent process
72         to UI process so that calls to waitUntilDone, dumpAsText, etc... persist across process swaps.
73
74         In addition, initialize the injected bundle inside a new WebContent process when the first page is created.
75         This instantiates objects such as TestRunner, GCController, etc... in the new process. The initialization
76         can't be done in InjectedBundle::beginTesting because some steps in InjectedBundle::initialize require
77         the current PageGroup and Page objects. We avoid clearing databases and app cache in this case.
78
79         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
80         (WTR::InjectedBundle::didCreatePage): Send "Initialization" message to UI process. This message returns
81         all the dictionary values usually present in "BeginTest" message from UI process as well as "ResumeTesting"
82         boolean which is set when this process was created as a result of a process swap on navgation. Invoke
83         beginTesting with BegingTestingMode::Resume when this boolean is set.
84         (WTR::InjectedBundle::didReceiveMessageToPage):
85         (WTR::InjectedBundle::beginTesting): Don't clear database, app cache, etc... when initializing an injected
86         bundle after a process swap on navigation.
87         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
88         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
89         (WTR::InjectedBundlePage::dump):
90         (WTR::InjectedBundlePage::frameDidChangeLocation):
91         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
92         (WTR::TestRunner::TestRunner):
93         (WTR::TestRunner::shouldDumpPixels const): Added.
94         (WTR::TestRunner::setDumpPixels): Added.
95         (WTR::TestRunner::dumpAsText):
96         (WTR::TestRunner::whatToDump const): Added.
97         (WTR::TestRunner::setWhatToDump): Added.
98         (WTR::TestRunner::waitUntilDone):
99         (WTR::TestRunner::setWaitUntilDone): Added.
100         (WTR::TestRunner::shouldWaitUntilDone): Added.
101         (WTR::TestRunner::notifyDone):
102         (WTR::TestRunner::forceImmediateCompletion):
103         (WTR::TestRunner::setShouldDumpFrameLoadCallbacks): Added.
104         (WTR::TestRunner::shouldDumpFrameLoadCallbacks): Added.
105         (WTR::TestRunner::setAudioResult):
106         * WebKitTestRunner/InjectedBundle/TestRunner.h:
107         (WTR::TestRunner::dumpChildFramesAsText):
108         (WTR::TestRunner::dumpDOMAsWebArchive):
109         (WTR::TestRunner::setShouldDumpFrameLoadCallbacks): Moved to cpp.
110         (WTR::TestRunner::whatToDump const): Moved to cpp.
111         (WTR::TestRunner::shouldDumpMainFrameScrollPosition const):
112         (WTR::TestRunner::shouldDumpPixels const): Moved to cpp.
113         (WTR::TestRunner::shouldDumpFrameLoadCallbacks const): Moved to cpp.
114         (WTR::TestRunner::waitToDump const): Renamed to shouldWaitUntilDone and moved to cpp.
115         * WebKitTestRunner/TestInvocation.cpp:
116         (WTR::TestInvocation::TestInvocation): Initialize m_dumpFrameLoadCallbacks here.
117         (WTR::TestInvocation::shouldLogFrameLoadDelegates const): Deleted.
118         (WTR::TestInvocation::createTestSettingsDictionary): Extracted from invoke().
119         (WTR::TestInvocation::invoke): Sets m_startedTesting to true immediately afte sending "BeginTest" message.
120         m_startedTesting is later used in didReceiveSynchronousMessageFromInjectedBundle to detect whether a given
121         "Initialization" message is sent from a regular WebContent process (m_startedTesting is false) or the one
122         started as a result of a process swap on navigation (m_startedTesting is true).
123         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle): Added a bunch of new messgaes to
124         support initializing the injected bundle in a process swapped after navigation and set/get messages for
125         the states which must persist across process swaps within a test.
126         * WebKitTestRunner/TestInvocation.h:
127         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
128         * Tools/WebKitTestRunner/WhatToDump.h:
129         (WTR::WhatToDump): Added.
130
131 2018-05-01  Leo Balter  <leonardo.balter@gmail.com>
132
133         Auto save the results for Test262
134         https://bugs.webkit.org/show_bug.cgi?id=184926
135
136         Reviewed by Michael Saboff.
137
138         * Scripts/test262/Runner.pm:
139         (processCLI):
140         (main):
141         (parseError):
142         (processResult):
143         (summarizeResults):
144         * Scripts/test262/config.yaml: Renamed from Tools/Scripts/test262/test262-config.yaml.
145
146 2018-05-01  Jonathan Bedard  <jbedard@apple.com>
147
148         webkitpy: SIGKILL right after SIGTERM causes orphaned processes with 'xcrun simctl spawn'
149         https://bugs.webkit.org/show_bug.cgi?id=185164
150
151         Reviewed by David Kilzer.
152
153         * Scripts/webkitpy/common/system/executive.py:
154         (Executive.kill_process): First attempt will always send a SIGTERM, all subsequent attempts will
155         send a SIGKILL. A SIGKILL with not be sent if the process is not running to avoid orphaning childen.
156
157 2018-05-01  Chris Dumez  <cdumez@apple.com>
158
159         REGRESSION (r230919): API test WebKit.AutoLayoutIntegration is a flaky failure
160         https://bugs.webkit.org/show_bug.cgi?id=184918
161         <rdar://problem/39705516>
162
163         Reviewed by Wenson Hsieh.
164
165         Make sure provisional load has started before calling beginLayoutAtMinimumWidth
166         on the AutoLayoutWKWebView to restore pre-r230919 behavior. The load now starts
167         asynchronously because we ask the client if it is OK to do the load and the policy
168         delegates are asynchronous nowadays.
169
170         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
171         (-[AutoLayoutWKWebView load:withWidth:expectingContentSize:resettingWidth:]):
172         * TestWebKitAPI/cocoa/TestNavigationDelegate.h:
173         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
174         (-[TestNavigationDelegate webView:didStartProvisionalNavigation:]):
175         (-[TestNavigationDelegate waitForDidStartProvisionalNavigation]):
176         (-[WKWebView _test_waitForDidStartProvisionalNavigation]):
177
178 2018-05-01  Ross Kirsling  <ross.kirsling@sony.com>
179
180         [WinCairo] Align buildbot test stages with AppleWin.
181         https://bugs.webkit.org/show_bug.cgi?id=185094
182
183         Reviewed by Brent Fulgham.
184
185         * BuildSlaveSupport/build.webkit.org-config/factories.py:
186         (TestFactory.__init__):
187         Do run API tests, don't run dashboard tests.
188
189         * BuildSlaveSupport/build.webkit.org-config/steps.py:
190         (RunUnitTests):
191         Call run-api-tests with Python, not Perl (bugfix for r230998).
192
193         * Scripts/webkitpy/port/win.py:
194         (WinPort.environment_for_api_tests):
195         Retrieve necessary Windows environment variables.
196
197 2018-05-01  Eric Carlson  <eric.carlson@apple.com>
198
199         [MediaStream] remove WK1 support
200         https://bugs.webkit.org/show_bug.cgi?id=185136
201
202         Reviewed by Youenn Fablet.
203
204         * DumpRenderTree/mac/UIDelegate.mm:
205         (-[UIDelegate webView:decidePolicyForUserMediaRequestFromOrigin:listener:]): Deleted.
206
207 2018-05-01  Chris Dumez  <cdumez@apple.com>
208
209         [WKTR] Move navigation policy for response decision from InjectedBundle to UIProcess
210         https://bugs.webkit.org/show_bug.cgi?id=185157
211
212         Reviewed by Geoffrey Garen.
213
214         Move navigation policy for response decision from InjectedBundle to UIProcess. This is a more
215         common configuration and should therefore be the configuration we test by default.
216
217         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
218         (WTR::InjectedBundlePage::decidePolicyForResponse):
219
220 2018-05-01  Oleksandr Skachkov  <gskachkov@gmail.com>
221
222         WebAssembly: add support for stream APIs - JavaScript API
223         https://bugs.webkit.org/show_bug.cgi?id=183442
224
225         Reviewed by Yusuke Suzuki and JF Bastien.
226
227         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
228
229 2018-04-30  Mark Lam  <mark.lam@apple.com>
230
231         Apply PtrTags to the MetaAllocator and friends.
232         https://bugs.webkit.org/show_bug.cgi?id=185110
233         <rdar://problem/39533895>
234
235         Reviewed by Saam Barati.
236
237         Update the test to match MetaAllocator changes in WTF.
238
239         * TestWebKitAPI/Tests/WTF/MetaAllocator.cpp:
240         (TestWebKitAPI::TEST_F):
241         (WTF::tagForPtr):
242         (WTF::ptrTagName):
243
244 2018-04-30  Alex Christensen  <achristensen@webkit.org>
245
246         Add WKUIDelegatePrivate equivalent of WKPageContextMenuClient getContextMenuFromProposedMenuAsync
247         https://bugs.webkit.org/show_bug.cgi?id=180955
248
249         Reviewed by Andy Estes.
250
251         * TestWebKitAPI/Tests/WebKit/mac/ContextMenuImgWithVideo.mm:
252         (-[ContextMenuImgWithVideoDelegate _webView:contextMenu:forElement:]):
253         (-[ContextMenuImgWithVideoDelegate _webView:getContextMenuFromProposedMenu:forElement:userInfo:completionHandler:]):
254
255 2018-04-30  JF Bastien  <jfbastien@apple.com>
256
257         Use some C++17 features
258         https://bugs.webkit.org/show_bug.cgi?id=185135
259
260         Reviewed by Alex Christensen.
261
262         * DumpRenderTree/PlatformMac.cmake:
263         * gtk/ycm_extra_conf.py:
264         (FlagsForFile):
265
266 2018-04-30  Yusuke Suzuki  <utatane.tea@gmail.com>
267
268         Use WordLock instead of std::mutex for Threading
269         https://bugs.webkit.org/show_bug.cgi?id=185121
270
271         Reviewed by Geoffrey Garen.
272
273         * TestWebKitAPI/Tests/WTF/Signals.cpp:
274         (TEST):
275
276 2018-04-30  Michael Catanzaro  <mcatanzaro@igalia.com>
277
278         [GTK] Webkit should spoof as Safari on a Mac when on Chase.com
279         https://bugs.webkit.org/show_bug.cgi?id=185103
280
281         Reviewed by Carlos Garcia Campos.
282
283         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
284         (TestWebKitAPI::TEST):
285
286 2018-04-28  Sihui Liu  <sihui_liu@apple.com>
287
288         [Cocoa] Set HTTPOnly flag when converting Cookie to NSHTTPCookie
289         https://bugs.webkit.org/show_bug.cgi?id=185052
290
291         Reviewed by Geoffrey Garen.
292
293         Modified API test to provide correct test cases for HTTPOnly flag.
294
295         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
296         (TEST):
297
298 2018-04-28  Rick Waldron  <waldron.rick@gmail.com>
299
300         Token misspelled "tocken" in error message string
301         https://bugs.webkit.org/show_bug.cgi?id=185030
302
303         Reviewed by Saam Barati.
304
305         * Scripts/test262/test262-expectations.yaml: Fix typo "tocken" => "token"
306
307 2018-04-27  Stephan Szabo  <stephan.szabo@sony.com>
308
309         [WinCairo] Support --no-copy for jsc tests in wincairo tests, add copying of dlls for copy case
310         https://bugs.webkit.org/show_bug.cgi?id=185049
311
312         Reviewed by Keith Miller.
313
314         * Scripts/run-javascriptcore-tests:
315         (runJSCStressTests):
316         * Scripts/run-jsc-stress-tests:
317
318 2018-04-26  Ryosuke Niwa  <rniwa@webkit.org>
319
320         PSON: Triggering a navigation to an invalid URL creates a new WebContent process
321         https://bugs.webkit.org/show_bug.cgi?id=185066
322
323         Reviewed by Youenn Fablet.
324
325         Added a new test case (ProcessSwap.NavigateToInvalidURL) for navigating to an invalid URL.
326         WebKit should not swap WebContent process in this case.
327
328         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
329         (-[PSONNavigationDelegate webView:didFailProvisionalNavigation:withError:]):
330         (-[PSONUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
331
332 2018-04-27  Nan Wang  <n_wang@apple.com>
333
334         AX: Accessibility needs to know which part of the content view is visible on iOS
335         https://bugs.webkit.org/show_bug.cgi?id=185085
336         <rdar://problem/39801363>
337
338         Reviewed by Chris Fleizach.
339
340         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
341         (WTR::AccessibilityUIElement::stringAttributeValue):
342
343 2018-04-27  Wenson Hsieh  <wenson_hsieh@apple.com>
344
345         [Extra zoom mode] Add a mechanism to override default viewport behaviors in extra zoom mode
346         https://bugs.webkit.org/show_bug.cgi?id=185050
347         <rdar://problem/39624038>
348
349         Reviewed by Tim Horton.
350
351         Remove a test that's no longer useful, now that the SPI it was testing is gone. This functionality is now
352         tested by the layout test added in this patch.
353
354         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
355         * TestWebKitAPI/Tests/ios/ViewportSizingTests.mm: Removed.
356
357 2018-04-26  Ryan Haddad  <ryanhaddad@apple.com>
358
359         REGRESSION (r231039): RunUnitTests step reports disabled tests as failures
360         https://bugs.webkit.org/show_bug.cgi?id=185061
361
362         Reviewed by Aakash Jain.
363
364         * BuildSlaveSupport/build.webkit.org-config/steps.py:
365         (RunUnitTests.countFailures): Return the difference between the total number of tests run and the number that passed.
366         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Add a test.
367
368 2018-04-26  Ross Kirsling  <ross.kirsling@sony.com>
369
370         Add release bots for WinCairo.
371         https://bugs.webkit.org/show_bug.cgi?id=185042
372
373         Reviewed by Lucas Forschler.
374
375         * BuildSlaveSupport/build.webkit.org-config/config.json:
376         Add a release build bot and two test bots, replacing the outdated WinCairo release bots.
377
378 2018-04-26  Sihui Liu  <sihui_liu@apple.com>
379
380         -[WKHTTPCookieStore deleteCookie:completionHandler:] doesn't delete cookies
381         https://bugs.webkit.org/show_bug.cgi?id=184938
382         <rdar://problem/34737395>
383
384         Reviewed by Geoffrey Garen.
385
386         Add API test coverage.
387
388         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
389         (TEST):
390
391 2018-04-26  Ross Kirsling  <ross.kirsling@sony.com>
392
393         WinCairo test bots should run JSC tests with options for Windows command prompt.
394         https://bugs.webkit.org/show_bug.cgi?id=185019
395
396         Reviewed by Per Arne Vollan.
397
398         * BuildSlaveSupport/build.webkit.org-config/steps.py:
399         (RunJavaScriptCoreTests.start):
400
401 2018-04-26  Ross Kirsling  <ross.kirsling@sony.com>
402
403         WinCairo WKL Debug Test bot is not using DRT.
404         https://bugs.webkit.org/show_bug.cgi?id=185009
405
406         Reviewed by Per Arne Vollan.
407
408         * BuildSlaveSupport/build.webkit.org-config/config.json:
409
410 2018-04-26  Per Arne Vollan  <pvollan@apple.com>
411
412         Disable content filtering in minimal simulator mode
413         https://bugs.webkit.org/show_bug.cgi?id=185027
414         <rdar://problem/39736091>
415
416         Reviewed by Jer Noble.
417
418         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
419
420 2018-04-26  Brady Eidson  <beidson@apple.com>
421
422         Add a setting for keeping around all processes and always reusing them per-origin.
423         <rdar://problem/39695798> and https://bugs.webkit.org/show_bug.cgi?id=185020
424
425         Reviewed by Andy Estes.
426
427         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
428
429 2018-04-26  Andy VanWagoner  <thetalecrafter@gmail.com>
430
431         [INTL] Implement Intl.PluralRules
432         https://bugs.webkit.org/show_bug.cgi?id=184312
433
434         Reviewed by JF Bastien.
435
436         Added Intl.PluralRules feature flag.
437
438         * Scripts/webkitperl/FeatureList.pm:
439         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
440
441 2018-04-25  Michael Catanzaro  <mcatanzaro@igalia.com>
442
443         [WPE] Build and link against latest WPEBackend and WPEBackend-fdo
444         https://bugs.webkit.org/show_bug.cgi?id=184643
445
446         Reviewed by Žan Doberšek.
447
448         Add missing INCLUDE_DIRS in many places.
449
450         Adapt to single-header WPE includes.
451
452         Null-initialize padding to silence -Wmissing-field-initializers. (Yuck.)
453
454         * TestWebKitAPI/PlatformWPE.cmake:
455         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
456         (testWebViewWebBackend):
457         * TestWebKitAPI/glib/PlatformWPE.cmake:
458         * WebKitTestRunner/EventSenderProxy.h:
459         * WebKitTestRunner/PlatformWPE.cmake:
460         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
461         * wpe/HeadlessViewBackend/CMakeLists.txt:
462         * wpe/HeadlessViewBackend/HeadlessViewBackend.cpp:
463         * wpe/HeadlessViewBackend/HeadlessViewBackend.h:
464         * wpe/jhbuild.modules:
465
466 2018-04-25  Jonathan Bedard  <jbedard@apple.com>
467
468         REGRESSION (r230998): Bot watcher's dashboard doesn't display number of API test failures
469         https://bugs.webkit.org/show_bug.cgi?id=184982
470
471         Rubber-stamped by Aakash Jain.
472
473         Correctly count the number of API test failures.
474
475         * BuildSlaveSupport/build.webkit.org-config/steps.py:
476         (RunUnitTests.countFailures): Count the number of test failures for the new run-api-tests.
477         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
478         * Scripts/webkitpy/api_tests/manager.py:
479         (Manager.run): Disabled tests are not run.
480
481 2018-04-25  Jiewen Tan  <jiewen_tan@apple.com>
482
483         Remove access to keychain from the WebContent process
484         https://bugs.webkit.org/show_bug.cgi?id=184428
485         <rdar://problem/13150903>
486
487         Reviewed by Brent Fulgham.
488
489         This patch does the followings:
490         1. Added an API test for this patch.
491         2. Instrument DumpRenderTree and WebKitTestRunner to take advantages of new SPIs.
492
493         * DumpRenderTree/mac/UIDelegate.mm:
494         (-[UIDelegate signedPublicKeyAndChallengeStringForWebView:]):
495         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
496         * TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm: Added.
497         (TestWebKitAPI::SSLKeyGeneratorTest::SetUp):
498         (TestWebKitAPI::SSLKeyGeneratorTest::TearDown):
499         (TestWebKitAPI::TEST_F):
500         * WebKitTestRunner/TestController.cpp:
501         (WTR::copySignedPublicKeyAndChallengeString):
502         (WTR::TestController::createOtherPage):
503         (WTR::TestController::createWebViewWithOptions):
504
505 2018-04-25  Wenson Hsieh  <wenson_hsieh@apple.com>
506
507         [Extra zoom mode] The search field on www.bing.com is missing label text
508         https://bugs.webkit.org/show_bug.cgi?id=184975
509         <rdar://problem/39723081>
510
511         Reviewed by Tim Horton.
512
513         Adds UIScriptController.formInputLabel, which asynchronously requests the input label text for the currently
514         focused element in extra zoom mode.
515
516         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
517         (WTR::UIScriptController::formInputLabel const):
518         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
519         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
520         (WTR::UIScriptController::formInputLabel const):
521         * TestRunnerShared/UIScriptContext/UIScriptController.h:
522         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
523         (WTR::UIScriptController::formInputLabel const):
524
525 2018-04-25  Michael Catanzaro  <mcatanzaro@igalia.com>
526
527         [WPE] Should load injected bundle from builddir in developer builds
528         https://bugs.webkit.org/show_bug.cgi?id=184983
529
530         Reviewed by Carlos Alberto Lopez Perez.
531
532         Set WEBKIT_INJECTED_BUNDLE_PATH when running WPE MiniBrowser.
533
534         * Scripts/run-minibrowser:
535
536 2018-04-25  Michael Catanzaro  <mcatanzaro@igalia.com>
537
538         [WPE] libgstggtk.so broken in jhbuild environment
539         https://bugs.webkit.org/show_bug.cgi?id=184984
540
541         Reviewed by Carlos Alberto Lopez Perez.
542
543         Don't pass --enable-glx=no when building libepoxy, to ensure it's compatible with
544         gst-plugins-good.
545
546         * wpe/jhbuild.modules:
547
548 2018-04-25  Ryosuke Niwa  <rniwa@webkit.org>
549
550         PSON: Don't create a new process when navigating to a blob URL, data URL, and about:blank
551         https://bugs.webkit.org/show_bug.cgi?id=184962
552
553         Reviewed by Youenn Fablet.
554
555         Added four test cases for navigating to a blob URL, data URL, and about:blank with process-swap-on-navigation turned on.
556
557         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
558         (ProcessSwap.SameOriginBlobNavigation): Added.
559         (ProcessSwap.CrossOriginBlobNavigation): Added.
560         (ProcessSwap.NavigateToAboutBlank): Added.
561         (ProcessSwap.NavigateToDataURL): Added.
562
563 2018-04-25  Michael Catanzaro  <mcatanzaro@igalia.com>
564
565         [WPE] Remove deprecated functions and properties from the API
566         https://bugs.webkit.org/show_bug.cgi?id=179295
567
568         Reviewed by Žan Doberšek.
569
570         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
571         (testWebViewAuthenticationStorage): Disable this test for now. It will require some effort
572         to rewrite LoadTrackingTest to not require the web view at construction time.
573         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
574         (testWebKitSettings): Don't test private browsing setting, which is gone.
575         * TestWebKitAPI/glib/CMakeLists.txt: Disable TestCookieManager for now.
576
577 2018-04-25  Andy Estes  <aestes@apple.com>
578
579         [Mac] Number of drop items is always 0 when performing a DHTML drag
580         https://bugs.webkit.org/show_bug.cgi?id=184943
581
582         Reviewed by Ryosuke Niwa.
583
584         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
585         * TestWebKitAPI/Tests/mac/DragAndDropPasteboardTests.mm:
586         (-[DragInfo numberOfValidItemsForDrop]):
587         (-[DragInfo setNumberOfValidItemsForDrop:]):
588         (TestWebKitAPI::TEST):
589         * TestWebKitAPI/Tests/mac/full-page-dropzone.html: Added.
590
591 2018-04-25  Jonathan Bedard  <jbedard@apple.com>
592
593         API test harness should be Python
594         https://bugs.webkit.org/show_bug.cgi?id=181043
595         <rdar://problem/36164410>
596
597         Reviewed by David Kilzer.
598
599         Run API tests from a Python script rather than Perl. The Python API tests have
600         the same structure as the layout tests.
601
602         * Scripts/run-api-tests: Changed from Perl to Python.
603         * Scripts/webkitpy/api_tests: Added.
604         * Scripts/webkitpy/api_tests/__init__.py: Added.
605         * Scripts/webkitpy/api_tests/manager.py: Added.
606         (Manager):
607         (Manager.__init__):
608         (Manager._test_list_from_output): Construct a list of tests from the output of
609         TestWTF and TestWebKitAPI.
610         (Manager._find_test_subset): Given a list of all possible tests and command line
611         arguments, return a list of tests which match the provided arguments.
612         (Manager._collect_tests): Run TestWTF and TestWebKitAPI with --gtest_list_tests
613         to determine which tests will be run.
614         (Manager._print_test_result): Formatted print of a test with it's output.
615         (Manager._print_tests_result_with_status): Print all tests and output for tests
616         which ran with a specified exit status.
617         (Manager.run): Collect all tests, run them and then print results from the run.
618         * Scripts/webkitpy/api_tests/run_api_tests.py: Added.
619         (main): Parse arguments, construct a port, early exit for illegal ports and
620         then run tests.
621         (run): Setup logging and printing before using the Manager to run tests.
622         (parse_args): Use argparse to define all options used by run-api-tests.
623         * Scripts/webkitpy/api_tests/runner.py: Added.
624         (Runner):
625         (Runner.__init__):
626         (Runner._shard_tests): Split tests so that each suite runs together.
627         (Runner.command_for_port): Run a command on the device specified by the given
628         port object. Once <https://bugs.webkit.org/show_bug.cgi?id=175204> is completed,
629         this function would be entirely replaced by the server_process factory owned
630         by the port object.
631         (Runner.run): Run all shards in the message_pool.
632         (Runner.handle): Handle reports from child processes.
633         (Runner.result_map_by_status): Return a mapping of tests to output for tests
634         which exit with a specific status.
635         (_Worker):
636         (_Worker.__init__):
637         (_Worker._filter_noisy_output): Filter out objc warnings since these polite the log.
638         (_Worker._run_single_test): Runs a single test in a single child process.
639         (_Worker._run_shard_with_binary): Attempts to run a group of tests in the same
640         child process. If this technique fails, the remaining tests are run singly.
641         (_Worker.handle): Run the specified shard.
642         * Scripts/webkitpy/port/base.py:
643         (Port):
644         (Port.check_api_test_build): Check if TestWTF and TestWebKitAPI are built.
645         (Port.environment_for_api_tests): Return the environment needed to run
646         the TestWebKitAPI binary.
647         (Port. path_to_api_test_binaries): Return a list of the path to all binaries
648         used when running API tests.
649         (Port._build_api_tests): Build TestWTF and TestWebKitAPI if required.
650         * Scripts/webkitpy/port/mac.py:
651         (MacPort.environment_for_api_tests): Enable GuardMalloc for API tests.
652         * Scripts/webkitpy/port/server_process.py: 
653         (ServerProcess.pop_all_buffered_stdout):
654
655 2018-04-25  Carlos Garcia Campos  <cgarcia@igalia.com>
656
657         Incorrect number of WebDriver test failures shown in the bots
658         https://bugs.webkit.org/show_bug.cgi?id=184959
659
660         Reviewed by Michael Catanzaro.
661
662         The regular expression we are using to get the number of failures from the log is matching a particular test
663         error output. Improve the regular expression to avoid matching other strings in the log. Ensure that only
664         matches at the beginning of lines and add spaces after Unexpected and before the (<failures>).
665
666         * BuildSlaveSupport/build.webkit.org-config/steps.py:
667         (RunWebDriverTests.commandComplete):
668
669 2018-04-25  Carlos Garcia Campos  <cgarcia@igalia.com>
670
671         [GTK] Implement MouseEvent.buttons
672         https://bugs.webkit.org/show_bug.cgi?id=184913
673
674         Reviewed by Žan Doberšek.
675
676         Include the mouse buttons state in WTR synthesized events.
677
678         * WebKitTestRunner/EventSenderProxy.h:
679         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
680         (WTR::EventSenderProxy::EventSenderProxy):
681         (WTR::EventSenderProxy::createMouseButtonEvent):
682         (WTR::EventSenderProxy::mouseDown):
683         (WTR::EventSenderProxy::mouseUp):
684         (WTR::EventSenderProxy::mouseMoveTo):
685
686 2018-04-24  Pablo Saavedra  <psaavedra@igalia.com>
687
688         [GTK][WPE] Fix triggered bot name on the WPE Debug Build bot
689         https://bugs.webkit.org/show_bug.cgi?id=184954
690
691         Reviewed by Michael Catanzaro.
692
693         * BuildSlaveSupport/build.webkit.org-config/config.json:
694
695 2018-04-24  Saam Barati  <sbarati@apple.com>
696
697         Keep around a pre-warmed process when doing process swap on navigation
698         https://bugs.webkit.org/show_bug.cgi?id=184765
699         <rdar://problem/39685099>
700
701         Reviewed by Ryosuke Niwa and Brady Eidson.
702
703         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
704
705 2018-04-24  Aakash Jain  <aakash_jain@apple.com>
706
707         [build.webkit.org] unit-tests fail when passwords.json is missing
708         https://bugs.webkit.org/show_bug.cgi?id=180390
709
710         Reviewed by Carlos Alberto Lopez Perez.
711
712         * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
713         (loadBuilderConfig): Add support for test_mode. Load mock passwords in test_mode.
714         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
715         (BuildBotConfigLoader._add_dependant_modules_to_sys_modules): Call _add_webkitpy_to_sys_path as well.
716         (BuildBotConfigLoader._mock_open): Deleted.
717         (BuildBotConfigLoader.load_config): Deleted.
718
719 2018-04-24  John Wilander  <wilander@apple.com>
720
721         From-Origin: Support for 'same' and 'same-site' response header, nested frame origin check
722         https://bugs.webkit.org/show_bug.cgi?id=184560
723         <rdar://problem/38901344>
724
725         Reviewed by Youenn Fablet and Daniel Bates.
726
727         This patch implements significant parts of https://github.com/whatwg/fetch/issues/687.
728         We consume the From-Origin response header and only load the resource if:
729         - The header is non-existent, empty, or invalid.
730         - The header specifies 'same' and the resource's origin matches the originating
731           document's origin and the origins up the frame tree.
732         - The header specifies 'same-site' and the resource's eTLD+1 matches the originating
733           document's eTLD+1 and the eTLD+1 of the documents up the frame tree.
734
735         This feature is experimental and off by default.
736
737         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
738         * TestWebKitAPI/Tests/WebCore/HTTPParsers.cpp: Added.
739         (TestWebKitAPI::TEST):
740             Tests for From-Origin header parsing.
741
742 2018-04-24  Carlos Garcia Campos  <cgarcia@igalia.com>
743
744         Unreviewed. Update W3C WebDriver imported tests.
745
746         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
747         (WebDriverW3CExecutor.__init__):
748
749 2018-04-24  Zan Dobersek  <zdobersek@igalia.com>
750
751         [WPE] Remove libgbm dependency
752         https://bugs.webkit.org/show_bug.cgi?id=184906
753
754         Reviewed by Carlos Garcia Campos.
755
756         Stop searching for libgbm, using its compiler flags for the
757         HeadlessViewBackend compilation and linking against the .so object.
758         This is not necessary anymore after r230562 switched to a different
759         backend implementation for testing.
760
761         * wpe/HeadlessViewBackend/CMakeLists.txt:
762         * wpe/install-dependencies:
763
764 2018-04-23  Carlos Garcia Campos  <cgarcia@igalia.com>
765
766         [GLIB] Make it possible to use a different timeout for slow test cases in GLib tests
767         https://bugs.webkit.org/show_bug.cgi?id=184816
768
769         Reviewed by Michael Catanzaro.
770
771         Pass a function from api test runner to glib test runner to check if a test is slow and use the given slow
772         timeout.
773
774         * TestWebKitAPI/glib/TestExpectations.json:
775         * glib/api_test_runner.py:
776         (TestRunner._run_test_glib.is_slow_test):
777         (TestRunner._run_test_glib):
778         * glib/glib_test_runner.py:
779         (GLibTestRunner.__init__):
780         (GLibTestRunner._stop_timeout):
781         (GLibTestRunner._subtest_start):
782         (GLibTestRunner._subtest_end):
783
784 2018-04-23  Wenson Hsieh  <wenson_hsieh@apple.com>
785
786         [Extra zoom mode] REGRESSION(230860) Unable to change time input values using UI
787         https://bugs.webkit.org/show_bug.cgi?id=184901
788         <rdar://problem/39664797>
789
790         Reviewed by Tim Horton.
791
792         Introduce a new UIScriptController method to set the value of a currently focused input of type time, by
793         interacting with the UI. See WebKit ChangeLogs for more detail.
794
795         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
796         (WTR::UIScriptController::setTimePickerValue):
797         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
798         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
799         (WTR::UIScriptController::setTimePickerValue):
800         * TestRunnerShared/UIScriptContext/UIScriptController.h:
801         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
802         (WTR::UIScriptController::setTimePickerValue):
803
804 2018-04-23  Zalan Bujtas  <zalan@apple.com>
805
806         [LayoutFormattingContext] Initial commit.
807         https://bugs.webkit.org/show_bug.cgi?id=184896
808
809         Reviewed by Antti Koivisto.
810
811         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
812
813 2018-04-23  Chris Dumez  <cdumez@apple.com>
814
815         [WKTR] Move navigation policy decision from the injected bundle to the UIProcess
816         https://bugs.webkit.org/show_bug.cgi?id=184801
817
818         Reviewed by Geoffrey Garen.
819
820         Move navigation policy decision from the injected bundle to the UIProcess in WebKitTestRunner.
821         This is a more common configuration and therefore should be the default testing configuration.
822
823         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
824         (WTR::InjectedBundlePage::decidePolicyForNavigationAction):
825         Always respond with 'PassThrough' in the InjectedBundle so the UIProcess
826         is now asked for the policy decision.
827
828 2018-04-23  Pablo Saavedra  <psaavedra@igalia.com>
829
830         [GTK][WPE] Add Debug bots (build and tests) for WPE
831         https://bugs.webkit.org/show_bug.cgi?id=184887
832
833         Reviewed by Carlos Alberto Lopez Perez.
834
835         Deployed 2 new bots for WPE Debug: wpe-linux-bot-3 and
836         wpe-linux-bot-4
837
838         Both bots have already the credentials ready to authenticated against
839         build.webkit.org. They provides the bots for the "debug" configuration over
840         the "WPE" platform and building for the "x86_64" architecture:
841         WPE Linux 64-bit Debug (Build) and WPE Linux 64-bit Debug (Tests) 
842
843         * BuildSlaveSupport/build.webkit.org-config/config.json:
844         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
845
846 2018-04-23  Chris Dumez  <cdumez@apple.com>
847
848         HTML String load cannot be prevented by responding 'Cancel' asynchronously in decidePolicyForNavigationAction
849         https://bugs.webkit.org/show_bug.cgi?id=184848
850         <rdar://problem/39145306>
851
852         Reviewed by Brady Eidson.
853
854         Add API test coverage.
855
856         * TestWebKitAPI/Tests/WebKitCocoa/DecidePolicyForNavigationAction.mm:
857         (-[DecidePolicyForNavigationActionController webView:decidePolicyForNavigationAction:decisionHandler:]):
858         (TEST):
859
860 2018-04-23  Michael Catanzaro  <mcatanzaro@igalia.com>
861
862         [GTK][WPE] TestSSL fails due to additional TLS errors returned
863         https://bugs.webkit.org/show_bug.cgi?id=184860
864
865         Reviewed by Carlos Garcia Campos.
866
867         Add script and config file for regenerating the test certificate.
868         Regenerate it. TestSSL no longer fails on my machine.
869
870         I do see a ton of network process crashes and JavaScript errors, none of
871         which prevent the test from passing, but this commit only claims to fix
872         the certificate validation portion of the test.
873
874         * TestWebKitAPI/Tests/WebKitGLib/resources/generate-test-cert.sh: Added.
875         * TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.conf: Added.
876         * TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.pem:
877
878 2018-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>
879
880         [GLIB] ERROR: Thread was unable to be detached when running /jsc/vm test in debug
881         https://bugs.webkit.org/show_bug.cgi?id=184815
882
883         Reviewed by Michael Catanzaro.
884
885         This is because in the test we are calling both join and detach. We should only call join.
886
887         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
888         (testsJSCVirtualMachine):
889
890 2018-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>
891
892         [GLIB] Test /jsc/prototypes crashes in debug
893         https://bugs.webkit.org/show_bug.cgi?id=184814
894
895         Reviewed by Michael Catanzaro.
896
897         We should also call the constructor/destructor of Bar struct to ensure Foo is constructed.
898
899         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
900         (barCreate):
901         (barFree):
902
903 2018-04-20  Michael Catanzaro  <mcatanzaro@igalia.com>
904
905         REGRESSION(r228088): [SOUP] Check TLS errors for WebSockets on GTlsConnection::accept-certificate
906         https://bugs.webkit.org/show_bug.cgi?id=184804
907
908         Reviewed by Carlos Garcia Campos.
909
910         * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
911         (WebSocketTest::WebSocketTest):
912         (WebSocketTest::~WebSocketTest):
913         (WebSocketTest::serverWebSocketCallback):
914         (WebSocketTest::webSocketTestResultCallback):
915         (WebSocketTest::connectToServerAndWaitForEvents):
916         (testWebSocketTLSErrors):
917         (beforeAll):
918
919 2018-04-20  Chris Dumez  <cdumez@apple.com>
920
921         Unreviewed, update 2 more API tests after r230876.
922
923         * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
924         (TEST):
925         * TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
926         (TestWebKitAPI::TEST):
927
928 2018-04-20  Tim Horton  <timothy_horton@apple.com>
929
930         Adjust geolocation feature flag
931         https://bugs.webkit.org/show_bug.cgi?id=184856
932
933         Reviewed by Wenson Hsieh.
934
935         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
936
937 2018-04-20  Chris Dumez  <cdumez@apple.com>
938
939         REGRESSION (r229828): web view doesn’t update or respond to resizing until client calls policy decision handler
940         https://bugs.webkit.org/show_bug.cgi?id=184210
941         <rdar://problem/39072354>
942
943         Reviewed by Wenson Hsieh.
944
945         * TestWebKitAPI/Tests/WebKit/large-red-square-image.html:
946         * TestWebKitAPI/Tests/WebKitCocoa/dragstart-change-selection-offscreen.html:
947         Add viewport meta tags.
948
949         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
950         (-[WKWebView _test_waitForDidFinishNavigation]):
951         Update _test_waitForDidFinishNavigation to wait for the next presentation update
952         to make iOS API tests happy without having to modify each of them.
953
954 2018-04-20  Timothy Hatcher  <timothy@apple.com>
955
956         REGRESSION: API test WebKit.BackgroundColorSystemColor is failing
957
958         https://bugs.webkit.org/show_bug.cgi?id=184849
959         rdar://problem/39386405
960
961         Reviewed by Brian Burg.
962
963         * TestWebKitAPI/Tests/mac/BackgroundColor.mm:
964         (TestWebKitAPI::TEST): Use CGColorEqualToColor since we might get a different
965         CGColor pointer from NSColor each time.
966
967 2018-04-20  Wenson Hsieh  <wenson_hsieh@apple.com>
968
969         [Extra zoom mode] Injected bundle form client should be notified when editing text fields
970         https://bugs.webkit.org/show_bug.cgi?id=184822
971         <rdar://problem/38807319>
972
973         Reviewed by Tim Horton.
974
975         Add WebKitTestRunner support for listening to form editing SPI hooks in the injected bundle. The new layout test
976         installs callbacks that listen for "begin editing", "end editing", and "text changed" calls to injected bundle
977         SPI. See other ChangeLogs for more detail.
978
979         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
980         (WTR::UIScriptController::enterText):
981         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
982
983         Add UIScriptController support for simulating text entry in the currently focused element.
984
985         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
986         (WTR::UIScriptController::enterText):
987         * TestRunnerShared/UIScriptContext/UIScriptController.h:
988         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
989
990         Add TestRunner bindings for registering injected bundle form client callbacks.
991
992         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
993         (WTR::handleTextDidChangeInTextField):
994         (WTR::handleTextFieldDidBeginEditing):
995         (WTR::handleTextFieldDidEndEditing):
996         (WTR::InjectedBundle::didCreatePage):
997
998         Set the injected bundle form editor client.
999
1000         (WTR::InjectedBundle::setUpInjectedBundleClients):
1001         (WTR::InjectedBundle::textDidChangeInTextField):
1002         (WTR::InjectedBundle::textFieldDidBeginEditing):
1003         (WTR::InjectedBundle::textFieldDidEndEditing):
1004         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
1005         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1006         (WTR::TestRunner::installTextDidChangeInTextFieldCallback):
1007         (WTR::TestRunner::textDidChangeInTextFieldCallback):
1008         (WTR::TestRunner::installTextFieldDidBeginEditingCallback):
1009         (WTR::TestRunner::textFieldDidBeginEditingCallback):
1010         (WTR::TestRunner::installTextFieldDidEndEditingCallback):
1011         (WTR::TestRunner::textFieldDidEndEditingCallback):
1012         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1013         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1014         (WTR::UIScriptController::enterText):
1015
1016 2018-04-20  Youenn Fablet  <youenn@apple.com>
1017
1018         WebPage sometimes incorrectly rules out PDF as a mime type that can be showed
1019         https://bugs.webkit.org/show_bug.cgi?id=184369
1020
1021         Reviewed by Chris Dumez.
1022
1023         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
1024         (TEST):
1025
1026 2018-04-20  Daniel Bates  <dabates@apple.com>
1027
1028         Remove Strong Password decoration when text field type changes
1029         https://bugs.webkit.org/show_bug.cgi?id=184795
1030         <rdar://problem/38325108>
1031
1032         Reviewed by Antti Koivisto.
1033
1034         Add a unit test to ensure the injected bundle API and WebKit UI delegate SPI is invoked
1035         when the field has the Strong Password button and its type changes.
1036
1037         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1038         * TestWebKitAPI/Tests/WebKitCocoa/DidResignInputElementStrongPasswordAppearance.mm: Added.
1039         (didResignInputElementStrongPasswordAppearance):
1040         (-[DidResignInputElementStrongPasswordAppearance webProcessPlugIn:didCreateBrowserContextController:]):
1041         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
1042         (-[DidResignInputElementStrongPasswordAppearanceDelegate _webView:didResignInputElementStrongPasswordAppearanceWithUserInfo:]):
1043         (-[DidResignInputElementStrongPasswordAppearanceDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
1044         (TEST):
1045
1046 2018-04-20  Brady Eidson  <beidson@apple.com>
1047
1048         Add a test to verify load/unload/pageshow/pagehide all work with process swapping.
1049         https://bugs.webkit.org/show_bug.cgi?id=184807
1050
1051         Reviewed by Chris Dumez.
1052
1053         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1054         (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
1055
1056 2018-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1057
1058         Unreviewed. Mark TestJSC as slow in debug.
1059
1060         Only /jsc/vm is slow, but GLib API test runner only checks the test binary for GLib tests.
1061
1062         * TestWebKitAPI/glib/TestExpectations.json:
1063
1064 2018-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1065
1066         [GTK] Local cross references are broken in API documentation
1067         https://bugs.webkit.org/show_bug.cgi?id=184771
1068
1069         Reviewed by Michael Catanzaro.
1070
1071         The problem is that gtkdoc-fixxref expects the links to be in the form html/modulename (like the installed
1072         ones), but we generate the documentation as modulename/html. So, links to WebKitDOM or JSC are generated as
1073         ../html/Foo. The rebase command considers html to be the module name in this case, creating broken links in all
1074         the cases.
1075
1076         * gtk/gtkdoc.py:
1077         (GTKDoc._copy_doc_files_to_output_dir): We don't have any html dir in the source tree so, we are not copying
1078         anything here.
1079         (GTKDoc._run_gtkdoc_mkhtml): Create the html dir here using html/modulename instead now.
1080         (GTKDoc._run_gtkdoc_fixxref): Pass the new directory as module dir to gtkdoc-fixxref and fix several links for
1081         which gtkdoc-fixxref always uses absolute paths.
1082         * gtk/manifest.txt.in: Update the documentation html paths and include the JSC GLib API in the tarball too.
1083
1084 2018-04-19  Brady Eidson  <beidson@apple.com>
1085
1086         Make back forward cache work with process swapping.
1087         <rdar://problem/38676604> and https://bugs.webkit.org/show_bug.cgi?id=184793
1088
1089         Reviewed by Chris Dumez.
1090
1091         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1092
1093 2018-04-19  David Kilzer  <ddkilzer@apple.com>
1094
1095         Enable Objective-C weak references
1096         <https://webkit.org/b/184789>
1097         <rdar://problem/39571716>
1098
1099         Reviewed by Dan Bernstein.
1100
1101         * ContentExtensionTester/Configurations/Base.xcconfig:
1102         (CLANG_ENABLE_OBJC_WEAK): Enable.
1103         * DumpRenderTree/mac/Configurations/Base.xcconfig:
1104         (CLANG_ENABLE_OBJC_WEAK): Enable.
1105         * ImageDiff/cg/Configurations/Base.xcconfig:
1106         (CLANG_ENABLE_OBJC_WEAK): Enable.
1107         * MiniBrowser/Configurations/Base.xcconfig:
1108         (CLANG_ENABLE_OBJC_WEAK): Enable.
1109         * TestWebKitAPI/Configurations/Base.xcconfig:
1110         (CLANG_ENABLE_OBJC_WEAK): Enable.
1111         * WebEditingTester/Configurations/Base.xcconfig:
1112         (CLANG_ENABLE_OBJC_ARC): Re-order.
1113         * WebKitLauncher/Configurations/Base.xcconfig: Add newline at
1114         end of file.
1115         (CLANG_ENABLE_OBJC_WEAK): Enable.
1116         * WebKitTestRunner/Configurations/Base.xcconfig:
1117         (CLANG_ENABLE_OBJC_WEAK): Enable.
1118
1119 2018-04-19  Chris Dumez  <cdumez@apple.com>
1120
1121         REGRESSION (r229133): decidePolicyForNavigationAction not called for loading an HTML string
1122         https://bugs.webkit.org/show_bug.cgi?id=184209
1123         <rdar://problem/39145306>
1124
1125         Reviewed by Ryosuke Niwa.
1126
1127         Add API test coverage.
1128
1129         * TestWebKitAPI/Tests/WebKitCocoa/DecidePolicyForNavigationAction.mm:
1130         (TEST):
1131
1132 2018-04-18  Ross Kirsling  <ross.kirsling@sony.com>
1133
1134         [WinCairo][EWS] Build bot should clean user temp directory each time.
1135         https://bugs.webkit.org/show_bug.cgi?id=184761
1136
1137         Reviewed by Lucas Forschler.
1138
1139         * EWSTools/Start-Queue.ps1:
1140         Clean user's temp directory before each build, so that Windows git doesn't fill it up over time.
1141
1142 2018-04-18  Ross Kirsling  <ross.kirsling@sony.com>
1143
1144         Buildbots using Python zipfile should enable compression
1145         https://bugs.webkit.org/show_bug.cgi?id=184759
1146
1147         Reviewed by Lucas Forschler.
1148
1149         * BuildSlaveSupport/built-product-archive:
1150         (createZipManually):
1151         Default is to archive without compressing, so tell it to compress as well. 
1152
1153 2018-04-18  Nan Wang  <n_wang@apple.com>
1154
1155         AX: [macOS] WebKit hangs when triggering an alert from an AOM increment event
1156         https://bugs.webkit.org/show_bug.cgi?id=184742
1157
1158         Reviewed by Chris Fleizach.
1159
1160         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
1161         (AccessibilityUIElement::increment):
1162         (AccessibilityUIElement::decrement):
1163         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1164         (WTR::AccessibilityUIElement::asyncIncrement):
1165         (WTR::AccessibilityUIElement::asyncDecrement):
1166         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
1167         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1168         (WTR::AccessibilityUIElement::increment):
1169         (WTR::AccessibilityUIElement::decrement):
1170         (WTR::AccessibilityUIElement::asyncIncrement):
1171         (WTR::AccessibilityUIElement::asyncDecrement):
1172
1173 2018-04-18  Ross Kirsling  <ross.kirsling@sony.com>
1174
1175         Fix archive step for WinCairo build bot.
1176         https://bugs.webkit.org/show_bug.cgi?id=184715
1177
1178         Reviewed by Lucas Forschler.
1179
1180         * BuildSlaveSupport/built-product-archive:
1181         (archiveBuiltProduct):
1182         (extractBuiltProduct):
1183
1184 2018-04-18  Sihui Liu  <sihui_liu@apple.com>
1185
1186         REGRESSION: Using the reload button while offline pushes identical pages onto the back/forward list
1187         https://bugs.webkit.org/show_bug.cgi?id=184570
1188         <rdar://problem/34807323>
1189
1190         Reviewed by Chris Dumez.
1191
1192         Add API test coverage.
1193
1194         * TestWebKitAPI/Tests/WebKitCocoa/LoadAlternateHTMLString.mm:
1195         (TEST):
1196
1197 2018-04-18  Chris Dumez  <cdumez@apple.com>
1198
1199         Add support for converting a local window to a remote window
1200         https://bugs.webkit.org/show_bug.cgi?id=184515
1201         <rdar://problem/39011318>
1202
1203         Reviewed by Ryosuke Niwa.
1204
1205         * MiniBrowser/mac/AppDelegate.m:
1206         (defaultConfiguration):
1207         * MiniBrowser/mac/SettingsController.h:
1208         * MiniBrowser/mac/SettingsController.m:
1209         (-[SettingsController _populateMenu]):
1210         (-[SettingsController validateMenuItem:]):
1211         (-[SettingsController processSwapOnWindowOpenWithOpenerEnabled]):
1212         (-[SettingsController toggleProcessSwapOnWindowOpenWithOpener:]):
1213         Add menu entry in minibrowser to turn on process swap on cross-origin window.open().
1214
1215         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1216         Turn on process swap on cross-origin window.open() for corresponding test and update
1217         test to expect that a new WebProcess is created.
1218
1219         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1220         (WTR::InjectedBundlePage::decidePolicyForResponse):
1221         Add null checks for injectedBundle.testRunner(). When we swap process on navigation,
1222         the InjectedBundlePage::decidePolicyForResponse() gets called in the new process.
1223         In this new process, we have constructed a InjectedBundlePage for the page but we
1224         have not initialized the InjectedBundle members such as testRunner.
1225
1226         * WebKitTestRunner/TestController.cpp:
1227         (WTR::TestController::createWebViewWithOptions):
1228         (WTR::updateTestOptionsFromTestHeader):
1229         * WebKitTestRunner/TestOptions.h:
1230         (WTR::TestOptions::hasSameInitializationOptions const):
1231         Add a way for layout tests to turn on process swap on navigation via a test header.
1232
1233 2018-04-18  Yusuke Suzuki  <utatane.tea@gmail.com>
1234
1235         Unreviewed, reland r230697, r230720, and r230724.
1236         https://bugs.webkit.org/show_bug.cgi?id=184600
1237
1238         * Scripts/run-jsc-stress-tests:
1239
1240 2018-04-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1241
1242         [GLIB] Make it possible to handle JSCClass external properties not added to the prototype
1243         https://bugs.webkit.org/show_bug.cgi?id=184687
1244
1245         Reviewed by Michael Catanzaro.
1246
1247         Add test cases for the new API.
1248
1249         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
1250         (fooCreate):
1251         (fooFree):
1252         (fooGetProperty):
1253         (fooSetProperty):
1254         (testJSCPromises):
1255         (testJSCGarbageCollector):
1256         (testsJSCVirtualMachine):
1257         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp:
1258         (windowObjectClearedCallback):
1259
1260 2018-04-17  Wenson Hsieh  <wenson_hsieh@apple.com>
1261
1262         [Extra zoom mode] Programmatically changing focus when an element already has focus is a confusing experience
1263         https://bugs.webkit.org/show_bug.cgi?id=184635
1264         <rdar://problem/39440642>
1265
1266         Reviewed by Tim Horton.
1267
1268         Add plumbing to support invoking `didHideKeyboardCallback` and `didShowKeyboardCallback` when (respectively)
1269         dismissing or presenting fullscreen input view controllers in extra zoom mode.
1270
1271         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1272         (-[TestRunnerWKWebView initWithFrame:configuration:]):
1273         (-[TestRunnerWKWebView dealloc]):
1274         (-[TestRunnerWKWebView _invokeShowKeyboardCallbackIfNecessary]):
1275         (-[TestRunnerWKWebView _invokeHideKeyboardCallbackIfNecessary]):
1276         (-[TestRunnerWKWebView _keyboardDidShow:]):
1277         (-[TestRunnerWKWebView _keyboardDidHide:]):
1278         (-[TestRunnerWKWebView _webView:didPresentFocusedElementViewController:]):
1279         (-[TestRunnerWKWebView _webView:didDismissFocusedElementViewController:]):
1280
1281 2018-04-17  Michael Catanzaro  <mcatanzaro@igalia.com>
1282
1283         [GTK] Webkit should spoof as Safari on a Mac for Outlook.com
1284         https://bugs.webkit.org/show_bug.cgi?id=184573
1285
1286         Reviewed by Carlos Alberto Lopez Perez.
1287
1288         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
1289         (TestWebKitAPI::TEST):
1290
1291 2018-04-17  Fujii Hironori  <Hironori.Fujii@sony.com>
1292
1293         [WinCairo][TestWebKitAPI] Implement PlatformWebView for TestWebKit
1294         https://bugs.webkit.org/show_bug.cgi?id=184524
1295
1296         Reviewed by Alex Christensen.
1297
1298         Resurrect PlatformWebView for Windows port which was removed in Bug 104607.
1299
1300         * TestWebKitAPI/PlatformWebView.h:
1301         * TestWebKitAPI/PlatformWin.cmake:
1302         * TestWebKitAPI/win/InjectedBundleControllerWin.cpp: Added.
1303         (TestWebKitAPI::InjectedBundleController::platformInitialize):
1304         * TestWebKitAPI/win/PlatformUtilitiesWin.cpp: Added.
1305         (TestWebKitAPI::Util::moduleDirectory):
1306         (TestWebKitAPI::Util::createInjectedBundlePath):
1307         (TestWebKitAPI::Util::createURLForResource):
1308         (TestWebKitAPI::Util::URLForNonExistentResource):
1309         (TestWebKitAPI::Util::isKeyDown):
1310         * TestWebKitAPI/win/PlatformWebViewWin.cpp: Added.
1311         (TestWebKitAPI::PlatformWebView::registerWindowClass):
1312         (TestWebKitAPI::PlatformWebView::PlatformWebView):
1313         (TestWebKitAPI::PlatformWebView::initialize):
1314         (TestWebKitAPI::PlatformWebView::~PlatformWebView):
1315         (TestWebKitAPI::PlatformWebView::page const):
1316         (TestWebKitAPI::PlatformWebView::resizeTo):
1317         (TestWebKitAPI::PlatformWebView::simulateSpacebarKeyPress):
1318         (TestWebKitAPI::PlatformWebView::simulateAltKeyPress):
1319         (TestWebKitAPI::PlatformWebView::simulateRightClick):
1320         (TestWebKitAPI::PlatformWebView::simulateMouseMove):
1321         (TestWebKitAPI::PlatformWebView::wndProc):
1322         * TestWebKitAPI/win/UtilitiesWin.cpp: Added.
1323         (TestWebKitAPI::Util::run):
1324         (TestWebKitAPI::Util::spinRunLoop):
1325         (TestWebKitAPI::Util::sleep):
1326
1327 2018-04-17  Jonathan Bedard  <jbedard@apple.com>
1328
1329         Fix hasher tests for system with 32 bit longs
1330         https://bugs.webkit.org/show_bug.cgi?id=184708
1331         <rdar://problem/39459977>
1332
1333         Reviewed by Mark Lam.
1334
1335         Some systems have 32 bit longs. The Hasher WTF tests should handle this case.
1336
1337         * TestWebKitAPI/Tests/WTF/Hasher.cpp:
1338         (TestWebKitAPI::TEST):
1339
1340 2018-04-17  Commit Queue  <commit-queue@webkit.org>
1341
1342         Unreviewed, rolling out r230697, r230720, and r230724.
1343         https://bugs.webkit.org/show_bug.cgi?id=184717
1344
1345         These caused multiple failures on the Test262 testers.
1346         (Requested by mlewis13 on #webkit).
1347
1348         Reverted changesets:
1349
1350         "[WebAssembly][Modules] Prototype wasm import"
1351         https://bugs.webkit.org/show_bug.cgi?id=184600
1352         https://trac.webkit.org/changeset/230697
1353
1354         "[WebAssembly][Modules] Implement function import from wasm
1355         modules"
1356         https://bugs.webkit.org/show_bug.cgi?id=184689
1357         https://trac.webkit.org/changeset/230720
1358
1359         "[JSC] Rename runWebAssembly to runWebAssemblySuite"
1360         https://bugs.webkit.org/show_bug.cgi?id=184703
1361         https://trac.webkit.org/changeset/230724
1362
1363 2018-04-17  Jonathan Bedard  <jbedard@apple.com>
1364
1365         Unreviewed rollout of r230632. Regression in memory usage.
1366
1367         That bug tracked in https://bugs.webkit.org/show_bug.cgi?id=184569.
1368
1369         * DumpRenderTree/TestOptions.h:
1370         * DumpRenderTree/mac/DumpRenderTree.mm:
1371         (runTest):
1372         (shouldOverrideAndDisableCSSAnimationsAndCSSTransitionsBackedByWebAnimationsPreference): Deleted.
1373         * WebKitTestRunner/TestController.cpp:
1374         (WTR::TestController::resetPreferencesToConsistentValues):
1375         * WebKitTestRunner/TestOptions.cpp:
1376         (WTR::TestOptions::TestOptions):
1377         (WTR::isLegacyAnimationEngineTestPath): Deleted.
1378         * WebKitTestRunner/TestOptions.h:
1379
1380 2018-04-17  Yusuke Suzuki  <utatane.tea@gmail.com>
1381
1382         [JSC] Rename runWebAssembly to runWebAssemblySuite
1383         https://bugs.webkit.org/show_bug.cgi?id=184703
1384
1385         Reviewed by JF Bastien.
1386
1387         * Scripts/run-jsc-stress-tests:
1388
1389 2018-04-17  Yusuke Suzuki  <utatane.tea@gmail.com>
1390
1391         [WebAssembly][Modules] Implement function import from wasm modules
1392         https://bugs.webkit.org/show_bug.cgi?id=184689
1393
1394         Reviewed by JF Bastien.
1395
1396         Add runWebAssemblyDirect, which runs wasm file directly.
1397
1398         * Scripts/run-jsc-stress-tests:
1399
1400 2018-04-17  Saam Barati  <sbarati@apple.com>
1401
1402         Add system trace points for process launch and for initializeWebProcess
1403         https://bugs.webkit.org/show_bug.cgi?id=184669
1404
1405         Reviewed by Simon Fraser.
1406
1407         * Tracing/SystemTracePoints.plist:
1408
1409 2018-04-17  Ross Kirsling  <ross.kirsling@sony.com>
1410
1411         Add debug bots for WinCairo.
1412         https://bugs.webkit.org/show_bug.cgi?id=184663
1413
1414         Reviewed by Lucas Forschler.
1415
1416         * BuildSlaveSupport/build.webkit.org-config/config.json:
1417         Add a debug build bot and two debug test bots.
1418
1419         * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
1420         * BuildSlaveSupport/build.webkit.org-config/templates/root.html:
1421         Add a WinCairo category to build.webkit.org.
1422
1423 2018-04-17  Zalan Bujtas  <zalan@apple.com>
1424
1425         [LayoutReloaded] Set inline-block box position.
1426         https://bugs.webkit.org/show_bug.cgi?id=184690
1427
1428         Reviewed by Antti Koivisto.
1429
1430         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
1431         (InlineFormattingContext.prototype._handleInlineBlock):
1432         * LayoutReloaded/Utils.js:
1433         (Utils._dumpBox):
1434         * LayoutReloaded/test/inline-block-with-fixed-width-height.html:
1435
1436 2018-04-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1437
1438         [GLIB] Add API to clear JSCContext uncaught exception
1439         https://bugs.webkit.org/show_bug.cgi?id=184685
1440
1441         Reviewed by Žan Doberšek.
1442
1443         Add test cases for the new API.
1444
1445         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
1446         (testJSCExceptions):
1447
1448 2018-04-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1449
1450         [GLIB] Add API to query, delete and enumerate properties
1451         https://bugs.webkit.org/show_bug.cgi?id=184647
1452
1453         Reviewed by Michael Catanzaro.
1454
1455         Add test cases for the new API.
1456
1457         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
1458         (testJSCObject):
1459         (testJSCClass):
1460         (testJSCPrototypes):
1461
1462 2018-04-16  Zalan Bujtas  <zalan@apple.com>
1463
1464         [LayoutReloaded] Add support for replaced box.
1465         https://bugs.webkit.org/show_bug.cgi?id=184680
1466
1467         Reviewed by Antti Koivisto.
1468
1469         Basic support for inline replaced.
1470
1471         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
1472         (InlineFormattingContext.prototype._handleInlineBox):
1473         (InlineFormattingContext.prototype._handleInlineBlock):
1474         (InlineFormattingContext.prototype._handleReplaced):
1475         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
1476         (Line.prototype.lastLineBox):
1477         (Line.prototype.addInlineBox):
1478         (Line.prototype.addInlineContainerBox): Deleted.
1479         * LayoutReloaded/TreeBuilder.js:
1480         (TreeBuilder.prototype._createAndAttachBox):
1481         * LayoutReloaded/Utils.js:
1482         (Utils._dumpBox):
1483         * LayoutReloaded/test/index.html:
1484         * LayoutReloaded/test/inline-simple-replaced.html: Added.
1485
1486 2018-04-16  Zalan Bujtas  <zalan@apple.com>
1487
1488         [LayoutReloaded] Minor InlineFormattingContext::layout() cleanup.
1489         https://bugs.webkit.org/show_bug.cgi?id=184679
1490
1491         Reviewed by Antti Koivisto.
1492
1493         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
1494         (InlineFormattingContext):
1495         (InlineFormattingContext.prototype.layout):
1496         (InlineFormattingContext.prototype._handleInlineContainer):
1497         (InlineFormattingContext.prototype._handleInlineContent):
1498         (InlineFormattingContext.prototype._handleInlineBlock):
1499         (InlineFormattingContext.prototype._handleReplacedBox):
1500         (InlineFormattingContext.prototype._clearNeedsLayoutAndMoveToNextSibling):
1501         (InlineFormattingContext.prototype._handleInlineBlockContainer): Deleted.
1502         (InlineFormattingContext.prototype._clearAndMoveToNext): Deleted.
1503
1504 2018-04-16  Zalan Bujtas  <zalan@apple.com>
1505
1506         [LayoutReloaded] Introduce fragmentation state/context.
1507         https://bugs.webkit.org/show_bug.cgi?id=184677
1508
1509         Reviewed by Antti Koivisto.
1510
1511         State/context for fragmented content (multicol, regions, pagination etc).
1512
1513         * LayoutReloaded/FormattingContext/FragmentationContext.js: Added.
1514         (FragmentationContext):
1515         * LayoutReloaded/FormattingState/FragmentationState.js: Added.
1516         (FragmentationState):
1517         (FragmentationState.prototype.formattingState):
1518
1519 2018-04-16  Andy Estes  <aestes@apple.com>
1520
1521         [iOS] Enable WKPDFView by default
1522         https://bugs.webkit.org/show_bug.cgi?id=184675
1523         <rdar://problem/27885452>
1524
1525         Reviewed by Darin Adler.
1526
1527         * TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm:
1528
1529 2018-04-16  Leo Balter  <leonardo.balter@gmail.com>
1530
1531         Perl-based Test262 runner
1532         https://bugs.webkit.org/show_bug.cgi?id=183343
1533
1534         Reviewed by Michael Saboff.
1535
1536         * Scripts/test262-helpers/README.md: Added.
1537         * Scripts/test262-helpers/agent.js: Added.
1538         (262.getGlobal):
1539         (262.setGlobal):
1540         (262.destroy):
1541         (262.IsHTMLDDA):
1542         * Scripts/test262-helpers/cpanfile: Added.
1543         * Scripts/test262-helpers/cpanfile.snapshot: Added.
1544         * Scripts/test262-helpers/test262-runner.pl: Added.
1545         (main):
1546         (processFile):
1547         (getScenarios):
1548         (addScenario):
1549         (compileTest):
1550         (runTest):
1551         (processResult):
1552         (getTempFile):
1553         (getContents):
1554         (parseData):
1555         (getHarness):
1556         * Scripts/test262-helpers/tests.log: Added.
1557
1558 2018-04-15  Andy Estes  <aestes@apple.com>
1559
1560         [iOS] Add API tests for PDF find-in-page
1561         https://bugs.webkit.org/show_bug.cgi?id=184634
1562
1563         Reviewed by Dan Bernstein.
1564
1565         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1566         * TestWebKitAPI/Tests/WebKit/find.pdf: Added.
1567         * TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm:
1568         (-[TestFindDelegate findString]):
1569         (-[TestFindDelegate _webView:didCountMatches:forString:]):
1570         (-[TestFindDelegate _webView:didFindMatches:forString:withMatchIndex:]):
1571         (-[TestFindDelegate _webView:didFailToFindString:]):
1572         (loadWebView):
1573         (TEST):
1574
1575 2018-04-13  Zalan Bujtas  <zalan@apple.com>
1576
1577         [LayoutReloaded] Update class documentation
1578         https://bugs.webkit.org/show_bug.cgi?id=184625
1579
1580         Reviewed by Antti Koivisto.
1581
1582         * LayoutReloaded/DisplayTree/Box.js:
1583         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
1584         * LayoutReloaded/FormattingContext/BlockFormatting/BlockMarginCollapse.js:
1585         * LayoutReloaded/FormattingContext/FloatingContext.js:
1586         * LayoutReloaded/FormattingContext/FormattingContext.js:
1587         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
1588         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
1589         * LayoutReloaded/FormattingState/BlockFormattingState.js:
1590         * LayoutReloaded/FormattingState/FloatingState.js:
1591         * LayoutReloaded/FormattingState/FormattingState.js:
1592         * LayoutReloaded/FormattingState/InlineFormattingState.js:
1593         * LayoutReloaded/LayoutState.js:
1594         * LayoutReloaded/LayoutTree/BlockContainer.js:
1595         * LayoutReloaded/LayoutTree/Box.js:
1596         * LayoutReloaded/LayoutTree/Container.js:
1597         * LayoutReloaded/LayoutTree/InlineBox.js:
1598         * LayoutReloaded/LayoutTree/InlineContainer.js:
1599         * LayoutReloaded/LayoutTree/Text.js:
1600         * LayoutReloaded/misc/headers/BlockContainer.h: Removed.
1601         * LayoutReloaded/misc/headers/BlockFormattingContext.h: Removed.
1602         * LayoutReloaded/misc/headers/BlockMarginCollapse.h: Removed.
1603         * LayoutReloaded/misc/headers/Box.h: Removed.
1604         * LayoutReloaded/misc/headers/Container.h: Removed.
1605         * LayoutReloaded/misc/headers/FloatingContext.h: Removed.
1606         * LayoutReloaded/misc/headers/FormattingContext.h: Removed.
1607         * LayoutReloaded/misc/headers/InitialBlockContainer.h: Removed.
1608         * LayoutReloaded/misc/headers/InlineBox.h: Removed.
1609         * LayoutReloaded/misc/headers/LayoutContext.h: Removed.
1610         * LayoutReloaded/misc/headers/Line.h: Removed.
1611         * LayoutReloaded/misc/headers/Text.h: Removed.
1612
1613 2018-04-13  Zalan Bujtas  <zalan@apple.com>
1614
1615         [LayoutReloaded] Add simple implementation for FormattingState::markNeedsLayout()
1616         https://bugs.webkit.org/show_bug.cgi?id=184621
1617
1618         Reviewed by Antti Koivisto.
1619
1620         This is just a simple, mark ancestors dirty implementation.
1621
1622         * LayoutReloaded/FormattingState/FormattingState.js:
1623         (FormattingState.prototype.markNeedsLayout):
1624         * LayoutReloaded/LayoutState.js:
1625         (LayoutState.prototype.markNeedsLayout):
1626         (LayoutState.prototype.setNeedsLayoutById): Deleted.
1627         (LayoutState.prototype.setNeedsLayout): Deleted.
1628         * LayoutReloaded/TreeBuilder.js:
1629         (TreeBuilder.prototype._createAndAttachBox):
1630         (TreeBuilder.prototype._findBox): Deleted.
1631         * LayoutReloaded/Utils.js:
1632         (Utils.layoutBoxById):
1633         * LayoutReloaded/test/index.html:
1634         * LayoutReloaded/test/simple-incremental-layout-with-static-content.html:
1635
1636 2018-04-13  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1637
1638         [WPE] [webkitpy] The driver requirements should be checked before starting the tests
1639         https://bugs.webkit.org/show_bug.cgi?id=184595
1640
1641         Reviewed by Michael Catanzaro.
1642
1643         Ensure Driver.check_driver() is checked at check_sys_deps() time.
1644
1645         * Scripts/webkitpy/port/wpe.py:
1646         (WPEPort.check_sys_deps):
1647
1648 2018-04-13  Zalan Bujtas  <zalan@apple.com>
1649
1650         Rebaseline LayoutReloaded patch file (collectRenderersWithNeedsLayout).
1651
1652         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
1653
1654 2018-04-13  Jonathan Bedard  <jbedard@apple.com>
1655
1656         Boot fewer simulators in CI/EWS machines
1657         https://bugs.webkit.org/show_bug.cgi?id=184594
1658         <rdar://problem/39188082>
1659
1660         Reviewed by Alexey Proskuryakov.
1661
1662         This is a temporary workaround fro <rdar://problem/39393590>.
1663
1664         * Scripts/webkitpy/xcode/simulated_device.py:
1665         (SimulatedDeviceManager): Treat simulators as taking 6 gigs instead of 2.
1666
1667 2018-04-13  Brady Eidson  <beidson@apple.com>
1668
1669         Introduce SuspendedPageProxy to keep old web processes around after their WebPageProxy has been swapped to a new one.
1670         https://bugs.webkit.org/show_bug.cgi?id=184559
1671
1672         Reviewed by Alex Christensen.
1673
1674         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1675
1676 2018-04-13  Chris Dumez  <cdumez@apple.com>
1677
1678         input.webkitEntries does not work as expected when folder contains accented chars
1679         https://bugs.webkit.org/show_bug.cgi?id=184517
1680         <rdar://problem/39265537>
1681
1682         Reviewed by Alex Christensen.
1683
1684         Add API test coverage.
1685
1686         * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
1687         (TestWebKitAPI::TEST_F):
1688
1689 2018-04-13  Thibault Saunier  <tsaunier@igalia.com>
1690
1691         Update my emails ordering in contributors.json
1692         https://bugs.webkit.org/show_bug.cgi?id=184587
1693
1694         Rubber-stamped by Philippe Normand.
1695
1696         Bugzilla seems to pick up tsaunier@igalia.com which is not the one I use there.
1697
1698         * Scripts/webkitpy/common/config/contributors.json:
1699
1700 2018-04-13  Michael Catanzaro  <mcatanzaro@igalia.com>
1701
1702         [WPE] xkbcommon: ERROR: failed to add default include path /home/mcatanzaro/Projects/WebKit/WebKitBuild/DependenciesWPE/Root/share/X11/xkb
1703         https://bugs.webkit.org/show_bug.cgi?id=184388
1704
1705         Reviewed by Carlos Alberto Lopez Perez.
1706
1707         Remove libxkbcommon from the JHBuild environment. We could alternatively add
1708         xkeyboard-config, but there doesn't seem to be any need to build libxkbcommon because I do
1709         not believe it depends on anything else in the JHBuild environment.
1710
1711         * wpe/install-dependencies:
1712         * wpe/jhbuild.modules:
1713
1714 2018-04-12  Antoine Quint  <graouts@apple.com>
1715
1716         [Web Animations] Turn CSS Animations and CSS Transitions as Web Animations on by default
1717         https://bugs.webkit.org/show_bug.cgi?id=184569
1718         <rdar://problem/38671301>
1719
1720         Reviewed by Jon Lee.
1721
1722         We set the default value for the CSS Animations and CSS Transitions as Web Animations flag to true
1723         but override it to be false always in the LayoutTests/legacy-animation-engine directory.
1724
1725         * DumpRenderTree/TestOptions.h:
1726         * DumpRenderTree/mac/DumpRenderTree.mm:
1727         (shouldOverrideAndDisableCSSAnimationsAndCSSTransitionsBackedByWebAnimationsPreference):
1728         (runTest):
1729         * WebKitTestRunner/TestController.cpp:
1730         (WTR::TestController::resetPreferencesToConsistentValues):
1731         * WebKitTestRunner/TestOptions.cpp:
1732         (WTR::isLegacyAnimationEngineTestPath):
1733         (WTR::TestOptions::TestOptions):
1734         * WebKitTestRunner/TestOptions.h:
1735
1736 2018-04-13  Carlos Garcia Campos  <cgarcia@igalia.com>
1737
1738         [GLIB] Tests WTF_RefPtr.ReleaseInNonMainThread and WTF_RefPtr.ReleaseInNonMainThreadDestroyInMainThread are crashing since they were added
1739         https://bugs.webkit.org/show_bug.cgi?id=184531
1740
1741         Reviewed by Michael Catanzaro.
1742
1743         It's not a bug in WebKit, but in the tests. The problem is that those tests are using RunLoop::main() but main
1744         run loop hasn't been initialized. ReleaseInNonMainThread doesn't really need to initialize the main run loop if
1745         we change Util::run() to always use RunLop::current() instead of RunLoop::main(). But
1746         ReleaseInNonMainThreadDestroyInMainThread ends up scheduling a task to the main thread, and the generic
1747         implementation fo that uses RunLoop::main(), so we need to initialize the main loop in this case.
1748
1749         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
1750         (TestWebKitAPI::TEST): Call RunLoop::initializeMainRunLoop().
1751         * TestWebKitAPI/glib/UtilitiesGLib.cpp:
1752         (TestWebKitAPI::Util::run): Use RunLop::current() to stop the current run loop.
1753         (TestWebKitAPI::Util::sleep): Ditto.
1754
1755 2018-04-12  Zalan Bujtas  <zalan@apple.com>
1756
1757         [LayoutReloaded] Add support for incremental layout
1758         https://bugs.webkit.org/show_bug.cgi?id=184578
1759
1760         Reviewed by Antti Koivisto.
1761
1762         * LayoutReloaded/Layout.js:
1763         (layout):
1764         * LayoutReloaded/LayoutState.js:
1765         (LayoutState.prototype.rootContainer):
1766         (LayoutState.prototype.setNeedsLayoutById):
1767         * LayoutReloaded/Utils.js:
1768         (Utils.layoutTreeDump):
1769         * LayoutReloaded/test/TestHarness.js:
1770         (verifyLayout):
1771         (runLayout):
1772         (verifyLayoutTreeDump): Deleted.
1773         * LayoutReloaded/test/index.html:
1774         * LayoutReloaded/test/simple-incremental-layout-with-static-content.html: Added.
1775
1776 2018-04-12  Zalan Bujtas  <zalan@apple.com>
1777
1778         [LayoutReloaded] Move root container ownership to layout state
1779         https://bugs.webkit.org/show_bug.cgi?id=184575
1780
1781         Reviewed by Antti Koivisto.
1782
1783         Now the root container is on the associated layout state (ICB only at this point though).
1784
1785         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
1786         (BlockFormattingContext.prototype.layout):
1787         * LayoutReloaded/FormattingContext/FormattingContext.js:
1788         (FormattingContext.prototype._layoutOutOfFlowDescendants):
1789         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
1790         (InlineFormattingContext.prototype._handleInlineBlockContainer):
1791         (InlineFormattingContext.prototype._handleFloatingBox):
1792         * LayoutReloaded/Layout.js:
1793         (layout):
1794         * LayoutReloaded/LayoutState.js:
1795         (LayoutState):
1796         (LayoutState.prototype.formattingContext):
1797         (LayoutState.prototype.establishedFormattingState):
1798         (LayoutState.prototype.formattingStateForBox):
1799         (LayoutState.prototype.needsLayout):
1800         (LayoutState.prototype.displayBox):
1801         (LayoutState.prototype._formattingContext):
1802         (LayoutState.prototype.layout): Deleted.
1803         (LayoutState.prototype.formattingStates): Deleted.
1804         (LayoutState.prototype.initialDisplayBox): Deleted.
1805         * LayoutReloaded/Utils.js:
1806         (Utils._dumpBox):
1807         (Utils._findDisplayBox): Deleted.
1808
1809 2018-04-12  Jonathan Bedard  <jbedard@apple.com>
1810
1811         Fix --build-directory flag for run-webkit-tests
1812         https://bugs.webkit.org/show_bug.cgi?id=184545
1813         <rdar://problem/39385080>
1814
1815         Rubber-stamped by Aakash Jain.
1816
1817         The --build-directory path does not work with iOS-Simulator.
1818
1819         * Scripts/webkitpy/port/base.py:
1820         (Port._build_path): Use the port configuration to calculate the root directory.
1821         * Scripts/webkitpy/port/base_unittest.py:
1822         (PortTest.test_build_path): Test build directories for embedded configurations.
1823
1824 2018-04-12  Ross Kirsling  <ross.kirsling@sony.com>
1825
1826         pemfile.py should not assume POSIX line endings
1827         https://bugs.webkit.org/show_bug.cgi?id=184507
1828
1829         Reviewed by Daniel Bates.
1830
1831         * Scripts/webkitpy/common/system/pemfile.py:
1832         (_parse_pem_format):
1833         * Scripts/webkitpy/common/system/pemfile_unittest.py:
1834         (PemFileTest.test_parse_crlf):
1835         (PemFileTest.test_parse_cr):
1836
1837 2018-04-12  Zalan Bujtas  <zalan@apple.com>
1838
1839         [LayoutReloaded] Minor cleanup in LayoutSate
1840         https://bugs.webkit.org/show_bug.cgi?id=184546
1841
1842         Reviewed by Antti Koivisto.
1843
1844         * LayoutReloaded/FormattingContext/FormattingContext.js:
1845         (FormattingContext.isInFormattingContext):
1846         * LayoutReloaded/FormattingState/FormattingState.js:
1847         (FormattingState.prototype.displayBoxes):
1848         (FormattingState.prototype.displayBox):
1849         (FormattingState.prototype._markSubTreeNeedsLayout):
1850         (FormattingState):
1851         (FormattingState.prototype.displayBoxMap): Deleted.
1852         * LayoutReloaded/LayoutState.js:
1853         (LayoutState.prototype.formattingStateForBox):
1854         (LayoutState.prototype.needsLayout):
1855         (LayoutState.prototype.displayBox):
1856         (LayoutState.prototype._createFormattingState):
1857         (LayoutState):
1858         * LayoutReloaded/LayoutTree/Box.js:
1859         (Layout.Box.prototype.isFormattingContextDescendant): Deleted.
1860         * LayoutReloaded/LayoutTree/Container.js:
1861         (Layout.Container.prototype.isContainingBlockDescendant): Deleted.
1862         * LayoutReloaded/Utils.js:
1863         (Utils._findDisplayBox):
1864
1865 2018-04-12  Zalan Bujtas  <zalan@apple.com>
1866
1867         [LayoutReloaded] Introduce needsLayout to InlineFormattingContext
1868         https://bugs.webkit.org/show_bug.cgi?id=184538
1869
1870         Reviewed by Antti Koivisto.
1871
1872         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
1873         (BlockFormattingContext.prototype._adjustBottomWithFIXME):
1874         (BlockFormattingContext):
1875         (BlockFormattingContext.prototype._firstInFlowChildWithNeedsLayout): Deleted.
1876         (BlockFormattingContext.prototype._nextInFlowSiblingWithNeedsLayout): Deleted.
1877         * LayoutReloaded/FormattingContext/FormattingContext.js:
1878         (FormattingContext.prototype._firstInFlowChildWithNeedsLayout):
1879         (FormattingContext.prototype._nextInFlowSiblingWithNeedsLayout):
1880         (FormattingContext):
1881         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
1882         (InlineFormattingContext.prototype.layout):
1883         (InlineFormattingContext.prototype._handleInlineContainer):
1884         (InlineFormattingContext.prototype._handleInlineBlockContainer):
1885         (InlineFormattingContext.prototype._handleInlineContent):
1886         (InlineFormattingContext.prototype._clearAndMoveToNext):
1887         (InlineFormattingContext):
1888
1889 2018-04-12  Xabier Rodriguez Calvar  <calvaris@igalia.com>
1890
1891         [GStreamer] Speed up GStreamer dependency build by removing examples compilation
1892         https://bugs.webkit.org/show_bug.cgi?id=184528
1893
1894         Reviewed by Philippe Normand.
1895
1896         * gstreamer/jhbuild.modules: Added --disable-examples for GStreamer package.
1897
1898 2018-04-12  Zan Dobersek  <zdobersek@igalia.com>
1899
1900         [WPE] Switch testing process to using WPEBackend-fdo
1901         https://bugs.webkit.org/show_bug.cgi?id=184357
1902
1903         Reviewed by Carlos Alberto Lopez Perez.
1904
1905         Switch WPE testing to using the WPEBackend-fdo implementation that
1906         depends on the WL_bind_wayland_display EGL extension, as defined under
1907         the freedesktop.org project.
1908         https://cgit.freedesktop.org/mesa/mesa/tree/docs/specs/WL_bind_wayland_display.spec
1909
1910         HeadlessViewBackend is refactored to use the WPEBackend-fdo API, but
1911         otherwise is not changed in functionality.
1912
1913         Unit tests now have to unconditionally use HeadlessViewBackend as a
1914         wpe_view_backend provider, since WPEBackend-fdo does not provide a
1915         default wpe_view_backend implementation. Unit tests covering that are
1916         adjusted to instead use a mock wpe_view_backend interface.
1917
1918         * Scripts/webkitdirs.pm:
1919         (builtDylibPathForName): Fix the libWPEWebKit.so name to also include
1920         the API version that was added in r230449.
1921         * Scripts/webkitpy/port/waylanddriver.py:
1922         (WaylandDriver._setup_environ_for_test): Export EGL_PLATFORM=wayland.
1923         * Scripts/webkitpy/port/wpe.py:
1924         (WPEPort._driver_class): Use WaylandDriver by default.
1925         * TestWebKitAPI/PlatformWebView.h:
1926         (): Deleted.
1927         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1928         (testWebViewWebBackend):
1929         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1930         (Test::createWebViewBackend):
1931         * TestWebKitAPI/wpe/PlatformWebViewWPE.cpp:
1932         (TestWebKitAPI::PlatformWebView::~PlatformWebView):
1933         (TestWebKitAPI::PlatformWebView::initialize):
1934         * wpe/HeadlessViewBackend/CMakeLists.txt:
1935         * wpe/HeadlessViewBackend/HeadlessViewBackend.cpp:
1936         (getEGLDisplay):
1937         (HeadlessViewBackend::HeadlessViewBackend):
1938         (HeadlessViewBackend::~HeadlessViewBackend):
1939         (HeadlessViewBackend::backend const):
1940         (HeadlessViewBackend::createSnapshot):
1941         (HeadlessViewBackend::performUpdate):
1942         (HeadlessViewBackend::makeCurrent): Deleted.
1943         * wpe/HeadlessViewBackend/HeadlessViewBackend.h:
1944         * wpe/jhbuild.modules: Module name cleanup. Dyz version is bumped.
1945
1946 2018-04-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1947
1948         [GTK] Switch to use always complex text code path
1949         https://bugs.webkit.org/show_bug.cgi?id=183285
1950
1951         Reviewed by Michael Catanzaro.
1952
1953         Keep the auto mode for the layout tests to avoid having to rebaseline a lot of tests.
1954
1955         * WebKitTestRunner/gtk/main.cpp:
1956         (main): Set WEBKIT_FORCE_COMPLEX_TEXT to 0 unless it's already present in the environment.
1957
1958 2018-04-11  Carlos Garcia Campos  <cgarcia@igalia.com>
1959
1960         [GLIB] Handle strings containing null characters
1961         https://bugs.webkit.org/show_bug.cgi?id=184450
1962
1963         Reviewed by Michael Catanzaro.
1964
1965         Add test case for strings with null characters and update all calls to evaluate to pass the script length.
1966
1967         * TestWebKitAPI/PlatformGTK.cmake:
1968         * TestWebKitAPI/PlatformWPE.cmake:
1969         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
1970         (testJSCBasic):
1971         (testJSCFunction):
1972         (testJSCObject):
1973         (testJSCClass):
1974         (testJSCPrototypes):
1975         (testJSCExceptions):
1976         (testJSCPromises):
1977         (testJSCGarbageCollector):
1978         (testJSCWeakValue):
1979         (testsJSCVirtualMachine):
1980         (testsJSCAutocleanups):
1981         * TestWebKitAPI/Tests/JavaScriptCore/glib/script.js: Added.
1982         * TestWebKitAPI/Tests/WebKitGLib/DOMElementTest.cpp:
1983         (DOMElementTest::testAutoFill):
1984         * TestWebKitAPI/Tests/WebKitGLib/EditorTest.cpp:
1985         (WebKitWebEditorTest::testSelectionChanged):
1986         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
1987         (WebKitFrameTest::testJavaScriptValues):
1988         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
1989         (consoleMessageSentCallback):
1990         (methodCallCallback):
1991
1992 2018-04-11  Zan Dobersek  <zdobersek@igalia.com>
1993
1994         [WPE] Make WebKitWebViewBackend object mandatory for webkit_web_view_new*() constructors
1995         https://bugs.webkit.org/show_bug.cgi?id=184513
1996
1997         Reviewed by Michael Catanzaro.
1998
1999         Update the WPE-specific testWebViewWebBackend() test case, removing the
2000         test that passes a null WebKitWebViewBackend object to the
2001         webkit_web_view_new() call.
2002
2003         Helper createWebViewBackend() that's called via Test::createWebView()
2004         variations is updated to, in case of not using the headless backend,
2005         return a WebKitWebViewBackend instance that wraps around a
2006         default wpe_view_backend object.
2007
2008         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
2009         (testWebViewWebBackend):
2010         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
2011         (Test::createWebViewBackend):
2012
2013 2018-04-11  Zalan Bujtas  <zalan@apple.com>
2014
2015         [LayoutReloaded] Introduce needsLayout flag
2016         https://bugs.webkit.org/show_bug.cgi?id=184527
2017
2018         Reviewed by Antti Koivisto.
2019
2020         Use the formatting state to mark boxes dirty.
2021
2022         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
2023         (BlockFormattingContext.prototype.layout):
2024         (BlockFormattingContext.prototype._firstInFlowChildWithNeedsLayout):
2025         (BlockFormattingContext.prototype._nextInFlowSiblingWithNeedsLayout):
2026         (BlockFormattingContext):
2027         * LayoutReloaded/FormattingContext/FormattingContext.js:
2028         (FormattingContext.prototype._layoutOutOfFlowDescendants):
2029         * LayoutReloaded/FormattingState/FormattingState.js:
2030         (FormattingState):
2031         (FormattingState.prototype.markNeedsLayout):
2032         (FormattingState.prototype.clearNeedsLayout):
2033         (FormattingState.prototype.needsLayout):
2034         (FormattingState.prototype.layoutNeeded):
2035         (FormattingState.prototype._markSubTreeNeedsLayout):
2036         * LayoutReloaded/LayoutState.js:
2037         (LayoutState.prototype.formattingStateForBox):
2038         (LayoutState.prototype.setNeedsLayout):
2039         (LayoutState.prototype.needsLayout):
2040         * LayoutReloaded/LayoutTree/Box.js:
2041         (Layout.Box.prototype.isFormattingContextDescendant):
2042         * LayoutReloaded/LayoutTree/Container.js:
2043         (Layout.Container.prototype.isContainingBlockDescendant):
2044
2045 2018-04-11  Jonathan Bedard  <jbedard@apple.com>
2046
2047         Fix TestInvocation class for newer versions of clang.
2048         https://bugs.webkit.org/show_bug.cgi?id=184508
2049         <rdar://problem/39328648>
2050
2051         Reviewed by Alexey Proskuryakov.
2052
2053         Declare TestInvocation to be final so it does not require a virtual destructor.
2054
2055         * WebKitTestRunner/TestInvocation.h:
2056
2057 2018-04-10  Alex Christensen  <achristensen@webkit.org>
2058
2059         IDN spoofing with Hebrew combining characters
2060         https://bugs.webkit.org/show_bug.cgi?id=184472
2061         <rdar://problem/39148687>
2062
2063         Reviewed by Brent Fulgham.
2064
2065         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
2066         (TestWebKitAPI::TEST):
2067
2068 2018-04-11  Wenson Hsieh  <wenson_hsieh@apple.com>
2069
2070         [Extra zoom mode] Missing label when focusing a <select> with a title attribute but no associated <label>
2071         https://bugs.webkit.org/show_bug.cgi?id=184352
2072         <rdar://problem/39237683>
2073
2074         Reviewed by Andy Estes.
2075
2076         Add support for UIScriptController::selectFormPopoverTitle, which returns the title of the current select
2077         popover's UITableViewController (for testing purposes).
2078
2079         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2080         (WTR::UIScriptController::selectFormPopoverTitle const):
2081         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2082         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2083         (WTR::UIScriptController::selectFormPopoverTitle const):
2084         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2085         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2086         (WTR::UIScriptController::selectFormPopoverTitle const):
2087
2088 2018-04-10  Nan Wang  <n_wang@apple.com>
2089
2090         AX: Expose strong password fields on iOS
2091         https://bugs.webkit.org/show_bug.cgi?id=184465
2092         <rdar://problem/39325104>
2093
2094         Reviewed by Chris Fleizach.
2095
2096         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
2097         (AccessibilityUIElement::boolAttributeValue):
2098         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
2099         (WTR::AccessibilityUIElement::boolAttributeValue):
2100
2101 2018-04-10  Zalan Bujtas  <zalan@apple.com>
2102
2103         [LayoutReloaded] Add support for out-of-flow descendants in inline formatting context.
2104         https://bugs.webkit.org/show_bug.cgi?id=184454
2105
2106         Reviewed by Antti Koivisto.
2107
2108         When the containing block of an out-of-flow positioned element establishes an inline formatting context.
2109         This is mostly about moving out-of-flow logic from BlockFormattingContext to the base class.
2110
2111         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
2112         (BlockFormattingContext.prototype._adjustBottomWithFIXME):
2113         (BlockFormattingContext):
2114         (BlockFormattingContext.prototype._layoutOutOfFlowDescendants): Deleted.
2115         (BlockFormattingContext.prototype._computeOutOfFlowWidth): Deleted.
2116         (BlockFormattingContext.prototype._computeInFlowWidth): Deleted.
2117         (BlockFormattingContext.prototype._computeOutOfFlowHeight): Deleted.
2118         (BlockFormattingContext.prototype._computeOutOfFlowPosition): Deleted.
2119         (BlockFormattingContext.prototype._shrinkToFitWidth): Deleted.
2120         * LayoutReloaded/FormattingContext/FormattingContext.js:
2121         (FormattingContext.prototype._placeInFlowPositionedChildren):
2122         (FormattingContext.prototype._computeInFlowWidth):
2123         (FormattingContext.prototype._layoutOutOfFlowDescendants):
2124         (FormattingContext.prototype._computeOutOfFlowWidth):
2125         (FormattingContext.prototype._computeOutOfFlowHeight):
2126         (FormattingContext.prototype._computeOutOfFlowPosition):
2127         (FormattingContext.prototype._shrinkToFitWidth):
2128         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2129         (InlineFormattingContext.prototype.layout):
2130         (InlineFormattingContext.prototype._handleInlineContainer):
2131         (InlineFormattingContext.prototype._handleInlineBlockContainer):
2132         (InlineFormattingContext.prototype._placeOutOfFlowDescendants): Deleted.
2133         * LayoutReloaded/test/index.html:
2134         * LayoutReloaded/test/inline-with-out-of-flow-descendant.html: Added.
2135
2136 2018-04-09  Zan Dobersek  <zdobersek@igalia.com>
2137
2138         WKTR: Enable DOM cache, SW registration directory cleanup on non-Cocoa platforms
2139         https://bugs.webkit.org/show_bug.cgi?id=184414
2140
2141         Reviewed by Michael Catanzaro.
2142
2143         Enable clearServiceWorkerRegistrations(), clearDOMCache() and
2144         clearDOMCaches() implementations in WebKitTestRunner's TestController
2145         class for non-Cocoa platforms. Implementations depend on the generic
2146         WK2 C API that other ports can leverage as well.
2147
2148         The clearDOMCache() and clearDOMCaches() calls are now operational for
2149         tests that invoke them. clearServiceWorkerRegistrations() and
2150         clearDOMCaches() are also called between each test, cleaning up relevant
2151         resources.
2152
2153         The TestController::getAllStorageAccessEntries() stub for non-Cocoa
2154         platforms is moved into the main !PLATFORM(COCOA) block.
2155
2156         * WebKitTestRunner/TestController.cpp:
2157         (WTR::TestController::getAllStorageAccessEntries):
2158         (WTR::clearServiceWorkerRegistrationsCallback):
2159         (WTR::TestController::clearServiceWorkerRegistrations):
2160         (WTR::clearDOMCacheCallback):
2161         (WTR::TestController::clearDOMCache):
2162         (WTR::TestController::clearDOMCaches):
2163
2164 2018-04-09  Zalan Bujtas  <zalan@apple.com>
2165
2166         [LayoutReloaded] Add support for relatively positioned containers in inline formatting context.
2167         https://bugs.webkit.org/show_bug.cgi?id=184439
2168
2169         Reviewed by Antti Koivisto.
2170
2171         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
2172         (BlockFormattingContext.prototype._placeInFlowPositionedChildren): Deleted.
2173         (BlockFormattingContext.prototype._computeInFlowPositionedPosition): Deleted.
2174         * LayoutReloaded/FormattingContext/FormattingContext.js:
2175         (FormattingContext.prototype._computeInFlowPositionedPosition):
2176         (FormattingContext.prototype._placeInFlowPositionedChildren):
2177         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2178         (InlineFormattingContext.prototype._placeInFlowPositionedChildren): Deleted.
2179         * LayoutReloaded/Utils.js:
2180         (Utils._dumpBox):
2181         (Utils._dumpLines.):
2182         (Utils._dumpLines):
2183         (Utils.precisionRoundWithDecimals):
2184         (Utils.precisionRound):
2185         (Utils):
2186         * LayoutReloaded/test/index.html:
2187         * LayoutReloaded/test/inline-with-relative-positioning.html: Added.
2188
2189 2018-04-09  Zalan Bujtas  <zalan@apple.com>
2190
2191         [LayoutReloaded] Remove Layout.InitialContainingBlock class
2192         https://bugs.webkit.org/show_bug.cgi?id=184436
2193
2194         Reviewed by Antti Koivisto.
2195
2196         * LayoutReloaded/LayoutTree/Box.js:
2197         (Layout.Box.prototype.establishesBlockFormattingContext):
2198         * LayoutReloaded/LayoutTree/InitialBlockContainer.js: Removed.
2199         * LayoutReloaded/TreeBuilder.js:
2200         (TreeBuilder.prototype.createTree):
2201         * LayoutReloaded/test/index.html:
2202
2203 2018-04-09  Zalan Bujtas  <zalan@apple.com>
2204
2205         [LayoutReloaded] Add support for inline-block.
2206         https://bugs.webkit.org/show_bug.cgi?id=184434
2207
2208         Reviewed by Antti Koivisto.
2209
2210         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2211         (InlineFormattingContext):
2212         (InlineFormattingContext.prototype.layout):
2213         (InlineFormattingContext.prototype._handleInlineContainer):
2214         (InlineFormattingContext.prototype._handleInlineBlockContainer):
2215         (InlineFormattingContext.prototype._handleInlineContent):
2216         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2217         (Line.prototype.addInlineContainerBox):
2218         (Line.prototype.addTextLineBox):
2219         (Line):
2220         * LayoutReloaded/LayoutTree/Box.js:
2221         (Layout.Box.prototype.isInlineBlockBox):
2222         * LayoutReloaded/Utils.js:
2223         (LayoutRect.prototype.growHorizontally):
2224         (Utils.isBlockContainerElement):
2225         (Utils.isInlineBlockElement):
2226         (Utils._dumpLines.):
2227         (Utils._dumpLines):
2228         * LayoutReloaded/test/index.html:
2229         * LayoutReloaded/test/inline-block-with-fixed-width-height.html: Added.
2230
2231 2018-04-09  Timothy Hatcher  <timothy@apple.com>
2232
2233         Add support for setting a background color on WKWebView and WKView
2234         https://bugs.webkit.org/show_bug.cgi?id=184426
2235
2236         Reviewed by Wenson Hsieh.
2237
2238         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2239         * TestWebKitAPI/Tests/mac/BackgroundColor.mm: Added.
2240
2241 2018-04-09  Charlie Turner  <cturner@igalia.com>
2242
2243         [WPE] Add some missing install dependencies
2244         https://bugs.webkit.org/show_bug.cgi?id=184383
2245
2246         Reviewed by Michael Catanzaro.
2247
2248         * wpe/install-dependencies:
2249
2250 2018-04-09  Sihui Liu  <sihui_liu@apple.com>
2251
2252         REGRESSION(r229929): localStorage is broken for WebInspector
2253         https://bugs.webkit.org/show_bug.cgi?id=184382
2254         <rdar://problem/39257355>
2255
2256         Reviewed by Chris Dumez.
2257
2258         * TestWebKitAPI/Tests/WebKitCocoa/LocalStoragePersistence.mm:
2259         (TEST):
2260         * TestWebKitAPI/Tests/WebKitCocoa/localstorage-empty-string-value.html:
2261
2262 2018-04-09  Zan Dobersek  <zdobersek@igalia.com>
2263
2264         Unreviewed follow-up to r230389.
2265
2266         * WebKitTestRunner/TestController.cpp:
2267         (WTR::TestController::platformAdjustContext): Use the 'ServiceWorkers'
2268         subdirectory for the temporary testing-purpose SW registration directory
2269         like it's used in Cocoa's TestController, addressing the review comment
2270         that I forgot about.
2271
2272 2018-04-08  Zan Dobersek  <zdobersek@igalia.com>
2273
2274         Non-Cocoa ports use default directory for ServiceWorker data during testing
2275         https://bugs.webkit.org/show_bug.cgi?id=183784
2276
2277         Reviewed by Youenn Fablet.
2278
2279         * WebKitTestRunner/TestController.cpp:
2280         (WTR::TestController::platformAdjustContext): Set the service worker registration
2281         directory through the new WKWebsiteDataStore API for non-Cocoa ports.
2282
2283 2018-04-08  Zalan Bujtas  <zalan@apple.com>
2284
2285         [LayoutReloaded] Adjust line with inline container's margin border and padding
2286         https://bugs.webkit.org/show_bug.cgi?id=184409
2287
2288         Reviewed by Antti Koivisto.
2289
2290         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2291         (InlineFormattingContext.prototype.layout):
2292         (InlineFormattingContext.prototype._handleFloatingBox):
2293         (InlineFormattingContext.prototype._adjustLineForInlineContainerStart):
2294         (InlineFormattingContext.prototype._adjustLineForInlineContainerEnd):
2295         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2296         (Line.prototype.shrink):
2297         (Line.prototype.adjustWithOffset):
2298         (Line.prototype.moveContentHorizontally):
2299         (Line.prototype.addTextLineBox):
2300         (Line):
2301         (Line.prototype.addFloatingBox): Deleted.
2302         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
2303         * LayoutReloaded/test/index.html:
2304         * LayoutReloaded/test/inline-with-padding-border-margin-offsets.html: Added.
2305
2306 2018-04-07  Zalan Bujtas  <zalan@apple.com>
2307
2308         [LayoutReloaded] Add support for InlineContainer
2309         https://bugs.webkit.org/show_bug.cgi?id=184394
2310
2311         Reviewed by Antti Koivisto.
2312
2313         * LayoutReloaded/FormattingContext/FormattingContext.js:
2314         (FormattingContext.prototype._addToLayoutQueue):
2315         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2316         (InlineFormattingContext.prototype.layout):
2317         (InlineFormattingContext.prototype._handleInlineContent):
2318         (InlineFormattingContext.prototype._handleFloatingBox):
2319         (InlineFormattingContext.prototype._adjustLineForInlineContainerStart):
2320         (InlineFormattingContext.prototype._adjustLineForInlineContainerEnd):
2321         (InlineFormattingContext.prototype._placeInFlowPositionedChildren):
2322         (InlineFormattingContext.prototype._placeOutOfFlowDescendants):
2323         (InlineFormattingContext.prototype._createNewLine):
2324         (InlineFormattingContext.prototype._handleContent): Deleted.
2325         * LayoutReloaded/LayoutState.js:
2326         (LayoutState.prototype._createFormattingState):
2327         * LayoutReloaded/LayoutTree/Box.js:
2328         (Layout.Box.prototype.isContainer):
2329         (Layout.Box.prototype.isInlineContainer):
2330         (Layout.Box.prototype.isInlineBox):
2331         * LayoutReloaded/LayoutTree/Container.js:
2332         (Layout.Container.prototype.isContainer): Deleted.
2333         * LayoutReloaded/LayoutTree/InlineContainer.js: Added.
2334         (Layout.InlineContainer):
2335         * LayoutReloaded/TreeBuilder.js:
2336         (TreeBuilder.prototype._createAndAttachBox):
2337         * LayoutReloaded/Utils.js:
2338         (Utils._dumpBox):
2339         (Utils.precisionRound):
2340         (Utils):
2341         * LayoutReloaded/test/index.html:
2342         * LayoutReloaded/test/inline-content-simple2.html: Added.
2343         * LayoutReloaded/test/inline-floating1.html: Added.
2344         * LayoutReloaded/test/inline-formatting-context-floats1.html: Added.
2345         * LayoutReloaded/test/inline-formatting-context-floats2.html: Added.
2346
2347 2018-04-07  Timothy Hatcher  <timothy@apple.com>
2348
2349         Use the system's link color when system appearance is desired for a WebView.
2350
2351         https://bugs.webkit.org/show_bug.cgi?id=184353
2352         rdar://problem/9420053
2353
2354         Reviewed by Wenson Hsieh.
2355
2356         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2357         * TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm: Added.
2358         (TestWebKitAPI::WebKit::LinkColor):
2359         (TestWebKitAPI::WebKit::LinkColorWithSystemAppearance):
2360
2361 2018-04-06  Zalan Bujtas  <zalan@apple.com>
2362
2363         Rebaseline LayoutReloaded patch file.
2364
2365         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
2366
2367 2018-04-06  Fujii Hironori  <Hironori.Fujii@sony.com>
2368
2369         [Win][WebCore] Expose a constant for scrollbar pixels per line (cScrollbarPixelsPerLine)
2370         https://bugs.webkit.org/show_bug.cgi?id=184296
2371
2372         Reviewed by Alex Christensen.
2373
2374         * DumpRenderTree/win/EventSender.cpp:
2375         (mouseScrollBy): Removed the duplicated cScrollbarPixelsPerLine
2376         definition. Use WebCore::cScrollbarPixelsPerLine.
2377
2378 2018-04-06  Zalan Bujtas  <zalan@apple.com>
2379
2380         Rebaseline LayoutReloaded patch file.
2381
2382         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
2383
2384 2018-04-05  Youenn Fablet  <youenn@apple.com>
2385
2386         Test expectation updater should handle Win bot results
2387         https://bugs.webkit.org/show_bug.cgi?id=184274
2388
2389         Reviewed by Ryosuke Niwa.
2390
2391         Add processing of win bot results.
2392         They will update platform/win results.
2393
2394         Updated the script so that if there is no mac-wk2 results, it will still process specific results.
2395
2396         * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater.py:
2397         (TestExpectationUpdater.__init__):
2398         (TestExpectationUpdater._bot_type):
2399         (TestExpectationUpdater.do_update):
2400         * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater_unittest.py:
2401         (MockAttachment):
2402         (MockAttachment.__init__):
2403         (MockAttachment.contents):
2404         (MockBugzilla):
2405         (MockBugzilla.__init__):
2406         (MockBugzilla.fetch_bug):
2407         (MockBugzilla.attachments):
2408         (MockZip):
2409         (MockZip.__init__):
2410         (MockZip.unzip):
2411         (MockZip.read):
2412         (TestExpectationUpdaterTest.test_update_test_expectations):
2413         (TestExpectationUpdaterTest):
2414         (TestExpectationUpdaterTest.test_update_win_future_test_expectations):
2415
2416 2018-04-05  Zalan Bujtas  <zalan@apple.com>
2417
2418         [LayoutReloaded] Fix static position for floating boxes when they don't fit the current line
2419         https://bugs.webkit.org/show_bug.cgi?id=184354
2420
2421         Reviewed by Antti Koivisto.
2422
2423         Do not shrink the current line with the floating box unless it is on the current line.
2424
2425         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2426         (InlineFormattingContext.prototype._handleFloatingBox):
2427         (InlineFormattingContext.prototype._mapFloatingVerticalPosition):
2428         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2429         (Line.prototype.addFloatingBox):
2430         (Line):
2431         * LayoutReloaded/test/index.html:
2432         * LayoutReloaded/test/inline-with-right-floats3.html: Added.
2433
2434 2018-04-05  Zalan Bujtas  <zalan@apple.com>
2435
2436         [LayoutReloaded] Add support for right floating boxes in inline formatting context
2437         https://bugs.webkit.org/show_bug.cgi?id=184351
2438
2439         Reviewed by Antti Koivisto.
2440
2441         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2442         (InlineFormattingContext.prototype._handleFloatingBox):
2443         (InlineFormattingContext.prototype._mapFloatingVerticalPosition):
2444         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2445         (Line.prototype.addFloatingBox):
2446         (Line):
2447         * LayoutReloaded/test/index.html:
2448         * LayoutReloaded/test/inline-with-right-float-simple.html: Added.
2449         * LayoutReloaded/test/inline-with-right-floats2.html: Added.
2450
2451 2018-04-05  Zalan Bujtas  <zalan@apple.com>
2452
2453         [LayoutReloaded] Move floating box to the next line when needed
2454         https://bugs.webkit.org/show_bug.cgi?id=184349
2455
2456         Reviewed by Antti Koivisto.
2457
2458         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2459         (InlineFormattingContext.prototype.layout):
2460         (InlineFormattingContext.prototype._handleContent):
2461         (InlineFormattingContext.prototype._handleText):
2462         (InlineFormattingContext.prototype._handleFloatingBox):
2463         (InlineFormattingContext.prototype._mapFloatingHorizontalPosition):
2464         (InlineFormattingContext):
2465         (InlineFormattingContext.prototype._handleFloatingBoxes): Deleted.
2466         (InlineFormattingContext.prototype._floatingBoxes): Deleted.
2467         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2468         (Line.prototype.addTextLineBox):
2469         (Line.prototype.addFloatingBox):
2470         (Line):
2471         * LayoutReloaded/Utils.js:
2472         (LayoutRect.prototype.moveHorizontally):
2473         (LayoutRect.prototype.moveVertically):
2474         * LayoutReloaded/test/index.html:
2475         * LayoutReloaded/test/inline-with-floats-when-they-dont-fit.html: Added.
2476
2477 2018-04-05  Brady Eidson  <beidson@apple.com>
2478
2479         Process Swap on Navigation causes many webpages to hang due to attempted process swap for iframe navigations.
2480         <rdar://problem/39162236> and https://bugs.webkit.org/show_bug.cgi?id=184318
2481
2482         Reviewed by Andy Estes.
2483
2484         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2485         (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
2486         (-[PSONScheme addMappingFromURLString:toData:]):
2487         (-[PSONScheme webView:startURLSchemeTask:]):
2488
2489 2018-04-05  Yusuke Suzuki  <utatane.tea@gmail.com>
2490
2491         [WTF] Remove StaticLock
2492         https://bugs.webkit.org/show_bug.cgi?id=184332
2493
2494         Reviewed by Mark Lam.
2495
2496         * DumpRenderTree/JavaScriptThreading.cpp:
2497
2498 2018-04-05  Zalan Bujtas  <zalan@apple.com>
2499
2500         [LayoutReloaded] Find the correct left edge for a line when floating boxes are in parent formatting context.
2501         https://bugs.webkit.org/show_bug.cgi?id=184330
2502
2503         Reviewed by Antti Koivisto.
2504
2505         In inline formatting context, the floating boxes can come from the parent (block) formatting context. Let's
2506         take them into account when computing the line edges.
2507
2508         * LayoutReloaded/FormattingContext/FloatingContext.js:
2509         (FloatingContext.prototype.left):
2510         (FloatingContext.prototype.right):
2511         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2512         (InlineFormattingContext.prototype._createNewLine):
2513         (InlineFormattingContext.prototype._mapFloatingVerticalPosition):
2514         (InlineFormattingContext.prototype._mapFloatingHorizontalPosition):
2515         (InlineFormattingContext.prototype._mapFloatingPosition): Deleted.
2516         * LayoutReloaded/test/index.html:
2517         * LayoutReloaded/test/multiple-left-floats-on-line-from-parent-formatting-context.html: Added.
2518
2519 2018-04-05  Zalan Bujtas  <zalan@apple.com>
2520
2521         [LayoutReloaded] Collect floating boxes in inline formatting context and layout them first.
2522         https://bugs.webkit.org/show_bug.cgi?id=184329
2523
2524         Reviewed by Antti Koivisto.
2525
2526         Let's do this for now. There might be some cases where this violates layout.
2527
2528         * LayoutReloaded/FormattingContext/FormattingContext.js:
2529         (FormattingContext.prototype._outOfFlowDescendants):
2530         (FormattingContext):
2531         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2532         (InlineFormattingContext.prototype.layout):
2533         (InlineFormattingContext.prototype._handleFloatingBoxes):
2534         (InlineFormattingContext.prototype._handleFloatingBox):
2535         (InlineFormattingContext.prototype._floatingBoxes):
2536         (InlineFormattingContext):
2537         * LayoutReloaded/test/index.html:
2538         * LayoutReloaded/test/multiple-left-floats-on-line-simple.html: Added.
2539
2540 2018-04-04  Youenn Fablet  <youenn@apple.com>
2541
2542         WebRTC data channel only applications require capture permissions for direct connections
2543         https://bugs.webkit.org/show_bug.cgi?id=174500
2544         <rdar://problem/34134281>
2545
2546         Reviewed by Eric Carlson.
2547
2548         Adding options to enable MDNS ICE candidates.
2549
2550         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2551         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2552         (WTR::TestRunner::setMediaDevicesEnabled):
2553         (WTR::TestRunner::setMDNSICECandidatesEnabled):
2554         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2555         * WebKitTestRunner/TestController.cpp:
2556         (WTR::TestController::resetPreferencesToConsistentValues):
2557
2558 2018-04-04  Ryan Haddad  <ryanhaddad@apple.com>
2559
2560         Disable failing WKWebViewAutofillTests
2561         https://bugs.webkit.org/show_bug.cgi?id=184196
2562
2563         Unreviewed test gardening.
2564
2565         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
2566         (TestWebKitAPI::TEST):
2567
2568 2018-04-04  Youenn Fablet  <youenn@apple.com>
2569
2570         Introduce a ThreadSafeRefCounted parameter to ensure being destroyed on the main thread
2571         https://bugs.webkit.org/show_bug.cgi?id=183988
2572
2573         Reviewed by Darin Adler.
2574
2575         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
2576         (TestWebKitAPI::ThreadSafeRefCountedObject::create):
2577         (TestWebKitAPI::ThreadSafeRefCountedObject::~ThreadSafeRefCountedObject):
2578         (TestWebKitAPI::MainThreadSafeRefCountedObject::create):
2579         (TestWebKitAPI::MainThreadSafeRefCountedObject::~MainThreadSafeRefCountedObject):
2580         (TestWebKitAPI::TEST):
2581
2582 2018-04-04  Ms2ger  <Ms2ger@igalia.com>
2583
2584         Test gardening for GTK.
2585         https://bugs.webkit.org/show_bug.cgi?id=184298
2586
2587         Unreviewed test gardening.
2588
2589         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: Add pointer to
2590         https://bugs.webkit.org/show_bug.cgi?id=184295.
2591
2592 2018-04-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2593
2594         ASSERTION FAILED: !m_mainFrame->coreFrame()->loader().frameHasLoaded() || !m_pendingNavigationID when reloading page while a page is loading
2595         https://bugs.webkit.org/show_bug.cgi?id=153210
2596
2597         Reviewed by Alex Christensen.
2598
2599         Add unit tests to WebKit C API and WebKitGLib.
2600
2601         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
2602         (TestWebKitAPI::TEST):
2603         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
2604         (LoadTwiceAndReloadTest::reloadOnFinishLoad):
2605         (LoadTwiceAndReloadTest::LoadTwiceAndReloadTest):
2606         (LoadTwiceAndReloadTest::~LoadTwiceAndReloadTest):
2607         (LoadTwiceAndReloadTest::waitUntilFinished):
2608         (testWebViewLoadTwiceAndReload):
2609         (beforeAll):
2610
2611 2018-04-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2612
2613         [GTK] Test /webkit/WebKitWebPage/context-menu is failing since r229831
2614         https://bugs.webkit.org/show_bug.cgi?id=184260
2615
2616         Reviewed by Michael Catanzaro.
2617
2618         This is not a regression introduced in r229831, though, it's a bug in the test itself revealed by r229831. We
2619         should wait for the load to complete before trying to show the context menu.
2620
2621         * TestWebKitAPI/Tests/WebKitGtk/TestContextMenu.cpp:
2622         (testContextMenuWebExtensionMenu):
2623
2624 2018-04-03  Zalan Bujtas  <zalan@apple.com>
2625
2626         [LayoutReloaded] Introduce floating to InlineFormattingContext
2627         https://bugs.webkit.org/show_bug.cgi?id=184288
2628
2629         Reviewed by Antti Koivisto.
2630
2631         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
2632         (BlockFormattingContext.prototype._computeFloatingWidth): Deleted.
2633         (BlockFormattingContext.prototype._computeFloatingHeight): Deleted.
2634         * LayoutReloaded/FormattingContext/FormattingContext.js:
2635         (FormattingContext.prototype._computeFloatingWidth):
2636         (FormattingContext.prototype._computeFloatingHeight):
2637         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2638         (InlineFormattingContext.prototype.layout):
2639         (InlineFormattingContext.prototype._handleFloatingBox):
2640         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2641         (Line.prototype.addFloatingBox):
2642         (Line):
2643         * LayoutReloaded/test/float-is-inside-inline-formatting-context-simple.html: Added.
2644         * LayoutReloaded/test/index.html:
2645
2646 2018-04-03  Youenn Fablet  <youenn@apple.com>
2647
2648         NetworkResourceLoader does not need to expose all redirect response headers
2649         https://bugs.webkit.org/show_bug.cgi?id=184114
2650         <rdar://problem/39010557>
2651
2652         Reviewed by Ryosuke Niwa.
2653
2654         Add an option to dump the number of headers in a response.
2655         This allows validating that filtering does happen or not.
2656
2657         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2658         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2659         (WTR::dumpResponseDescriptionSuitableForTestResult):
2660         (WTR::InjectedBundlePage::responseHeaderCount):
2661         (WTR::InjectedBundlePage::willSendRequestForFrame):
2662         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
2663         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2664         (WTR::TestRunner::dumpAllHTTPRedirectedResponseHeaders):
2665         (WTR::TestRunner::shouldDumpAllHTTPRedirectedResponseHeaders const):
2666         * WebKitTestRunner/InjectedBundle/cocoa/InjectedBundlePageCocoa.mm:
2667         (WTR::InjectedBundlePage::responseHeaderCount):
2668         * WebKitTestRunner/TestController.cpp:
2669         (WTR::TestController::resetPreferencesToConsistentValues):
2670
2671 2018-04-03  Andy Estes  <aestes@apple.com>
2672
2673         [Mac] Prioritize file promises over filenames during drag and drop
2674         https://bugs.webkit.org/show_bug.cgi?id=184237
2675         <rdar://problem/38278076>
2676
2677         Reviewed by Wenson Hsieh.
2678
2679         * DumpRenderTree/mac/EventSendingController.mm:
2680         (-[EventSendingController beginDragWithFilePromises:]):
2681
2682 2018-04-03  Brady Eidson  <beidson@apple.com>
2683
2684         Make SessionStorage work with process swapping.
2685         https://bugs.webkit.org/show_bug.cgi?id=184270
2686
2687         Reviewed by Andy Estes.
2688
2689         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2690         (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
2691
2692 2018-04-03  Chris Dumez  <cdumez@apple.com>
2693
2694         Drop MainFrame class
2695         https://bugs.webkit.org/show_bug.cgi?id=184191
2696
2697         Reviewed by Darin Adler.
2698
2699         * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
2700
2701 2018-04-03  Charlie Turner  <cturner@igalia.com>
2702
2703         [WPE] Add WPE port to garden-o-matic
2704         https://bugs.webkit.org/show_bug.cgi?id=182998
2705
2706         Reviewed by Michael Catanzaro.
2707
2708         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
2709         Add WPE as a port to check.
2710         (config.kPlatforms.string_appeared_here._builderApplies): Use less
2711         surprising equality operator.
2712         (config.kPlatforms.string_appeared_here.resultsDirectoryNameFromBuilderName):
2713         Ditto.
2714         (config.kPlatforms.string_appeared_here.resultsDirectoryForBuildNumber):
2715         Ditto.
2716
2717 2018-04-03  Adrian Perez de Castro  <aperez@igalia.com>
2718
2719         [GTK][JHBuild] Tools/gtk/install-dependencies: Replace libxfont with libxfont2 in Arch Linux
2720         https://bugs.webkit.org/show_bug.cgi?id=184258
2721
2722         Reviewed by Carlos Alberto Lopez Perez.
2723
2724         * gtk/install-dependencies: Use libxfont2 on Arch Linux as well.
2725
2726 2018-04-02  Brady Eidson  <beidson@apple.com>
2727
2728         Process swapping on navigation needs to handle server redirects.
2729         <rdar://problem/38690465> and https://bugs.webkit.org/show_bug.cgi?id=184142
2730
2731         Reviewed by Alex Christensen.
2732
2733         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2734         (-[PSONNavigationDelegate webView:didFinishNavigation:]):
2735         (-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2736         (-[PSONNavigationDelegate webView:didReceiveServerRedirectForProvisionalNavigation:]):
2737         (-[PSONScheme addRedirectFromURLString:toURLString:]):
2738         (-[PSONScheme webView:startURLSchemeTask:]):
2739
2740 2018-04-02  Daniel Bates  <dabates@apple.com>
2741
2742         Add infrastructure to relax SSL for allowed hosts in DumpRenderTree and WebKitTestRunner
2743         https://bugs.webkit.org/show_bug.cgi?id=184239
2744
2745         Reviewed by Alexey Proskuryakov.
2746
2747         Adds a new optional command line option --allow-any-certificate-for-allowed-hosts (defaults to disabled)
2748         to allow the allowed hosts to accept any HTTPS certificate. You can specify an allowed host
2749         by using the existing command line option --allowed-host.
2750
2751         Currently both DumpRenderTree and WebKitTestRunner relax SSL certificate validation
2752         for 127.0.0.1 and localhost so that we can run HTTPS tests from these hosts using
2753         a self-signed certificate. They do not relax these restrictions for any allowed host,
2754         specified using the optional command line option --allowed-host. For testing purposes
2755         it is useful to be able to run a local HTTPS server with a self-signed certificate and
2756         mimic a non-localhost hostname (by adding an alias(es) for 127.0.0.1 to /etc/hosts).
2757         We should support relaxing SSL restrictions for such testing purposes.
2758
2759         For example, to allow host example.test to present any HTTPS certificate when running
2760         tests you would invoke:
2761
2762             run-webkit-tests --allowed-host example.test --additional-drt-flag '--allow-any-certificate-for-allowed-hosts'
2763
2764         * DumpRenderTree/mac/DumpRenderTree.mm:
2765         (initializeGlobalsFromCommandLineOptions): Parse the command line option --allow-any-certificate-for-allowed-hosts.
2766         (dumpRenderTree): Allow any HTTPS certificate from each allowed host.
2767         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2768         (WTR::InjectedBundle::didReceiveMessageToPage): Clear out the existing list of allowed hosts
2769         before appending entries to it to avoid growing the list of allowed hosts without bound. Call
2770         platformAllowAnyHTTPSCertificateForAllowedHosts() to apply SSL relaxation for each allowed host.
2771         * WebKitTestRunner/Options.cpp:
2772         (WTR::handleOptionAllowAnyHTTPSCertificateForAllowedHosts): Added.
2773         (WTR::handleOptionAllowedHost): Update code as needed now that Options::allowedHosts is a std::set.
2774         (WTR::OptionsHandler::OptionsHandler):
2775         * WebKitTestRunner/Options.h: Change the data type of allowedHosts from a std::vector to a std::set
2776         so that we can make use of the convenience functon std::set::find() in TestController::canAuthenticateAgainstProtectionSpace().
2777         * WebKitTestRunner/TestController.cpp:
2778         (WTR::TestController::initialize):
2779         (WTR::TestController::canAuthenticateAgainstProtectionSpace): Allow any HTTPS certificate from each allowed host.
2780         * WebKitTestRunner/TestController.h:
2781
2782 2018-04-02  Ryan Haddad  <ryanhaddad@apple.com>
2783
2784         Unreviewed, rolling out r230174.
2785
2786         Caused LayoutTests to exit early with assertion failures.
2787
2788         Reverted changeset:
2789
2790         "Process swapping on navigation needs to handle server
2791         redirects."
2792         https://bugs.webkit.org/show_bug.cgi?id=184142
2793         https://trac.webkit.org/changeset/230174
2794
2795 2018-04-02  Daniel Bates  <dabates@apple.com>
2796
2797         Remove pre-Network Session code path for allowing any HTTPS certificate on Mac and iOS
2798         https://bugs.webkit.org/show_bug.cgi?id=184242
2799
2800         Reviewed by Alexey Proskuryakov.
2801
2802         Following r227364 we use the Network Session (NSURLSession) code path by default in
2803         modern WebKit on Mac and iOS. That is, we no longer use {CF, NS}URLConnection in modern
2804         WebKit on these platforms. So, we can remove code that used NSURLRequest SPI to allow
2805         any HTTPS certificate from localhost and 127.0.0.1 when using {CF, NS}URLConnection.
2806         The equivalent functionality is implemented in TestController::canAuthenticateAgainstProtectionSpace().
2807
2808         * WebKitTestRunner/InjectedBundle/ios/InjectedBundleIOS.mm:
2809         (WTR::InjectedBundle::platformInitialize):
2810         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
2811         (WTR::InjectedBundle::platformInitialize):
2812
2813 2018-04-02  Brady Eidson  <beidson@apple.com>
2814
2815         Process swapping on navigation needs to handle server redirects.
2816         <rdar://problem/38690465> and https://bugs.webkit.org/show_bug.cgi?id=184142
2817
2818         Reviewed by Alex Christensen.
2819
2820         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2821         (-[PSONNavigationDelegate webView:didFinishNavigation:]):
2822         (-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2823         (-[PSONNavigationDelegate webView:didReceiveServerRedirectForProvisionalNavigation:]):
2824         (-[PSONScheme addRedirectFromURLString:toURLString:]):
2825         (-[PSONScheme webView:startURLSchemeTask:]):
2826
2827 2018-04-02  Thibault Saunier  <tsaunier@igalia.com>
2828
2829         webkitpy: Use current environment value for GST_DEBUG(_FILE) and DOT_DIR env vars
2830         https://bugs.webkit.org/show_bug.cgi?id=184036
2831
2832         Reviewed by Philippe Normand.
2833
2834         Those variables are for debug purpose and should not change the behaviour
2835         itself, and developers expect them to have effect.
2836
2837         * Scripts/webkitpy/port/gtk.py:
2838         (GtkPort.setup_environ_for_server):
2839
2840 2018-04-02  Daniel Bates  <dabates@apple.com>
2841
2842         Remove Options constructor and use internal linkage for option handlers
2843         https://bugs.webkit.org/show_bug.cgi?id=184229
2844
2845         Reviewed by Andy Estes.
2846
2847         Use C++11 default initializer syntax to remove the need to explicitly have a constructor
2848         for the struct Options. Use internal linkage for option handler functions as these
2849         are never invoked outside the translation unit they are defined in.
2850
2851         * WebKitTestRunner/Options.cpp:
2852         (WTR::handleOptionNoTimeout):
2853         (WTR::handleOptionVerbose):
2854         (WTR::handleOptionGcBetweenTests):
2855         (WTR::handleOptionPixelTests):
2856         (WTR::handleOptionPrintSupportedFeatures):
2857         (WTR::handleOptionComplexText):
2858         (WTR::handleOptionAcceleratedDrawing):
2859         (WTR::handleOptionRemoteLayerTree):
2860         (WTR::handleOptionShowWebView):
2861         (WTR::handleOptionShowTouches):
2862         (WTR::handleOptionAllowedHost):
2863         (WTR::handleOptionUnmatched):
2864         (WTR::Options::Options): Deleted.
2865         * WebKitTestRunner/Options.h:
2866
2867 2018-04-02  Alejandro G. Castro  <alex@igalia.com>
2868
2869         Unreviewed GTK port dependencies fix after r230152.
2870
2871         Add alsa library dependency for gtk.
2872
2873         * gtk/install-dependencies:
2874
2875 2018-04-02  Alejandro G. Castro  <alex@igalia.com>
2876
2877         [GTK] Make libwebrtc backend buildable for GTK  port
2878         https://bugs.webkit.org/show_bug.cgi?id=178860
2879
2880         Reviewed by Youenn Fablet.
2881
2882         * gstreamer/jhbuild.modules: Modified the libvpx module for the
2883         libwebrtc compilation.
2884         * gtk/install-dependencies: Add libevent as a system requirement.
2885         * Scripts/webkitpy/style/checker.py: Added libwebrtc to the list of third
2886         party libraries with reduced style checks.
2887
2888 2018-04-01  Zalan Bujtas  <zalan@apple.com>
2889
2890         [LayoutReloaded] Use containing block's contentBox left edge when the float is to the right.
2891         https://bugs.webkit.org/show_bug.cgi?id=184230
2892
2893         Reviewed by Antti Koivisto.
2894
2895         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2896         (InlineFormattingContext.prototype._mapFloatingPosition):
2897         (InlineFormattingContext):
2898         * LayoutReloaded/test/index.html:
2899         * LayoutReloaded/test/inline-formatting-context-with-floats2.html: Added.
2900
2901 2018-04-01  Zalan Bujtas  <zalan@apple.com>
2902
2903         [LayoutReloaded] Right floating box reduces available line width.
2904         https://bugs.webkit.org/show_bug.cgi?id=184226
2905
2906         Reviewed by Antti Koivisto.
2907
2908         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2909         (InlineFormattingContext.prototype._createNewLine):
2910         * LayoutReloaded/test/index.html:
2911         * LayoutReloaded/test/inline-with-floats-right-left-simple.html: Added.
2912
2913 2018-03-31  Zalan Bujtas  <zalan@apple.com>
2914
2915         [LayoutReloaded] Floating box reduces line with in inline formatting context
2916         https://bugs.webkit.org/show_bug.cgi?id=184223
2917
2918         Reviewed by Antti Koivisto.
2919
2920         * LayoutReloaded/FormattingContext/FloatingContext.js:
2921         (FloatingContext.prototype.left):
2922         (FloatingContext.prototype.right):
2923         (FloatingContext.prototype._mapDisplayMarginBoxToFormattingRoot):
2924         (FloatingContext.prototype._mapBorderBoxToFormattingRoot):
2925         (FloatingContext.prototype._mapContentBoxToFormattingRoot):
2926         (FloatingContext.prototype.formattingRoot):
2927         (FloatingContext.prototype._floatingState):
2928         (FloatingContext.prototype._formattingRoot): Deleted.
2929         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2930         (InlineFormattingContext.prototype._createNewLine):
2931         (InlineFormattingContext.prototype._mapFloatingPosition):
2932         (InlineFormattingContext):
2933         * LayoutReloaded/FormattingState/FormattingState.js:
2934         (FormattingState.prototype.displayBox):
2935         (FormattingState):
2936         * LayoutReloaded/test/index.html:
2937         * LayoutReloaded/test/inline-formatting-context-with-floats.html: Added.
2938
2939 2018-03-31  Zalan Bujtas  <zalan@apple.com>
2940
2941         [LayoutReloaded] InlineFormattingState should inherit the floating state from its parent formatting state
2942         https://bugs.webkit.org/show_bug.cgi?id=184220
2943
2944         Reviewed by Antti Koivisto.
2945
2946         If the block container box that initiates an inline formatting context also establishes a block context,
2947         create a new float state, otherwise use the existing one.
2948
2949         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
2950         (BlockFormattingContext.prototype._contentHeight):
2951         * LayoutReloaded/FormattingState/InlineFormattingState.js:
2952         (InlineFormattingState):
2953         * LayoutReloaded/LayoutState.js:
2954         (LayoutState.prototype.establishedFormattingState):
2955         (LayoutState.prototype.formattingStateForBox):
2956         (LayoutState.prototype.formattingState): Deleted.
2957         * LayoutReloaded/Utils.js:
2958
2959 2018-03-31  Zalan Bujtas  <zalan@apple.com>
2960
2961         [LayoutReloaded] FloatingContext does not need a parent formatting context.
2962         https://bugs.webkit.org/show_bug.cgi?id=184219
2963
2964         Reviewed by Antti Koivisto.
2965
2966         We don't need the formatting context in the FloatingContext now that margins are moved over to Display.Box.
2967         This is in preparation for being able to create a FloatingContext for an inline formatting context,
2968         when the inline context actually inherits the floating state from its formatting root.
2969
2970         * LayoutReloaded/FormattingContext/FloatingContext.js:
2971         (FloatingContext):
2972         (FloatingContext.prototype._availableSpace):
2973         (FloatingContext.prototype._adjustedFloatingPosition):
2974         (FloatingContext.prototype._addFloatingBox):
2975         (FloatingContext.prototype._formattingContext): Deleted.
2976         * LayoutReloaded/FormattingContext/FormattingContext.js:
2977         (FormattingContext):
2978
2979 2018-03-31  Zalan Bujtas  <zalan@apple.com>
2980
2981         [LayoutReloaded] Do not clone Display.Box for FloatingState stacks.
2982         https://bugs.webkit.org/show_bug.cgi?id=184218
2983
2984         Reviewed by Antti Koivisto.
2985
2986         Now that Display.Box is in a tree context, we can't just clone it for the purpose of caching its absolute position.
2987
2988         * LayoutReloaded/DisplayTree/Box.js:
2989         (Display.Box.prototype.clone): Deleted.
2990         * LayoutReloaded/FormattingContext/FloatingContext.js:
2991         (FloatingContext.prototype._positionForFloating):
2992         (FloatingContext.prototype._moveToNextVerticalPosition):
2993         (FloatingContext.prototype._availableSpace):
2994         (FloatingContext.prototype._findFloatingAtVerticalPosition):
2995         (FloatingContext.prototype._adjustedFloatingPosition):
2996         (FloatingContext.prototype._bottom):
2997         (FloatingContext.prototype._addFloatingBox):
2998         (FloatingContext.prototype._mapMarginBoxToFormattingRoot):
2999         (FloatingContext.prototype._mapDisplayMarginBoxToFormattingRoot):
3000         * LayoutReloaded/FormattingState/FloatingState.js:
3001         (FloatingState.prototype.addFloating):
3002
3003 2018-03-31  Zalan Bujtas  <zalan@apple.com>
3004
3005         [LayoutReloaded] Remove all FormattingContext::absolute*Box functions.
3006         https://bugs.webkit.org/show_bug.cgi?id=184215
3007
3008         Reviewed by Antti Koivisto.
3009
3010         Use Display.Box instead.
3011
3012         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
3013         (BlockFormattingContext.prototype._computeOutOfFlowPosition):
3014         * LayoutReloaded/FormattingContext/FloatingContext.js:
3015         (FloatingContext.prototype._availableSpace):
3016         (FloatingContext.prototype._adjustedFloatingPosition):
3017         (FloatingContext.prototype._mapBorderBoxToFormattingRoot):
3018         (FloatingContext.prototype._mapContentBoxToFormattingRoot):
3019         * LayoutReloaded/FormattingContext/FormattingContext.js:
3020         (FormattingContext.prototype.absoluteBorderBox): Deleted.
3021         (FormattingContext.prototype.absolutePaddingBox): Deleted.
3022         (FormattingContext.prototype.absoluteContentBox): Deleted.
3023         (FormattingContext.prototype._toAbsolutePosition): Deleted.
3024         (FormattingContext.prototype._toRootAbsolutePosition): Deleted.
3025         * LayoutReloaded/Utils.js:
3026         (Utils.mapPosition):
3027         (Utils.marginBox):
3028         (Utils.borderBox):
3029         (Utils.contentBox):
3030
3031 2018-03-31  Zalan Bujtas  <zalan@apple.com>
3032
3033         [LayoutReloaded] Remove FormattingContext::absoluteMarginBox
3034         https://bugs.webkit.org/show_bug.cgi?id=184213
3035
3036         Reviewed by Antti Koivisto.
3037
3038         Display.Box already has the margin values.
3039
3040         * LayoutReloaded/FormattingContext/FloatingContext.js:
3041         (FloatingContext.prototype._positionForFloating):
3042         (FloatingContext.prototype._addFloatingBox):
3043         (FloatingContext.prototype._mapMarginBoxToFormattingRoot):
3044         (FloatingContext.prototype._formattingRoot):
3045         * LayoutReloaded/FormattingContext/FormattingContext.js:
3046         (FormattingContext.prototype.absoluteMarginBox): Deleted.
3047         * LayoutReloaded/Utils.js:
3048         (Utils.marginBox):
3049
3050 2018-03-31  Zalan Bujtas  <zalan@apple.com>
3051
3052         [layoutReloaded] Introduce margin to Display.Box
3053         https://bugs.webkit.org/show_bug.cgi?id=184212
3054
3055         Reviewed by Antti Koivisto.
3056
3057         This is in preparation for moving margin box out of formatting context to Display.Box.
3058
3059         * LayoutReloaded/DisplayTree/Box.js:
3060         (Display.Box):
3061         (Display.Box.prototype.setRect):
3062         (Display.Box.prototype.setTopLeft):
3063         (Display.Box.prototype.setTop):
3064         (Display.Box.prototype.setLeft):
3065         (Display.Box.prototype.setSize):
3066         (Display.Box.prototype.setWidth):
3067         (Display.Box.prototype.setHeight):
3068         (Display.Box.prototype.width):
3069         (Display.Box.prototype.setMarginTop):
3070         (Display.Box.prototype.setMarginLeft):
3071         (Display.Box.prototype.setMarginBottom):
3072         (Display.Box.prototype.setMarginRight):
3073         (Display.Box.prototype.marginTop):
3074         (Display.Box.prototype.marginLeft):
3075         (Display.Box.prototype.marginBottom):
3076         (Display.Box.prototype.marginRight):
3077         (Display.Box.prototype.marginBox):
3078         * LayoutReloaded/FormattingContext/FormattingContext.js:
3079         (FormattingContext.prototype.absoluteMarginBox):
3080         (FormattingContext.prototype._addToLayoutQueue):
3081         * LayoutReloaded/FormattingState/FormattingState.js:
3082         (FormattingState.prototype.createDisplayBox):
3083
3084 2018-03-31  Zalan Bujtas  <zalan@apple.com>
3085
3086         [LayoutReloaded] Add tree context to Display.Box
3087         https://bugs.webkit.org/show_bug.cgi?id=184211
3088
3089         Reviewed by Antti Koivisto.
3090
3091         This is preparation for using the Display.Box tree to resolve absolute coordinates.
3092
3093         * LayoutReloaded/DisplayTree/Box.js:
3094         (Display.Box):
3095         (Display.Box.prototype.setParent):
3096         (Display.Box.prototype.setNextSibling):
3097         (Display.Box.prototype.setPreviousSibling):
3098         (Display.Box.prototype.setFirstChild):
3099         (Display.Box.prototype.setLastChild):
3100         (Display.Box.prototype.parent):
3101         (Display.Box.prototype.nextSibling):
3102         (Display.Box.prototype.previousSibling):
3103         (Display.Box.prototype.firstChild):
3104         (Display.Box.prototype.lastChild):
3105         * LayoutReloaded/FormattingState/FormattingState.js:
3106         (FormattingState.prototype.createDisplayBox):
3107
3108 2018-03-30  Ryosuke Niwa  <rniwa@webkit.org>
3109
3110         Copying a list from Microsoft Word to TinyMCE fails when mso-list is the first property
3111         https://bugs.webkit.org/show_bug.cgi?id=182938
3112         <rdar://problem/37683007>
3113
3114         Reviewed by Wenson Hsieh.
3115
3116         Added more assertions to PasteHTML.PreservesMSOList for preserving an inline style which starts with mso-list
3117         or the one which line-breaks right before it.
3118
3119         * TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm:
3120         * TestWebKitAPI/Tests/WebKitCocoa/mso-list.html:
3121
3122 2018-03-29  Ryosuke Niwa  <rniwa@webkit.org>
3123
3124         Copying a list from Microsoft Word to TinyMCE fails when mso-list is on tags other than P
3125         https://bugs.webkit.org/show_bug.cgi?id=182954
3126         <rdar://problem/37713141>
3127
3128         Reviewed by Wenson Hsieh.
3129
3130         Added a test case for a HTML generated by Microsoft Word which sets mso-list on h4.
3131
3132         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3133         * TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm:
3134         * TestWebKitAPI/Tests/WebKitCocoa/mso-list-compat-mode.html: Fixed the file path.
3135         * TestWebKitAPI/Tests/WebKitCocoa/mso-list-on-h4.html: Added.
3136
3137 2018-03-29  Ross Kirsling  <ross.kirsling@sony.com>
3138
3139         run-jsc-benchmarks should recognize Windows-style build directory structure.
3140         https://bugs.webkit.org/show_bug.cgi?id=184117
3141
3142         Reviewed by Yusuke Suzuki.
3143
3144         * Scripts/run-jsc-benchmarks:
3145         Allow not only bin/jsc but also bin64/jsc.exe.
3146
3147 2018-03-29  Zalan Bujtas  <zalan@apple.com>
3148
3149         [LayoutReloaded] Decouple formatting state and context lifetime.
3150         https://bugs.webkit.org/show_bug.cgi?id=184136
3151
3152         Reviewed by Antti Koivisto.
3153
3154         FormattingContext is about the layout logic. We don't need to hold on to it.
3155
3156         * LayoutReloaded/FormattingContext/FloatingContext.js:
3157         (FloatingContext):
3158         (FloatingContext.prototype.computePosition):
3159         (FloatingContext.prototype._positionForClear):
3160         (FloatingContext.prototype._computePositionToAvoidIntrudingFloats):
3161         (FloatingContext.prototype._addFloatingBox):
3162         (FloatingContext.prototype._formattingContext):
3163         (FloatingContext.prototype._formattingState):
3164         * LayoutReloaded/FormattingContext/FormattingContext.js:
3165         (FormattingContext):
3166         * LayoutReloaded/FormattingState/BlockFormattingState.js:
3167         (BlockFormattingState):
3168         * LayoutReloaded/FormattingState/FloatingState.js:
3169         (FloatingState):
3170         (FloatingState.prototype.addFloating):
3171         (FloatingState.prototype.formattingState):
3172         (FloatingState.prototype.formattingContext): Deleted.
3173         * LayoutReloaded/FormattingState/FormattingState.js:
3174         (FormattingState):
3175         (FormattingState.prototype.formattingContext): Deleted.
3176         * LayoutReloaded/FormattingState/InlineFormattingState.js:
3177         (InlineFormattingState):
3178         * LayoutReloaded/LayoutState.js:
3179         (LayoutState.prototype.layout):
3180         (LayoutState.prototype.formattingContext):
3181
3182 2018-03-28  Zalan Bujtas  <zalan@apple.com>
3183
3184         [LayoutReloaded] Introduce FloatingState.
3185         https://bugs.webkit.org/show_bug.cgi?id=184126
3186
3187         Reviewed by Antti Koivisto.
3188
3189         It holds the floating state (left/right floating stack) for a given formatting state (Block or Inline).
3190         (FormattingState -> FloatingState/FormattingContext -> FloatingContext)
3191
3192         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
3193         (BlockFormattingContext):
3194         * LayoutReloaded/FormattingContext/FloatingContext.js:
3195         (FloatingContext):
3196         (FloatingContext.prototype.computePosition):
3197         (FloatingContext.prototype.bottom):
3198         (FloatingContext.prototype._positionForFloating):
3199         (FloatingContext.prototype._positionForClear):
3200         (FloatingContext.prototype._findInnerMostLeftAndRight):
3201         (FloatingContext.prototype._isEmpty):
3202         (FloatingContext.prototype._floatingState):
3203         (FloatingContext.prototype._formattingContext):
3204         (FloatingContext.prototype._lastFloating):
3205         (FloatingContext.prototype._leftFloatingStack):
3206         (FloatingContext.prototype._rightFloatingStack):
3207         (FloatingContext.prototype._addFloating): Deleted.
3208         * LayoutReloaded/FormattingContext/FormattingContext.js:
3209         (FormattingContext):
3210         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3211         (InlineFormattingContext):
3212         * LayoutReloaded/FormattingState/BlockFormattingState.js:
3213         (BlockFormattingState):
3214         * LayoutReloaded/FormattingState/FloatingState.js: Copied from Tools/LayoutReloaded/FormattingState/InlineFormattingState.js.
3215         (FloatingState):
3216         (FloatingState.prototype.addFloating):
3217         (FloatingState.prototype.leftFloatingStack):
3218         (FloatingState.prototype.rightFloatingStack):
3219         (FloatingState.prototype.lastFloating):
3220         (FloatingState.prototype.formattingContext):
3221         * LayoutReloaded/FormattingState/FormattingState.js:
3222         (FormattingState):
3223         (FormattingState.prototype.floatingState):
3224         * LayoutReloaded/FormattingState/InlineFormattingState.js:
3225         (InlineFormattingState):
3226         * LayoutReloaded/test/index.html:
3227
3228 2018-03-28  Zalan Bujtas  <zalan@apple.com>
3229
3230         [LayoutReloaded] Convert floating left/right stack display boxes absolute to the formatting context's root.
3231         https://bugs.webkit.org/show_bug.cgi?id=184123
3232
3233         Reviewed by Antti Koivisto.
3234
3235         1. The left/right floating array should hold the Display.Box (and not the Layout.Box)
3236         2. Clone the Display.Box and convert its rect absolute to the formatting context's root so that we
3237         don't have to keep converting the coordinates while computing the positions. 
3238
3239         * LayoutReloaded/DisplayTree/Box.js:
3240         (Display.Box.prototype.clone):
3241         (Display.Box.prototype.setRect):
3242         * LayoutReloaded/FormattingContext/FloatingContext.js:
3243         (FloatingContext.prototype.computePosition):
3244         (FloatingContext.prototype._positionForFloating):
3245         (FloatingContext.prototype._addFloating):
3246         (FloatingContext.prototype._moveToNextVerticalPosition):
3247         (FloatingContext.prototype._availableSpace):
3248         (FloatingContext.prototype._findFloatingAtVerticalPosition):
3249         (FloatingContext.prototype._adjustedFloatingPosition):
3250         (FloatingContext.prototype._bottom):
3251
3252 2018-03-28  Chris Dumez  <cdumez@apple.com>
3253
3254         Unreviewed iOS build fix after r230060.
3255
3256         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3257
3258 2018-03-28  Chris Dumez  <cdumez@apple.com>
3259
3260         Unreviewed, disable new window.open() API tests introduced in r230051 on iOS.
3261
3262         I will investigate if this is testable on iOS.
3263
3264         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3265
3266 2018-03-28  Chris Dumez  <cdumez@apple.com>
3267
3268         Do process swap when opening a cross-origin URL via window.open(url, '_blank', 'noopener')
3269         https://bugs.webkit.org/show_bug.cgi?id=183962
3270         <rdar://problem/38817833>
3271
3272         Reviewed by Brady Eidson.
3273
3274         Add API test coverage.
3275
3276         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3277         (-[PSONUIDelegate initWithNavigationDelegate:]):
3278         (-[PSONUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
3279
3280 2018-03-28  Carlos Eduardo Ramalho  <cadubentzen@gmail.com>
3281
3282         Add Carlos Eduardo Ramalho as contributor
3283         https://bugs.webkit.org/show_bug.cgi?id=184082
3284
3285         Reviewed by Carlos Alberto Lopez Perez.
3286
3287         * Scripts/webkitpy/common/config/contributors.json:
3288
3289 2018-03-28  Wenson Hsieh  <wenson_hsieh@apple.com>
3290
3291         [Extra zoom mode] Make boosted text autosizing values switchable at runtime
3292         https://bugs.webkit.org/show_bug.cgi?id=184092
3293         <rdar://problem/38939917>
3294
3295         Reviewed by Tim Horton.
3296
3297         Add an API test to check that toggling the boosted text autosizing preference causes text to lay out larger than
3298         it would with normal text autosizing.
3299
3300         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3301         * TestWebKitAPI/Tests/ios/TextAutosizingBoost.mm: Added.
3302         (TEST):
3303
3304 2018-03-28  Zalan Bujtas  <zalan@apple.com>
3305
3306         [LayoutReloaded] InlineFormattingContext::_handleText should support runs on multiple lines
3307         https://bugs.webkit.org/show_bug.cgi?id=184101
3308
3309         Reviewed by Antti Koivisto.
3310
3311         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3312         (InlineFormattingContext):
3313         (InlineFormattingContext.prototype.layout):
3314         (InlineFormattingContext.prototype._handleText):
3315         (InlineFormattingContext.prototype._createNewLine):
3316         * LayoutReloaded/test/index.html:
3317         * LayoutReloaded/test/simple-multiline-text.html: Added.
3318
3319 2018-03-28  Zalan Bujtas  <zalan@apple.com>
3320
3321         [LayoutReloaded] Add InlineTextBreaker::skipLeadingWhitespaceIfNeeded
3322         https://bugs.webkit.org/show_bug.cgi?id=184099
3323
3324         Reviewed by Antti Koivisto.
3325
3326         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
3327
3328 2018-03-27  Carlos Garcia Campos  <cgarcia@igalia.com>
3329
3330         [GLIB] Add JSCWeakValue to JavaScriptCore GLib API
3331         https://bugs.webkit.org/show_bug.cgi?id=184041
3332
3333         Reviewed by Michael Catanzaro.
3334
3335         Add test case for JSCWeakValue.
3336
3337         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
3338         (weakValueClearedCallback):
3339         (testJSCWeakValue):
3340         (main):
3341
3342 2018-03-27  Zalan Bujtas  <zalan@apple.com>
3343
3344         [LayoutReloaded] Start using window.collectTextRuns() to layout text lines in inline formatting context
3345         https://bugs.webkit.org/show_bug.cgi?id=184070
3346
3347         Reviewed by Antti Koivisto.
3348
3349         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3350         (InlineFormattingContext.prototype._handleText):
3351         (InlineFormattingContext.prototype._commitLine):
3352         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
3353         (Line.prototype.addTextLineBox):
3354         (Line):
3355         (Line.prototype.addLineBox): Deleted.
3356         * LayoutReloaded/FormattingState/BlockFormattingState.js:
3357         (BlockFormattingState):
3358         * LayoutReloaded/FormattingState/FormattingState.js:
3359         (FormattingState.prototype.displayBox):
3360         (FormattingState):
3361         (FormattingState.prototype._setFormattingContext): Deleted.
3362         * LayoutReloaded/FormattingState/InlineFormattingState.js:
3363         (InlineFormattingState):
3364         * LayoutReloaded/LayoutTree/Text.js:
3365         (Text.prototype.content):
3366         * LayoutReloaded/Utils.js:
3367         (Utils.textRuns):
3368         (Utils.textRunsForLine):
3369         (Utils._dumpLines.):
3370         (Utils._dumpLines):
3371         * LayoutReloaded/test/simple-inline-text.html:
3372
3373 2018-03-27  Eric Carlson  <eric.carlson@apple.com>
3374
3375         https://bugs.webkit.org/show_bug.cgi?id=183876
3376         <rdar://problem/38726459>
3377         
3378         Unreviewed, fix for the test added in r229995 in the iOS simulator.
3379
3380         * TestWebKitAPI/Tests/WebKitCocoa/AVFoundationPreference.mm:
3381         (TestWebKitAPI::AVFoundationPref::testWithPreference):
3382
3383 2018-03-27  Jiewen Tan  <jiewen_tan@apple.com>
3384
3385         [WebAuthN] Implement authenticatorGetAssertion
3386         https://bugs.webkit.org/show_bug.cgi?id=183881
3387         <rdar://problem/37258628>
3388
3389         Reviewed by Brent Fulgham.
3390
3391         * TestWebKitAPI/Tests/ios/LocalAuthenticator.mm:
3392         (TestWebKitAPI::getTestKey):
3393         (TestWebKitAPI::addTestKeyToKeychain):
3394         (TestWebKitAPI::LAEvaluatePolicyFailedSwizzler::evaluatePolicyFailed):
3395         (TestWebKitAPI::LAEvaluatePolicyPassedSwizzler::evaluatePolicyPassed):
3396         (TestWebKitAPI::LAEvaluateAccessControlFailedSwizzler::LAEvaluateAccessControlFailedSwizzler):
3397         (TestWebKitAPI::LAEvaluateAccessControlFailedSwizzler::evaluateAccessControlFailed):
3398         (TestWebKitAPI::LAEvaluateAccessControlPassedSwizzler::LAEvaluateAccessControlPassedSwizzler):
3399         (TestWebKitAPI::LAEvaluateAccessControlPassedSwizzler::evaluateAccessControlPassed):
3400         (TestWebKitAPI::TEST):
3401
3402 2018-03-27  Brian Burg  <bburg@apple.com>
3403
3404         REGRESSION(r229937): WebDriver tests no longer run, test runner hangs when launching wpt web server
3405         https://bugs.webkit.org/show_bug.cgi?id=184056
3406         <rdar://problem/38925058>
3407
3408         Reviewed by Timothy Hatcher and Youenn Fablet.
3409
3410         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
3411         (WebDriverW3CWebServer.start):
3412         The config key used in upstream WPT has changed from 'host' to 'browser_host'.
3413
3414 2018-03-27  Timothy Hatcher  <timothy@hatcher.name>
3415
3416         Update my email address in contributors.json and scripts
3417         https://bugs.webkit.org/show_bug.cgi?id=184054
3418
3419         * Scripts/validate-committer-lists:
3420         (CommitterListFromGit):
3421         * Scripts/webkitpy/common/config/contributors.json:
3422
3423 2018-03-27  Eric Carlson  <eric.carlson@apple.com>
3424
3425         Make AVFoundationEnabled preference available on iOS
3426         https://bugs.webkit.org/show_bug.cgi?id=183876
3427         <rdar://problem/38726459>
3428
3429         Reviewed by Youenn Fablet.
3430
3431         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3432         * TestWebKitAPI/Tests/WebKit/video.html: Added.
3433         * TestWebKitAPI/Tests/WebKitCocoa/AVFoundationPreference.mm: Added.
3434         (-[PreferenceTestMessageHandler userContentController:didReceiveScriptMessage:]):
3435         (TestWebKitAPI::AVFoundationPref::SetUp):
3436         (TestWebKitAPI::AVFoundationPref::testWithPreference):
3437         (TestWebKitAPI::TEST_F):
3438
3439 2018-03-26  Brent Fulgham  <bfulgham@apple.com>
3440
3441         Warn against cookie access in the WebContent process using ProcessPrivilege assertions
3442         https://bugs.webkit.org/show_bug.cgi?id=183911
3443         <rdar://problem/38762306>
3444
3445         Reviewed by Youenn Fablet.
3446
3447         Add a set of ProcessPrivilege assertions to enforce the rule that the WebContent process
3448         should never call Cookie API directly. That should only happen in the Networking or
3449         UIProcess. 
3450
3451         * DumpRenderTree/mac/DumpRenderTree.mm:
3452         (DumpRenderTreeMain):
3453         * TestWebKitAPI/TestsController.cpp:
3454         (TestWebKitAPI::TestsController::TestsController):
3455         * WebKitTestRunner/TestController.cpp:
3456         (WTR::TestController::initialize):
3457
3458 2018-03-26  Zalan Bujtas  <zalan@apple.com>
3459
3460         [LayoutReloaded] Add InlineText DOM interface and dependencies
3461         https://bugs.webkit.org/show_bug.cgi?id=184010
3462
3463         Reviewed by Antti Koivisto.
3464
3465         to help inline text layout.
3466
3467         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
3468
3469 2018-03-25  Carlos Garcia Campos  <cgarcia@igalia.com>
3470
3471         [GTK][WPE] Add API to convert between DOM and JSCValue
3472         https://bugs.webkit.org/show_bug.cgi?id=183448
3473
3474         Reviewed by Michael Catanzaro.
3475
3476         Add unit tests for non-deprecated DOM API and switch existing tests to use non-deprecated API except for the
3477         ones that test the deprecated API.
3478
3479         * TestWebKitAPI/Tests/WebKitGLib/DOMElementTest.cpp: Added.
3480         (DOMElementTest::create):
3481         (DOMElementTest::testAutoFill):
3482         (registerTests):
3483         * TestWebKitAPI/Tests/WebKitGLib/EditorTest.cpp: Added.
3484         (WebKitWebEditorTest::create):
3485         (WebKitWebEditorTest::selectionChangedCallback):
3486         (WebKitWebEditorTest::testSelectionchanged):
3487         (registerTests):
3488         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
3489         (WebKitFrameTest::testJavaScriptValues):
3490         (registerTests):
3491         * TestWebKitAPI/Tests/WebKitGLib/TestDOMElement.cpp: Renamed from Source/WebKit/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMObjectPrivate.h.
3492         (testWebKitDOMElementAutoFill):
3493         (beforeAll):
3494         (afterAll):
3495         * TestWebKitAPI/Tests/WebKitGLib/TestEditor.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKitGtk/TestEditor.cpp.
3496         * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
3497         (testWebKitFrameJavaScriptValues):
3498         (beforeAll):
3499         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
3500         (inputElementIsUserEdited):
3501         (testWebExtensionInputElementIsUserEdited):
3502         (testWebExtensionFormSubmissionSteps):
3503         (beforeAll):
3504         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
3505         (documentLoadedCallback):
3506         (serializeNode):
3507         (contextMenuCallback):
3508         (consoleMessageSentCallback):
3509         (formControlsAssociatedCallback):
3510         (willSubmitFormCallback):
3511         (pageCreatedCallback):
3512         (methodCallCallback):
3513         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp:
3514         (checkLeaks):
3515         (webProcessTestRunnerFinalize):
3516         (checkLeaksAtExit):
3517         * TestWebKitAPI/Tests/WebKitGtk/AutocleanupsTest.cpp:
3518         (AutocleanupsTest::testWebProcessAutocleanups):
3519         * TestWebKitAPI/Tests/WebKitGtk/DOMClientRectTest.cpp:
3520         * TestWebKitAPI/Tests/WebKitGtk/DOMNodeFilterTest.cpp:
3521         * TestWebKitAPI/Tests/WebKitGtk/DOMNodeTest.cpp:
3522         * TestWebKitAPI/Tests/WebKitGtk/DOMXPathNSResolverTest.cpp:
3523         * TestWebKitAPI/Tests/WebKitGtk/EditorTest.cpp: Removed.
3524         * TestWebKitAPI/glib/CMakeLists.txt:
3525         * TestWebKitAPI/glib/PlatformGTK.cmake:
3526         * TestWebKitAPI/glib/PlatformWPE.cmake:
3527
3528 2018-03-24  Jonathan Bedard  <jbedard@apple.com>
3529
3530         webkitpy: Unrecognized mac versions always use WebKitTestRunner
3531         https://bugs.webkit.org/show_bug.cgi?id=183681
3532         <rdar://problem/38509162>
3533
3534         Reviewed by Daniel Bates.
3535
3536         When an unrecognized version is used, we were unconditionally adding '-wk2'
3537         to the mac version name. This would mean that the port object would always
3538         use WebKitTestRunner as the driver, even if DumpRenderTree was explicitly
3539         requested.
3540
3541         * Scripts/webkitpy/port/apple.py:
3542         (ApplePort.determine_full_port_name): Only add wk2 to port names if
3543         WebKitTestRunner is specified.
3544         * Scripts/webkitpy/port/mac.py:
3545         (MacPort.__init__): Compare length of split string, and do not treat wk2 as a
3546         version name.
3547         * Scripts/webkitpy/port/mac_unittest.py:
3548         (MacTest):
3549         (MacTest.test_factory_with_future_version): Confirm that future versions correctly
3550         assign the driver and have undefined version names.
3551         (MacTest.test_factory_with_portname_version): Confirm that general versions correctly assign
3552         the driver and have defined versions.
3553         (MacTest.test_factory_with_portname_wk2): Ensure that mac ports ending in 'wk2' set
3554         the driver to be WebKitTestRunner even if webkit_test_runner=False.
3555
3556 2018-03-23  Zan Dobersek  <zdobersek@igalia.com>
3557
3558         Fix the run-benchmark script, properly specifying the plan directory
3559         where the Skipped file is located.
3560
3561         Rubber-stamped by Carlos Alberto Lopez Perez.
3562
3563         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
3564         (start):
3565
3566 2018-03-23  Tim Horton  <timothy_horton@apple.com>
3567
3568         Fix the build with no pasteboard
3569         https://bugs.webkit.org/show_bug.cgi?id=183973
3570
3571         Reviewed by Dan Bernstein.
3572
3573         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3574
3575 2018-03-23  Youenn Fablet  <youenn@apple.com>
3576
3577         Update WPT tools to a1ec330
3578         https://bugs.webkit.org/show_bug.cgi?id=183934
3579
3580         Reviewed by Chris Dumez.
3581
3582         Update script to run WPT server  according updated WPT tools.
3583
3584         * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
3585         (main):
3586         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
3587         (base_http_url):
3588         (base_https_url):
3589
3590 2018-03-23  Sihui Liu  <sihui_liu@apple.com>
3591
3592         Local storage getItem() for an empty string returned UNDEFINED value.
3593         https://bugs.webkit.org/show_bug.cgi?id=69138
3594         <rdar://problem/13410974>
3595
3596         Reviewed by Brady Eidson.
3597
3598         Add API test coverage.
3599
3600         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3601         * TestWebKitAPI/Tests/WebKitCocoa/LocalStoragePersistence.mm: Added.
3602         (-[LocalStorageMessageHandler userContentController:didReceiveScriptMessage:]):
3603         (TEST):
3604         * TestWebKitAPI/Tests/WebKitCocoa/localstorage-empty-string-value.html: Added.
3605
3606 2018-03-23  Chris Dumez  <cdumez@apple.com>
3607
3608         Promptly terminate service worker processes when they are no longer needed
3609         https://bugs.webkit.org/show_bug.cgi?id=183873
3610         <rdar://problem/38676995>
3611
3612         Reviewed by Youenn Fablet.
3613
3614         Add API test coverage.
3615
3616         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
3617
3618 2018-03-23  Brady Eidson  <beidson@apple.com>
3619
3620         Go to back/forward list items after a process-swapped navigation.
3621         <rdar://problem/38690544> and https://bugs.webkit.org/show_bug.cgi?id=183920
3622
3623         Reviewed by Andy Estes.
3624
3625         Add a new API test that does some process-swapping navigations (including a back navigation)
3626         and verifies the state of the engine afterwards.
3627
3628         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3629         (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
3630         (-[PSONScheme initWithBytes:]):
3631         (-[PSONScheme webView:startURLSchemeTask:]):
3632         (log):
3633         (function):
3634         (TEST): Deleted.
3635
3636 2018-03-23  Brendan McLoughlin  <brendan@bocoup.com>
3637
3638         Lint web-platform-tests changes with the wpt linter before exporting
3639         https://bugs.webkit.org/show_bug.cgi?id=183796
3640
3641         Reviewed by Youenn Fablet.
3642
3643         * Scripts/webkitpy/w3c/test_exporter.py:
3644         (TestExporter.__init__):
3645         (TestExporter.do_export):
3646         * Scripts/webkitpy/w3c/test_exporter_unittest.py:
3647         (TestExporterTest.MockWPTLinter):
3648         (TestExporterTest.MockWPTLinter.__init__):