[CMake] Add support for LTO builds
[WebKit-https.git] / Tools / ChangeLog
1 2019-05-02  Christopher Reid  <chris.reid@sony.com>
2
3         [CMake] Add support for LTO builds
4         https://bugs.webkit.org/show_bug.cgi?id=188986
5
6         Reviewed by Don Olmstead.
7
8         Add support to configure --lto-mode with cmake builds.
9
10         * Scripts/build-webkit:
11         * Scripts/webkitdirs.pm:
12         (generateBuildSystemFromCMakeProject):
13
14 2019-05-02  John Wilander  <wilander@apple.com>
15
16         Make both filterForRegistrableDomains() in WebKit::NetworkProcess use WebCore::RegistrableDomain::uncheckedCreateFromHost()
17         https://bugs.webkit.org/show_bug.cgi?id=197521
18         <rdar://problem/49651503>
19
20         Reviewed by Brent Fulgham.
21
22         * TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp:
23         (TestWebKitAPI::TEST):
24            Added a test for host strings with leading dots since they are
25            often used for the domain attribute in cookies.
26
27 2019-05-02  Per Arne Vollan  <pvollan@apple.com>
28
29         -[WKWebsiteDataStore removeDataOfTypes:forDataRecords:completionHandler:] doesn't delete _WKWebsiteDataTypeCredentials
30         https://bugs.webkit.org/show_bug.cgi?id=197510
31
32         Reviewed by Alex Christensen.
33
34         * TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
35         (TestWebKitAPI::TEST):
36
37 2019-05-02  Don Olmstead  <don.olmstead@sony.com>
38
39         [CMake] Refactor WEBKIT_MAKE_FORWARDING_HEADERS into WEBKIT_COPY_FILES
40         https://bugs.webkit.org/show_bug.cgi?id=197174
41
42         Reviewed by Alex Christensen.
43
44         Make TestJSC dependent on JavaScriptCorePrivateFrameworkHeaders.
45
46         * TestWebKitAPI/PlatformGTK.cmake:
47         * TestWebKitAPI/PlatformWPE.cmake:
48
49 2019-05-02  Alex Christensen  <achristensen@webkit.org>
50
51         Build fix for internal branch.
52
53         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
54         RetainPtr.h was not explicitly included.
55
56 2019-05-02  Jonathan Bedard  <jbedard@apple.com>
57
58         webkitpy: Ignore errors when shutting down an already shutdown simulator
59         <https://bugs.webkit.org/show_bug.cgi?id=197514>
60         <rdar://problem/50390247>
61
62         Reviewed by Lucas Forschler.
63
64         * Scripts/webkitpy/xcode/simulated_device.py:
65         (SimulatedDevice._shut_down):
66
67 2019-05-02  Frederic Wang  <fwang@igalia.com>
68
69         [GTK][WPE] Disable "thin", "thick", "medium" values of mfrac@linethickness at runtime
70         https://bugs.webkit.org/show_bug.cgi?id=196142
71
72         This patch introduces some experimental runtime flag to let users
73         disable MathML features that are removed from MathML Core [1]. For now,
74         these features are only disabled on GTK and WPE ports.
75
76         [1] https://mathml-refresh.github.io/mathml-core/
77
78         Reviewed by Rob Buis.
79
80         * DumpRenderTree/TestOptions.cpp:
81         (TestOptions::TestOptions):
82         * DumpRenderTree/TestOptions.h:
83         * DumpRenderTree/mac/DumpRenderTree.mm:
84         (setWebPreferencesForTestOptions):
85
86 2019-05-01  Don Olmstead  <don.olmstead@sony.com>
87
88         TestWebKitAPI config.h should be aware of what suite is being built
89         https://bugs.webkit.org/show_bug.cgi?id=196583
90
91         Reviewed by Konstantin Tokarev.
92
93         Migrate to WEBKIT_EXECUTABLE to define the Test* executables. As an added
94         benefit the macro defines BUILDING_* for the executable which allows the includes
95         of the config.h to be tailored to the test suite being built. Because of that the
96         dependencies of the Test* executable are specific to the test suite which may
97         speed up the build.
98
99         Some source files were including "PlatformUtilities.h" which includes WebKit headers
100         when "Utilities.h" is what was needed.
101
102         * TestWebKitAPI/CMakeLists.txt:
103         * TestWebKitAPI/PlatformGTK.cmake:
104         * TestWebKitAPI/PlatformJSCOnly.cmake:
105         * TestWebKitAPI/PlatformMac.cmake:
106         * TestWebKitAPI/PlatformPlayStation.cmake:
107         * TestWebKitAPI/PlatformUtilities.h:
108         * TestWebKitAPI/PlatformWPE.cmake:
109         * TestWebKitAPI/PlatformWin.cmake:
110         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
111         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
112         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
113         * TestWebKitAPI/Tests/WebCore/LineBreaking.mm:
114         * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
115         * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
116         * TestWebKitAPI/config.h:
117
118 2019-05-01  Jiewen Tan  <jiewen_tan@apple.com>
119
120         Move Document::domainIsRegisterable to SecurityOrigin::isMatchingRegistrableDomainSuffix
121         https://bugs.webkit.org/show_bug.cgi?id=181950
122         <rdar://problem/43357371>
123
124         Reviewed by Brent Fulgham.
125
126         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
127         (TestWebKitAPI::TEST_F):
128
129 2019-05-01  Aakash Jain  <aakash_jain@apple.com>
130
131         Remove webkitpy and bindings EWS queues from dashboard
132         https://bugs.webkit.org/show_bug.cgi?id=197475
133
134         Reviewed by Alexey Proskuryakov.
135
136         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
137
138 2019-05-01  Aakash Jain  <aakash_jain@apple.com>
139
140         Remove webkitpy and bindings test queues from old EWS
141         https://bugs.webkit.org/show_bug.cgi?id=197468
142
143         Reviewed by Alexey Proskuryakov.
144
145         * QueueStatusServer/config/queues.py:
146
147 2019-04-30  Tim Horton  <timothy_horton@apple.com>
148
149         Fix the WebKitTestRunner build
150         https://bugs.webkit.org/show_bug.cgi?id=197449
151         <rdar://problem/50334169>
152
153         Reviewed by Alexey Proskuryakov.
154
155         * WebKitTestRunner/mac/EventSenderProxy.mm:
156         (-[EventSenderSyntheticEvent initPressureEventAtLocation:globalLocation:stage:pressure:stageTransition:phase:time:eventNumber:window:]):
157         (WTR::EventSenderProxy::mouseForceChanged):
158         Use some SPI instead of IPI.
159
160 2019-04-30  Chris Dumez  <cdumez@apple.com>
161
162         Regression(PSON) URL scheme handlers can no longer respond asynchronously
163         https://bugs.webkit.org/show_bug.cgi?id=197426
164         <rdar://problem/50256169>
165
166         Reviewed by Brady Eidson.
167
168         Add API test coverage.
169
170         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
171         (-[PSONScheme setShouldRespondAsynchronously:]):
172         (-[PSONScheme webView:startURLSchemeTask:]):
173         (-[PSONScheme webView:stopURLSchemeTask:]):
174
175 2019-04-30  Chris Dumez  <cdumez@apple.com>
176
177         Unreviewed, rolling out r244802.
178
179         Caused an API test failure
180
181         Reverted changeset:
182
183         "Regression(PSON) URL scheme handlers can no longer respond
184         asynchronously"
185         https://bugs.webkit.org/show_bug.cgi?id=197426
186         https://trac.webkit.org/changeset/244802
187
188 2019-04-30  Chris Dumez  <cdumez@apple.com>
189
190         Regression(PSON) URL scheme handlers can no longer respond asynchronously
191         https://bugs.webkit.org/show_bug.cgi?id=197426
192         <rdar://problem/50256169>
193
194         Reviewed by Brady Eidson.
195
196         Add API test coverage.
197
198         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
199         (-[PSONScheme setShouldRespondAsynchronously:]):
200         (-[PSONScheme webView:startURLSchemeTask:]):
201         (-[PSONScheme webView:stopURLSchemeTask:]):
202
203 2019-04-30  Chris Dumez  <cdumez@apple.com>
204
205         Only use a related page's process if that page has not been closed yet
206         https://bugs.webkit.org/show_bug.cgi?id=197393
207         <rdar://problem/50302423>
208
209         Reviewed by Tim Horton.
210
211         Add API test coverage.
212
213         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
214
215 2019-04-30  Aakash Jain  <aakash_jain@apple.com>
216
217         [ews-build] Enable Bindings tests queue on new EWS
218         https://bugs.webkit.org/show_bug.cgi?id=197424
219
220         Reviewed by Lucas Forschler.
221
222         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
223         (StatusBubble):
224         * BuildSlaveSupport/ews-build/config.json:
225
226 2019-04-30  Aakash Jain  <aakash_jain@apple.com>
227
228         [ews-build] Configure ews151 for running various tests
229         https://bugs.webkit.org/show_bug.cgi?id=197419
230
231         Reviewed by Lucas Forschler.
232
233         * BuildSlaveSupport/ews-build/config.json:
234
235 2019-04-30  Aakash Jain  <aakash_jain@apple.com>
236
237         [ews-build] Parse and display bindings test failures
238         https://bugs.webkit.org/show_bug.cgi?id=197423
239
240         Reviewed by Lucas Forschler.
241
242         * BuildSlaveSupport/ews-build/steps.py:
243         (RunBindingsTests.__init__): Set timeout of 5 minutes.
244         (RunBindingsTests.start): Initialize log_observer for json output.
245         (RunBindingsTests.getResultSummary): Update step and build summary based on bindings test results.
246         (RunBindingsTests._addToLog): Method to add message to log.
247         * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-test accordingly.
248
249 2019-04-30  Pablo Saavedra  <psaavedra@igalia.com>
250
251         Unreviewed. Add myself as a committer.
252
253         * Scripts/webkitpy/common/config/contributors.json:
254
255 2019-04-30  Aakash Jain  <aakash_jain@apple.com>
256
257         [ews-build] Enable webkitpy queue on new EWS
258         https://bugs.webkit.org/show_bug.cgi?id=197396
259
260         Reviewed by Lucas Forschler.
261
262         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
263         (StatusBubble):
264         * BuildSlaveSupport/ews-build/config.json:
265
266 2019-04-30  Aakash Jain  <aakash_jain@apple.com>
267
268         [ews-build] Parse and display webkitpy failures
269         https://bugs.webkit.org/show_bug.cgi?id=197395
270
271         Reviewed by Lucas Forschler.
272
273         * BuildSlaveSupport/ews-build/steps.py:
274         (RunWebKitPyTests.start): Initialize log_observer for json output.
275         (RunWebKitPyTests.getResultSummary): Update step and build summary based on webkitpy results.
276         (RunWebKitPyTests._addToLog): Method to add message to log.
277         * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-test accordingly.
278
279 2019-04-29  Alex Christensen  <achristensen@webkit.org>
280
281         <rdar://problem/50299396> Fix internal High Sierra build
282         https://bugs.webkit.org/show_bug.cgi?id=197388
283
284         * DumpRenderTree/mac/Configurations/Base.xcconfig:
285         * MiniBrowser/Configurations/Base.xcconfig:
286         * MobileMiniBrowser/Configurations/Base.xcconfig:
287         * TestWebKitAPI/Configurations/Base.xcconfig:
288         * WebKitTestRunner/Configurations/Base.xcconfig:
289
290 2019-04-29  Youenn Fablet  <youenn@apple.com>
291
292         Remove spurious GVA printf logging
293         https://bugs.webkit.org/show_bug.cgi?id=197368
294         <rdar://problem/35975256>
295
296         Reviewed by Alexey Proskuryakov.
297
298         * Scripts/webkitpy/port/mac.py:
299         (MacPort.logging_patterns_to_strip):
300
301 2019-04-29  Youenn Fablet  <youenn@apple.com>
302
303         getDisplayMedia should be called on user gesture
304         https://bugs.webkit.org/show_bug.cgi?id=197356
305         <rdar://problem/50296074>
306
307         Reviewed by Eric Carlson.
308
309         Update test configuration to inject internals
310         so that we can use it to simulate a user click to call getDisplayMedia.
311
312         * TestWebKitAPI/Tests/WebKit/getDisplayMedia.html:
313         * TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMedia.mm:
314         (TestWebKitAPI::GetDisplayMediaTest::SetUp):
315
316 2019-04-26  Stephanie Lewis  <slewis@apple.com>
317
318         run-benchmarks should have an intial prep and restore env call for tasks that are too expensive to do for every iteration
319         https://bugs.webkit.org/show_bug.cgi?id=197339
320
321         Reviewed by Dewei Zhu.
322
323         Add two new functions prepare_inital_env and restore_env_after_all_testing around the entire
324         test run for setup steps that are too expensive to do every iteration.
325
326         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
327         (BenchmarkRunner._run_benchmark):
328         * Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver.py:
329         (BrowserDriver):
330         (BrowserDriver.prepare_initial_env):
331         (BrowserDriver.restore_env_after_all_testing):
332         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_browser_driver.py:
333         (LinuxBrowserDriver.prepare_initial_env):
334         (LinuxBrowserDriver.restore_env_after_all_testing):
335         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
336         (OSXBrowserDriver.prepare_initial_env):
337         (OSXBrowserDriver.restore_env_after_all_testing):
338
339 2019-04-28  Andy Estes  <aestes@apple.com>
340
341         Fix the watchOS engineering build.
342
343         * TestWebKitAPI/Tests/WebCore/cocoa/AVFoundationSoftLinkTest.mm:
344         (TestWebKitAPI::TEST): AVVideoPerformanceMetrics does not exist on watchOS.
345
346 2019-04-27  Chris Dumez  <cdumez@apple.com>
347
348         [WKTR] Move test timeout handling to the UIProcess
349         https://bugs.webkit.org/show_bug.cgi?id=197333
350
351         Reviewed by Darin Adler.
352
353         Move test timeout handling in WebKitTestRunner to the UIProcess to play nicely with PSON. Previously,
354         we'd start the timeout timer in the InjectedBundle, which would fail to account of the time spent in
355         every WebContent process in the case of swapping.
356
357         Also, because of process caching, the timeout timer would sometime fire in a cached process and it
358         would lead to crashes when firing the timer.
359
360         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
361         (WTR::InjectedBundle::didReceiveMessageToPage):
362         (WTR::InjectedBundle::done):
363         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
364         (WTR::InjectedBundle::shouldDumpPixels const):
365         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
366         (WTR::TestRunner::TestRunner):
367         (WTR::TestRunner::waitUntilDone):
368         (WTR::TestRunner::setWaitUntilDone):
369         * WebKitTestRunner/InjectedBundle/TestRunner.h:
370         * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
371         * WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:
372         * WebKitTestRunner/InjectedBundle/win/TestRunnerWin.cpp:
373         * WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp:
374         * WebKitTestRunner/TestInvocation.cpp:
375         (WTR::TestInvocation::TestInvocation):
376         (WTR::TestInvocation::createTestSettingsDictionary):
377         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
378         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
379         (WTR::TestInvocation::initializeWaitToDumpWatchdogTimerIfNeeded):
380         (WTR::TestInvocation::invalidateWaitToDumpWatchdogTimer):
381         (WTR::TestInvocation::waitToDumpWatchdogTimerFired):
382         (WTR::TestInvocation::setWaitUntilDone):
383         (WTR::TestInvocation::done):
384         * WebKitTestRunner/TestInvocation.h:
385
386 2019-04-25  Yusuke Suzuki  <ysuzuki@apple.com>
387
388         [JSC] linkPolymorphicCall now does GC
389         https://bugs.webkit.org/show_bug.cgi?id=197306
390
391         Reviewed by Saam Barati.
392
393         The test is sensitive to allocations and even adding $vm makes it non-reproducible.
394         To add this test, we add `runWithoutBaseOption`.
395
396         * Scripts/run-jsc-stress-tests:
397
398 2019-04-26  Alexey Proskuryakov  <ap@apple.com>
399
400         Update inactive reviewers' status to 'contributor'.
401
402         Accidentally skipped one at first.
403
404         * Scripts/webkitpy/common/config/contributors.json:
405
406 2019-04-26  Alexey Proskuryakov  <ap@apple.com>
407
408         Update inactive reviewers' status to 'contributor'.
409
410         * Scripts/webkitpy/common/config/contributors.json: The change.
411
412         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
413         * Scripts/webkitpy/common/checkout/checkout_mock.py:
414         * Scripts/webkitpy/common/checkout/checkout_unittest.py:
415         * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
416         * Scripts/webkitpy/tool/bot/irc_command_unittest.py:
417         * Scripts/webkitpy/tool/bot/ircbot_unittest.py:
418         * Scripts/webkitpy/tool/commands/queries_unittest.py:
419         * Scripts/webkitpy/tool/commands/upload_unittest.py:
420         Sadly, regression tests operate on a crazy mix of mock and live data for
421         contributors.json. It would be a substantial project to mock all code paths,
422         so changing the tests instead.
423
424 2019-04-26  Eric Carlson  <eric.carlson@apple.com>
425
426         Create AVFoundationSoftLink.{h,mm} to reduce duplicate code
427         https://bugs.webkit.org/show_bug.cgi?id=197171
428         <rdar://problem/47454979>
429
430         Reviewed by Youenn Fablet.
431
432         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
433         * TestWebKitAPI/Tests/WebCore/cocoa/AVFoundationSoftLinkTest.mm: Added.
434         (TestWebKitAPI::TEST):
435
436 2019-04-26  David Kilzer  <ddkilzer@apple.com>
437
438         WebKitTestRunner leaks an NSDictionary and multiple JSStringRef objects
439         <https://webkit.org/b/197314>
440         <rdar://problem/50245252>
441
442         Reviewed by Simon Fraser.
443
444         * WebKitTestRunner/UIScriptControllerCocoa.mm:
445         (WTR::UIScriptController::lastUndoLabel const):
446         (WTR::UIScriptController::firstRedoLabel const):
447         - Use adopt(JSStringCreateWithCFString(...)) to fix leaks.
448
449         * WebKitTestRunner/ios/HIDEventGenerator.mm:
450         (-[HIDEventGenerator sendEventStream:completionBlock:]):
451         - Call -autorelease to fix leak of NSDictionary.
452
453         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
454         (WTR::UIScriptController::accessibilitySpeakSelectionContent const):
455         (WTR::UIScriptController::selectFormPopoverTitle const):
456         (WTR::UIScriptController::textContentType const):
457         (WTR::UIScriptController::formInputLabel const):
458         (WTR::UIScriptController::scrollingTreeAsText const):
459         - Use adopt(JSStringCreateWithCFString(...)) to fix leaks.
460
461 2019-04-26  Jonathan Bedard  <jbedard@apple.com>
462
463         webkitpy: Running a single test will always use the default device
464         https://bugs.webkit.org/show_bug.cgi?id=195472
465         <rdar://problem/48724825>
466
467         Reviewed by Lucas Forschler.
468
469         It makes more sense to have the Manager class handle the case where a user specifically requests a test which is
470         skipped on the current configuration. This changes the behavior when running part of a test shard, now tests explicitly
471         requested will be run regardless of what shard they are in.
472
473         * Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:
474         (LayoutTestFinder.skip_tests): Caller should manage running skipped tests which were explicitly requested.
475         * Scripts/webkitpy/layout_tests/controllers/manager.py:
476         (Manager.run): If a test is marked as skipped for the configuration, but was specifically requested, run it anyways
477         on the default device type.
478         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
479         (RunTest.test_run_chunk): Explicitly requesting a test will override sharing behavior.
480         (RunTest.test_run_part): Ditto.
481
482 2019-04-26  Alex Christensen  <achristensen@webkit.org>
483
484         Add ENABLE(CONTENT_EXTENSIONS) and namespace ContentExtensions to ResourceLoadInfo.h
485         https://bugs.webkit.org/show_bug.cgi?id=197165
486
487         Reviewed by Youenn Fablet.
488
489         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
490
491 2019-04-26  Ryan Haddad  <ryanhaddad@apple.com>
492
493         Replace iOS build queue hardware
494         https://bugs.webkit.org/show_bug.cgi?id=197312
495
496         Reviewed by Aakash Jain.
497
498         * BuildSlaveSupport/build.webkit.org-config/config.json:
499         Use newer hardware that supports macOS Mojave.
500
501 2019-04-26  Yoshiaki Jitsukawa  <yoshiaki.jitsukawa@sony.com>
502
503         check-webkit-style complains the first block in while loop.
504         https://bugs.webkit.org/show_bug.cgi?id=197307
505
506         The style checker shouldn't complain about an open brace on
507         its own line if the last non-whitespace character on the previous
508         non-blank line is another open brace, because it's likely to
509         indicate the begining of a nested code block.
510
511         Reviewed by Alex Christensen.
512
513         * Scripts/webkitpy/style/checkers/cpp.py:
514         (check_braces):
515         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
516         (WebKitStyleTest.test_braces):
517
518 2019-04-26  Sihui Liu  <sihui_liu@apple.com>
519
520         Stop IDB transactions to release locked database files when network process is ready to suspend
521         https://bugs.webkit.org/show_bug.cgi?id=196372
522         <rdar://problem/48930116>
523
524         Reviewed by Brady Eidson.
525
526         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
527         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBSuspendImminently.html: Added.
528         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBSuspendImminently.mm: Added.
529         (-[IndexedDBSuspendImminentlyMessageHandler userContentController:didReceiveScriptMessage:]):
530         (runTestAndCheckResult):
531         (keepNetworkProcessActive):
532         (TEST):
533
534 2019-04-25  Simon Fraser  <simon.fraser@apple.com>
535
536         REGRESSION (r234330): 3 legacy-animation-engine/compositing tests are flaky failures
537         https://bugs.webkit.org/show_bug.cgi?id=188357
538         <rdar://problem/42986633>
539
540         Reviewed by Dean Jackson.
541
542         DumpRenderTree had no code that set page.setCompositingPolicyOverride() to Normal, so some
543         tests would fall into low memory mode and have different behavior.
544         
545         Fix by moving the code that calls setCompositingPolicyOverride(Normal) from the WK2 layer
546         to Internals, so it's shared by DRT and WTR.
547         
548         We no longer need the WK2 C SPI glue.
549
550         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
551         (WTR::InjectedBundlePage::prepare):
552
553 2019-04-25  Jonathan Bedard  <jbedard@apple.com>
554
555         webkitpy: Including skipped tests in the final count
556         https://bugs.webkit.org/show_bug.cgi?id=197298
557         <rdar://problem/49705424>
558
559         Reviewed by Lucas Forschler.
560
561         * Scripts/webkitpy/layout_tests/views/buildbot_results.py:
562         (BuildBotPrinter.print_run_results): The total number of tests run should exclude delibrately skipped tests.
563
564 2019-04-25  Timothy Hatcher  <timothy@apple.com>
565
566         Disable date and time inputs on iOSMac.
567         https://bugs.webkit.org/show_bug.cgi?id=197287
568         rdar://problem/46794376
569
570         Reviewed by Wenson Hsieh.
571
572         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
573
574 2019-04-25  Alex Christensen  <achristensen@webkit.org>
575
576         Fix test-webkitpy after r244653
577         https://bugs.webkit.org/show_bug.cgi?id=197131
578
579         * lldb/lldbWebKitTester/Configurations/Base.xcconfig:
580         Also use C++17.
581
582 2019-04-25  Per Arne Vollan  <pvollan@apple.com>
583
584         -[WKWebsiteDataStore fetchDataRecordsOfTypes:completionHandler:] never returns _WKWebsiteDataTypeCredentials
585         https://bugs.webkit.org/show_bug.cgi?id=196991
586         <rdar://problem/45507423>
587
588         Reviewed by Alex Christensen.
589
590         * TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
591         (-[NavigationTestDelegate init]):
592         (-[NavigationTestDelegate waitForDidFinishNavigation]):
593         (-[NavigationTestDelegate webView:didFinishNavigation:]):
594         (-[NavigationTestDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
595         (TestWebKitAPI::TEST):
596         (TEST): Deleted.
597
598 2019-04-25  Alex Christensen  <achristensen@webkit.org>
599
600         Revert some code accidentally committed with r244653
601         https://bugs.webkit.org/show_bug.cgi?id=197131
602
603         * TestWebKitAPI/Tests/WebKitCocoa/Proxy.mm:
604         (TestWebKitAPI::TEST):
605
606 2019-04-25  Alex Christensen  <achristensen@webkit.org>
607
608         Start using C++17
609         https://bugs.webkit.org/show_bug.cgi?id=197131
610
611         Reviewed by Darin Adler.
612
613         * DumpRenderTree/mac/Configurations/Base.xcconfig:
614         * MiniBrowser/Configurations/Base.xcconfig:
615         * MobileMiniBrowser/Configurations/Base.xcconfig:
616         * TestWebKitAPI/Configurations/Base.xcconfig:
617         * WebKitTestRunner/Configurations/Base.xcconfig:
618
619 2019-04-25  Commit Queue  <commit-queue@webkit.org>
620
621         Unreviewed, rolling out r244627.
622         https://bugs.webkit.org/show_bug.cgi?id=197282
623
624         Causing internal build failures (Requested by ShawnRoberts on
625         #webkit).
626
627         Reverted changeset:
628
629         "Create AVFoundationSoftLink.{h,mm} to reduce duplicate code"
630         https://bugs.webkit.org/show_bug.cgi?id=197171
631         https://trac.webkit.org/changeset/244627
632
633 2019-04-24  Carlos Garcia Campos  <cgarcia@igalia.com>
634
635         [GTK] Hardcoded text color in input fields
636         https://bugs.webkit.org/show_bug.cgi?id=126907
637
638         Reviewed by Michael Catanzaro.
639
640         Add dark-mode command line option to MiniBrowser.
641
642         * MiniBrowser/gtk/main.c:
643         (main):
644
645 2019-04-24  Zalan Bujtas  <zalan@apple.com>
646
647         Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
648         https://bugs.webkit.org/show_bug.cgi?id=196948
649         <rdar://problem/49927131>
650
651         Reviewed by Tim Horton.
652
653         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
654         (TEST):
655         The expected order of incoming events is
656         1. didInvalidateIntrinsicContentSize
657         2. didFirstLayout
658         At setRenderingProgressDidChange, we already check if didInvalidateIntrinsicContentSize comes in first.
659         However it's not guaranteed that the milestone event is delayed until after TestWebKitAPI::Util::run() is finished
660         (and remember, all we care about is ordering).
661
662 2019-04-24  Eric Carlson  <eric.carlson@apple.com>
663
664         Create AVFoundationSoftLink.{h,mm} to reduce duplicate code
665         https://bugs.webkit.org/show_bug.cgi?id=197171
666         <rdar://problem/47454979>
667
668         Reviewed by Youenn Fablet.
669
670         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
671         * TestWebKitAPI/Tests/WebCore/cocoa/AVFoundationSoftLinkTest.mm: Added.
672         (TestWebKitAPI::TEST):
673
674 2019-04-24  Brady Eidson  <beidson@apple.com>
675
676         XMLHTTPRequest POSTs to a custom WKURLSchemeHandler protocol are missing the HTTP body.
677         https://bugs.webkit.org/show_bug.cgi?id=191362
678
679         Reviewed by Alex Christensen.
680
681         * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm: Add a test that POSTs all sorts of things
682           from an XHR to a custom protocol.
683
684 2019-04-25  Simon Fraser  <simon.fraser@apple.com>
685
686         DumpRenderTree doesn't call Internals::resetToConsistentState() before the first test
687         https://bugs.webkit.org/show_bug.cgi?id=197273
688
689         Reviewed by Dean Jackson.
690
691         Reorder code so that we create gTestRunner before calling resetWebViewToConsistentStateBeforeTesting(),
692         so that WebCoreTestSupport::resetInternalsObject() is always run.
693
694         * DumpRenderTree/mac/DumpRenderTree.mm:
695         (resetWebViewToConsistentStateBeforeTesting):
696         (runTest):
697
698 2019-04-24  John Wilander  <wilander@apple.com>
699
700         Age out unconverted Ad Click Attributions after one week.
701         https://bugs.webkit.org/show_bug.cgi?id=197238
702         <rdar://problem/50177349>
703
704         Reviewed by Chris Dumez.
705
706         This patch adds infrastructure to allow tests to expire all unconverted
707         attributions early.
708
709         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
710         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
711         (WTR::TestRunner::markAdClickAttributionsAsExpiredForTesting):
712         * WebKitTestRunner/InjectedBundle/TestRunner.h:
713         * WebKitTestRunner/TestController.cpp:
714         (WTR::TestController::markAdClickAttributionsAsExpiredForTesting):
715         * WebKitTestRunner/TestController.h:
716         * WebKitTestRunner/TestInvocation.cpp:
717         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
718
719 2019-04-24  Chris Dumez  <cdumez@apple.com>
720
721         Fix flaky crashes in a couple of PSON API tests
722         https://bugs.webkit.org/show_bug.cgi?id=197239
723
724         Reviewed by Tim Horton.
725
726         Do not adopt the NSURLRequest returned by [NSURLRequest requestWithURL:].
727
728         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
729
730 2019-04-24  Simon Fraser  <simon.fraser@apple.com>
731
732         Make it possible to control the renderTreeAsText output by setting options on testRunner
733         https://bugs.webkit.org/show_bug.cgi?id=197133
734
735         Reviewed by Sam Weinig.
736
737         Add testRunner.setRenderTreeDumpOptions() and expose the subset of RenderAsTextFlag flags
738         that make sense in testing (those that don't dump unstable data like addresses), and plumb
739         these flags through the various framework layers.
740
741         Convert RenderAsTextBehavior to an OptionSet<RenderAsTextFlag>.
742
743         Fix code generation in WebKitTestRunner to generate bindings for IDL const values,
744         and hand-code DumpRenderTree bindings.
745
746         Some cleanup of the TestRunners, using member initializers.
747
748         * DumpRenderTree/TestRunner.cpp:
749         (TestRunner::TestRunner):
750         (setRenderTreeDumpOptionsCallback):
751         (TestRunner::staticFunctions):
752         (TestRunner::setRenderTreeDumpOptions):
753         * DumpRenderTree/TestRunner.h:
754         (TestRunner::renderTreeDumpOptions const):
755         * DumpRenderTree/mac/DumpRenderTree.mm:
756         (dump):
757         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
758         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
759         (WTR::InjectedBundlePage::dump):
760         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
761         (WTR::TestRunner::TestRunner):
762         (WTR::TestRunner::setRenderTreeDumpOptions):
763         * WebKitTestRunner/InjectedBundle/TestRunner.h:
764         (WTR::TestRunner::renderTreeDumpOptions const):
765
766 2019-04-24  Alex Christensen  <achristensen@webkit.org>
767
768         WKContentRuleLists should have a maximum FileProtection of CompleteUnlessOpen
769         https://bugs.webkit.org/show_bug.cgi?id=197078
770         <rdar://problem/49564348>
771
772         Reviewed by Geoff Garen.
773
774         * TestWebKitAPI/Tests/WebKitCocoa/WKContentExtensionStore.mm:
775         (TEST_F):
776         (-[TestSchemeHandlerSubresourceShouldBeBlocked webView:startURLSchemeTask:]): Deleted.
777         (-[TestSchemeHandlerSubresourceShouldBeBlocked webView:stopURLSchemeTask:]): Deleted.
778         Unfortunately, setting the NSFileProtectionKey attribute is only supported on iOS devices.
779
780 2019-04-24  Alex Christensen  <achristensen@webkit.org>
781
782         Add unit test for r239322
783         https://bugs.webkit.org/show_bug.cgi?id=197236
784
785         Reviewed by Chris Dumez.
786
787         I initially developed this as a unit test for rdar://problem/48797895 but it seems that isn't quite ready.
788         May as well add the test infrastructure which was needed before and will be needed in the future.
789
790         * TestWebKitAPI/TCPServer.cpp:
791         (TestWebKitAPI::TCPServer::TCPServer):
792         * TestWebKitAPI/TCPServer.h:
793         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
794         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
795         (TestWebKitAPI::TEST):
796         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
797         (TestWebKitAPI::downloadAtRate):
798         * TestWebKitAPI/Tests/WebKitCocoa/PDFLinkReferrer.mm:
799         (TEST):
800         * TestWebKitAPI/Tests/WebKitCocoa/Proxy.mm: Added.
801         (-[ProxyDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
802         (-[ProxyDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
803         (TestWebKitAPI::TEST):
804         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
805         (TEST):
806
807 2019-04-24  Chris Dumez  <cdumez@apple.com>
808
809         URL set by document.open() is communicated with the WebPageProxy but not the WebFrameProxy
810         https://bugs.webkit.org/show_bug.cgi?id=197214
811         <rdar://problem/49237544>
812
813         Reviewed by Alex Christensen.
814
815         Extend API test coverage.
816
817         * TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
818         (TEST):
819
820 2019-04-24  Philippe Normand  <pnormand@igalia.com>
821
822         [Build][GStreamer] Update to 1.16.0
823         https://bugs.webkit.org/show_bug.cgi?id=197157
824
825         Reviewed by Xabier Rodriguez-Calvar.
826
827         The upstreamed patches were removed and a new one was added for a
828         regression detected in the scaletempo GStreamer element. The GNOME
829         Flatpak was migrated to 3.32 and I switched a few modules to Meson
830         on the way, as it is the preferred build system now in GStreamer
831         1.16.
832
833         * flatpak/files/httpd-autogen.sh:
834         * flatpak/flatpakutils.py:
835         (FlatpakPackage.install):
836         (WebkitFlatpak.run_in_sandbox):
837         * flatpak/org.webkit.CommonModules.yaml:
838         * flatpak/org.webkit.WebKit.yaml:
839         * gstreamer/jhbuild.modules:
840         * gstreamer/patches/gst-plugins-bad-0001-aomenc-Add-support-for-10-12bit-decoding.patch: Removed.
841         * gstreamer/patches/gst-plugins-bad-0002-aomenc-Handle-8-bit_depth-images-with-AOM_IMG_FMT_HI.patch: Removed.
842         * gstreamer/patches/gst-plugins-bad-0003-fdkaacenc-Remove-MODE_2_1.patch: Removed.
843         * gstreamer/patches/gst-plugins-bad-0004-fdkaacdec-Use-WAV-channel-mapping-instead-of-interleave-setting.patch: Removed.
844         * gstreamer/patches/gst-plugins-bad-0005-mssdemux-fix-protection-data-double-free.patch: Removed.
845         * gstreamer/patches/gst-plugins-base-0001-parsebin-Post-STREAM_COLLECTION-on-EVENT_STREAM_COLL.patch: Removed.
846         * gstreamer/patches/gst-plugins-good-0001-qtdemux-Detect-and-expose-CEA-608-708-Closed-Caption.patch: Removed.
847         * gstreamer/patches/gst-plugins-good-0001-qtdemux-Do-not-run-the-preferred-decryptor-context-q.patch: Removed.
848         * gstreamer/patches/gst-plugins-good-0002-qtdemux-Do-not-unref-a-NULL-stream_tags.patch: Removed.
849         * gstreamer/patches/gst-plugins-good-0002-qtdemux-add-context-for-a-preferred-protection.patch: Removed.
850         * gstreamer/patches/gst-plugins-good-0003-qtdemux-Clarify-field-name-about-stream-encryption-s.patch: Removed.
851         * gstreamer/patches/gst-plugins-good-0003-qtdemux-also-push-buffers-without-encryption-info-in.patch: Removed.
852         * gstreamer/patches/gst-plugins-good-0004-qtdemux-Add-initial-support-for-AV1-demuxing.patch: Removed.
853         * gstreamer/patches/gst-plugins-good-0005-qtdemux-Extract-AV1-codec_data-and-put-it-in-the-cap.patch: Removed.
854         * gstreamer/patches/gst-plugins-good-0006-qtdemux-Recognize-more-AV1-atoms.patch: Removed.
855         * gstreamer/patches/gst-plugins-good-0011-matroska-Add-the-WebM-encrypted-content-support-in-m.patch: Removed.
856         * gstreamer/patches/gst-plugins-good-0012-matroskdemux-do-not-use-MapInfo.data-after-unmapping.patch: Removed.
857         * gstreamer/patches/gst-plugins-good-0013-Avoid-warning-when-reporting-about-decryptors.patch: Removed.
858         * gstreamer/patches/gst-plugins-good-0014-pulse-Mark-default-devices-as-default.patch: Removed.
859         * gstreamer/patches/gst-plugins-good-scaletempo-Advertise-interleaved-layout-in-caps-temp.patch: Added.
860         * gstreamer/patches/gstreamer-0001-protection-Add-a-new-definition-for-unspecified-syst.patch: Removed.
861         * gstreamer/patches/gstreamer-0002-protection-Fix-the-string-to-define-unspecified-syst.patch: Removed.
862
863 2019-04-24  Carlos Garcia Campos  <cgarcia@igalia.com>
864
865         [GTK] MiniBrowser: also set the passed bg-color when receiving arguments
866         https://bugs.webkit.org/show_bug.cgi?id=197156
867
868         Reviewed by Michael Catanzaro.
869
870         The background color is only set when MiniBrowser is launched without arguments. This regressed when tabs
871         support was added.
872
873         * MiniBrowser/gtk/BrowserTab.c:
874         (browser_tab_set_background_color): Set the passed in color as web view background color.
875         * MiniBrowser/gtk/BrowserTab.h:
876         * MiniBrowser/gtk/BrowserWindow.c:
877         (browser_window_init): Initialize backgroundColor.
878         (browser_window_append_view): Call browser_tab_set_background_color().
879         (browser_window_set_background_color): Save the passed in color. This function should now be called before tabs
880         are added.
881         * MiniBrowser/gtk/main.c:
882         (main): Call browser_window_set_background_color() before creating the tabs.
883
884 2019-04-23  John Wilander  <wilander@apple.com>
885
886         Move Ad Click Attribution from internal feature to experimental feature
887         https://bugs.webkit.org/show_bug.cgi?id=197218
888         <rdar://problem/47651691>
889
890         Reviewed by Brent Fulgham.
891
892         * DumpRenderTree/TestOptions.cpp:
893         (TestOptions::TestOptions):
894
895 2019-04-23  Andy Estes  <aestes@apple.com>
896
897         [iOS] QuickLook documents loaded from file: URLs should be allowed to perform same-document navigations
898         https://bugs.webkit.org/show_bug.cgi?id=196749
899         <rdar://problem/35773454>
900
901         Reviewed by Daniel Bates.
902
903         Added a new QuickLook API test and added new expectations to existing QuickLook tests.
904
905         * TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
906         (-[QuickLookDelegate webView:didStartProvisionalNavigation:]):
907         (-[QuickLookDelegate webView:didFinishNavigation:]):
908         (-[QuickLookDelegate _webView:didFailNavigation:withError:userInfo:]):
909         (-[QuickLookDelegate webView:didFailProvisionalNavigation:withError:]):
910         (runTest):
911         (runTestDecideBeforeLoading):
912         (runTestDecideAfterLoading):
913         (TEST):
914
915 2019-04-23  John Wilander  <wilander@apple.com>
916
917         Remove Ad Click Attribution data when removing website data
918         https://bugs.webkit.org/show_bug.cgi?id=197215
919         <rdar://problem/47668988>
920
921         Reviewed by Chris Dumez.
922
923         This patch adds test infrastructure to delete Ad Click Attribution data
924         through WebsiteDataStore::removeData().
925
926         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
927         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
928         (WTR::TestRunner::clearAdClickAttribution):
929         (WTR::TestRunner::clearAdClickAttributionsThroughWebsiteDataRemoval):
930         * WebKitTestRunner/InjectedBundle/TestRunner.h:
931         * WebKitTestRunner/TestController.cpp:
932         (WTR::TestController::clearAdClickAttributionsThroughWebsiteDataRemoval):
933         * WebKitTestRunner/TestController.h:
934         * WebKitTestRunner/TestInvocation.cpp:
935         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
936
937 2019-04-23  Jonathan Bedard  <jbedard@apple.com>
938
939         webkitpy: Kill unresponsive worker processes
940         https://bugs.webkit.org/show_bug.cgi?id=197205
941         <rdar://problem/50104388>
942
943         Reviewed by Lucas Forschler.
944
945         * Scripts/webkitpy/common/message_pool.py:
946         (_MessagePool.__init__): Add close timeout.
947         (_MessagePool._close): Send termination before joining workers, kill unresponsive workers.
948
949 2019-04-23  Alex Christensen  <achristensen@webkit.org>
950
951         Add unit tests for WKWebView.serverTrust
952         https://bugs.webkit.org/show_bug.cgi?id=197202
953
954         Reviewed by Youenn Fablet
955
956         * TestWebKitAPI/TCPServer.cpp:
957         (TestWebKitAPI::deleter<BIO>::operator()):
958         (TestWebKitAPI::deleter<SSL>::operator()):
959         (TestWebKitAPI::deleter<X509>::operator()):
960         (TestWebKitAPI::deleter<SSL_CTX>::operator()):
961         (TestWebKitAPI::deleter<EVP_PKEY>::operator()):
962         (TestWebKitAPI::TCPServer::TCPServer):
963         (TestWebKitAPI::TCPServer::listenForConnections):
964         * TestWebKitAPI/TCPServer.h:
965         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
966         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
967         (TestWebKitAPI::TEST):
968         (verifyCertificateAndPublicKey):
969         (-[ServerTrustDelegate webView:didFinishNavigation:]):
970         (-[ServerTrustDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
971         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
972         (TestWebKitAPI::downloadAtRate):
973         * TestWebKitAPI/Tests/WebKitCocoa/PDFLinkReferrer.mm:
974         (TEST):
975         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
976         (TEST):
977
978 2019-04-23  Commit Queue  <commit-queue@webkit.org>
979
980         Unreviewed, rolling out r244556.
981         https://bugs.webkit.org/show_bug.cgi?id=197212
982
983         Causing build failures on multiple builders (Requested by
984         ShawnRoberts on #webkit).
985
986         Reverted changeset:
987
988         "Create AVFoundationSoftLink.{h,mm} to reduce duplicate code"
989         https://bugs.webkit.org/show_bug.cgi?id=197171
990         https://trac.webkit.org/changeset/244556
991
992 2019-04-23  Alex Christensen  <achristensen@webkit.org>
993
994         Fix iOS build.
995         https://bugs.webkit.org/show_bug.cgi?id=195537
996
997         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
998         (WTR::TestRunner::setOpenPanelFilesMediaIcon):
999         AdoptWK constructor is private now.  Use adoptWK instead.
1000
1001 2019-04-23  Andres Gonzalez  <andresg_22@apple.com>
1002
1003         Accessibility text search and selection API enhancements.
1004         https://bugs.webkit.org/show_bug.cgi?id=197095
1005         <rdar://problem/48181791>
1006
1007         Reviewed by Chris Fleizach.
1008
1009         Added new API JS binding code for searchTextWithCriteria to both WTR and DRT.
1010
1011         * DumpRenderTree/AccessibilityTextMarker.h:
1012         * DumpRenderTree/AccessibilityUIElement.cpp:
1013         (searchTextWithCriteriaCallback):
1014         (AccessibilityUIElement::getJSClass):
1015         * DumpRenderTree/AccessibilityUIElement.h:
1016         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
1017         (convertVectorToObjectArray):
1018         (convertNSArrayToVector):
1019         (searchTextParameterizedAttributeForCriteria):
1020         (AccessibilityUIElement::getLinkedUIElements):
1021         (AccessibilityUIElement::getDocumentLinks):
1022         (AccessibilityUIElement::getChildren):
1023         (AccessibilityUIElement::getChildrenWithRange):
1024         (AccessibilityUIElement::rowHeaders const):
1025         (AccessibilityUIElement::columnHeaders const):
1026         (AccessibilityUIElement::uiElementArrayAttributeValue const):
1027         (AccessibilityUIElement::searchTextWithCriteria):
1028         (AccessibilityUIElement::attributesOfColumnHeaders):
1029         (AccessibilityUIElement::attributesOfRowHeaders):
1030         (AccessibilityUIElement::attributesOfColumns):
1031         (AccessibilityUIElement::attributesOfRows):
1032         (AccessibilityUIElement::attributesOfVisibleCells):
1033         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1034         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
1035         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1036         (WTR::convertVectorToObjectArray):
1037         (WTR::convertNSArrayToVector):
1038         (WTR::searchTextParameterizedAttributeForCriteria):
1039         (WTR::AccessibilityUIElement::getLinkedUIElements):
1040         (WTR::AccessibilityUIElement::getDocumentLinks):
1041         (WTR::AccessibilityUIElement::getUIElementsWithAttribute const):
1042         (WTR::AccessibilityUIElement::getChildren):
1043         (WTR::AccessibilityUIElement::getChildrenWithRange):
1044         (WTR::AccessibilityUIElement::rowHeaders const):
1045         (WTR::AccessibilityUIElement::columnHeaders const):
1046         (WTR::AccessibilityUIElement::uiElementArrayAttributeValue const):
1047         (WTR::AccessibilityUIElement::searchTextWithCriteria):
1048         (WTR::AccessibilityUIElement::attributesOfColumnHeaders):
1049         (WTR::AccessibilityUIElement::attributesOfRowHeaders):
1050         (WTR::AccessibilityUIElement::attributesOfColumns):
1051         (WTR::AccessibilityUIElement::attributesOfRows):
1052         (WTR::AccessibilityUIElement::attributesOfVisibleCells):
1053         (WTR::convertElementsToObjectArray): Deleted.
1054
1055 2019-04-23  Guy Lewin  <guy@lewin.co.il>
1056
1057         Multiple File Input Icon Set Regardless of File List
1058         https://bugs.webkit.org/show_bug.cgi?id=195537
1059
1060         Reviewed by Alexey Proskuryakov.
1061
1062         Add setOpenPanelFilesMediaIcon to TestRunner in order to test icon and
1063         display string in iOS file inputs
1064
1065         * DumpRenderTree/TestRunner.cpp:
1066         (SetOpenPanelFilesMediaIconCallback):
1067         (TestRunner::staticFunctions):
1068         (TestRunner::setOpenPanelFilesMediaIcon):
1069         * DumpRenderTree/TestRunner.h:
1070         (TestRunner::openPanelFilesMediaIcon const):
1071         * DumpRenderTree/mac/UIDelegate.mm:
1072         (-[UIDelegate webView:runOpenPanelForFileButtonWithResultListener:allowMultipleFiles:]):
1073         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1074         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1075         (WTR::TestRunner::setOpenPanelFilesMediaIcon):
1076         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1077         * WebKitTestRunner/TestController.cpp:
1078         (WTR::runOpenPanel):
1079         (WTR::TestController::resetStateToConsistentValues):
1080         * WebKitTestRunner/TestController.h:
1081         (WTR::TestController::openPanelFileURLsMediaIcon const):
1082         (WTR::TestController::setOpenPanelFileURLsMediaIcon):
1083         * WebKitTestRunner/TestInvocation.cpp:
1084         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
1085
1086 2019-04-23  Eric Carlson  <eric.carlson@apple.com>
1087
1088         Create AVFoundationSoftLink.{h,mm} to reduce duplicate code
1089         https://bugs.webkit.org/show_bug.cgi?id=197171
1090         <rdar://problem/47454979>
1091
1092         Reviewed by Youenn Fablet.
1093
1094         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1095         * TestWebKitAPI/Tests/WebCore/cocoa/AVFoundationSoftLinkTest.mm: Added.
1096         (TestWebKitAPI::TEST):
1097
1098 2019-04-23  Aakash Jain  <aakash_jain@apple.com>
1099
1100         [ews-build] Add unit tests for UnApplyPatchIfRequired
1101         https://bugs.webkit.org/show_bug.cgi?id=197197
1102
1103         Reviewed by Lucas Forschler.
1104
1105         * BuildSlaveSupport/ews-build/steps_unittest.py:
1106         (TestUnApplyPatchIfRequired):
1107         (TestUnApplyPatchIfRequired.test_success):
1108         (TestUnApplyPatchIfRequired.test_failure):
1109         (TestUnApplyPatchIfRequired.test_skip):
1110
1111 2019-04-23  Aakash Jain  <aakash_jain@apple.com>
1112
1113         [ews-build] Add unit tests for CleanWorkingDirectory
1114         https://bugs.webkit.org/show_bug.cgi?id=197195
1115
1116         Reviewed by Lucas Forschler.
1117
1118         * BuildSlaveSupport/ews-build/steps_unittest.py:
1119         (TestCleanWorkingDirectory):
1120         (TestCleanWorkingDirectory.test_success):
1121         (TestCleanWorkingDirectory.test_failure):
1122
1123 2019-04-23  Aakash Jain  <aakash_jain@apple.com>
1124
1125         [ews-build] Use explicit imports instead of wildcard imports
1126         https://bugs.webkit.org/show_bug.cgi?id=197194
1127
1128         Reviewed by Lucas Forschler.
1129
1130         * BuildSlaveSupport/ews-build/factories.py:
1131         * BuildSlaveSupport/ews-build/loadConfig.py:
1132         * BuildSlaveSupport/ews-build/steps_unittest.py:
1133
1134 2019-04-23  Aakash Jain  <aakash_jain@apple.com>
1135
1136         [ews-build] Add unit tests for DownloadBuiltProduct
1137         https://bugs.webkit.org/show_bug.cgi?id=197193
1138
1139         Reviewed by Lucas Forschler.
1140
1141         * BuildSlaveSupport/ews-build/steps_unittest.py:
1142         (TestDownloadBuiltProduct):
1143         (TestDownloadBuiltProduct.setUp):
1144         (TestDownloadBuiltProduct.tearDown):
1145         (TestDownloadBuiltProduct.test_success):
1146         (TestDownloadBuiltProduct.test_failure):
1147
1148 2019-04-23  Aakash Jain  <aakash_jain@apple.com>
1149
1150         [ews-app] Exception while loading status-bubble when no build step has started
1151         https://bugs.webkit.org/show_bug.cgi?id=196676
1152
1153         Reviewed by Lucas Forschler.
1154
1155         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1156         (StatusBubble.get_build_timestamp): Check if build step is present before accessing its timestamp.
1157
1158 2019-04-23  Stephan Szabo  <stephan.szabo@sony.com>
1159
1160         [PlayStation] Support running of JSC tests on remote playstation devices
1161         https://bugs.webkit.org/show_bug.cgi?id=197170
1162
1163         Reviewed by Ross Kirsling.
1164
1165         Script changes
1166
1167         * Scripts/run-javascriptcore-tests:
1168         (runJSCStressTests): Pass arguments for playstation to
1169         run-jsc-stress-tests
1170         * Scripts/run-jsc-stress-tests:
1171         Handle $hostOS=="playstation" for determineArchitecture, turning
1172         off $isFTLPlatform and runProfiler and defaulting test writer.
1173         * Scripts/webkitdirs.pm:
1174         (jscPath): PlayStation WebKit executables have .elf extension
1175         (executableProductDir): PlayStation builds on Windows hosts but
1176         uses bin directory rather than bin64/bin32 for executable output
1177         location.
1178         * Scripts/webkitruby/jsc-stress-test-writer-playstation.rb: Added.
1179
1180 2019-04-23  Don Olmstead  <don.olmstead@sony.com>
1181
1182         [CMake][Win] Use target oriented design for WebKit
1183         https://bugs.webkit.org/show_bug.cgi?id=197173
1184
1185         Reviewed by Alex Christensen.
1186
1187         * TestWebKitAPI/PlatformWin.cmake: Add WebKitFrameworkHeaders as a dependency.
1188         * TestWebKitAPI/Tests/WebKit/curl/Certificates.cpp: Remove unused header.
1189
1190 2019-04-23  Chris Dumez  <cdumez@apple.com>
1191
1192         [Process-Swap-On-Navigation] WebKit hangs when going back to a form submission's page due to Process-Swap-On-Navigation on iOS 12.2 and higher
1193         https://bugs.webkit.org/show_bug.cgi?id=197097
1194         <rdar://problem/50048318>
1195
1196         Reviewed by Alex Christensen.
1197
1198         Add API test coverage.
1199
1200         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1201         (-[PSONScheme webView:startURLSchemeTask:]):
1202
1203 2019-04-23  Carlos Garcia Campos  <cgarcia@igalia.com>
1204
1205         [ATK] Implement AtkComponentIface scroll_to methods
1206         https://bugs.webkit.org/show_bug.cgi?id=196856
1207
1208         Reviewed by Michael Catanzaro.
1209
1210         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1211         (WTR::AccessibilityUIElement::scrollToMakeVisible): Call atk_component_scroll_to().
1212         (WTR::AccessibilityUIElement::scrollToGlobalPoint): Call atk_component_scroll_to_point().
1213         * gtk/jhbuild.modules: Bump atk, at-spi2-core and at-spi2-atk to their latest stable version.
1214
1215 2019-04-22  Aakash Jain  <aakash_jain@apple.com>
1216
1217         [ews-build] Improve summary for UploadBuiltProduct step
1218         https://bugs.webkit.org/show_bug.cgi?id=197182
1219
1220         Reviewed by Lucas Forschler.
1221
1222         * BuildSlaveSupport/ews-build/steps.py:
1223         (UploadBuiltProduct): Added descriptionDone.
1224         (UploadBuiltProduct.getResultSummary): Overrided getResultSummary.
1225         * BuildSlaveSupport/ews-build/steps_unittest.py:
1226         (TestUploadBuiltProduct.test_success): Updated unit-test.
1227         (TestUploadBuiltProduct.test_failure): Added unit-test for failure case.
1228
1229 2019-04-22  Aakash Jain  <aakash_jain@apple.com>
1230
1231         [ews-build] Trigger queues only after uploading the archive
1232         https://bugs.webkit.org/show_bug.cgi?id=197180
1233
1234         Reviewed by Lucas Forschler.
1235
1236         * BuildSlaveSupport/ews-build/factories.py:
1237         (Factory.__init__):
1238         (BuildFactory.__init__): Remove trigger step from factories.
1239         (BuildFactory.propertiesToPassToTriggers): Deleted.
1240         * BuildSlaveSupport/ews-build/steps.py:
1241         (ConfigureBuild.__init__): Confiure triggers property.
1242         (Trigger): Step to trigger other queues.
1243         (Trigger.propertiesToPassToTriggers): Method to construct properties to pass to triggerred builds.
1244         (UploadBuiltProduct.finished): Trigger builds after upload is successful.
1245
1246 2019-04-22  Alex Christensen  <achristensen@webkit.org>
1247
1248         Deprecate WKContextCreateWithInjectedBundlePath
1249         https://bugs.webkit.org/show_bug.cgi?id=197169
1250
1251         Reviewed by Youenn Fablet.
1252
1253         * TestWebKitAPI/PlatformUtilities.cpp:
1254         (TestWebKitAPI::Util::createContextWithInjectedBundle):
1255         Use WKContextCreateWithConfiguration instead of WKContextCreateWithInjectedBundlePath after having set its injected bundle path.
1256
1257 2019-04-22  Alex Christensen  <achristensen@webkit.org>
1258
1259         REGRESSION(r230681) Do not use stored credentials if WKBundlePageResourceLoadClient.shouldUseCredentialStorage returns false
1260         https://bugs.webkit.org/show_bug.cgi?id=197093
1261         <rdar://problem/49708268>
1262
1263         Reviewed by Chris Dumez.
1264
1265         Add a test that does two loads.  The first load shouldUseCredentialStorage returns true and we provide a persistent credential.
1266         The second load shouldUseCredentialStorage returns false and we verify that a challenge is received with no suggested credential.
1267         We also need to make the TCPServer able to handle more than one connection because we need these two loads to come from the same protection space,
1268         and our current Cocoa implementation of NetworkSession uses two NSURLSessions that don't share a connection cache, one for loads with credentials
1269         and one for loads without credentials, so there are two TCP connections to the same server in this test.
1270
1271         * TestWebKitAPI/TCPServer.cpp:
1272         (TestWebKitAPI::TCPServer::TCPServer):
1273         (TestWebKitAPI::TCPServer::~TCPServer):
1274         (TestWebKitAPI::TCPServer::socketBindListen):
1275         (TestWebKitAPI::TCPServer::waitForAndReplyToRequests): Deleted.
1276         * TestWebKitAPI/TCPServer.h:
1277         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1278         * TestWebKitAPI/Tests/WebKitCocoa/BasicProposedCredentialPlugIn.mm: Added.
1279         (-[BasicProposedCredentialPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
1280         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
1281         (respondWithChallengeThenOK):
1282         (TestWebKitAPI::TEST):
1283         (-[ProposedCredentialDelegate webView:didFinishNavigation:]):
1284         (-[ProposedCredentialDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
1285         (TEST):
1286
1287 2019-04-22  Chris Dumez  <cdumez@apple.com>
1288
1289         Delayed WebProcessLaunch may break the _relatedWebView SPI
1290         https://bugs.webkit.org/show_bug.cgi?id=197160
1291
1292         Reviewed by Alex Christensen.
1293
1294         Add API test coverage.
1295
1296         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1297
1298 2019-04-22  Dean Johnson  <dean_johnson@apple.com>
1299
1300         Use curl to download packages for webkitpy autoinstaller
1301         https://bugs.webkit.org/show_bug.cgi?id=197164
1302
1303         Reviewed by Darin Adler.
1304
1305         * Scripts/webkitpy/common/system/autoinstall.py:
1306         (AutoInstaller._download): Use curl(1) to download packages necessary for
1307         webkitpy/thirdparty/autoinstalled since Python2's urllib2 module can result in unnecessary
1308         errors which are not present when using curl(1).
1309
1310 2019-04-22  Chris Dumez  <cdumez@apple.com>
1311
1312         Unreviewed, rolling out r244502.
1313
1314         Caused crashes on the bots
1315
1316         Reverted changeset:
1317
1318         "Delayed WebProcessLaunch may break the _relatedWebView SPI"
1319         https://bugs.webkit.org/show_bug.cgi?id=197160
1320         https://trac.webkit.org/changeset/244502
1321
1322 2019-04-22  Ryan Haddad  <ryanhaddad@apple.com>
1323
1324         Unreviewed, rolling out r244437.
1325
1326         Still breaks internal tests.
1327
1328         Reverted changeset:
1329
1330         "InjectedBundle parameters often need initialization function
1331         called before unarchiving"
1332         https://bugs.webkit.org/show_bug.cgi?id=189709
1333         https://trac.webkit.org/changeset/244437
1334
1335 2019-04-22  Aakash Jain  <aakash_jain@apple.com>
1336
1337         [ews-build] Use singular verb in failure description in case of single api test failure
1338         https://bugs.webkit.org/show_bug.cgi?id=197013
1339
1340         Reviewed by Lucas Forschler.
1341
1342         * BuildSlaveSupport/ews-build/steps.py:
1343         (AnalyzeAPITestsResults.analyzeResults):
1344
1345 2019-04-22  Chris Dumez  <cdumez@apple.com>
1346
1347         Delayed WebProcessLaunch may break the _relatedWebView SPI
1348         https://bugs.webkit.org/show_bug.cgi?id=197160
1349
1350         Reviewed by Alex Christensen.
1351
1352         Add API test coverage.
1353
1354         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1355
1356 2019-04-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1357
1358         REGRESSION(r241289): [GTK] accessibility/removed-continuation-element-causes-crash.html and accessibility/removed-anonymous-block-child-causes-crash.html crashes
1359         https://bugs.webkit.org/show_bug.cgi?id=194630
1360
1361         Reviewed by Michael Catanzaro.
1362
1363         Return early from getAttributeSet() is passed in accessible is nullptr.
1364
1365         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1366
1367 2019-04-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1368
1369         Defer EditorState updates until the next layer tree flush in a few additional circumstances
1370         https://bugs.webkit.org/show_bug.cgi?id=197145
1371         <rdar://problem/50078170>
1372
1373         Reviewed by Darin Adler.
1374
1375         Adjusts several editing API tests to wait for a presentation update following a selection change, programmatic
1376         focus, or showing the font manager.
1377
1378         * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
1379         (TestWebKitAPI::TEST):
1380         * TestWebKitAPI/Tests/WebKitCocoa/WKContentViewTargetForAction.mm:
1381         (TEST):
1382         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
1383         (TestWebKitAPI::TEST):
1384
1385 2019-04-21  Brian Burg  <bburg@apple.com>
1386
1387         WebDriver: add hooks to make it possible to easily run WPT WebDriver web server by itself
1388         https://bugs.webkit.org/show_bug.cgi?id=197125
1389         <rdar://problem/50061468>
1390
1391         Reviewed by Darin Adler.
1392
1393         Sometimes I want to run wptserve independently of tests. Make it easier to script that
1394         using this class rather than making our own ./wpt serve invocation.
1395
1396         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
1397         (WebDriverW3CWebServer):
1398         (WebDriverW3CWebServer.document_root): Expose this to clients.
1399         (WebDriverW3CWebServer.wait): Add a method that blocks until the server dies.
1400
1401         (WebDriverW3CWebServer.__enter__):
1402         (WebDriverW3CWebServer.__exit__):
1403         Make it possible to use the web server with a 'with' statement.
1404
1405 2019-04-20  Don Olmstead  <don.olmstead@sony.com>
1406
1407         [CMake][Win] Use target oriented design for WebKitLegacy
1408         https://bugs.webkit.org/show_bug.cgi?id=197112
1409
1410         Reviewed by Konstantin Tokarev.
1411
1412         Fix includes and libraries for DumpRenderTree after changes to WebKitLegacy targets.
1413
1414         * DumpRenderTree/CMakeLists.txt:
1415         * DumpRenderTree/PlatformWin.cmake:
1416         * DumpRenderTree/win/EventSender.cpp:
1417
1418 2019-04-20  Aakash Jain  <aakash_jain@apple.com>
1419
1420         Update text for old EWS submit button
1421         https://bugs.webkit.org/show_bug.cgi?id=197140
1422
1423         Reviewed by Alexey Proskuryakov.
1424
1425         * QueueStatusServer/templates/statusbubble.html:
1426
1427 2019-04-20  Aakash Jain  <aakash_jain@apple.com>
1428
1429         [ews-app] New EWS should poll bugzilla more frequently
1430         https://bugs.webkit.org/show_bug.cgi?id=197138
1431
1432         Reviewed by Alexey Proskuryakov.
1433
1434         * BuildSlaveSupport/ews-app/ews/fetcher.py:
1435         (FetchLoop.__init__):
1436
1437 2019-04-20  Aakash Jain  <aakash_jain@apple.com>
1438
1439         [ews-app] Submit to EWS buttons are not aligned properly with status-bubbles
1440         https://bugs.webkit.org/show_bug.cgi?id=197139
1441
1442         Reviewed by Alexey Proskuryakov.
1443
1444         * BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
1445         * QueueStatusServer/templates/statusbubble.html:
1446
1447 2019-04-20  Chris Dumez  <cdumez@apple.com>
1448
1449         Unreviewed, fix iOS build with recent SDKs.
1450
1451         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
1452
1453 2019-04-19  Keith Miller  <keith_miller@apple.com>
1454
1455         Add script to merge run_benchmark jsons
1456         https://bugs.webkit.org/show_bug.cgi?id=197107
1457
1458         Reviewed by Michael Saboff.
1459
1460         The script basically recursively decends through all json objects until it gets
1461         to an array or JSON primitive and concats or takes the first value, respectively.
1462
1463         This patch also adds +x bits to the compare-results script so it
1464         can be run directly from the command line. I had to add a new line so that svn
1465         will accept the change... yay svn!
1466
1467         * Scripts/compare-results:
1468         * Scripts/merge-result-jsons: Added.
1469         (readJSONFile):
1470         (deepAppend):
1471         (mergeJSONs):
1472         (main):
1473
1474 2019-04-18  Ryosuke Niwa  <rniwa@webkit.org>
1475
1476         Crash in FrameLoader::stopAllLoaders via [WebView dealloc] inside ~ObjCEventListener
1477         https://bugs.webkit.org/show_bug.cgi?id=197079
1478
1479         Reviewed by Darin Adler.
1480
1481         Added a regression test. It hits a slightly different backtrace but of the same class of issues.
1482
1483         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1484         * TestWebKitAPI/Tests/WebKitLegacy/mac/DeallocWebViewInEventListener.mm: Added.
1485
1486 2019-04-18  Commit Queue  <commit-queue@webkit.org>
1487
1488         Unreviewed, rolling out r244434.
1489         https://bugs.webkit.org/show_bug.cgi?id=197089
1490
1491         caused 1 API test failure (Requested by zalan on #webkit).
1492
1493         Reverted changeset:
1494
1495         "Regression (r244291): Broken API Test
1496         AutoLayoutRenderingProgressRelativeOrdering"
1497         https://bugs.webkit.org/show_bug.cgi?id=196948
1498         https://trac.webkit.org/changeset/244434
1499
1500 2019-04-18  Wenson Hsieh  <wenson_hsieh@apple.com>
1501
1502         Add new compatibility mode API on WKNavigation
1503         https://bugs.webkit.org/show_bug.cgi?id=197069
1504         <rdar://problem/50025800>
1505
1506         Reviewed by Tim Horton.
1507
1508         Add a block property for -didCommitNavigation to TestNavigationDelegate.
1509
1510         * TestWebKitAPI/cocoa/TestNavigationDelegate.h:
1511         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
1512         (-[TestNavigationDelegate webView:didCommitNavigation:]):
1513
1514 2019-04-18  Don Olmstead  <don.olmstead@sony.com>
1515
1516         [CMake] Make WebCore headers copies
1517         https://bugs.webkit.org/show_bug.cgi?id=182512
1518         <rdar://problem/37510435>
1519
1520         Reviewed by Alex Christensen.
1521
1522         Added WebCorePrivateFrameworkHeaders as a dependency of TestWebKitAPI for all
1523         ports.
1524
1525         WebCore now uses WebCore_PRIVATE_INCLUDE_DIRECTORIES for all ports. Any includes
1526         of WebCore headers using "*.h" were modified to <WebCore/*.h>
1527
1528         * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
1529         * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npapi.h:
1530         * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npfunctions.h:
1531         * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npruntime.h:
1532         * TestWebKitAPI/CMakeLists.txt:
1533         * TestWebKitAPI/PlatformWin.cmake:
1534         * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
1535         * TestWebKitAPI/Tests/WebCore/gstreamer/GstMappedBuffer.cpp:
1536         * WebKitTestRunner/win/PlatformWebViewWin.cpp:
1537
1538 2019-04-18  Jer Noble  <jer.noble@apple.com>
1539
1540         Add support for parsing FairPlayStreaming PSSH boxes.
1541         https://bugs.webkit.org/show_bug.cgi?id=197064
1542
1543         Reviewed by Eric Carlson.
1544
1545         * TestWebKitAPI/Tests/WebCore/ISOBox.cpp:
1546         (TestWebKitAPI::TEST):
1547
1548 2019-04-18  Brent Fulgham  <bfulgham@apple.com>
1549
1550         InjectedBundle parameters often need initialization function called before unarchiving
1551         https://bugs.webkit.org/show_bug.cgi?id=189709
1552         <rdar://problem/44573653>
1553
1554         Reviewed by Ryosuke Niwa.
1555
1556         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugIn.mm:
1557         (-[WebProcessPlugIn additionalClassesForParameterCoder]): Added.
1558
1559 2019-04-18  Zalan Bujtas  <zalan@apple.com>
1560
1561         Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
1562         https://bugs.webkit.org/show_bug.cgi?id=196948
1563         <rdar://problem/49927131>
1564
1565         Reviewed by Tim Horton.
1566
1567         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
1568         (TEST): 
1569         The expected order of incoming events is
1570         1. didInvalidateIntrinsicContentSize
1571         2. didFirstLayout
1572         At setRenderingProgressDidChange, we already check if didInvalidateIntrinsicContentSize comes in first.
1573         However it's not guaranteed that the milestone event is delayed until after TestWebKitAPI::Util::run() is finished
1574         (and remember, all we care about is ordering).
1575
1576 2019-04-18  Ryan Haddad  <ryanhaddad@apple.com>
1577
1578         Unreviewed, rolling out r244299.
1579
1580         Breaks internal tests.
1581
1582         Reverted changeset:
1583
1584         "InjectedBundle parameters often need initialization function
1585         called before unarchiving"
1586         https://bugs.webkit.org/show_bug.cgi?id=189709
1587         https://trac.webkit.org/changeset/244299
1588
1589 2019-04-18  Yusuke Suzuki  <ysuzuki@apple.com>
1590
1591         [WTF] StringBuilder should set correct m_is8Bit flag when merging
1592         https://bugs.webkit.org/show_bug.cgi?id=197053
1593
1594         Reviewed by Saam Barati.
1595
1596         * TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
1597         (TestWebKitAPI::TEST):
1598
1599 2019-04-17  Tim Horton  <timothy_horton@apple.com>
1600
1601         [iOS Sim Debug] REGRESSION (r244151) TestWebKitAPI.WebKit.OverrideViewportArguments is failing (197028)
1602         https://bugs.webkit.org/show_bug.cgi?id=197028
1603         <rdar://problem/49985290>
1604
1605         Reviewed by Wenson Hsieh.
1606
1607         * TestWebKitAPI/Tests/WebKitCocoa/OverrideViewportArguments.mm:
1608         (TEST):
1609         Liberal application of waitForNextPresentationUpdate works around a race
1610         where if the page rapidly changes its viewport arguments (or an API client
1611         rapidly changes its viewport arguments), we'd get stuck thinking that the
1612         user had intentionally zoomed the page, and stop resetting the initial scale.
1613         This deserves a separate bug, but no need to keep the test failing while
1614         we think about it.
1615
1616 2019-04-17  Tim Horton  <timothy_horton@apple.com>
1617
1618         REGRESSION (r241988): Switching tabs is slow
1619         https://bugs.webkit.org/show_bug.cgi?id=197037
1620         <rdar://problem/49951473>
1621
1622         Reviewed by Simon Fraser.
1623
1624         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1625         * TestWebKitAPI/Tests/WebKitCocoa/ReparentWebViewTimeout.mm: Added.
1626         (TEST):
1627         * TestWebKitAPI/cocoa/TestWKWebView.h:
1628         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1629         (-[TestWKWebView addToTestWindow]):
1630         Add a test that hangs without this fix.
1631
1632 2019-04-17  Truitt Savell  <tsavell@apple.com>
1633
1634         Unreviewed, rolling out r244400.
1635
1636         Caused testing to exit early with assertionon Debug WK2
1637
1638         Reverted changeset:
1639
1640         "UI↔Web deadlock when printing with a JavaScript alert
1641         visible"
1642         https://bugs.webkit.org/show_bug.cgi?id=196839
1643         https://trac.webkit.org/changeset/244400
1644
1645 2019-04-17  Brady Eidson  <beidson@apple.com>
1646
1647         Link clicks in PDFs shouldn't send referrer headers.
1648         <rdar://problem/21142581> and https://bugs.webkit.org/show_bug.cgi?id=196980
1649
1650         Reviewed by Tim Horton.
1651
1652         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1653         * TestWebKitAPI/Tests/WebKitCocoa/PDFLinkReferrer.mm: Added.
1654         (putPDFBytesCallback):
1655         (emptyReleaseInfoCallback):
1656         (createPDFWithLinkToURL):
1657         (TEST):
1658
1659 2019-04-17  Tim Horton  <timothy_horton@apple.com>
1660
1661         UI↔Web deadlock when printing with a JavaScript alert visible
1662         https://bugs.webkit.org/show_bug.cgi?id=196839
1663         <rdar://problem/49157642>
1664
1665         Reviewed by Andy Estes.
1666
1667         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1668         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewPrintFormatter.mm: Added.
1669         (-[PrintOnAlertUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
1670         (TEST):
1671
1672 2019-04-17  Alex Christensen  <achristensen@webkit.org>
1673
1674         WKRetainPtr's adoption constructor should be private
1675         https://bugs.webkit.org/show_bug.cgi?id=197019
1676
1677         Reviewed by Tim Horton.
1678
1679         * DumpRenderTree/mac/DumpRenderTree.mm:
1680         (dumpFramesAsText):
1681         * TestWebKitAPI/InjectedBundleController.cpp:
1682         (TestWebKitAPI::InjectedBundleController::initialize):
1683         * TestWebKitAPI/PlatformUtilities.cpp:
1684         (TestWebKitAPI::Util::createContextWithInjectedBundle):
1685         (TestWebKitAPI::Util::createInitializationDictionaryForInjectedBundleTest):
1686         (TestWebKitAPI::Util::createContextForInjectedBundleTest):
1687         (TestWebKitAPI::Util::toWK):
1688         * TestWebKitAPI/Tests/CustomProtocolsSyncXHRTest.mm:
1689         (TestWebKitAPI::TEST):
1690         * TestWebKitAPI/Tests/WebKit/CloseFromWithinCreatePage.cpp:
1691         (TestWebKitAPI::TEST):
1692         * TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
1693         (TestWebKitAPI::TEST):
1694         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic.cpp:
1695         (TestWebKitAPI::TEST):
1696         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic_Bundle.cpp:
1697         (TestWebKitAPI::DOMWindowExtensionBasic::initialize):
1698         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionNoCache.cpp:
1699         (TestWebKitAPI::TEST):
1700         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionNoCache_Bundle.cpp:
1701         (TestWebKitAPI::DOMWindowExtensionNoCache::initialize):
1702         * TestWebKitAPI/Tests/WebKit/DeferredViewInWindowStateChange.mm:
1703         (TestWebKitAPI::TEST):
1704         * TestWebKitAPI/Tests/WebKit/DidNotHandleKeyDown.cpp:
1705         (TestWebKitAPI::TEST):
1706         * TestWebKitAPI/Tests/WebKit/DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp:
1707         (TestWebKitAPI::didRemoveFrameFromHierarchyCallback):
1708         * TestWebKitAPI/Tests/WebKit/DocumentStartUserScriptAlertCrash.cpp:
1709         (TestWebKitAPI::TEST):
1710         * TestWebKitAPI/Tests/WebKit/DocumentStartUserScriptAlertCrash_Bundle.cpp:
1711         (TestWebKitAPI::DocumentStartUserScriptAlertCrashTest::initialize):
1712         * TestWebKitAPI/Tests/WebKit/EnumerateMediaDevices.cpp:
1713         (TestWebKitAPI::TEST):
1714         * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
1715         (TestWebKitAPI::TEST):
1716         * TestWebKitAPI/Tests/WebKit/EvaluateJavaScript.cpp:
1717         (TestWebKitAPI::TEST):
1718         * TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
1719         (TestWebKitAPI::TEST):
1720         * TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
1721         (TestWebKitAPI::TEST):
1722         * TestWebKitAPI/Tests/WebKit/Find.cpp:
1723         (TestWebKitAPI::TEST):
1724         * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
1725         (TestWebKitAPI::TEST):
1726         * TestWebKitAPI/Tests/WebKit/FirstMeaningfulPaintMilestone.cpp:
1727         (TestWebKitAPI::TEST):
1728         * TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
1729         (TestWebKitAPI::TEST):
1730         * TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
1731         (TestWebKitAPI::TEST):
1732         * TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
1733         (TestWebKitAPI::TEST):
1734         * TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
1735         (TestWebKitAPI::TEST):
1736         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
1737         (TestWebKitAPI::TEST):
1738         * TestWebKitAPI/Tests/WebKit/GetInjectedBundleInitializationUserDataCallback.cpp:
1739         (TestWebKitAPI::TEST):
1740         * TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle.cpp:
1741         (TestWebKitAPI::TEST):
1742         * TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle_Bundle.cpp:
1743         (TestWebKitAPI::HitTestResultNodeHandleTest::getContextMenuFromDefaultMenu):
1744         * TestWebKitAPI/Tests/WebKit/InjectedBundleBasic.cpp:
1745         (TestWebKitAPI::TEST):
1746         * TestWebKitAPI/Tests/WebKit/InjectedBundleDisableOverrideBuiltinsBehavior.cpp:
1747         (TestWebKitAPI::TEST):
1748         * TestWebKitAPI/Tests/WebKit/InjectedBundleDisableOverrideBuiltinsBehavior_Bundle.cpp:
1749         (TestWebKitAPI::InjectedBundleNoDisableOverrideBuiltinsBehaviorTest::initialize):
1750         (TestWebKitAPI::InjectedBundleDisableOverrideBuiltinsBehaviorTest::initialize):
1751         * TestWebKitAPI/Tests/WebKit/InjectedBundleFrameHitTest.cpp:
1752         (TestWebKitAPI::TEST):
1753         * TestWebKitAPI/Tests/WebKit/InjectedBundleFrameHitTest_Bundle.cpp:
1754         (TestWebKitAPI::InjectedBundleFrameHitTestTest::frameLoadFinished):
1755         * TestWebKitAPI/Tests/WebKit/InjectedBundleInitializationUserDataCallbackWins.cpp:
1756         (TestWebKitAPI::TEST):
1757         * TestWebKitAPI/Tests/WebKit/InjectedBundleMakeAllShadowRootsOpen.cpp:
1758         (TestWebKitAPI::TEST):
1759         * TestWebKitAPI/Tests/WebKit/InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp:
1760         (TestWebKitAPI::InjectedBundleMakeAllShadowRootOpenTest::initialize):
1761         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
1762         (TestWebKitAPI::TEST):
1763         * TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
1764         (TestWebKitAPI::loadAlternateHTMLString):
1765         (TestWebKitAPI::TEST):
1766         * TestWebKitAPI/Tests/WebKit/LoadCanceledNoServerRedirectCallback.cpp:
1767         (TestWebKitAPI::TEST):
1768         * TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
1769         (TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
1770         * TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
1771         (TestWebKitAPI::buildAndPerformTest):
1772         * TestWebKitAPI/Tests/WebKit/ModalAlertsSPI.cpp:
1773         (TestWebKitAPI::TEST):
1774         * TestWebKitAPI/Tests/WebKit/MouseMoveAfterCrash.cpp:
1775         (TestWebKitAPI::TEST):
1776         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayout.cpp:
1777         (TestWebKitAPI::TEST):
1778         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFails.cpp:
1779         (TestWebKitAPI::TEST):
1780         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutForImages.cpp:
1781         (TestWebKitAPI::TEST):
1782         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFrames.cpp:
1783         (TestWebKitAPI::TEST):
1784         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
1785         (TestWebKitAPI::TEST):
1786         * TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
1787         (TestWebKitAPI::TEST):
1788         * TestWebKitAPI/Tests/WebKit/PasteboardNotifications.mm:
1789         (TestWebKitAPI::TEST):
1790         * TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
1791         (TestWebKitAPI::TEST):
1792         * TestWebKitAPI/Tests/WebKit/PreventEmptyUserAgent.cpp:
1793         (TestWebKitAPI::TEST):
1794         * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
1795         (TestWebKitAPI::TEST):
1796         * TestWebKitAPI/Tests/WebKit/ProcessDidTerminate.cpp:
1797         (TestWebKitAPI::TEST):
1798         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
1799         (TestWebKitAPI::TEST):
1800         * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
1801         (TestWebKitAPI::TEST):
1802         * TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
1803         (TestWebKitAPI::TEST):
1804         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
1805         (TestWebKitAPI::TEST):
1806         * TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
1807         (TestWebKitAPI::TEST):
1808         * TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
1809         (TestWebKitAPI::TEST):
1810         * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
1811         (TestWebKitAPI::TEST):
1812         * TestWebKitAPI/Tests/WebKit/SpacebarScrolling.cpp:
1813         (TestWebKitAPI::TEST):
1814         * TestWebKitAPI/Tests/WebKit/StopLoadingDuringDidFailProvisionalLoad.cpp:
1815         (TestWebKitAPI::TEST):
1816         * TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
1817         (TestWebKitAPI::TEST):
1818         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
1819         (TestWebKitAPI::TEST):
1820         * TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
1821         (TestWebKitAPI::TEST):
1822         * TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
1823         (TestWebKitAPI::TEST):
1824         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
1825         (TestWebKitAPI::TEST):
1826         * TestWebKitAPI/Tests/WebKit/WKPreferences.cpp:
1827         (TestWebKitAPI::TEST):
1828         * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
1829         (TestWebKitAPI::TEST):
1830         * TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent.cpp:
1831         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
1832         * TestWebKitAPI/Tests/WebKit/mac/AttributedSubstringForProposedRangeWithImage.mm:
1833         (TestWebKitAPI::TEST):
1834         * TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
1835         (TestWebKitAPI::TEST):
1836         * TestWebKitAPI/Tests/WebKit/mac/CustomBundleParameter.mm:
1837         (TestWebKitAPI::TEST):
1838         * TestWebKitAPI/Tests/WebKit/mac/EditorCommands.mm:
1839         (TestWebKitAPI::TEST):
1840         * TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle.mm:
1841         (TestWebKitAPI::TEST):
1842         * TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
1843         (TestWebKitAPI::TEST):
1844         * TestWebKitAPI/Tests/WebKit/mac/InjectedBundleAppleEvent.cpp:
1845         (TestWebKitAPI::TEST):
1846         * TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
1847         (TestWebKitAPI::TEST):
1848         * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
1849         (TestWebKitAPI::TEST):
1850         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
1851         (TestWebKitAPI::TEST):
1852         * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
1853         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSuspendMediaBuffering.mm:
1854         (TEST):
1855         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
1856         (TEST):
1857         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1858         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1859         (TEST):
1860         * TestWebKitAPI/Tests/mac/FirstResponderScrollingPosition.mm:
1861         (TestWebKitAPI::TEST):
1862         * TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
1863         (TestWebKitAPI::FullscreenZoomInitialFrame::initializeView):
1864         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
1865         (WTR::getMenuItemTitleCallback):
1866         (WTR::createMouseMessageBody):
1867         (WTR::EventSendingController::mouseDown):
1868         (WTR::EventSendingController::mouseUp):
1869         (WTR::EventSendingController::mouseMoveTo):
1870         (WTR::EventSendingController::mouseForceClick):
1871         (WTR::EventSendingController::startAndCancelMouseForceClick):
1872         (WTR::EventSendingController::mouseForceDown):
1873         (WTR::EventSendingController::mouseForceUp):
1874         (WTR::EventSendingController::mouseForceChanged):
1875         (WTR::EventSendingController::leapForward):
1876         (WTR::EventSendingController::scheduleAsynchronousClick):
1877         (WTR::createKeyDownMessageBody):
1878         (WTR::EventSendingController::keyDown):
1879         (WTR::EventSendingController::scheduleAsynchronousKeyDown):
1880         (WTR::EventSendingController::mouseScrollBy):
1881         (WTR::EventSendingController::mouseScrollByWithWheelAndMomentumPhases):
1882         (WTR::EventSendingController::continuousMouseScrollBy):
1883         (WTR::EventSendingController::addTouchPoint):
1884         (WTR::EventSendingController::updateTouchPoint):
1885         (WTR::EventSendingController::setTouchModifier):
1886         (WTR::EventSendingController::setTouchPointRadius):
1887         (WTR::EventSendingController::touchStart):
1888         (WTR::EventSendingController::touchMove):
1889         (WTR::EventSendingController::touchEnd):
1890         (WTR::EventSendingController::touchCancel):
1891         (WTR::EventSendingController::clearTouchPoints):
1892         (WTR::EventSendingController::releaseTouchPoint):
1893         (WTR::EventSendingController::cancelTouchPoint):
1894         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1895         (WTR::InjectedBundle::didCreatePage):
1896         (WTR::InjectedBundle::didReceiveMessage):
1897         (WTR::InjectedBundle::didReceiveMessageToPage):
1898         (WTR::InjectedBundle::booleanForKey):
1899         (WTR::InjectedBundle::done):
1900         (WTR::InjectedBundle::dumpToStdErr):
1901         (WTR::InjectedBundle::outputText):
1902         (WTR::InjectedBundle::postNewBeforeUnloadReturnValue):
1903         (WTR::InjectedBundle::postAddChromeInputField):
1904         (WTR::InjectedBundle::postRemoveChromeInputField):
1905         (WTR::InjectedBundle::postFocusWebView):
1906         (WTR::InjectedBundle::postSetBackingScaleFactor):
1907         (WTR::InjectedBundle::postSetWindowIsKey):
1908         (WTR::InjectedBundle::postSetViewSize):
1909         (WTR::InjectedBundle::postSimulateWebNotificationClick):
1910         (WTR::InjectedBundle::postSetAddsVisitedLinks):
1911         (WTR::InjectedBundle::setGeolocationPermission):
1912         (WTR::InjectedBundle::setMockGeolocationPosition):
1913         (WTR::InjectedBundle::setMockGeolocationPositionUnavailableError):
1914         (WTR::InjectedBundle::isGeolocationProviderActive const):
1915         (WTR::InjectedBundle::imageCountInGeneralPasteboard const):
1916         (WTR::InjectedBundle::setUserMediaPersistentPermissionForOrigin):
1917         (WTR::InjectedBundle::userMediaPermissionRequestCountForOrigin const):
1918         (WTR::InjectedBundle::resetUserMediaPermissionRequestCountForOrigin):
1919         (WTR::InjectedBundle::setCustomPolicyDelegate):
1920         (WTR::InjectedBundle::setHidden):
1921         (WTR::InjectedBundle::setCacheModel):
1922         (WTR::InjectedBundle::shouldProcessWorkQueue const):
1923         (WTR::InjectedBundle::processWorkQueue):
1924         (WTR::InjectedBundle::queueBackNavigation):
1925         (WTR::InjectedBundle::queueForwardNavigation):
1926         (WTR::InjectedBundle::queueLoad):
1927         (WTR::InjectedBundle::queueLoadHTMLString):
1928         (WTR::InjectedBundle::queueReload):
1929         (WTR::InjectedBundle::queueLoadingScript):
1930         (WTR::InjectedBundle::queueNonLoadingScript):
1931         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1932         (WTR::frameToStr):
1933         (WTR::InjectedBundlePage::InjectedBundlePage):
1934         (WTR::dumpFrameDescriptionSuitableForTestResult):
1935         (WTR::dumpFrameScrollPosition):
1936         (WTR::dumpDescendantFrameScrollPositions):
1937         (WTR::dumpFrameText):
1938         (WTR::dumpDescendantFramesText):
1939         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1940         (WTR::TestRunner::shouldDumpPixels const):
1941         (WTR::TestRunner::setDumpPixels):
1942         (WTR::TestRunner::whatToDump const):
1943         (WTR::TestRunner::setWhatToDump):
1944         (WTR::TestRunner::setWaitUntilDone):
1945         (WTR::TestRunner::shouldWaitUntilDone const):
1946         (WTR::TestRunner::setShouldDumpFrameLoadCallbacks):
1947         (WTR::TestRunner::shouldDumpFrameLoadCallbacks):
1948         (WTR::TestRunner::clearAllDatabases):
1949         (WTR::TestRunner::setIDBPerOriginQuota):
1950         (WTR::TestRunner::originsWithApplicationCache):
1951         (WTR::TestRunner::setCanOpenWindows):
1952         (WTR::TestRunner::setXSSAuditorEnabled):
1953         (WTR::TestRunner::setMediaDevicesEnabled):
1954         (WTR::TestRunner::setWebRTCMDNSICECandidatesEnabled):
1955         (WTR::TestRunner::setWebRTCUnifiedPlanEnabled):
1956         (WTR::TestRunner::setCustomUserAgent):
1957         (WTR::TestRunner::setWebAPIStatisticsEnabled):
1958         (WTR::TestRunner::setModernMediaControlsEnabled):
1959         (WTR::TestRunner::setWebGL2Enabled):
1960         (WTR::TestRunner::setWritableStreamAPIEnabled):
1961         (WTR::TestRunner::setReadableByteStreamAPIEnabled):
1962         (WTR::TestRunner::setEncryptedMediaAPIEnabled):
1963         (WTR::TestRunner::setAllowsAnySSLCertificate):
1964         (WTR::TestRunner::setPluginsEnabled):
1965         (WTR::TestRunner::setValueForUser):
1966         (WTR::TestRunner::setAudioResult):
1967         (WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
1968         (WTR::TestRunner::clearDidReceiveServerRedirectForProvisionalNavigation):
1969         (WTR::TestRunner::setAlwaysAcceptCookies):
1970         (WTR::TestRunner::setOnlyAcceptFirstPartyCookies):
1971         (WTR::TestRunner::isDoingMediaCapture const):
1972         (WTR::TestRunner::queueLoad):
1973         (WTR::TestRunner::setRejectsProtectionSpaceAndContinueForAuthenticationChallenges):
1974         (WTR::TestRunner::setHandlesAuthenticationChallenges):
1975         (WTR::TestRunner::setShouldLogCanAuthenticateAgainstProtectionSpace):
1976         (WTR::TestRunner::setShouldLogDownloadCallbacks):
1977         (WTR::TestRunner::setAuthenticationUsername):
1978         (WTR::TestRunner::setAuthenticationPassword):
1979         (WTR::TestRunner::secureEventInputIsEnabled const):
1980         (WTR::TestRunner::setBlockAllPlugins):
1981         (WTR::TestRunner::setPluginSupportedMode):
1982         (WTR::TestRunner::setShouldDecideNavigationPolicyAfterDelay):
1983         (WTR::TestRunner::setShouldDecideResponsePolicyAfterDelay):
1984         (WTR::TestRunner::setNavigationGesturesEnabled):
1985         (WTR::TestRunner::setIgnoresViewportScaleLimits):
1986         (WTR::TestRunner::setShouldDownloadUndisplayableMIMETypes):
1987         (WTR::TestRunner::setShouldAllowDeviceOrientationAndMotionAccess):
1988         (WTR::TestRunner::terminateNetworkProcess):
1989         (WTR::TestRunner::terminateServiceWorkerProcess):
1990         (WTR::TestRunner::runUIScript):
1991         (WTR::TestRunner::setStatisticsDebugMode):
1992         (WTR::TestRunner::setStatisticsPrevalentResourceForDebugMode):
1993         (WTR::TestRunner::setStatisticsLastSeen):
1994         (WTR::TestRunner::setStatisticsPrevalentResource):
1995         (WTR::TestRunner::setStatisticsVeryPrevalentResource):
1996         (WTR::TestRunner::dumpResourceLoadStatistics):
1997         (WTR::TestRunner::isStatisticsPrevalentResource):
1998         (WTR::TestRunner::isStatisticsVeryPrevalentResource):
1999         (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
2000         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
2001         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
2002         (WTR::TestRunner::setStatisticsHasHadUserInteraction):
2003         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
2004         (WTR::TestRunner::setStatisticsGrandfathered):
2005         (WTR::TestRunner::isStatisticsGrandfathered):
2006         (WTR::TestRunner::setStatisticsSubframeUnderTopFrameOrigin):
2007         (WTR::TestRunner::setStatisticsSubresourceUnderTopFrameOrigin):
2008         (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectTo):
2009         (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectFrom):
2010         (WTR::TestRunner::setStatisticsTopFrameUniqueRedirectTo):
2011         (WTR::TestRunner::setStatisticsTopFrameUniqueRedirectFrom):
2012         (WTR::TestRunner::setStatisticsCrossSiteLoadWithLinkDecoration):
2013         (WTR::TestRunner::setStatisticsTimeToLiveUserInteraction):
2014         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
2015         (WTR::TestRunner::statisticsProcessStatisticsAndDataRecords):
2016         (WTR::TestRunner::statisticsUpdateCookieBlocking):
2017         (WTR::TestRunner::statisticsSubmitTelemetry):
2018         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
2019         (WTR::TestRunner::setStatisticsIsRunningTest):
2020         (WTR::TestRunner::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
2021         (WTR::TestRunner::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
2022         (WTR::TestRunner::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
2023         (WTR::TestRunner::setStatisticsGrandfatheringTime):
2024         (WTR::TestRunner::setStatisticsMaxStatisticsEntries):
2025         (WTR::TestRunner::setStatisticsPruneEntriesDownTo):
2026         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
2027         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
2028         (WTR::TestRunner::statisticsClearThroughWebsiteDataRemoval):
2029         (WTR::TestRunner::statisticsDeleteCookiesForHost):
2030         (WTR::TestRunner::setStatisticsCacheMaxAgeCap):
2031         (WTR::TestRunner::statisticsResetToConsistentState):
2032         (WTR::TestRunner::setStorageAccessAPIEnabled):
2033         (WTR::TestRunner::getAllStorageAccessEntries):
2034         (WTR::TestRunner::addMockMediaDevice):
2035         (WTR::TestRunner::clearMockMediaDevices):
2036         (WTR::TestRunner::removeMockMediaDevice):
2037         (WTR::TestRunner::resetMockMediaDevices):
2038         (WTR::TestRunner::connectMockGamepad):
2039         (WTR::TestRunner::disconnectMockGamepad):
2040         (WTR::TestRunner::setMockGamepadDetails):
2041         (WTR::TestRunner::setMockGamepadAxisValue):
2042         (WTR::TestRunner::setMockGamepadButtonValue):
2043         (WTR::TestRunner::removeAllSessionCredentials):
2044         (WTR::TestRunner::clearDOMCache):
2045         (WTR::TestRunner::clearDOMCaches):
2046         (WTR::TestRunner::hasDOMCache):
2047         (WTR::TestRunner::domCacheSize):
2048         (WTR::TestRunner::setAllowStorageQuotaIncrease):
2049         (WTR::TestRunner::getApplicationManifestThen):
2050         (WTR::TestRunner::injectUserScript):
2051         (WTR::TestRunner::sendDisplayConfigurationChangedMessageForTesting):
2052         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
2053         (WTR::TestRunner::addTestKeyToKeychain):
2054         (WTR::TestRunner::cleanUpKeychain):
2055         (WTR::TestRunner::keyExistsInKeychain):
2056         (WTR::TestRunner::setCanHandleHTTPSServerTrustEvaluation):
2057         (WTR::TestRunner::canDoServerTrustEvaluationInNetworkProcess):
2058         (WTR::TestRunner::serverTrustEvaluationCallbackCallsCount):
2059         (WTR::TestRunner::setShouldDismissJavaScriptAlertsAsynchronously):
2060         (WTR::TestRunner::setAdClickAttributionOverrideTimerForTesting):
2061         (WTR::TestRunner::setAdClickAttributionConversionURLForTesting):
2062         * WebKitTestRunner/TestController.cpp:
2063         (WTR::TestController::initialize):
2064         (WTR::parseStringTestHeaderValueAsRelativePath):
2065         (WTR::updateTestOptionsFromTestHeader):
2066         (WTR::TestController::runTest):
2067         (WTR::TestController::didReceiveLiveDocumentsList):
2068         (WTR::TestController::didReceiveMessageFromInjectedBundle):
2069         (WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
2070         (WTR::TestController::didFinishNavigation):
2071         (WTR::TestController::didReceiveAuthenticationChallenge):
2072         * WebKitTestRunner/TestInvocation.cpp:
2073         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2074         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2075         (WTR::TestInvocation::uiScriptDidComplete):
2076         (WTR::TestInvocation::didReceiveAllStorageAccessEntries):
2077         * WebKitTestRunner/WebNotificationProvider.cpp:
2078         (WTR::WebNotificationProvider::closeWebNotification):
2079         * WebKitTestRunner/WorkQueueManager.cpp:
2080         (WTR::ScriptItem::ScriptItem):
2081         (WTR::WorkQueueManager::queueLoad):
2082         (WTR::WorkQueueManager::queueLoadHTMLString):
2083
2084 2019-04-17  Alex Christensen  <achristensen@webkit.org>
2085
2086         Add a comment to make my test from r244139 less mysterious.
2087         https://bugs.webkit.org/show_bug.cgi?id=196744
2088
2089         As suggested by Darin Adler.
2090
2091         * TestWebKitAPI/Tests/WebKitCocoa/BundleRetainPagePlugIn.mm:
2092         (-[BundleRetainPagePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2093
2094 2019-04-17  Chris Dumez  <cdumez@apple.com>
2095
2096         Remember device orientation permission for the duration of the browsing session
2097         https://bugs.webkit.org/show_bug.cgi?id=196992
2098         <rdar://problem/49946067>
2099
2100         Reviewed by Alex Christensen.
2101
2102         Add API test coverage.
2103
2104         * TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm:
2105         (-[DeviceOrientationPermissionUIDelegate _webView:shouldAllowDeviceOrientationAndMotionAccessRequestedByFrame:decisionHandler:]):
2106         (TEST):
2107
2108 2019-04-17  Aakash Jain  <aakash_jain@apple.com>
2109
2110         [ews-app] Clicking 'submit to new ews' doesn't reload status-bubble
2111         https://bugs.webkit.org/show_bug.cgi?id=196675
2112
2113         Reviewed by Lucas Forschler.
2114
2115         * BuildSlaveSupport/ews-app/ews/views/submittoews.py:
2116         (SubmitToEWS): Added @xframe_options_exempt similar to statusbubble.py
2117
2118 2019-04-16  Wenson Hsieh  <wenson_hsieh@apple.com>
2119
2120         [iOS] [WebKit2] Add support for honoring -[UIMenuItem dontDismiss]
2121         https://bugs.webkit.org/show_bug.cgi?id=196919
2122         <rdar://problem/41630459>
2123
2124         Reviewed by Tim Horton.
2125
2126         Add iOS support for several new testing hooks. See below for more detail.
2127
2128         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2129         (WTR::UIScriptController::isDismissingMenu const):
2130
2131         Add a new script controller method to query whether the platform menu (on iOS, the callout bar) is done
2132         dismissing. We consider the menu to be dismissing in between the `-WillHide` and `-DidHide` notifications sent
2133         by UIKit when dismissing the callout bar (i.e. UIMenuController).
2134
2135         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2136         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2137         (WTR::UIScriptController::isDismissingMenu const):
2138         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2139         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2140         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2141         (WTR::InjectedBundle::didReceiveMessageToPage):
2142         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2143         (WTR::TestRunner::setAllowedMenuActions):
2144
2145         Add a new helper method to specify a list of allowed actions when bringing up the menu. On iOS, in the case of
2146         actions supported by the platform, this matches against method selector names (for instance, "SelectAll", or
2147         "Copy", or "Paste"). In the case of the custom actions installed via `installCustomMenuAction`, we instead match
2148         against the name of the custom action.
2149
2150         (WTR::TestRunner::installCustomMenuAction):
2151
2152         Add a new helper method to install a custom action for the context menu (on iOS, this is the callout bar). This
2153         takes the name of the action (which appears in a button in the callout bar), whether the action should cause
2154         the callout bar to automatically dismiss, and finally, a JavaScript callback that is invoked when the action is
2155         triggered.
2156
2157         (WTR::TestRunner::performCustomMenuAction):
2158
2159         Invoked when the custom menu action is triggered.
2160
2161         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2162         * WebKitTestRunner/TestController.cpp:
2163         (WTR::TestController::installCustomMenuAction):
2164         (WTR::TestController::setAllowedMenuActions):
2165         * WebKitTestRunner/TestController.h:
2166         * WebKitTestRunner/TestInvocation.cpp:
2167         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2168         (WTR::TestInvocation::performCustomMenuAction):
2169
2170         Add plumbing to call back into the injected bundle when performing the custom action.
2171
2172         * WebKitTestRunner/TestInvocation.h:
2173         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2174         (WTR::TestController::installCustomMenuAction):
2175         (WTR::TestController::setAllowedMenuActions):
2176         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
2177         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
2178         (-[TestRunnerWKWebView initWithFrame:configuration:]):
2179         (-[TestRunnerWKWebView becomeFirstResponder]):
2180         (-[TestRunnerWKWebView _addCustomItemToMenuControllerIfNecessary]):
2181
2182         Helper method that converts web view's current custom menu action info into a UIMenuItem, and adds it to the
2183         shared menu controller. This is also invoked when the web view becomes first responder, which matches behavior
2184         in the Mail app on iOS.
2185
2186         (-[TestRunnerWKWebView installCustomMenuAction:dismissesAutomatically:callback:]):
2187         (-[TestRunnerWKWebView setAllowedMenuActions:]):
2188         (-[TestRunnerWKWebView resetCustomMenuAction]):
2189         (-[TestRunnerWKWebView performCustomAction:]):
2190         (-[TestRunnerWKWebView canPerformAction:withSender:]):
2191         (-[TestRunnerWKWebView _willHideMenu]):
2192         (-[TestRunnerWKWebView _didHideMenu]):
2193         * WebKitTestRunner/ios/TestControllerIOS.mm:
2194         (WTR::TestController::platformResetStateToConsistentValues):
2195
2196         Reset both any custom installed actions on the shared menu controller, as well as the list of allowed actions,
2197         if specified.
2198
2199         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2200         (WTR::UIScriptController::isDismissingMenu const):
2201
2202 2019-04-16  Megan Gardner  <megan_gardner@apple.com>
2203
2204         Allow sharing from imageSheet on an image document
2205         https://bugs.webkit.org/show_bug.cgi?id=196891
2206         <rdar://problem/25377386>
2207
2208         Reviewed by Tim Horton.
2209
2210         Test to make sure that the correct imageURL is extracted from an image element.
2211
2212         * TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
2213         (TestWebKitAPI::TEST):
2214
2215 2019-04-16  Alex Christensen  <achristensen@webkit.org>
2216
2217         REGRESSION(r244162) Clearing website data from ephemeral WKWebsiteDataStore should finish instead of asserting or hanging
2218         https://bugs.webkit.org/show_bug.cgi?id=196995
2219
2220         Reviewed by Brady Eidson.
2221
2222         * TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
2223         (TEST):
2224
2225 2019-04-16  Chris Dumez  <cdumez@apple.com>
2226
2227         URL set by document.open() is not communicated to the UIProcess
2228         https://bugs.webkit.org/show_bug.cgi?id=196941
2229         <rdar://problem/49237544>
2230
2231         Reviewed by Geoff Garen.
2232
2233         Add API test coverage.
2234
2235         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2236         * TestWebKitAPI/Tests/WebKit/open-window-then-write-to-it.html: Added.
2237         * TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
2238         (-[OpenWindowThenDocumentOpenUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
2239         (TEST):
2240
2241 2019-04-16  Commit Queue  <commit-queue@webkit.org>
2242
2243         Unreviewed, rolling out r244321.
2244         https://bugs.webkit.org/show_bug.cgi?id=196968
2245
2246         Causing all WK2 Debug builds to exit early after Assertion
2247         failures. (Requested by ShawnRoberts on #webkit).
2248
2249         Reverted changeset:
2250
2251         "URL set by document.open() is not communicated to the
2252         UIProcess"
2253         https://bugs.webkit.org/show_bug.cgi?id=196941
2254         https://trac.webkit.org/changeset/244321
2255
2256 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
2257
2258         Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
2259         https://bugs.webkit.org/show_bug.cgi?id=196948
2260
2261         Reviewed by Zalan Bujtas.
2262
2263         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
2264         (TEST): Disabling the test for now to keep infrastructure happy, while the root-cause is being investigated.
2265
2266 2019-04-15  Chris Dumez  <cdumez@apple.com>
2267
2268         URL set by document.open() is not communicated to the UIProcess
2269         https://bugs.webkit.org/show_bug.cgi?id=196941
2270         <rdar://problem/49237544>
2271
2272         Reviewed by Geoffrey Garen.
2273
2274         Add API test coverage.
2275
2276         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2277         * TestWebKitAPI/Tests/WebKit/open-window-then-write-to-it.html: Added.
2278         * TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
2279         (-[OpenWindowThenDocumentOpenUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
2280         (TEST):
2281
2282 2019-04-15  Dean Johnson  <dean_johnson@apple.com>
2283
2284         Using Tools/Scripts/clean-webkit should not install requests
2285         https://bugs.webkit.org/show_bug.cgi?id=196940
2286
2287         Reviewed by Lucas Forschler.
2288
2289         * Scripts/webkitpy/common/system/autoinstall.py: Drive-by fix for no logging handlers
2290         existing, depending on the path autoinstalled is run through.
2291         * Scripts/webkitpy/port/base.py: Import webkitpy.results.upload.Upload only where it's
2292         needed.
2293         (Port.configuration_for_upload):
2294         (Port.commits_for_upload):
2295
2296 2019-04-15  Alex Christensen  <achristensen@webkit.org>
2297
2298         Add a DiagnosticLogging method taking an arbitrary dictionary of values.
2299         https://bugs.webkit.org/show_bug.cgi?id=196773
2300
2301         Reviewed by Jer Noble.
2302
2303         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewDiagnosticLogging.mm:
2304         (-[TestLoggingDelegate _webView:logDiagnosticMessage:description:valueDictionary:]):
2305         (TEST):
2306
2307 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
2308
2309         ews-build should clearly indicate flaky test failures
2310         https://bugs.webkit.org/show_bug.cgi?id=196947
2311
2312         Reviewed by Lucas Forschler.
2313
2314         * BuildSlaveSupport/ews-build/steps.py:
2315         (AnalyzeAPITestsResults.analyzeResults):
2316
2317 2019-04-15  Brent Fulgham  <bfulgham@apple.com>
2318
2319         InjectedBundle parameters often need initialization function called before unarchiving
2320         https://bugs.webkit.org/show_bug.cgi?id=189709
2321         <rdar://problem/44573653>
2322
2323         Reviewed by Ryosuke Niwa.
2324
2325         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugIn.mm:
2326         (-[WebProcessPlugIn additionalClassesForParameterCoder]): Added.
2327
2328 2019-04-12  Ryosuke Niwa  <rniwa@webkit.org>
2329
2330         HashTable::removeIf always shrinks the hash table by half even if there is nothing left
2331         https://bugs.webkit.org/show_bug.cgi?id=196681
2332
2333         Reviewed by Darin Adler.
2334
2335         Added tests.
2336
2337         * TestWebKitAPI/Tests/WTF/HashSet.cpp:
2338         (WTF_HashSet.RemoveIf):
2339         (WTF_HashSet.RemoveIfShrinkToBestSize):
2340
2341 2019-04-15  John Wilander  <wilander@apple.com>
2342
2343         Send delayed Ad Click Attribution conversion requests to the click source
2344         https://bugs.webkit.org/show_bug.cgi?id=196838
2345         <rdar://problem/47650157>
2346
2347         Reviewed by Chris Dumez and Youenn Fablet.
2348
2349         This patch adds test infrastructure to override the default behavior in
2350         WebKit::NetworkAdClickAttribution.
2351
2352         * TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
2353         (TestWebKitAPI::TEST):
2354         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2355         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2356         (WTR::TestRunner::dumpAdClickAttribution):
2357         (WTR::TestRunner::clearAdClickAttribution):
2358         (WTR::TestRunner::setAdClickAttributionOverrideTimerForTesting):
2359         (WTR::TestRunner::setAdClickAttributionConversionURLForTesting):
2360         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2361         * WebKitTestRunner/TestController.cpp:
2362         (WTR::TestController::setAdClickAttributionOverrideTimerForTesting):
2363         (WTR::TestController::setAdClickAttributionConversionURLForTesting):
2364         * WebKitTestRunner/TestController.h:
2365         * WebKitTestRunner/TestInvocation.cpp:
2366         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2367
2368 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
2369
2370         [ews-app] status-bubble should display position in queue
2371         https://bugs.webkit.org/show_bug.cgi?id=196607
2372
2373         Reviewed by Lucas Forschler.
2374
2375         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2376         (StatusBubble._build_bubble):
2377         (StatusBubble._queue_position): Method to calculate patch's position in queue.
2378
2379 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
2380
2381         [ews-build] Do not run clean build by default on EWS builders
2382         https://bugs.webkit.org/show_bug.cgi?id=196897
2383
2384         Reviewed by Lucas Forschler.
2385
2386         * BuildSlaveSupport/ews-build/steps.py:
2387         (ApplyPatch.start): Do not create .buildbot-patched file. This is a special file for Buildbot and if this
2388         file is present, during the Source checkout, Buildbot cleans the working directory completely (including removing 
2389         untracked directories like WebKitBuild).
2390         (CheckOutSource.__init__): Pass method=clean so that Buildbot clean the working directory. This does not remove
2391         untracked files/directories (like WebKitBuild).
2392
2393 2019-04-15  Per Arne Vollan  <pvollan@apple.com>
2394
2395         TestRunner::notifyDone() should be safely reentrant
2396         https://bugs.webkit.org/show_bug.cgi?id=196898
2397
2398         Reviewed by Darin Adler.
2399
2400         It is currently possible that TestRunner::notifyDone() will call itself, since
2401         notifyDone() will force a repaint, which can start executing JavaScript, which
2402         may call notifyDone() again. This can lead to test failures and flakiness.
2403         Fix this by setting the m_waitToDump flag before calling the dump() method.
2404
2405         * DumpRenderTree/mac/TestRunnerMac.mm:
2406         (TestRunner::notifyDone):
2407         (TestRunner::forceImmediateCompletion):
2408         * DumpRenderTree/win/TestRunnerWin.cpp:
2409         (TestRunner::notifyDone):
2410         (TestRunner::forceImmediateCompletion):
2411
2412 2019-04-15  Philippe Normand  <pnormand@igalia.com>
2413
2414         [GTK][WPE] Add enable-media websetting
2415         https://bugs.webkit.org/show_bug.cgi?id=196863
2416
2417         Reviewed by Michael Catanzaro.
2418
2419         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
2420         (testWebKitSettings): Add test for the enable-media web-setting.
2421
2422 2019-04-14  Wenson Hsieh  <wenson_hsieh@apple.com>
2423
2424         API test WKAttachmentTests.AddAttachmentToConnectedImageElement is a flaky failure on Mac Release builds
2425         https://bugs.webkit.org/show_bug.cgi?id=196905
2426         <rdar://problem/49886096>
2427
2428         Reviewed by Tim Horton.
2429
2430         This flaky test exercises a race condition between when attachment insertion updates are dispatched from the web
2431         process to the UI process, and when script is executed via -[WKWebView evaluateJavaScript:completionHandler:].
2432         Since attachment insertion and removal updates from the web process to the UI process are scheduled on a zero-
2433         delay timer, we end up with this sequence of events in the problematic (failure) case:
2434
2435         (a) [UI]    Run script #1 (which calls `HTMLAttachmentElement.getAttachmentIdentifier`)
2436             ...IPC from UI to web process...
2437         (b) [Web]   Evaluate script #1 in the web process, which schedules attachment updates on a zero-delay timer
2438             ...IPC from web to UI process...
2439         (c) [UI]    Invoke completion handler for script #1
2440         (d) [UI]    Run script #2 (which calls `document.querySelector('img').attachmentIdentifier`)
2441             ...IPC from UI to web process...
2442         (e) [Web]   Evaluate script #2 in the web process
2443         (f) [Web]   Zero-delay timer fires and dispatches attachment updates to the UI process
2444
2445         ...which means that script #2 will complete before the UI process has received the attachment updates sent in
2446         step (f). However, in the case where the flaky test succeeds, the zero-delay timer in (f) fires *before* script
2447         #2 is run in step (e).
2448
2449         This patch fixes the flaky test by waiting until attachment insertion updates are guaranteed to be received in
2450         the UI process by waiting on a script message posted by the web process, after attachment updates are
2451         dispatched.
2452
2453         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2454         (TestWebKitAPI::TEST):
2455
2456 2019-04-14  Aakash Jain  <aakash_jain@apple.com>
2457
2458         Disable Flaky API Test WKAttachmentTests.AddAttachmentToConnectedImageElement
2459         https://bugs.webkit.org/show_bug.cgi?id=196909
2460
2461         Reviewed by Wenson Hsieh.
2462
2463         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2464         (TestWebKitAPI::TEST):
2465
2466 2019-04-13  Tadeu Zagallo  <tzagallo@apple.com>
2467
2468         CodeCache should check that the UnlinkedCodeBlock was successfully created before caching it
2469         https://bugs.webkit.org/show_bug.cgi?id=196880
2470
2471         Reviewed by Yusuke Suzuki.
2472
2473         Add a new function for bytecode cache tests that does not forceDiskCache
2474         for the second run: runBytecodeCacheNoAssetion. This is necessary for the
2475         test added in this patch, since the code is invalid and therefore won't be
2476         cached. It should also be useful for tests that evaluate dynamically
2477         generated code.
2478
2479         * Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper.sh:
2480         * Scripts/run-jsc-stress-tests:
2481
2482 2019-04-12  Eric Carlson  <eric.carlson@apple.com>
2483
2484         Update AudioSession route sharing policy
2485         https://bugs.webkit.org/show_bug.cgi?id=196776
2486         <rdar://problem/46501611>
2487
2488         Reviewed by Jer Noble.
2489
2490         * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
2491         (TestWebKitAPI::routeSharingPolicyLongFormVideo):
2492         (TestWebKitAPI::routeSharingPolicyLongFormAudio):
2493         (TestWebKitAPI::TEST):
2494
2495 2019-04-12  Wenson Hsieh  <wenson_hsieh@apple.com>
2496
2497         [iOS] Software keyboard is shown too frequently on some websites
2498         https://bugs.webkit.org/show_bug.cgi?id=195856
2499         <rdar://problem/49191395>
2500
2501         Reviewed by Darin Adler.
2502
2503         Add support for attaching or detaching the hardware keyboard on iOS in layout tests.
2504
2505         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2506         (WTR::UIScriptController::setHardwareKeyboardAttached):
2507         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2508         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2509         (WTR::UIScriptController::setHardwareKeyboardAttached):
2510         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2511         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
2512
2513         Additionally link against GraphicsServices in WebKitTestRunner.
2514
2515         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2516         (WTR::TestController::platformResetStateToConsistentValues):
2517         (WTR::UIScriptController::setHardwareKeyboardAttached):
2518
2519 2019-04-12  Ludovico de Nittis  <ludovico.denittis@collabora.com>
2520
2521         [GTK][WPE] Fix pacman install-dependencies packages
2522         https://bugs.webkit.org/show_bug.cgi?id=196817
2523
2524         Reviewed by Žan Doberšek.
2525         
2526         python3-setuptools is called python-setuptools
2527         ruby-highline is only available on AUR
2528         libv4l-devel is incorporated in v4l-utils
2529
2530         * gtk/install-dependencies:
2531         * wpe/install-dependencies:
2532
2533 2019-04-11  Carlos Garcia Campos  <cgarcia@igalia.com>
2534
2535         [GTK] REGRESSION(r243860): Many tests failing
2536         https://bugs.webkit.org/show_bug.cgi?id=196791
2537
2538         Reviewed by Joanmarie Diggs.
2539
2540         Rework the accessibility unit test to use DBus for the communication with the server. This way we can load
2541         multiple documents and check that accessibility hierarchy is updated after a navigation.
2542
2543         * TestWebKitAPI/Tests/WebKitGtk/AccessibilityTestServer.cpp:
2544         (loadChangedCallback):
2545         * TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
2546         (AccessibilityTest::AccessibilityTest):
2547         (AccessibilityTest::~AccessibilityTest):
2548         (AccessibilityTest::loadHTMLAndWaitUntilFinished):
2549         (AccessibilityTest::findTestServerApplication):
2550         (AccessibilityTest::findDocumentWeb):
2551         (AccessibilityTest::findRootObject):
2552         (AccessibilityTest::waitUntilChildrenRemoved):
2553         (AccessibilityTest::ensureProxy):
2554         (testAtspiBasicHierarchy):
2555         (beforeAll):
2556         (afterAll):
2557
2558 2019-04-11  Aakash Jain  <aakash_jain@apple.com>
2559
2560         [ews-build] Handle bug titles with unicode characters
2561         https://bugs.webkit.org/show_bug.cgi?id=196802
2562
2563         Reviewed by Dewei Zhu.
2564
2565         * BuildSlaveSupport/ews-build/steps.py:
2566         (ValidatePatch._is_bug_closed):
2567
2568 2019-04-11  Michael Saboff  <msaboff@apple.com>
2569
2570         Improve the Inline Cache Stats code
2571         https://bugs.webkit.org/show_bug.cgi?id=196836
2572
2573         Reviewed by Saam Barati.
2574
2575         Added a new script to consolidate and arrange the output of --useICStats option.
2576
2577         This script merges the output from every group into one large table and sorts it from most common to
2578         least common.  It also counts the slow path GetById and PutById variants and then calculates the
2579         percentage of gets or puts for each unique base,property pair compared to all the gets and puts.
2580         Put together, this is useful to see what property accesses are not getting cached.
2581
2582         * Scripts/ic-stats.py: Added.
2583         (ICStats):
2584         (ICStats.__init__):
2585         (ICStats.parse):
2586         (ICStats.dumpStats):
2587         (usage):
2588
2589 2019-04-10  Alex Christensen  <achristensen@webkit.org>
2590
2591         WKNavigationResponse._downloadAttribute should be nil when no download attribute is present
2592         https://bugs.webkit.org/show_bug.cgi?id=196809
2593         <rdar://49800762>
2594
2595         Reviewed by Brady Eidson.
2596
2597         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
2598         (TEST):
2599
2600 2019-04-10  Said Abou-Hallawa  <sabouhallawa@apple.com>
2601
2602         requestAnimationFrame should execute before the next frame
2603         https://bugs.webkit.org/show_bug.cgi?id=177484
2604
2605         Reviewed by Simon Fraser.
2606
2607         Add trace points for the page RenderingUpdate.
2608
2609         * Tracing/SystemTracePoints.plist:
2610
2611 2019-04-10  Fujii Hironori  <Hironori.Fujii@sony.com>
2612
2613         [Win] Use a bundled vswhere.exe instead of downloading by update-vswhere.py
2614         https://bugs.webkit.org/show_bug.cgi?id=196760
2615
2616         Reviewed by Don Olmstead.
2617
2618         vswhere.exe has been bundled since Visual Studio 2017 version
2619         15.2. We shouldn't download vswhere.exe.
2620
2621         * Scripts/build-jsc: Do not call update-vswhere.py.
2622         * Scripts/build-webkit: Ditto.
2623         * Scripts/update-vswhere.py: Removed.
2624         * Scripts/webkitdirs.pm:
2625         (requireModulesForVSWhere): Deleted.
2626         (pickCurrentVisualStudioInstallation): Deleted.
2627         (visualStudioInstallDirVSWhere): Return the latest installed VS
2628         installation path by using the bundled vswhere.exe.
2629         (setupCygwinEnv): Removed a unused variable $visualStudioPath.
2630         (visualStudioInstallDirFallback): Removed.
2631
2632 2019-04-10  Aakash Jain  <aakash_jain@apple.com>
2633
2634         [ews-build] PrintConfiguration should display Xcode version instead of SDKVersion
2635         https://bugs.webkit.org/show_bug.cgi?id=196780
2636
2637         Reviewed by Alexey Proskuryakov.
2638
2639         * BuildSlaveSupport/ews-build/steps.py:
2640         * BuildSlaveSupport/ews-build/steps_unittest.py:
2641
2642 2019-04-10  Alex Christensen  <achristensen@webkit.org>
2643
2644         Add SPI WKNavigationResponse._downloadAttribute
2645         https://bugs.webkit.org/show_bug.cgi?id=196755
2646         <rdar://49587365>
2647
2648         Reviewed by Brady Eidson.
2649
2650         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
2651         (-[NavigationResponseTestDelegate navigationResponse]):
2652         (-[NavigationResponseTestDelegate waitForNavigationResponseCallback]):
2653         (-[NavigationResponseTestDelegate waitForNavigationFinishedCallback]):
2654         (-[NavigationResponseTestDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2655         (-[NavigationResponseTestDelegate webView:didFinishNavigation:]):
2656         (-[NavigationResponseTestDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
2657         (readRequest):
2658         (writeResponse):
2659         (TEST):
2660
2661 2019-04-10  Tim Horton  <timothy_horton@apple.com>
2662
2663         Add modern API for overriding the page's specified viewport configuration
2664         https://bugs.webkit.org/show_bug.cgi?id=167734
2665         <rdar://problem/30331795>
2666
2667         Reviewed by Simon Fraser.
2668
2669         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2670         * TestWebKitAPI/Tests/WebKitCocoa/OverrideViewportArguments.mm: Added.
2671
2672 2019-04-10  Tadeu Zagallo  <tzagallo@apple.com>
2673
2674         Add support for incremental bytecode cache updates
2675         https://bugs.webkit.org/show_bug.cgi?id=195000
2676
2677         Reviewed by Filip Pizlo.
2678
2679         Exit when the initial run to generate bytecode fails.
2680
2681         * Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper.sh:
2682
2683 2019-04-10  Alex Christensen  <achristensen@webkit.org>
2684
2685         RemoteObjectRegistry message receiver should be removed when WebPage::close is called instead of waiting until dealloc
2686         https://bugs.webkit.org/show_bug.cgi?id=196744
2687         <rdar://49415309>
2688
2689         Reviewed by Chris Dumez.
2690
2691         * TestWebKitAPI/Tests/WebKitCocoa/BundleRetainPagePlugIn.mm:
2692         (-[BundleRetainPagePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2693
2694 2019-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
2695
2696         Add a way to opt into modern compatibility mode in layout tests
2697         https://bugs.webkit.org/show_bug.cgi?id=196770
2698         <rdar://problem/49777550>
2699
2700         Reviewed by Antoine Quint.
2701
2702         Add a new test option to enable modern compatibility mode in layout tests.
2703
2704         * WebKitTestRunner/TestController.cpp:
2705         (WTR::updateTestOptionsFromTestHeader):
2706         * WebKitTestRunner/TestController.h:
2707         * WebKitTestRunner/TestOptions.h:
2708         (WTR::TestOptions::hasSameInitializationOptions const):
2709         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2710         (WTR::TestController::platformCreateWebView):
2711         (WTR::TestController::enableModernCompatibilityMode):
2712
2713 2019-04-10  Andy Estes  <aestes@apple.com>
2714
2715         Try to fix the 32-bit watchOS build.
2716
2717         * TestWebKitAPI/cocoa/TestWKWebView.mm:
2718         (-[TestWKWebView evaluateJavaScriptAndWaitForInputSessionToChange:]):
2719
2720 2019-04-10  Antoine Quint  <graouts@apple.com>
2721
2722         Enable Pointer Events on watchOS
2723         https://bugs.webkit.org/show_bug.cgi?id=196771
2724         <rdar://problem/49040909>
2725
2726         Reviewed by Dean Jackson.
2727
2728         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2729
2730 2019-04-10  Philippe Normand  <pnormand@igalia.com>
2731
2732         Unreviewed. Fix WPE accessibility tests after r244059.
2733
2734         We are failing to load the injected bundle due to undefined symbol
2735         AccessibilityUIElement::replaceTextInRange().
2736
2737         * WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp:
2738         (WTR::AccessibilityUIElement::replaceTextInRange):
2739
2740 2019-04-10  Takashi Komori  <Takashi.Komori@sony.com>
2741
2742         [WinCairo][MiniBrowser] Pull down menu "Disable JavaScript" doesn't work.
2743         https://bugs.webkit.org/show_bug.cgi?id=196727
2744
2745         Reviewed by Fujii Hironori.
2746
2747         * MiniBrowser/win/WebKitBrowserWindow.cpp:
2748         (WebKitBrowserWindow::create):
2749
2750 2019-04-09  Aakash Jain  <aakash_jain@apple.com>
2751
2752         [ews-build] Add unit tests for PrintConfiguration
2753         https://bugs.webkit.org/show_bug.cgi?id=196752
2754
2755         Reviewed by Dewei Zhu.
2756
2757         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
2758
2759 2019-04-09  Keith Rollin  <krollin@apple.com>
2760
2761         Unreviewed build maintenance -- update .xcfilelists.
2762
2763         * DumpRenderTree/DerivedSources-input.xcfilelist:
2764         * DumpRenderTree/DerivedSources-output.xcfilelist:
2765
2766 2019-04-09  Zalan Bujtas  <zalan@apple.com>
2767
2768         [AutoSizing] Avoid making text paragraphs scroll horizontally when there is a wide table
2769         https://bugs.webkit.org/show_bug.cgi?id=196743
2770         <rdar://problem/43897551>
2771
2772         Reviewed by Tim Horton.
2773
2774         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm: expected behavior change.
2775         (TEST):
2776
2777 2019-04-09  Youenn Fablet  <youenn@apple.com>
2778
2779         Close service worker database on network process suspension
2780         https://bugs.webkit.org/show_bug.cgi?id=196623
2781         <rdar://problem/48930869>
2782
2783         Reviewed by Alex Christensen.
2784
2785         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2786
2787 2019-04-09  Daniel Bates  <dabates@apple.com>
2788
2789         [iPad] Should open popover when the spacebar is pressed
2790         https://bugs.webkit.org/show_bug.cgi?id=196360
2791         <rdar://problem/49389129>
2792
2793         Reviewed by Brent Fulgham.
2794
2795         Add testing infrastructure to support waiting for a popover to be presented or dismissed.
2796
2797         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2798         (WTR::UIScriptController::isShowingPopover const): Added.
2799         (WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
2800         (WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
2801         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2802         * TestRunnerShared/UIScriptContext/UIScriptContext.h:
2803         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2804         (WTR::UIScriptController::setWillPresentPopoverCallback): Added.
2805         (WTR::UIScriptController::willPresentPopoverCallback const): Added.
2806         (WTR::UIScriptController::setDidDismissPopoverCallback): Added.
2807         (WTR::UIScriptController::didDismissPopoverCallback const): Added.
2808         (WTR::UIScriptController::isShowingPopover const): Added.
2809         (WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
2810         (WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
2811         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2812         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
2813         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
2814         (-[TestRunnerWKWebView initWithFrame:configuration:]): Update some state.
2815         (-[TestRunnerWKWebView resetInteractionCallbacks]): Ditto.
2816         (-[TestRunnerWKWebView _willPresentPopover]): Added.
2817         (-[TestRunnerWKWebView _didDismissPopover]): Added.
2818         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2819         (WTR::UIScriptController::isShowingPopover const): Added.
2820         (WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
2821         (WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
2822
2823 2019-04-09  Alex Christensen  <achristensen@webkit.org>
2824
2825         Clicking "Go Back" from a safe browsing warning from an iframe should navigate the WKWebView back to the previous page
2826         https://bugs.webkit.org/show_bug.cgi?id=196665
2827         <rdar://45115669>
2828
2829         Reviewed by Geoff Garen.
2830
2831         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
2832         (goBack):
2833         (+[SimpleLookupContext sharedLookupContext]):
2834         (-[SimpleLookupContext lookUpURL:completionHandler:]):
2835         (TEST):
2836         (+[Simple3LookupContext sharedLookupContext]): Deleted.
2837         (-[Simple3LookupContext lookUpURL:completionHandler:]): Deleted.
2838
2839 2019-04-09  John Wilander  <wilander@apple.com>
2840
2841         Pick up Ad Click Attribution conversions in NetworkResourceLoader::willSendRedirectedRequest()
2842         https://bugs.webkit.org/show_bug.cgi?id=196558
2843         <rdar://problem/47650245>
2844
2845         Reviewed by Youenn Fablet.
2846
2847         * TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
2848         (TestWebKitAPI::TEST):
2849             Added tests of WebCore::AdClickAttribution::parseConversionRequest().
2850
2851 2019-04-09  Don Olmstead  <don.olmstead@sony.com>
2852
2853         [CMake] Apple builds should use ICU_INCLUDE_DIRS
2854         https://bugs.webkit.org/show_bug.cgi?id=196720
2855
2856         Reviewed by Konstantin Tokarev.
2857
2858         * TestWebKitAPI/PlatformMac.cmake:
2859
2860 2019-04-09  Jonathan Bedard  <jbedard@apple.com>
2861
2862         iOS 12 Simulator Release WK2 frequently timing out while running layout tests
2863         https://bugs.webkit.org/show_bug.cgi?id=196694
2864         <rdar://problem/48388734>
2865
2866         Rubber-stamped by Aakash Jain.
2867
2868         * Scripts/webkitpy/port/image_diff.py:
2869         (ImageDiffer.diff_image): If the ImageDiff process has data, kill it before running again.
2870         * Scripts/webkitpy/port/server_process.py:
2871         (ServerProcess.has_available_stdout): Check if stdout has data in it.
2872         (ServerProcess._wait_for_data_and_update_buffers_using_select):
2873         (ServerProcess._wait_for_data_and_update_buffers_using_win32_apis):
2874         * Scripts/webkitpy/port/server_process_mock.py:
2875         (MockServerProcess.has_available_stdout):
2876         * Scripts/webkitpy/port/server_process_unittest.py:
2877         (TestServerProcess.serial_test_basic):
2878
2879 2019-04-09  Jer Noble  <jer.noble@apple.com>
2880
2881         Test for: 196095 Inband Text Track cues interspersed with Data cues can display out of order.
2882         https://bugs.webkit.org/show_bug.cgi?id=196097
2883
2884         Reviewed by Eric Carlson.
2885
2886         Drive-by bug fix: allow tests to play audio without a user gesture by default.
2887
2888         * DumpRenderTree/mac/DumpRenderTree.mm:
2889         (resetWebPreferencesToConsistentValues):
2890         * WebKitTestRunner/TestController.cpp:
2891         (WTR::TestController::resetPreferencesToConsistentValues):
2892
2893 2019-04-09  Pablo Saavedra  <psaavedra@igalia.com>
2894
2895         [JSCOnly] Add an i386 JSCOnly EWS that runs tests
2896         https://bugs.webkit.org/show_bug.cgi?id=196690
2897
2898         Reviewed by Michael Catanzaro.
2899
2900         * QueueStatusServer/config/queues.py:
2901         * Scripts/webkitpy/common/config/ews.json:
2902         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
2903         (test_ews_name):
2904
2905 2019-04-09  Chris Dumez  <cdumez@apple.com>
2906
2907         Loads using loadHTMLString() cause flashing when process-swapping
2908         https://bugs.webkit.org/show_bug.cgi?id=196714
2909         <rdar://problem/49637354>
2910
2911         Reviewed by Antti Koivisto.
2912
2913         Add API test coverage.
2914
2915         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2916
2917 2019-04-09  Carlos Garcia Campos  <cgarcia@igalia.com>
2918
2919         Unreviewed. Fix ATK accessibility tests after r244059.
2920
2921         We are failing to load the injected bundle due to undefined symbol
2922         AccessibilityUIElement::replaceTextInRange().
2923
2924         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2925         (WTR::AccessibilityUIElement::replaceTextInRange):
2926
2927 2019-04-08  Fujii Hironori  <Hironori.Fujii@sony.com>
2928
2929         AX: Support API: accessibilityReplaceRange:withText
2930         https://bugs.webkit.org/show_bug.cgi?id=196636
2931
2932         Unreviewed build fix for Windows port.
2933
2934         * WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp:
2935         (WTR::AccessibilityUIElement::replaceTextInRange): Added.
2936
2937 2019-04-08  Don Olmstead  <don.olmstead@sony.com>
2938
2939         [CMake][WinCairo] Separate copied headers into different directories
2940         https://bugs.webkit.org/show_bug.cgi?id=196655
2941
2942         Reviewed by Michael Catanzaro.
2943
2944         * DumpRenderTree/CMakeLists.txt:
2945         * MiniBrowser/win/CMakeLists.txt:
2946         * TestWebKitAPI/CMakeLists.txt:
2947         * TestWebKitAPI/PlatformWin.cmake:
2948
2949 2019-04-08  Jonathan Bedard  <jbedard@apple.com>
2950
2951         Log stack-trace for run-webkit-tests when interrupted
2952         https://bugs.webkit.org/show_bug.cgi?id=176393
2953         <rdar://problem/34262310>
2954
2955         Reviewed by Lucas Forschler.
2956
2957         * Scripts/webkitpy/common/interrupt_debugging.py: Added.
2958         (log_stack_trace): Given a Python frame object, log a stack trace to the provided file.
2959         (StackTraceFileContext): Context which allows stack-traces to be printed to stderr or to a file. 
2960         (log_stack_trace_on_term): Attach a listener to SIGTERM so that a stack-trace can be logged when a program is terminated.
2961         (log_stack_trace_on_ctrl_c): Attach a listener to SIGINT so that a stack-trace can be logged when a program is CTRL+Ced. 
2962         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2963         (main): Set handlers to log stack trace on interruption.
2964
2965 2019-04-08  Fujii Hironori  <Hironori.Fujii@sony.com>
2966
2967         AX: Support API: accessibilityReplaceRange:withText
2968         https://bugs.webkit.org/show_bug.cgi?id=196636
2969
2970         Unreviewed build fix for Windows port.
2971
2972         * DumpRenderTree/AccessibilityUIElement.cpp:
2973         (AccessibilityUIElement::replaceTextInRange): Changed the return value type from void to bool.
2974
2975 2019-04-08  Aakash Jain  <aakash_jain@apple.com>
2976
2977         [ews-build] Scripts using Buildbot API have CORS error
2978         https://bugs.webkit.org/show_bug.cgi?id=196709
2979
2980         Reviewed by Alexey Proskuryakov.
2981
2982         * BuildSlaveSupport/ews-build/master.cfg: Set allowed_origins appropriately.
2983
2984 2019-04-08  Chris Fleizach  <cfleizach@apple.com>
2985
2986         AX: Support API: accessibilityReplaceRange:withText
2987         https://bugs.webkit.org/show_bug.cgi?id=196636
2988
2989         Reviewed by Daniel Bates.
2990
2991         * DumpRenderTree/AccessibilityUIElement.cpp:
2992         (replaceTextInRangeCallback):
2993         (AccessibilityUIElement::replaceTextInRange):
2994         (AccessibilityUIElement::getJSClass):
2995         * DumpRenderTree/AccessibilityUIElement.h:
2996         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
2997         (AccessibilityUIElement::replaceTextInRange):
2998         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
2999         (AccessibilityUIElement::replaceTextInRange):
3000         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
3001         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
3002         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
3003         (WTR::AccessibilityUIElement::replaceTextInRange):
3004         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
3005         (WTR::AccessibilityUIElement::replaceTextInRange):
3006
3007 2019-04-08  Wenson Hsieh  <wenson_hsieh@apple.com>
3008
3009         [iOS] Do not allow starting selection drags when selection views are not visible
3010         https://bugs.webkit.org/show_bug.cgi?id=196686
3011         <rdar://problem/49399192>
3012
3013         Reviewed by Tim Horton.
3014
3015         Adjust some existing API tests to make the web view become first responder before trying to begin dragging, and
3016         also add some new API tests to cover scenarios where the web view is not first responder.
3017
3018         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
3019         (TestWebKitAPI::TEST):
3020         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
3021
3022         Add a switch to optionally make the web view first responder when starting the simulated drag.
3023
3024         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
3025         (-[DragAndDropSimulator initWithWebView:]):
3026         (-[DragAndDropSimulator runFrom:to:additionalItemRequestLocations:]):
3027
3028 2019-04-08  Justin Fan  <justin_fan@apple.com>
3029
3030         [Web GPU] Fix Web GPU experimental feature on iOS
3031         https://bugs.webkit.org/show_bug.cgi?id=196632
3032
3033         Reviewed by Myles C. Maxfield.
3034
3035         Properly make Web GPU available on iOS 11+.
3036
3037         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3038
3039 2019-04-08  Aakash Jain  <aakash_jain@apple.com>
3040
3041         [ews-build] Do not upload archive when Compile Fails
3042         https://bugs.webkit.org/show_bug.cgi?id=196674
3043
3044         Reviewed by Alexey Proskuryakov.
3045
3046         * BuildSlaveSupport/ews-build/factories.py:
3047         (BuildFactory.__init__): Remove steps which require dynamic decision about whether to run or not.
3048         * BuildSlaveSupport/ews-build/steps.py:
3049         (CompileWebKit.evaluateCommand): Dynamically decide which steps to run based on compile status.
3050         (CompileWebKitToT.evaluateCommand): Explicitly override Compile.evaluateCommand so that it 
3051         doesn't inherit CompileWebKit.evaluateCommand which dynamically adds more steps.
3052
3053 2019-04-08  Guillaume Emont  <guijemont@igalia.com>
3054
3055         Enable DFG on MIPS
3056         https://bugs.webkit.org/show_bug.cgi?id=196689
3057
3058         Reviewed by Žan Doberšek.
3059
3060         Since the bytecode change, we enabled the baseline JIT on mips in
3061         r240432, but DFG is still missing. With this change, all tests are
3062         passing on a ci20 board.
3063
3064         * Scripts/run-jsc-stress-tests: Enable DFG tests on MIPS.
3065
3066 2019-04-08  Philippe Normand  <pnormand@igalia.com>
3067
3068         [Flatpak] Second run update-webkitwpe-flatpak fails
3069         https://bugs.webkit.org/show_bug.cgi?id=192702
3070
3071         Reviewed by Carlos Garcia Campos.
3072
3073         * flatpak/flatpakutils.py:
3074         (FlatpakObject.flatpak): Fix typo.
3075         (FlatpakPackage.install): When installing, also update to the configured remote commit.
3076         * flatpak/org.webkit.WebKit.yaml: Update GNOME 3.28 SDK/runtime hashes.
3077
3078 2019-04-05  Sergio Villar Senin  <svillar@igalia.com>
3079
3080         [GTK][WPE] outlook.live.com displays old-fashioned UI
3081         https://bugs.webkit.org/show_bug.cgi?id=196642
3082
3083         Reviewed by Carlos Garcia Campos.
3084
3085         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
3086         (TestWebKitAPI::TEST): New Mac platform quirk test.
3087
3088 2019-04-07  Commit Queue  <commit-queue@webkit.org>
3089
3090         Unreviewed, rolling out r243956.
3091         https://bugs.webkit.org/show_bug.cgi?id=196688
3092
3093         Broke API Test SafeBrowsing.WKWebViewGoBackIFrame (Requested
3094         by aakashjain on #webkit).
3095
3096         Reverted changeset:
3097
3098         "Clicking "Go Back" from a safe browsing warning from an
3099         iframe should navigate the WKWebView back to the previous
3100         page"
3101         https://bugs.webkit.org/show_bug.cgi?id=196665
3102         https://trac.webkit.org/changeset/243956
3103
3104 2019-04-06  Ryosuke Niwa  <rniwa@webkit.org>
3105
3106         Added tests for WeakHashSet::computesEmpty and WeakHashSet::computeSize
3107         https://bugs.webkit.org/show_bug.cgi?id=196669
3108
3109         Reviewed by Geoffrey Garen.
3110
3111         Added three new unit tests for WeakHashSet.
3112
3113         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
3114         (WTF_WeakPtr.WeakHashSetConstObjects):
3115         (WTF_WeakPtr.WeakHashSetComputesEmpty):
3116         (WTF_WeakPtr.WeakHashSetComputeSize):
3117
3118 2019-04-06  Wenson Hsieh  <wenson_hsieh@apple.com>
3119
3120         Hide next and previous form control buttons when WKWebView is editable
3121         https://bugs.webkit.org/show_bug.cgi?id=196672
3122         <rdar://problem/35625321>
3123
3124         Reviewed by Tim Horton.
3125
3126         Add a new API test.
3127
3128         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
3129         (-[TestWKWebView lastTrailingBarButtonGroup]):
3130         (TestWebKitAPI::TEST):
3131         * TestWebKitAPI/ios/UIKitSPI.h:
3132
3133 2019-04-05  Yongjun Zhang  <yongjun_zhang@apple.com>
3134
3135         We should pass minimumEffectiveDeviceWidth to web process on new page creation.
3136         https://bugs.webkit.org/show_bug.cgi?id=196077
3137         <rdar://problem/49108202>
3138
3139         Reviewed by Chris Dumez.
3140
3141         Add an API test to verify the minimumEffectDeviceWidth is passed to web content process
3142         on new web view.
3143
3144         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3145
3146 2019-04-05  Saam Barati  <sbarati@apple.com>
3147
3148         Make compare-results understand MotionMark
3149         https://bugs.webkit.org/show_bug.cgi?id=196666
3150
3151         Reviewed by Yusuke Suzuki.
3152
3153         * Scripts/compare-results:
3154         (PLT5Results):
3155         (detectMotionMark):
3156         (detectMotionMark1_1):
3157         (motionMarkResults):
3158         (motionMark1_1Results):
3159         (detectBenchmark):
3160         (biggerIsBetter):
3161         (main):
3162
3163 2019-04-05  Alex Christensen  <achristensen@webkit.org>
3164
3165         Clicking "Go Back" from a safe browsing warning from an iframe should navigate the WKWebView back to the previous page
3166         https://bugs.webkit.org/show_bug.cgi?id=196665
3167         <rdar://45115669>
3168
3169         Reviewed by Geoff Garen.
3170
3171         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
3172         (goBack):
3173         (+[SimpleLookupContext sharedLookupContext]):
3174         (-[SimpleLookupContext lookUpURL:completionHandler:]):
3175         (TEST):
3176         (+[Simple3LookupContext sharedLookupContext]): Deleted.
3177         (-[Simple3LookupContext lookUpURL:completionHandler:]): Deleted.
3178
3179 2019-04-05  Aakash Jain  <aakash_jain@apple.com>
3180
3181         [ews-build] Add configuration and architecture for windows builders
3182         https://bugs.webkit.org/show_bug.cgi?id=196660
3183
3184         Reviewed by Lucas Forschler.
3185
3186         * BuildSlaveSupport/ews-build/config.json:
3187
3188 2019-04-05  Jonathan Bedard  <jbedard@apple.com>
3189
3190         webkitpy: Don't run subsequent rounds if interrupted
3191         https://bugs.webkit.org/show_bug.cgi?id=196646
3192
3193         Reviewed by Aakash Jain.
3194
3195         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3196         (Manager.run): Bail out if interrupted.
3197
3198 2019-04-05  Sihui Liu  <sihui_liu@apple.com>
3199
3200         Test sessionStorage in PSON private browsing mode
3201         https://bugs.webkit.org/show_bug.cgi?id=196561
3202
3203         Reviewed by Alex Christensen.
3204
3205         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3206
3207 2019-04-05  Commit Queue  <commit-queue@webkit.org>
3208
3209         Unreviewed, rolling out r243833.
3210         https://bugs.webkit.org/show_bug.cgi?id=196645
3211
3212         This change breaks build of WPE and GTK ports (Requested by
3213         annulen on #webkit).
3214
3215         Reverted changeset:
3216
3217         "[CMake][WTF] Mirror XCode header directories"
3218         https://bugs.webkit.org/show_bug.cgi?id=191662
3219         https://trac.webkit.org/changeset/243833
3220
3221 2019-04-04  Simon Fraser  <simon.fraser@apple.com>
3222
3223         Simple iframe scrolling test fails to get a composited scrolling frame in WebKitTestRunnerApp
3224         https://bugs.webkit.org/show_bug.cgi?id=196635
3225
3226         Reviewed by Antti Koivisto.
3227         
3228         InjectedBundle::beginTesting() calling WKBundleSetAsyncFrameScrollingEnabled() makes it impossible
3229         for a test to enable async frame scrolling via:
3230             <!-- webkit-test-runner [ internal:AsyncFrameScrollingEnabled=true ] -->
3231         so remove it and have TestController::resetPreferencesToConsistentValues() set the default value.
3232         
3233         Test: scrollingcoordinator/ios/programmatic-frame-scroll.html
3234
3235         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3236         (WTR::InjectedBundle::beginTesting):
3237         * WebKitTestRunner/TestController.cpp:
3238         (WTR::TestController::resetPreferencesToConsistentValues):
3239
3240 2019-04-04  Alexey Proskuryakov  <ap@apple.com>
3241
3242         Use a correct LC_RPATH when building with ASan
3243         https://bugs.webkit.org/show_bug.cgi?id=196576
3244
3245         Reviewed by David Kilzer.
3246
3247         * asan/asan.xcconfig: As a temporary hack, just force LC_RPATH on all binaries,
3248         so that ../Frameworks is checked. This is simpler and more reliable than updating
3249         each SPC service xcconfig.
3250
3251 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
3252
3253         Disable Flaky API Test TestWebKitAPI.WebKit.FocusTextInputContext
3254         https://bugs.webkit.org/show_bug.cgi?id=196629
3255
3256         Reviewed by Lucas Forschler.
3257
3258         * TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
3259
3260 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
3261
3262         [ews-app] while waiting in queue status-bubble for testers queues should display build information from builder queue
3263         https://bugs.webkit.org/show_bug.cgi?id=196618
3264
3265         Reviewed by Lucas Forschler.
3266
3267         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3268         (StatusBubble): Added QUEUE_TRIGGERS.
3269         (StatusBubble._build_bubble): Get the build from builder if tester has not started the build yet.
3270         (StatusBubble._get_parent_queue): Get the name of the parent (builder) queue.
3271         (StatusBubble.get_latest_build_for_queue): If the queue doesn't have any build yet, return build information from
3272         its parent(builder).
3273
3274 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
3275
3276         [ews-app] Status-bubble steps are sometimes displayed in reverse order
3277         https://bugs.webkit.org/show_bug.cgi?id=196625
3278
3279         Reviewed by Lucas Forschler.
3280
3281         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3282         (StatusBubble._steps_messages): Explicitly specify order_by('uid').
3283
3284 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
3285
3286         Disable Flaky API Test TestWebKitAPI.KeyboardInputTests.KeyboardTypeForInput
3287         https://bugs.webkit.org/show_bug.cgi?id=196630
3288
3289         Reviewed by Wenson Hsieh.
3290
3291         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
3292
3293 2019-04-04  Youenn Fablet  <youenn@apple.com>
3294
3295         Pass storage quota parameters from UIProcess to NetworkProcess as part of WebsiteDataStore parameters
3296         https://bugs.webkit.org/show_bug.cgi?id=196543
3297
3298         Reviewed by Alex Christensen.
3299
3300         * WebKitTestRunner/TestController.cpp:
3301         (WTR::TestController::generatePageConfiguration):
3302
3303 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
3304
3305         [ews-app] Status bubble should not display skipped buildbot steps
3306         https://bugs.webkit.org/show_bug.cgi?id=196584
3307
3308         Reviewed by Lucas Forschler.
3309
3310         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3311
3312 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
3313
3314         [ews-app] configure localhost as BUILDBOT_SERVER_HOST in testing mode
3315         https://bugs.webkit.org/show_bug.cgi?id=196620
3316
3317         Reviewed by Lucas Forschler.
3318
3319         * BuildSlaveSupport/ews-app/ews/config.py:
3320
3321 2019-04-04  Per Arne Vollan  <pvollan@apple.com>
3322
3323         [Win] DumpRenderTreeWatchDog.py is not checked into source
3324         https://bugs.webkit.org/show_bug.cgi?id=196567
3325         <rdar://problem/49525901>
3326
3327         Reviewed by Lucas Forschler.
3328
3329         This script is used on Win EWS bots to terminate hanging DRT processes.
3330
3331         * EWSTools/dumprendertreewatchdog.py: Added.
3332
3333 2019-04-04  Chris Dumez  <cdumez@apple.com>
3334
3335         Unreviewed, roll out r243858 which made tests time out.
3336
3337         Disable new API tests on Windows instead.
3338
3339         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
3340         (TestWebKitAPI::TEST):
3341
3342 2019-04-03  Carlos Garcia Campos  <cgarcia@igalia.com>
3343
3344         [ATK] Cleanup WebPageAccessibilityObjectAtk
3345         https://bugs.webkit.org/show_bug.cgi?id=196537
3346
3347         Reviewed by Michael Catanzaro.
3348
3349         Also consider files under atk directories as exceptions for GObject conventions.
3350
3351         * Scripts/webkitpy/style/checkers/cpp.py:
3352         (check_identifier_name_in_declaration):
3353
3354 2019-04-03  Fujii Hironori  <Hironori.Fujii@sony.com>
3355
3356         The page's focusedFrame / frameSetLargestFrame do not get cleared on process swap or crash
3357         https://bugs.webkit.org/show_bug.cgi?id=196588
3358         <rdar://problem/49365787>
3359
3360         Unreviewed build fix for Windows port.
3361
3362         error C3861: 'kill': identifier not found
3363
3364         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
3365         (TestWebKitAPI::TEST): Replaced kill with WKPageTerminate.
3366
3367 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
3368
3369         [ews-build] Cancel build and similar operations should have authentication
3370         https://bugs.webkit.org/show_bug.cgi?id=196520
3371
3372         Reviewed by Dewei Zhu.
3373
3374         * BuildSlaveSupport/ews-build/master.cfg: Configure authentication using admin's username and password from
3375         environment variables.
3376
3377 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
3378
3379         [ews-build] Do not trigger queues which are not in production yet
3380         https://bugs.webkit.org/show_bug.cgi?id=196581
3381
3382         Reviewed by Dewei Zhu.
3383
3384         * BuildSlaveSupport/ews-build/config.json:
3385
3386 2019-04-03  Chris Dumez  <cdumez@apple.com>
3387
3388         Unreviewed, fix typo in the name of API test added in r243848.
3389
3390         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
3391         (TestWebKitAPI::TEST):
3392
3393 2019-04-03  Chris Dumez  <cdumez@apple.com>
3394
3395         The page's focusedFrame / frameSetLargestFrame do not get cleared on process swap or crash
3396         https://bugs.webkit.org/show_bug.cgi?id=196588
3397         <rdar://problem/49365787>
3398
3399         Reviewed by Ryosuke Niwa.
3400
3401         Add API test coverage.
3402
3403         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
3404         (TestWebKitAPI::nullJavaScriptCallback):
3405         (TestWebKitAPI::didCrashCheckFrames):
3406         (TestWebKitAPI::TEST):
3407
3408 2019-04-03  Jonathan Bedard  <jbedard@apple.com>
3409
3410         run-webkit-tests: Upload test results (new results database)
3411         https://bugs.webkit.org/show_bug.cgi?id=196577
3412         <rdar://problem/34841155>
3413
3414         Reviewed by Lucas Forschler.
3415
3416         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3417         (Manager.run): Upload results after each device shard, since the configuration will be
3418         different for each device.
3419         (Manager._results_to_upload_json_trie): Convert a TestRunResults object to a trie to be
3420         uploaded to a results database.
3421         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3422         (parse_args): Add new 'Upload Options' and prepare 'Results JSON Options' for deprecation.
3423
3424 2019-04-03  Myles C. Maxfield  <mmaxfield@apple.com>
3425
3426         -apple-trailing-word is needed for browser detection
3427         https://bugs.webkit.org/show_bug.cgi?id=196575
3428
3429         Unreviewed.
3430
3431         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3432
3433 2019-04-03  Don Olmstead  <don.olmstead@sony.com>
3434
3435         [CMake][WTF] Mirror XCode header directories
3436         https://bugs.webkit.org/show_bug.cgi?id=191662
3437
3438         Reviewed by Konstantin Tokarev.
3439
3440         Use WTFFramework as a dependency and include frameworks/WTF.cmake for AppleWin internal
3441         builds.
3442
3443         * CMakeLists.txt:
3444         * DumpRenderTree/CMakeLists.txt:
3445         * DumpRenderTree/PlatformWin.cmake:
3446         * MiniBrowser/win/CMakeLists.txt:
3447         * TestWebKitAPI/CMakeLists.txt:
3448         * TestWebKitAPI/PlatformWin.cmake:
3449         * WebKitTestRunner/PlatformGTK.cmake:
3450         * WebKitTestRunner/PlatformWin.cmake:
3451
3452 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
3453
3454         [ews-app] Status bubble should not display certain infrastructure status messages
3455         https://bugs.webkit.org/show_bug.cgi?id=196550
3456
3457         Reviewed by Lucas Forschler.
3458
3459         Do not display the steps which are un-needed for end-user. This information is still avaiable
3460         if the user click on the bubble and look at the Buildbot build.
3461         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3462         (StatusBubble._steps_messages):
3463         (StatusBubble._should_display_step): Method to decide whether to display the step or not.
3464
3465 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
3466
3467         [ews-build] Use https for sending data to ews-app
3468         https://bugs.webkit.org/show_bug.cgi?id=196492
3469
3470         Reviewed by Lucas Forschler.
3471
3472         * BuildSlaveSupport/ews-build/events.py:
3473
3474 2019-04-03  Myles C. Maxfield  <mmaxfield@apple.com>
3475
3476         Remove support for -apple-trailing-word
3477         https://bugs.webkit.org/show_bug.cgi?id=196525
3478
3479         Reviewed by Zalan Bujtas.
3480
3481         This CSS property is nonstandard and not used.
3482
3483         * Scripts/webkitperl/FeatureList.pm:
3484         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3485
3486 2019-04-03  Youenn Fablet  <youenn@apple.com>
3487
3488         Add a test for DOMCache on multiple browsing in case of private browsing
3489         https://bugs.webkit.org/show_bug.cgi?id=196524
3490
3491         Reviewed by Alex Christensen.
3492
3493         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
3494         (-[SWMessageHandlerForCacheStorage userContentController:didReceiveScriptMessage:]):
3495
3496 2019-04-03  Jonathan Bedard  <jbedard@apple.com>
3497
3498         [ews] Clean out ~/Library/Logs/CoreSimulator/ on reboot
3499         https://bugs.webkit.org/show_bug.cgi?id=196540
3500
3501         Reviewed by Aakash Jain.
3502
3503         * EWSTools/start-queue-mac.sh: Remove CoreSimulator logs.
3504
3505 2019-04-03  Wenson Hsieh  <wenson_hsieh@apple.com>
3506
3507         Add plumbing for a compatibility mode preference in WebKit
3508         https://bugs.webkit.org/show_bug.cgi?id=196005
3509
3510         Reviewed by Tim Horton.
3511
3512         Add new API tests.
3513
3514         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3515         * TestWebKitAPI/ios/PreferredCompatibilityMode.mm: Added.
3516
3517 2019-04-03  Claudio Saavedra  <csaavedra@igalia.com>
3518
3519         [WPE][GTK] Update libsrtp dependency package for Debian
3520         https://bugs.webkit.org/show_bug.cgi?id=196528
3521
3522         Reviewed by Frédéric Wang.
3523
3524         * gtk/install-dependencies:
3525         * wpe/install-dependencies:
3526
3527 2019-04-02  Fujii Hironori  <Hironori.Fujii@sony.com>
3528
3529         [WK2] Add support for Window's beforeprint / afterprint events
3530         https://bugs.webkit.org/show_bug.cgi?id=196478
3531         <rdar://problem/49535124>
3532
3533         Unreviewed build fix for MSVC.
3534
3535         > WebKitTestRunner\TestController.cpp(267): error C2397: conversion from 'double' to 'float' requires a narrowing conversion
3536
3537         And, there is a style guideline. <https://webkit.org/code-style-guidelines/#floating-point-literals>
3538
3539         * WebKitTestRunner/TestController.cpp:
3540         (WTR::printFrame): Use int and float literals.
3541
3542 2019-04-02  Aakash Jain  <aakash_jain@apple.com>
3543
3544         [ews-build] Reassign bots to queues
3545
3546         * BuildSlaveSupport/ews-build/config.json: Reassigned ews150 and ews152.
3547
3548 2019-04-02  Chris Dumez  <cdumez@apple.com>
3549
3550         [WK2] Add support for Window's beforeprint / afterprint events
3551         https://bugs.webkit.org/show_bug.cgi?id=196478
3552
3553         Reviewed by Alex Christensen.
3554
3555         Add minimal implementation for printFrame in WebKitTestRunner.
3556
3557         * WebKitTestRunner/TestController.cpp:
3558         (WTR::printFrame):
3559         (WTR::TestController::createOtherPage):
3560         (WTR::TestController::createWebViewWithOptions):
3561
3562 2019-04-02  Aakash Jain  <aakash_jain@apple.com>
3563
3564         [ews-app] Status bubble hover over message should clearly indicate that build is in-progress
3565         https://bugs.webkit.org/show_bug.cgi?id=196491
3566
3567         Reviewed by Lucas Forschler.
3568
3569         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3570
3571 2019-04-02  Aakash Jain  <aakash_jain@apple.com>
3572
3573         [ews-build] Configure buildbot try credentials in environment variables
3574         https://bugs.webkit.org/show_bug.cgi?id=196501
3575
3576         Reviewed by Lucas Forschler.
3577
3578         * BuildSlaveSupport/ews-build/loadConfig.py: Read credentials from environment variables.
3579         * BuildSlaveSupport/ews-app/ews/common/buildbot.py: Rename BUILDBOT_PB_USERNAME to BUILDBOT_TRY_USERNAME.
3580         * BuildSlaveSupport/ews-app/ews/config.py: Ditto.
3581
3582 2019-04-02  Wenson Hsieh  <wenson_hsieh@apple.com>
3583
3584         REGRESSION (r243726): Crash at unrecognized selector: -[WKWebpagePreferences webpagePreferences]
3585         https://bugs.webkit.org/show_bug.cgi?id=196496
3586         <rdar://problem/49521634>
3587
3588         Reviewed by Chris Dumez.
3589
3590         Add new API tests (see WebKit ChangeLog for more detail).
3591
3592         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
3593         (-[WebsitePoliciesNavigationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
3594         (TEST):
3595
3596 2019-04-02  David Kilzer  <ddkilzer@apple.com>
3597
3598         Rename CLANG_ADDRESS_SANITIZER Xcode variable to ENABLE_ADDRESS_SANITIZER
3599         <https://webkit.org/b/196499>
3600
3601         Reviewed by Alexey Proskuryakov.
3602
3603         * asan/asan.xcconfig: Change CLANG_ADDRESS_SANITIZER to
3604         ENABLE_ADDRESS_SANITIZER.
3605
3606 2019-04-02  Fujii Hironori  <Hironori.Fujii@sony.com>
3607
3608         [CMake] WEBKIT_MAKE_FORWARDING_HEADERS shouldn't use POST_BUILD to copy generated headers
3609         https://bugs.webkit.org/show_bug.cgi?id=182757
3610
3611         Reviewed by Don Olmstead.
3612
3613         * TestWebKitAPI/PlatformGTK.cmake: Removed the workaround of using an intermediate target.
3614         * TestWebKitAPI/PlatformWPE.cmake: Ditto.
3615
3616 2019-04-01  Jonathan Bedard  <jbedard@apple.com>
3617
3618         run-api-tests: Upload test results
3619         https://bugs.webkit.org/show_bug.cgi?id=196323
3620         <rdar://problem/49356714>
3621
3622         Reviewed by Lucas Forschler.
3623
3624         * Scripts/webkitpy/api_tests/manager.py:
3625         (Manager):
3626         (Manager.run): Upload results to a results database.
3627         * Scripts/webkitpy/api_tests/run_api_tests.py:
3628         (parse_args): Add upload arguments.
3629         * Scripts/webkitpy/port/base.py:
3630         (Port):
3631         (Port.configuration_for_upload): Creates a configuration dictionary for uploading results.
3632         (Port.commits_for_upload): Create a list of commits from the WebKit repository tests are run from along
3633         with commits from any other associated repositories.
3634         * Scripts/webkitpy/port/device.py:
3635         (Device):
3636         (Device.build_version): Access build_versoin of underlying platform device.
3637         * Scripts/webkitpy/port/ios_simulator_unittest.py:
3638         (IOSSimulatorTest):
3639         (IOSSimulatorTest.test_configuration_for_upload):
3640         * Scripts/webkitpy/port/device_port.py:
3641         (DevicePort):
3642         (DevicePort.configuration_for_upload): Devices are unique because their configuration is not
3643         the same as the machine uploading results.
3644         * Scripts/webkitpy/port/mac.py:
3645         (MacPort):
3646         (MacPort.configuration_for_upload): Define SDK in upload configuration for Mac.
3647         * Scripts/webkitpy/port/mac_unittest.py:
3648         (MacTest):
3649         (MacTest.test_configuration_for_upload):
3650         * Scripts/webkitpy/xcode/simulated_device.py:
3651         (SimulatedDeviceManager._create_device_with_runtime):
3652         (SimulatedDevice.__init__): Create simulated device with a build_version.
3653         * Scripts/webkitpy/xcode/simulated_device_unittest.py:
3654         (test_existing_simulator):
3655
3656 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
3657
3658         Remove extra newline characters (Follow-up fix to r243707)
3659
3660         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3661
3662 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
3663
3664         [ews-app] Use API_KEY to accept results data
3665         https://bugs.webkit.org/show_bug.cgi?id=196461
3666
3667         Reviewed by Dewei Zhu.
3668
3669         * BuildSlaveSupport/ews-app/ews/views/results.py:
3670         (Results.post): Validate EWS_API_KEY before accepting any data.
3671         * BuildSlaveSupport/ews-build/events.py:
3672         (Events.sendData): Send EWS_API_KEY if available along with event data.
3673
3674 2019-04-01  Wenson Hsieh  <wenson_hsieh@apple.com>
3675
3676         Unable to copy and paste a PDF from Notes into Mail compose body
3677         https://bugs.webkit.org/show_bug.cgi?id=196442
3678         <rdar://problem/48573098>
3679
3680         Reviewed by Tim Horton.
3681
3682         Add new API tests to exercise pasting CNContact and MKMapItem-backed item providers. Additionally, adjust an
3683         existing test that pastes a PDF file as an attachment to not require UIPreferredPresentationStyleAttachment
3684         to be specified on the item providers.
3685
3686         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3687         (TestWebKitAPI::mapItemForTesting):
3688         (TestWebKitAPI::contactItemForTesting):
3689
3690 2019-04-01  Tim Horton  <timothy_horton@apple.com>
3691
3692         Make UIWKDocumentContext rects per-character instead of per-word
3693         https://bugs.webkit.org/show_bug.cgi?id=196459
3694
3695         Reviewed by Wenson Hsieh.
3696
3697         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
3698         (TEST):
3699         Adjust test results due to switching to per-character rects.
3700
3701 2019-04-01  Chris Dumez  <cdumez@apple.com>
3702
3703         UIProcess crash when a prewarmed process is terminated
3704         https://bugs.webkit.org/show_bug.cgi?id=196451
3705         <rdar://problem/49245471>
3706
3707         Reviewed by Geoffrey Garen.
3708
3709         Add API test coverage.
3710
3711         * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
3712         (TEST):
3713
3714 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
3715
3716         [ews-app] Display OS and Xcode configuration in status-bubble's hover-over message
3717         https://bugs.webkit.org/show_bug.cgi?id=196449
3718
3719         Reviewed by Lucas Forschler.
3720
3721         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3722         (StatusBubble.get_os_details): Method to get OS and Xcode details.
3723         (StatusBubble._build_bubble): Moved the timestamp logic to common method.
3724         (StatusBubble.get_build_timestamp): Method to get the timestamp to display for the build.
3725
3726 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
3727
3728         [ews-build] Remove force schedulers from OpenSource EWS Buildbot
3729         https://bugs.webkit.org/show_bug.cgi?id=196444
3730
3731         Reviewed by Lucas Forschler.
3732
3733         * BuildSlaveSupport/ews-build/loadConfig.py: Remove ForceSchedulers.
3734
3735 2019-04-01  Alex Christensen  <achristensen@webkit.org>
3736
3737         Add SPI to canonicalize NSURLs with WTF::URL
3738         https://bugs.webkit.org/show_bug.cgi?id=196415
3739         <rdar://problem/44980271>
3740
3741         Reviewed by Darin Adler.
3742
3743         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3744         * TestWebKitAPI/Tests/WebKitLegacy/mac/URLCanonicalization.mm: Added.
3745         (TestWebKitAPI::TEST):
3746
3747 2019-04-01  Zan Dobersek  <zdobersek@igalia.com>
3748
3749         [WPE] EventSenderProxy constructor is called before a PlatformWindow is usable
3750         https://bugs.webkit.org/show_bug.cgi?id=196441
3751
3752         Reviewed by Carlos Garcia Campos.
3753
3754         Don't cache the wpe_view_backend object that might not exist yet at the
3755         time of EventSenderProxy constructor invocation, but instead retrieve
3756         that object whenever it's required for event dispatching. This should
3757         avoid crashes in this constructor now that it's invoked before any
3758         PlatformWindow has been set up (as changed in r243496).
3759
3760         * WebKitTestRunner/EventSenderProxy.h:
3761         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
3762         (WTR::viewBackend):
3763         (WTR::EventSenderProxy::EventSenderProxy):
3764         (WTR::EventSenderProxy::mouseDown):
3765         (WTR::EventSenderProxy::mouseUp):
3766         (WTR::EventSenderProxy::mouseMoveTo):
3767         (WTR::EventSenderProxy::mouseScrollBy):
3768         (WTR::EventSenderProxy::keyDown):
3769         (WTR::EventSenderProxy::prepareAndDispatchTouchEvent):
3770
3771 2019-03-31  Fujii Hironori  <Hironori.Fujii@sony.com>
3772
3773         [Win][WebKit] MiniBrowser should support high DPI display
3774         https://bugs.webkit.org/show_bug.cgi?id=196391
3775
3776         Reviewed by Alex Christensen.
3777
3778         * MiniBrowser/win/WebKitBrowserWindow.cpp:
3779         (WebKitBrowserWindow::WebKitBrowserWindow): Call resetZoom to set the page zoom factor.
3780         (WebKitBrowserWindow::resetZoom): Changed the default page zoom factor from 1 to the device scale factor.
3781         * MiniBrowser/win/stdafx.h: Define WEBCORE_EXPORT.
3782
3783 2019-03-31  Sam Weinig  <weinig@apple.com>
3784
3785         Remove more i386 specific configurations
3786         https://bugs.webkit.org/show_bug.cgi?id=196430
3787
3788         Reviewed by Alexey Proskuryakov.
3789
3790         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3791         ENABLE_WEB_AUTHN_macosx and ENABLE_WEB_RTC_macosx can now be enabled unconditionally on macOS.
3792
3793 2019-03-31  Andy Estes  <aestes@apple.com>
3794
3795         [iOS] WebKit should consult the navigation response policy delegate before previewing a QuickLook document
3796         https://bugs.webkit.org/show_bug.cgi?id=196433
3797         <rdar://problem/49293305>
3798
3799         Reviewed by Tim Horton.
3800
3801         Enhanced API test coverage to include all navigation response policy decisions in both
3802         linked-before and linked-on-or-after modes. Also added new expectations for all tests.
3803
3804         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3805         * TestWebKitAPI/Tests/WebCore/ios/PreviewConverter.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp.
3806         (TestWebKitAPI::TEST):
3807         * TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
3808         (readFile):
3809         (-[QuickLookDelegate initWithExpectedFileURL:responsePolicy:]):
3810         (-[QuickLookDelegate initWithExpectedFileURL:previewMIMEType:responsePolicy:]):
3811         (-[QuickLookDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
3812         (-[QuickLookDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]):
3813         (-[QuickLookDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]):
3814         (-[QuickLookDelegate webView:didFailProvisionalNavigation:withError:]):
3815         (-[QuickLookDelegate _webViewWebProcessDidCrash:]):
3816         (-[QuickLookDelegate _downloadDidStart:]):
3817         (-[QuickLookDelegate _download:didReceiveResponse:]):
3818         (-[QuickLookDelegate _download:didReceiveData:]):
3819         (-[QuickLookDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
3820         (-[QuickLookDelegate _downloadDidFinish:]):
3821         (-[QuickLookDelegate _download:didFailWithError:]):
3822         (-[QuickLookDelegate _downloadDidCancel:]):
3823         (-[QuickLookDelegate verifyDownload]):
3824         (runTest):
3825         (runTestDecideBeforeLoading):
3826         (runTestDecideAfterLoading):
3827         (TEST):
3828         (-[QuickLookAsyncDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
3829         (-[QuickLookPasswordDelegate _webViewDidRequestPasswordForQuickLookDocument:]):
3830         (-[QuickLookFrameLoadDelegate webView:didFinishLoadForFrame:]):
3831         (-[QuickLookNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]): Deleted.
3832         (-[QuickLookNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]): Deleted.
3833         (-[QuickLookNavigationDelegate webView:didFinishNavigation:]): Deleted.
3834         (-[QuickLookAsyncNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]): Deleted.
3835         (-[QuickLookAsyncNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]): Deleted.
3836         (-[QuickLookAsyncNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]): Deleted.
3837         (-[QuickLookAsyncNavigationDelegate webView:didFinishNavigation:]): Deleted.
3838         (-[QuickLookDecidePolicyDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]): Deleted.
3839         (-[QuickLookDecidePolicyDelegate webView:didFailProvisionalNavigation:withError:]): Deleted.
3840         (-[QuickLookDecidePolicyDelegate _webViewWebProcessDidCrash:]): Deleted.
3841         (-[QuickLookPasswordNavigationDelegate _webViewDidRequestPasswordForQuickLookDocument:]): Deleted.
3842
3843 2019-03-30  Dominik Infuehr  <dinfuehr@igalia.com>
3844
3845         [CMake] add testdfg as target with build-jsc
3846         https://bugs.webkit.org/show_bug.cgi?id=196393
3847
3848         Reviewed by Saam Barati.
3849
3850         Added testdfg as one of the targets to build when
3851         using CMake.
3852
3853         * Scripts/build-jsc:
3854
3855 2019-03-29  Myles C. Maxfield  <mmaxfield@apple.com>
3856
3857         Delete WebMetal implementation in favor of WebGPU
3858         https://bugs.webkit.org/show_bug.cgi?id=195418
3859
3860         Reviewed by Dean Jackson.
3861
3862         * DumpRenderTree/mac/DumpRenderTree.mm:
3863         (enableExperimentalFeatures):
3864         (resetWebPreferencesToConsistentValues):
3865         * Scripts/webkitperl/FeatureList.pm:
3866         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3867         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3868         * TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm: Removed.
3869         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyBuffer.mm: Removed.
3870         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyCommandQueue.mm: Removed.
3871         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyDevice.mm: Removed.
3872         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyFunction.mm: Removed.
3873         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyLibrary.mm: Removed.
3874         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyTest.h: Removed.
3875         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3876         (WTR::InjectedBundle::beginTesting):
3877         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3878         (WTR::TestRunner::setWebMetalEnabled): Deleted.
3879         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3880
3881 2019-03-29  Chris Dumez  <cdumez@apple.com>
3882
3883         REGRESSION (r243523): Six form-related watchOS layout tests are timing out
3884         https://bugs.webkit.org/show_bug.cgi?id=196405
3885         <rdar://problem/49428130>
3886
3887         Reviewed by Wenson Hsieh.
3888
3889         Add a shouldPresentPopovers=false WebKitTestRunner option to cause WKTR to swizzle
3890         the popover presentation methods to be no-ops. Use this in the new test added in
3891         r243523 so that we do not swizzle those methods for all tests. This is needed because
3892         those WatchOS tests rely on the popover getting presented and interactive.
3893
3894         * WebKitTestRunner/TestController.cpp:
3895         (WTR::updateTestOptionsFromTestHeader):
3896         * WebKitTestRunner/TestController.h:
3897         * WebKitTestRunner/TestOptions.h:
3898         (WTR::TestOptions::hasSameInitializationOptions const):
3899         * WebKitTestRunner/ios/TestControllerIOS.mm:
3900         (WTR::TestController::platformInitialize):
3901         (WTR::TestController::platformResetStateToConsistentValues):
3902
3903 2019-03-29  Takashi Komori  <Takashi.Komori@sony.com>
3904
3905         [Curl] Add Server Trust Evaluation Support.
3906         https://bugs.webkit.org/show_bug.cgi?id=191646
3907
3908         Reviewed by Fujii Hironori.
3909
3910         Implemented MiniBrowser UI for asking if user trusts the server.
3911
3912         * MiniBrowser/win/Common.cpp:
3913         (askServerTrustEvaluation):
3914         (replaceString):
3915         * MiniBrowser/win/Common.h:
3916         * MiniBrowser/win/MiniBrowserLib.rc:
3917         * MiniBrowser/win/MiniBrowserLibResource.h:
3918         * MiniBrowser/win/WebKitBrowserWindow.cpp:
3919         (createPEMString):
3920         (WebKitBrowserWindow::didReceiveAuthenticationChallenge):
3921         (WebKitBrowserWindow::canTrustServerCertificate):
3922         * MiniBrowser/win/WebKitBrowserWindow.h:
3923
3924 2019-03-29  Cathie Chen  <cathiechen@igalia.com>
3925
3926         Implement ResizeObserver.
3927         https://bugs.webkit.org/show_bug.cgi?id=157743
3928
3929         Reviewed by Simon Fraser.
3930
3931         Support resizeObserverEnabled webPreferences.
3932
3933         * DumpRenderTree/TestOptions.cpp:
3934         (TestOptions::TestOptions):
3935         * DumpRenderTree/TestOptions.h:
3936         * DumpRenderTree/mac/DumpRenderTree.mm:
3937         (setWebPreferencesForTestOptions):
3938         * DumpRenderTree/win/DumpRenderTree.cpp:
3939         (enableExperimentalFeatures):
3940         * Scripts/webkitperl/FeatureList.pm:
3941         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3942
3943 2019-03-28  John Wilander  <wilander@apple.com>
3944
3945         Resource Load Statistics: IPC to the WebsiteDataStore in the UI process from NetworkProcess::deleteWebsiteDataForRegistrableDomains()
3946         https://bugs.webkit.org/show_bug.cgi?id=196281
3947         <rdar://problem/48938748>
3948
3949         Reviewed by Alex Christensen.
3950
3951         This patch adds the function isStatisticsHasLocalStorage() to the
3952         TestRunner. With it, the page can query the WebsiteDataStore in the
3953         UI process to make sure that it sees LocalStorage.
3954
3955         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3956         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3957         (WTR::TestRunner::isStatisticsHasLocalStorage):
3958         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3959         * WebKitTestRunner/TestController.cpp:
3960         (WTR::TestController::isStatisticsHasLocalStorage):
3961         * WebKitTestRunner/TestController.h:
3962         * WebKitTestRunner/TestInvocation.cpp:
3963         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3964
3965 2019-03-28  Jiewen Tan  <jiewen_tan@apple.com>
3966
3967         API::Data::createWithoutCopying should do a null check before calling CFRelease
3968         https://bugs.webkit.org/show_bug.cgi?id=196276
3969         <rdar://problem/48059859>
3970
3971         Reviewed by Alex Christensen.
3972
3973         Add an API test that will pass a nil to API::Data::createWithoutCopying via NavigationState::NavigationClient::webCryptoMasterKey.
3974
3975         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3976         * TestWebKitAPI/Tests/WebKit/navigation-client-default-crypto.html:
3977         * TestWebKitAPI/Tests/WebKitCocoa/WebCryptoMasterKey.mm: Added.
3978         (-[WebCryptoMasterKeyNavigationDelegate _webCryptoMasterKeyForWebView:]):
3979         (-[WebCryptoMasterKeyNavigationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
3980         (TestWebKitAPI::TEST):
3981
3982 2019-03-28  Michael Catanzaro  <mcatanzaro@igalia.com>
3983
3984         [WPE][GTK] webkit_web_resource_get_data_finish can return NULL without setting error
3985         https://bugs.webkit.org/show_bug.cgi?id=186276
3986
3987         Reviewed by Carlos Garcia Campos.
3988
3989         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
3990         (webViewLoadChanged):
3991         (testWebResourceGetDataError):
3992         (testWebResourceGetDataEmpty):
3993         (beforeAll):
3994         (webViewloadChanged): Deleted.
3995
3996 2019-03-27  Andy Estes  <aestes@apple.com>
3997
3998         REGRESSION (r242686): package-root creates roots with broken symlinks in WebKit.framework/XPCServices/
3999         https://bugs.webkit.org/show_bug.cgi?id=196317
4000
4001         Reviewed by Dan Bernstein.
4002
4003         package-root copies built products into a staging directory using ditto(1), which does not
4004         follow symbolic links as it traverses a directory. Now that the files in
4005         WebKit.framework/XPCServices/ are symbolic links to a location outside of the framework
4006         itself, these become broken links when ditto'd into the staging directory.
4007
4008         To account for this, change package-root to copy using cp(1) in a mode that follows symlinks.
4009
4010         * Scripts/package-root:
4011
4012 2019-03-27  Aakash Jain  <aakash_jain@apple.com>
4013
4014         [ews-app] Update display text of Submit for ews analysis
4015         https://bugs.webkit.org/show_bug.cgi?id=196309
4016
4017         Reviewed by Dewei Zhu.
4018
4019         * BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
4020
4021 2019-03-27  David Kilzer  <ddkilzer@apple.com>
4022
4023         run-webkit-tests should check for leaks in WebKit processes
4024         <https://webkit.org/b/193772>
4025         <rdar://problem/46526680>
4026
4027         Reviewed by Ryosuke Niwa.
4028
4029         This works by doing the following:
4030         - Add a "#LIST CHILD PROCESSES" command to WebKitTestRunnner.
4031           The list of child processes are returned one per line:
4032           process.name: pid
4033         - Run the "#LIST CHILD PROCESSES" command just before the
4034           "#CHECK FOR WORLD LEAKS" command, and store the list of child
4035           processes on the ServerProcess object.
4036         - When the `--leaks` switch is handled, run check_for_leaks() on
4037           each child process after the main test harness.
4038
4039         * DumpRenderTree/mac/DumpRenderTree.mm:
4040         (handleControlCommand):
4041         - Use strncmp() instead of strcmp().
4042         - Add support for handling "#LIST CHILD PROCESSES" command.
4043
4044         * Scripts/webkitpy/port/base.py:
4045         (Port.check_for_leaks):
4046         * Scripts/webkitpy/port/darwin.py:
4047         (DarwinPort.check_for_leaks):
4048         - Rename redundant 'process_pid' argument to 'process_id'.
4049
4050         * Scripts/webkitpy/port/driver.py:
4051         (Driver.do_post_tests_work):
4052         - Restructure the logic since "#CHECK FOR WORLD LEAKS" is no
4053           longer the only command this sends to WebKitTestRunner.
4054         - If the `--leaks` switch is present, send the
4055           "#LIST CHILD PROCESSES" to WebKitTestRunner and store the
4056           result using Port.set_webkit_processes().
4057         (Driver._parse_child_processes_output):
4058         - Add helper method to parse list of child process names and
4059           process IDs returned from WebKitTestRunner.
4060
4061         * Scripts/webkitpy/port/ios_device.py:
4062         (IOSDevicePort.check_for_leaks):
4063         - Rename redundant 'process_pid' argument to 'process_id'.
4064
4065         * Scripts/webkitpy/port/leakdetector.py:
4066         (LeakDetector._parse_leaks_output):
4067         - Return early if there is no leaks_output.
4068         (LeakDetector.check_for_leaks):
4069         - Rename redundant 'process_pid' argument to 'process_id'.
4070
4071         * Scripts/webkitpy/port/server_process.py:
4072         (ServerProcess.__init__):
4073         (ServerProcess.child_processes):
4074         (ServerProcess.set_child_processes):
4075         - Add instance variable to Port to store list of child process
4076           names and process IDs returned from WebKitTestRunner.
4077         (ServerProcess._start):
4078         - Clear self._child_processes.
4079         (ServerProcess.stop):
4080         - If self._child_processes is set, call
4081           self._port.check_for_leaks() for each child process.
4082
4083         * Scripts/webkitpy/port/server_process_unittest.py:
4084         (TrivialMockPort.check_for_leaks):
4085         - Rename redundant 'process_pid' argument to 'process_id'.
4086
4087         * Scripts/webkitpy/port/simulator_process.py:
4088         (SimulatorProcess.stop):
4089         - If self._child_processes is set, call
4090           self._port.check_for_leaks() for each child process.
4091
4092         * Scripts/webkitpy/port/watch_device.py:
4093         (WatchDevicePort.check_for_leaks):
4094         - Rename redundant 'process_pid' argument to 'process_id'.
4095
4096         * WebKitTestRunner/TestController.cpp:
4097         (WTR::TestController::dumpResponse):
4098         - Extract method from findAndDumpWorldLeaks() so that it may be
4099           reused by findAndDumpWebKitProcessIdentifiers().
4100         (WTR::TestController::findAndDumpWebKitProcessIdentifiers):
4101         - Add method to output process name and process ID of both the
4102           WebContent and Networking processes.
4103         (WTR::TestController::findAndDumpWorldLeaks):
4104         - Fix missing newline in output when there were no abandoned
4105           documents.
4106         - Call dumpResponse() for extracted code.
4107         (WTR::TestController::handleControlCommand):
4108         - Restructure the logic for "#CHECK FOR WORLD LEAKS".
4109         - Use strncmp() instead of strcmp().
4110         - Call findAndDumpWebKitProcessIdentifiers() when
4111           "#LIST CHILD PROCESSES" command is sent.
4112         * WebKitTestRunner/TestController.h:
4113         (WTR::TestController::dumpResponse):
4114         (WTR::TestController::findAndDumpWebKitProcessIdentifiers):
4115         - Declare methods.
4116
4117 2019-03-27  Carlos Garcia Campos  <cgarcia@igalia.com>
4118
4119         Unreviewed. Add GLib API test cases after r243434.
4120
4121         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
4122         (testWebViewActiveURI):
4123         (serverCallback):
4124         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
4125         (sendRequestCallback):
4126
4127 2019-03-27  Carlos Garcia Campos  <cgarcia@igalia.com>
4128
4129         Geolocation request not complete when watch request was started in a different web process
4130         https://bugs.webkit.org/show_bug.cgi?id=195996
4131
4132         Reviewed by Alex Christensen.
4133
4134         Add a test case.
4135
4136         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
4137         (TestWebKitAPI::runJavaScriptAlert):
4138         (TestWebKitAPI::TEST):
4139
4140 2019-03-26  Keith Rollin  <krollin@apple.com>
4141
4142         Update the way generate-xcfilelists returns strings from functions
4143         https://bugs.webkit.org/show_bug.cgi?id=195975
4144         <rdar://problem/49040807>
4145
4146         Reviewed by Dean Jackson.
4147
4148         There are places where generate-xcfilelists executes assignments with
4149         statements like:
4150
4151             FOO=$(some_function)
4152
4153         where "some_function" return a string by echoing it. E.g.
4154
4155             some_function()
4156             {
4157                 echo "Hello, World"
4158             }
4159
4160         This is a common idiom, but it has a problem if "some_function" needs
4161         to call "exit" in an attempt to halt the entire script right then and
4162         there. Since "some_function" is called inside of $(), it's being
4163         executed in a sub-shell. Calling exit in that sub-shell simply exits
4164         that shell; it doesn't not exit the outer shell in which the main part
4165         of the script is still running. As such, the main script keeps
4166         executing when the intent was for the script to halt.
4167
4168         The solution to this is to use a different idiom for returning
4169         strings. The one we now is to pass in the name of the variable to
4170         receive the string result:
4171
4172             some_function()
4173             {
4174                 variable_name=$1
4175                 eval $variable_name ="Hello, World"
4176             }
4177
4178         The call site now looks like
4179
4180             some_function FOO
4181
4182         Because there's no invocation of a sub-shell, some_function can now
4183         call "exit" if it wants to, and the entire script will exit at that
4184         point.
4185
4186         * Scripts/generate-xcfilelists:
4187
4188 2019-03-26  Chris Dumez  <cdumez@apple.com>
4189
4190         Add basic layout test coverage for File Picker on iOS
4191         https://bugs.webkit.org/show_bug.cgi?id=196265
4192
4193         Reviewed by Wenson Hsieh.
4194
4195         Add layout test infrastructure to test the file picker on iOS.
4196
4197         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
4198         (WTR::UIScriptController::dismissFilePicker):
4199         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
4200         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
4201         (WTR::UIScriptController::dismissFilePicker):
4202         * TestRunnerShared/UIScriptContext/UIScriptController.h:
4203         * WebKitTestRunner/TestController.cpp:
4204         (WTR::TestController::createWebViewWithOptions):
4205         (WTR::updateTestOptionsFromTestHeader):
4206         * WebKitTestRunner/TestOptions.h:
4207         (WTR::TestOptions::hasSameInitializationOptions const):
4208         * WebKitTestRunner/ios/TestControllerIOS.mm:
4209         (overridePresentViewController):
4210         (WTR::TestController::platformInitialize):
4211         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
4212         (WTR::UIScriptController::dismissFilePicker):
4213
4214 2019-03-26  Wenson Hsieh  <wenson_hsieh@apple.com>
4215
4216         Implement async paste method on UIWKInteractionViewProtocol
4217         https://bugs.webkit.org/show_bug.cgi?id=196267
4218         <rdar://problem/49236346>
4219
4220         Reviewed by Tim Horton.
4221
4222         Add a new test to exercise the new SPI. Additionally, add staging forward declarations for
4223         -pasteWithCompletionHandler:, and remove some old existing staging declarations for other bits of UIKit SPI that
4224         are now a part of all iOS 12 internal SDKs.
4225
4226         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
4227
4228         While we're here, also change a few iOS 11.3 checks to just be about PLATFORM(IOS) (since we don't build for iOS
4229         prior to 12, these version checks are effectively only about iOS vs. tvOS or watchOS).
4230
4231         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
4232         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
4233         (-[DragAndDropSimulator _sendQueuedAdditionalItemRequest]):
4234         * TestWebKitAPI/ios/UIKitSPI.h:
4235
4236 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
4237
4238         [ews-build] Use PostgreSQL for ews.webkit.org database
4239         https://bugs.webkit.org/show_bug.cgi?id=196270
4240
4241         Reviewed by Lucas Forschler.
4242
4243         * BuildSlaveSupport/ews-app/ews-app/settings.py:
4244
4245 2019-03-26  Jonathan Bedard  <jbedard@apple.com>
4246
4247         [ews] Reset simctl states on reboot
4248         https://bugs.webkit.org/show_bug.cgi?id=196260
4249
4250         Rubber-stamped by Aakash Jain.
4251
4252         * EWSTools/start-queue-mac.sh:
4253
4254 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
4255
4256         [ews-build] Use PostgreSQL for ews-build database
4257         https://bugs.webkit.org/show_bug.cgi?id=196229
4258
4259         Reviewed by Lucas Forschler.
4260
4261         * BuildSlaveSupport/ews-build/master.cfg:
4262
4263 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
4264
4265         [ews-build] Get master_hostname dynamically in master.cfg
4266         https://bugs.webkit.org/show_bug.cgi?id=196255
4267
4268         Reviewed by Lucas Forschler.
4269
4270         * BuildSlaveSupport/ews-build/master.cfg: Get hostname dynamically. Also do not
4271         send events data in test mode.
4272
4273 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
4274
4275         [ews-app] Set db_constraint to False for Foreign Keys
4276         https://bugs.webkit.org/show_bug.cgi?id=196252
4277
4278         Reviewed by Lucas Forschler.
4279
4280         * BuildSlaveSupport/ews-app/ews/models/build.py:
4281         * BuildSlaveSupport/ews-app/ews/models/step.py:
4282
4283 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
4284
4285         [ews-build] is_test_mode_enabled should default to True
4286         https://bugs.webkit.org/show_bug.cgi?id=196248
4287
4288         Reviewed by Lucas Forschler.
4289
4290         * BuildSlaveSupport/ews-build/master.cfg: Reverse the environment variable used to decide is_test_mode_enabled.
4291
4292 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
4293
4294         [ews-app] Add webkitperl to ENABLED_QUEUES
4295         https://bugs.webkit.org/show_bug.cgi?id=196253
4296
4297         Reviewed by Lucas Forschler.
4298
4299         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
4300
4301 2019-03-25  Alexey Proskuryakov  <ap@apple.com>
4302
4303         Address NSWindow sometimes using WebKitTestRunnerEvent too early
4304         https://bugs.webkit.org/show_bug.cgi?id=196211
4305         rdar://problem/49110552
4306
4307         Reviewed by Tim Horton.
4308