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