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