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