3c00df07643b649510c60b98f5aef400a0e3bb8b
[WebKit-https.git] / Tools / ChangeLog
1 2017-07-03  Jonathan Bedard  <jbedard@apple.com>
2
3         webkitpy: Properly number duplicated crashlogs
4         https://bugs.webkit.org/show_bug.cgi?id=172002
5
6         Reviewed by Aakash Jain.
7
8         * Scripts/webkitpy/common/system/crashlogs.py:
9         (CrashLogs._find_all_logs_darwin): Number multiple crash logs for a single process with
10         an increasing integer.
11         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
12         (CrashLogsTest.create_crash_logs_darwin): Create duplicated crashlog for testing.
13         (CrashLogsTest.test_find_all_log_darwin): Now 7 Darwin logs instead of 5.
14         (CrashLogsTest.test_duplicate_log_darwin): Test that duplicated logs are correctly numbered.
15
16 2017-07-03  Ryosuke Niwa  <rniwa@webkit.org>
17
18         WebContent processes crash when the network process crashes with pending connection requests
19         https://bugs.webkit.org/show_bug.cgi?id=174065
20         <rdar://problem/30359835>
21
22         Reviewed by Tim Horton.
23
24         Add a API to ensure UI process tries to relaunch a new network process when the network process
25         crashes with pending network connection requests.
26
27         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
28         * TestWebKitAPI/Tests/WebKit2/NetworkProcessCrashWithPendingConnection.mm: Added.
29         * TestWebKitAPI/cocoa/TestNavigationDelegate.h:
30         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
31         (-[TestNavigationDelegate webViewWebContentProcessDidTerminate:]): Added.
32
33 2017-07-03  Eric Carlson  <eric.carlson@apple.com>
34
35         [MediaStream] Protect request and web view during gUM client callback
36         https://bugs.webkit.org/show_bug.cgi?id=174096
37         <rdar://problem/32833102>
38
39         Reviewed by Youenn Fablet.
40
41         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
42         * TestWebKitAPI/Tests/WebKit2/GetUserMediaNavigation.mm: New test.
43
44 2017-07-03  Andy Estes  <aestes@apple.com>
45
46         [Xcode] Add an experimental setting to build with ccache
47         https://bugs.webkit.org/show_bug.cgi?id=173875
48
49         Reviewed by Tim Horton.
50
51         On systems that already have ccache(1) installed, this patch adds experimental support for
52         it to Xcode builds. It can be enabled with the WK_USE_CCACHE build setting.
53
54         When ccache is enabled, CC is overridden to invoke Tools/ccache/ccache-clang. This script
55         finds the "-isysroot" argument to determine the active SDK, uses xcrun(1) and the SDK to
56         find the toolchain from which to run clang, and then invokes ccache with the required
57         arguments.
58
59         ccache is invoked with CCACHE_SLOPPINESS="pch_defines,time_macros", which is required for
60         precompiled headers to work properly [1].
61
62         LDPLUSPLUS is overridden to invoke Tools/ccache/ccache-clang++. It behaves the same as
63         ccache-clang, except it tells ccache to execute clang++ instead of clang. This is important
64         during linking.
65         
66         [1] https://ccache.samba.org/manual.html#_precompiled_headers
67
68         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig: Included ccache.xcconfig.
69         * MiniBrowser/Configurations/DebugRelease.xcconfig: Ditto.
70         * MobileMiniBrowser/Configurations/DebugRelease.xcconfig: Ditto.
71         * TestWebKitAPI/Configurations/DebugRelease.xcconfig: Ditto.
72         * WebKitTestRunner/Configurations/DebugRelease.xcconfig: Ditto.
73         * ccache/README.md: Added.
74         * ccache/ccache-clang: Added.
75         * ccache/ccache-clang++: Added.
76         * ccache/ccache.xcconfig: Added. Overrides CC and LDPLUSPLUS when WK_USE_CACHE=YES.
77
78 2017-07-03  Alex Christensen  <achristensen@webkit.org>
79
80         REGRESSION(r215096) Queries of URLs with non-special schemes should not percent-encode single quotes
81         https://bugs.webkit.org/show_bug.cgi?id=174051
82
83         Reviewed by Tim Horton.
84
85         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
86         (TestWebKitAPI::TEST_F):
87
88 2017-07-03  Matt Lewis  <jlewis3@apple.com>
89
90         Unreviewed, rolling out r219024.
91
92         This patch cause 3 didferent test to fail.
93
94         Reverted changeset:
95
96         "REGRESSION(r215096) Queries of URLs with non-special schemes
97         should not percent-encode single quotes"
98         https://bugs.webkit.org/show_bug.cgi?id=174051
99         http://trac.webkit.org/changeset/219024
100
101 2017-07-03  Chris Dumez  <cdumez@apple.com>
102
103         Drop ResourceLoadStatisticsStore's statisticsLock
104         https://bugs.webkit.org/show_bug.cgi?id=174080
105
106         Reviewed by Brent Fulgham.
107
108         Port WebKitTestRunner to new Asynchronous Cocoa SPI.
109
110         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
111         (WTR::TestController::isStatisticsPrevalentResource):
112         (WTR::TestController::isStatisticsHasHadUserInteraction):
113         (WTR::TestController::isStatisticsGrandfathered):
114
115 2017-07-03  Wenson Hsieh  <wenson_hsieh@apple.com>
116
117         Pasting single words copied to UIPasteboard inserts URLs in editable areas
118         https://bugs.webkit.org/show_bug.cgi?id=174082
119         <rdar://problem/33046992>
120
121         Reviewed by Tim Horton.
122
123         Adds 3 new unit tests to UIPasteboardTests to test cases of pasting plain text and URLs.
124
125         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
126         (TestWebKitAPI::setUpWebViewForPasteboardTests):
127         (TestWebKitAPI::TEST):
128
129 2017-07-02  Brady Eidson  <beidson@apple.com>
130
131         Add API test for all parts of WebKit1 API related to favicons.
132         https://bugs.webkit.org/show_bug.cgi?id=174069
133
134         Reviewed by Andy Estes.
135
136         These two API tests cover all WebKit1 API related to icons.
137         
138         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
139         * TestWebKitAPI/Tests/mac/WebViewIconLoading.mm: Added.
140         (mainResourceData):
141         (defaultFaviconData):
142         (customFaviconData):
143         (imageFromData):
144         (+[IconLoadingProtocol canInitWithRequest:]):
145         (+[IconLoadingProtocol canonicalRequestForRequest:]):
146         (-[IconLoadingProtocol startLoading]):
147         (-[IconLoadingProtocol stopLoading]):
148         (-[IconLoadingFrameLoadDelegate webView:didReceiveIcon:forFrame:]):
149         (-[MainFrameIconKVO observeValueForKeyPath:ofObject:change:context:]):
150         (TestWebKitAPI::TEST):
151
152 2017-07-01  Dan Bernstein  <mitz@apple.com>
153
154         [iOS] Remove code only needed when building for iOS 9.x
155         https://bugs.webkit.org/show_bug.cgi?id=174068
156
157         Reviewed by Tim Horton.
158
159         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
160         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
161         (WTR::initializeWebViewConfiguration):
162         * WebKitTestRunner/ios/HIDEventGenerator.mm:
163         (-[HIDEventGenerator _createIOHIDEventType:]):
164
165 2017-07-01  Brady Eidson  <beidson@apple.com>
166
167         When setting a custom cookie storage location on a WKWebsiteDataStore, cookies aren't actually removed.
168         <rdar://problem/32410662> and https://bugs.webkit.org/show_bug.cgi?id=174035
169
170         Reviewed by Alex Christensen.
171
172         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
173
174 2017-07-01  Dan Bernstein  <mitz@apple.com>
175
176         [macOS] Remove code only needed when building for OS X Yosemite
177         https://bugs.webkit.org/show_bug.cgi?id=174067
178
179         Reviewed by Tim Horton.
180
181         * DumpRenderTree/mac/Configurations/Base.xcconfig:
182         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
183         * DumpRenderTree/mac/DumpRenderTree.mm:
184         (setDefaultsToConsistentValuesForTesting):
185         * DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
186         (-[DumpRenderTreeDraggingInfo resetSpringLoading]):
187         * MiniBrowser/Configurations/Base.xcconfig:
188         * MiniBrowser/Configurations/DebugRelease.xcconfig:
189         * TestWebKitAPI/Configurations/Base.xcconfig:
190         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
191         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
192         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
193         (TestWebKitAPI::TEST_F):
194         * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
195         * TestWebKitAPI/Tests/mac/DragAndDropPasteboardTests.mm:
196         * TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
197         (TestWebKitAPI::TEST_F):
198         * TestWebKitAPI/Tests/mac/StringTruncator.mm:
199         (TestWebKitAPI::TEST):
200         * WebKitTestRunner/Configurations/Base.xcconfig:
201         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
202         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
203         (WTR::InjectedBundle::platformInitialize):
204         * WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.mm:
205         (-[WebKitTestRunnerDraggingInfo resetSpringLoading]):
206
207 2017-07-01  Chris Dumez  <cdumez@apple.com>
208
209         Replace ResourceLoadStatisticsStore C API with Cocoa SPI
210         https://bugs.webkit.org/show_bug.cgi?id=174060
211
212         Reviewed by Brent Fulgham.
213
214         Port WebKitTestRunner over to the new Cocoa SPI.
215
216         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
217         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
218         (WTR::TestRunner::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
219         Drop calls to the WKResourceLoadStatisticsStore C API here. Those were
220         no-ops since this code runs in the WebContent process, not the
221         UIProcess.
222
223         * WebKitTestRunner/TestController.cpp:
224         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
225
226 2017-06-30  Megan Gardner  <megan_gardner@apple.com>
227
228         Unreviewed mac build fix.
229
230         * TestWebKitAPI/Tests/WebKit2Cocoa/WKRequestActivatedElementInfo.mm:
231         (TestWebKitAPI::TEST):
232
233 2017-06-30  Megan Gardner  <megan_gardner@apple.com>
234
235         Add API to get WKActivatedElementInfo
236         https://bugs.webkit.org/show_bug.cgi?id=174001
237         <rdar://problem/29165518>
238         
239         Tests for now SPI to get activatedElementInfo.
240
241         Reviewed by Tim Horton.
242
243         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
244         * TestWebKitAPI/Tests/WebKit2Cocoa/WKRequestActivatedElementInfo.mm: Added.
245         (TestWebKitAPI::TEST):
246
247 2017-06-30  Chris Dumez  <cdumez@apple.com>
248
249         Move store logic from WebResourceLoadStatisticsManager to WebResourceLoadStatisticsStore
250         https://bugs.webkit.org/show_bug.cgi?id=174038
251
252         Reviewed by Brent Fulgham.
253
254         Fix typo in API name.
255
256         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
257         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
258         (WTR::TestRunner::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
259         * WebKitTestRunner/InjectedBundle/TestRunner.h:
260         * WebKitTestRunner/TestController.cpp:
261         (WTR::TestController::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
262         * WebKitTestRunner/TestController.h:
263         * WebKitTestRunner/TestInvocation.cpp:
264         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
265
266 2017-06-30  Alex Christensen  <achristensen@webkit.org>
267
268         REGRESSION(r215096) Queries of URLs with non-special schemes should not percent-encode single quotes
269         https://bugs.webkit.org/show_bug.cgi?id=174051
270         <rdar://problem/33002846>
271
272         Reviewed by Tim Horton.
273
274         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
275         (TestWebKitAPI::TEST_F):
276
277 2017-06-30  Daniel Bates  <dabates@apple.com>
278
279         API::FrameInfo should know the web page that contains the frame; add API property webView to WKFrameInfo
280         https://bugs.webkit.org/show_bug.cgi?id=165160
281         <rdar://problem/29451999>
282
283         Reviewed by Brady Eidson.
284
285         Add tests to ensure that -[WKFrameInfo webView] is computed correctly for the source and target frame
286         for navigations and window creation.
287
288         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
289         * TestWebKitAPI/Tests/WebKit2Cocoa/DecidePolicyForNavigationAction.mm: Added. Derived from file ShouldOpenExternalURLsInNewWindowActions.mm.
290         (-[DecidePolicyForNavigationActionController webView:decidePolicyForNavigationAction:decisionHandler:]):
291         (-[DecidePolicyForNavigationActionController webView:didFinishNavigation:]):
292         (-[DecidePolicyForNavigationActionController webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
293         (TEST):
294
295 2017-06-29  Jer Noble  <jer.noble@apple.com>
296
297         Make Legacy EME API controlled by RuntimeEnabled setting.
298         https://bugs.webkit.org/show_bug.cgi?id=173994
299
300         Reviewed by Sam Weinig.
301
302         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
303
304 2017-06-30  Jonathan Bedard  <jbedard@apple.com>
305
306         Follow-up fix for r218996
307
308         Unreviewed infrastructure fix.
309
310         Repeated calls to 'ios_version' make the log noisy, memoize the function.
311
312         * Scripts/webkitpy/port/ios_simulator.py:
313         (IOSSimulatorPort): Memoize ios_version().
314
315 2017-06-30  Wenson Hsieh  <wenson_hsieh@apple.com>
316
317         [iOS DnD] Drag caret rect is incorrectly computed when dropping in editable content in iframes
318         https://bugs.webkit.org/show_bug.cgi?id=174017
319         <rdar://problem/32959782>
320
321         Reviewed by Simon Fraser.
322
323         Add a new test verifying that the drag caret is visually contained within the bounds of an iframe. Before these
324         changes, the caret would appear outside of the iframe.
325
326         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
327         * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-in-iframe.html: Added.
328         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
329         (checkDragCaretRectIsContainedInRect):
330         (TestWebKitAPI::TEST):
331         * TestWebKitAPI/ios/DataInteractionSimulator.h:
332         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
333         (-[DataInteractionSimulator _resetSimulatedState]):
334         (-[DataInteractionSimulator _concludeDataInteractionAndPerformOperationIfNecessary]):
335         (-[DataInteractionSimulator _advanceProgress]):
336         (-[DataInteractionSimulator lastKnownDragCaretRect]):
337
338 2017-06-30  Jonathan Bedard  <jbedard@apple.com>
339
340         Add support for different versions of iOS when loading test expectations
341         https://bugs.webkit.org/show_bug.cgi?id=173774
342         <rdar://problem/32951132>
343
344         Rubber-stamped by Aakash Jain.
345
346         When running layout tests, we should support multiple version of iOS the same way we do Mac.
347
348         * Scripts/webkitpy/port/ios.py:
349         (IOSPort.default_baseline_search_path): Add ios-<major version> test expectation.
350         (IOSPort.test_expectations_file_position): Added new file expectations, increment expected file position.
351         (IOSPort.ios_version): iOS ports must define a function to retrieve the iOS version.
352         * Scripts/webkitpy/port/ios_device.py:
353         (IOSDevicePort.ios_version): Ask connected devices for implementation.
354         * Scripts/webkitpy/port/ios_device_unittest.py:
355         (IOSDeviceTest.test_additional_platform_directory): Skip test until bug 173775 is finished.
356         (IOSDeviceTest.test_baseline_searchpath): Ditto.
357         (IOSDeviceTest.test_expectations_ordering): Ditto.
358         * Scripts/webkitpy/port/ios_simulator.py:
359         (IOSSimulatorPort.ios_version): If a runtime is specified, ask the runtime for the iOS version. Otherwise,
360         ask the platform.
361
362 2017-06-30  Jacobo Aragunde Pérez  <jaragunde@igalia.com>
363
364         Fontconfig build breaks with glibc 2.15+
365         https://bugs.webkit.org/show_bug.cgi?id=174019
366
367         Reviewed by Carlos Alberto Lopez Perez.
368
369         Apply patch by Khem Raj adapted to fontconfig 2.11.1.
370
371         * wpe/jhbuild.modules:
372         * wpe/patches/fontconfig-avoid-conflicts-with-integer-width-macros-from-TS-18.patch: Added.
373
374 2017-06-29  Wenson Hsieh  <wenson_hsieh@apple.com>
375
376         [iOS DnD] Web content process crashes when the selection is moved far offscreen in dragstart
377         https://bugs.webkit.org/show_bug.cgi?id=174010
378         <rdar://problem/32597802>
379
380         Reviewed by Tim Horton.
381
382         Adds a new API test to ensure that we don't crash trying to dereference a null RefPtr when the TextIndicator
383         snapshot fails for any reason.
384
385         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
386         * TestWebKitAPI/Tests/WebKit2Cocoa/dragstart-change-selection-offscreen.html: Added.
387         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
388         (TestWebKitAPI::TEST):
389
390 2017-06-29  Chris Fleizach  <cfleizach@apple.com>
391
392         AX: Cannot call setValue() on contenteditable or ARIA text controls
393         https://bugs.webkit.org/show_bug.cgi?id=173520
394
395         Reviewed by Ryosuke Niwa.
396
397         Add setValue() method to WKTR (already existed in DRT).
398
399         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
400         (WTR::AccessibilityUIElement::setValue):
401         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
402         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
403         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
404         (WTR::AccessibilityUIElement::setValue):
405
406 2017-06-28  Simon Fraser  <simon.fraser@apple.com>
407
408         getBoundingClientRect returns wrong value for combination of page zoom and scroll
409         https://bugs.webkit.org/show_bug.cgi?id=173841
410         rdar://problem/32983841
411
412         Reviewed by Dean Jackson.
413
414         Make "Zoom In" and "Zoom Out" work correctly in the WebKit1 window. Previously they
415         always did text zooming.
416
417         * MiniBrowser/mac/WK1BrowserWindowController.m:
418         (-[WK1BrowserWindowController zoomIn:]):
419         (-[WK1BrowserWindowController zoomOut:]):
420         (-[WK1BrowserWindowController canResetZoom]):
421         (-[WK1BrowserWindowController resetZoom:]):
422
423 2017-06-29  John Wilander  <wilander@apple.com>
424
425         Fix for intermittent Layout Test fail http/tests/loading/resourceLoadStatistics/telemetry-generation.html
426         https://bugs.webkit.org/show_bug.cgi?id=173940
427         <rdar://problem/33018125>
428
429         Reviewed by Brent Fulgham.
430
431         This change allows the TestController to turn off
432         regular resource load statistics telemetry submission
433         and to manually control when telemetry is calculated
434         and submitted.
435
436         * WebKitTestRunner/TestController.cpp:
437         (WTR::TestController::initialize):
438             Turns off automatic resource load statistics telemetry submission.
439
440 2017-06-29  Commit Queue  <commit-queue@webkit.org>
441
442         Unreviewed, rolling out r218512.
443         https://bugs.webkit.org/show_bug.cgi?id=173981
444
445         "It changes the behavior of the JS API's JSEvaluateScript
446         which breaks TurboTax" (Requested by saamyjoon on #webkit).
447
448         Reverted changeset:
449
450         "test262: Completion values for control flow do not match the
451         spec"
452         https://bugs.webkit.org/show_bug.cgi?id=171265
453         http://trac.webkit.org/changeset/218512
454
455 2017-06-29  Jonathan Bedard  <jbedard@apple.com>
456
457         Add WebKitSystemInterface for iOS 11
458         https://bugs.webkit.org/show_bug.cgi?id=173936
459
460         Reviewed by Lucas Forschler.
461
462         * Scripts/copy-webkitlibraries-to-product-directory: Copy iOS 11 WebKitSystemInterface libraries. 
463
464 2017-06-28  Keith Miller  <keith_miller@apple.com>
465
466         VMTraps has some races
467         https://bugs.webkit.org/show_bug.cgi?id=173941
468
469         Reviewed by Michael Saboff.
470
471         Add new testing mode for testing the Watchdog with our stress
472         tests.
473
474         * Scripts/run-jsc-stress-tests:
475
476 2017-06-29  Carlos Garcia Campos  <cgarcia@igalia.com>
477
478         [GTK][WPE] Implement API::IconLoadingClient and rework WebKitFaviconDatabase to use IconDatabase directly
479         https://bugs.webkit.org/show_bug.cgi?id=173877
480
481         Reviewed by Brady Eidson.
482
483         Update favicons unit test to ensure we wait until the database is updated in testGetFavicon() before starting
484         the next tests.
485
486         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
487         (testGetFavicon):
488
489 2017-06-28  Tim Horton  <timothy_horton@apple.com>
490
491         MobileSafari was constantly using 10-15% CPU viewing a PDF
492         https://bugs.webkit.org/show_bug.cgi?id=173944
493         <rdar://problem/33039910>
494
495         Reviewed by Simon Fraser.
496
497         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
498         * TestWebKitAPI/Tests/WebKit2Cocoa/WKPDFViewStablePresentationUpdateCallback.mm:
499         Add a test that we ever call the stable presentation update callback
500         when we have a WKPDFView up, instead of infinitely looping.
501
502 2017-06-28  Alex Christensen  <achristensen@webkit.org>
503
504         Prevent displaying URLs with small capital letters
505         https://bugs.webkit.org/show_bug.cgi?id=173949
506         <rdar://problem/32952058>
507
508         Reviewed by Brent Fulgham.
509
510         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
511         (TestWebKitAPI::TEST):
512
513 2017-06-28  Brent Fulgham  <bfulgham@apple.com>
514
515         Unreviewed test fix.
516
517         Disable the file monitor tests on iOS because the 'system' API is unavailable on that platform.
518
519         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp: 
520
521 2017-06-28  Brent Fulgham  <bfulgham@apple.com>
522
523         Teach ResourceLoadStatistics to recognize changes in the file system
524         https://bugs.webkit.org/show_bug.cgi?id=173800
525         <rdar://problem/32937842>
526
527         Reviewed by Chris Dumez.
528
529         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
530         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp: Added.
531         (TestWebKitAPI::FileMonitorTest::tempFilePath):
532         (TestWebKitAPI::handleFileModification):
533         (TestWebKitAPI::handleFileDeletion):
534         (TestWebKitAPI::resetTestState):
535         (TestWebKitAPI::TEST_F):
536
537 2017-06-28  Brady Eidson  <beidson@apple.com>
538
539         DocumentLoader should always notify the client if there are pending icon loads when the load is stopped.
540         https://bugs.webkit.org/show_bug.cgi?id=173874
541
542         Reviewed by Alex Christensen.
543
544         * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
545
546 2017-06-28  Don Olmstead  <don.olmstead@sony.com>
547
548         Unreviewed, adding Don Olmstead to contributors.json
549
550         * Scripts/webkitpy/common/config/contributors.json:
551
552 2017-06-28  Alex Christensen  <achristensen@webkit.org>
553
554         WebsitePolicies given with navigation policy for redirects should apply to the provisional document
555         https://bugs.webkit.org/show_bug.cgi?id=173886
556         <rdar://problem/32543191>
557
558         Reviewed by Andy Estes.
559
560         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
561         (ParsedRange::ParsedRange):
562         (-[TestSchemeHandler initWithVideoData:]):
563         (-[TestSchemeHandler webView:startURLSchemeTask:]):
564         (-[TestSchemeHandler webView:stopURLSchemeTask:]):
565         (TEST):
566
567 2017-06-27  JF Bastien  <jfbastien@apple.com>
568
569         WebAssembly: running out of executable memory should throw OoM
570         https://bugs.webkit.org/show_bug.cgi?id=171537
571         <rdar://problem/32963338>
572
573         Reviewed by Saam Barati.
574
575         * Scripts/run-jsc-stress-tests: add a configuration which runs the
576         tests under limited executable memory and avoids non-WebAssembly
577         code generation so that we more reliably run out of executable
578         memory in WebAssembly.
579
580 2017-06-27  Wenson Hsieh  <wenson_hsieh@apple.com>
581
582         [iOS DnD] Support dragging out of contenteditable areas without a prior selection
583         https://bugs.webkit.org/show_bug.cgi?id=173854
584         <rdar://problem/32236827>
585
586         Reviewed by Ryosuke Niwa and Tim Horton.
587
588         Adds a new test to check that an image can be dragged out of a contenteditable and dropped.
589
590         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
591         * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-and-target.html: Added.
592         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
593         (TestWebKitAPI::TEST):
594
595 2017-06-27  Don Olmstead  <don.olmstead@sony.com>
596
597         [PAL] Add symbol export macros for PAL
598         https://bugs.webkit.org/show_bug.cgi?id=171519
599
600         Reviewed by Konstantin Tokarev.
601
602         * DumpRenderTree/config.h:
603         * TestWebKitAPI/CMakeLists.txt:
604         * TestWebKitAPI/config.h:
605         * WebKitTestRunner/config.h:
606
607 2017-06-27  John Wilander  <wilander@apple.com>
608
609         Resource Load Statistics: Add telemetry
610         https://bugs.webkit.org/show_bug.cgi?id=173499
611         <rdar://problem/32826094>
612
613         Reviewed by Brent Fulgham.
614
615         Adds three new testRunner functions:
616         - installStatisticsDidRunTelemetryCallback()
617         - statisticsFireTelemetryHandler()
618         - setStatisticsNotifyPagesWhenTelemetryWasCaptured()
619
620         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
621         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
622         (WTR::InjectedBundle::didReceiveMessageToPage):
623         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
624         (WTR::TestRunner::installStatisticsDidRunTelemetryCallback):
625         (WTR::TestRunner::statisticsDidRunTelemetryCallback):
626         (WTR::TestRunner::statisticsFireTelemetryHandler):
627         (WTR::TestRunner::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
628         * WebKitTestRunner/InjectedBundle/TestRunner.h:
629         * WebKitTestRunner/TestController.cpp:
630         (WTR::TestController::resetStateToConsistentValues):
631         (WTR::TestController::statisticsFireTelemetryHandler):
632         (WTR::TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
633         * WebKitTestRunner/TestController.h:
634         * WebKitTestRunner/TestInvocation.cpp:
635         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
636
637 2017-06-27  Ting-Wei Lan  <lantw44@gmail.com>
638
639         Add missing includes to fix compilation error on FreeBSD
640         https://bugs.webkit.org/show_bug.cgi?id=172919
641
642         Reviewed by Mark Lam.
643
644         * ImageDiff/cairo/PlatformImageCairo.cpp:
645
646 2017-06-26  Jonathan Bedard  <jbedard@apple.com>
647
648         Unreviewed, rolling out r218783.
649
650         Causing accessibility/mac/setting-attributes-is-
651         asynchronous.html to crash consistently on mac-wk2 Debug
652
653         Reverted changeset:
654
655         "AX: Cannot call setValue() on contenteditable or ARIA text
656         controls"
657         https://bugs.webkit.org/show_bug.cgi?id=173520
658         http://trac.webkit.org/changeset/218783
659
660 2017-06-26  Yusuke Suzuki  <utatane.tea@gmail.com>
661
662         [WTF] Drop Thread::create(obsolete things) API since we can use lambda
663         https://bugs.webkit.org/show_bug.cgi?id=173825
664
665         Reviewed by Saam Barati.
666
667         * DumpRenderTree/JavaScriptThreading.cpp:
668         (runJavaScriptThread):
669         (startJavaScriptThreads):
670         * DumpRenderTree/mac/DumpRenderTree.mm:
671         (runThread):
672         (runPthread):
673         (testThreadIdentifierMap):
674
675 2017-06-26  David Kilzer  <ddkilzer@apple.com>
676
677         [TestWebKitAPI] Fix false-positive bad release warnings found by clang static analyzer
678         <https://webkit.org/b/173837>
679
680         Reviewed by Geoffrey Garen.
681
682         The clang static analyzer can't reason about objects that are
683         assigned to a delegate as +1 retained, and then released
684         later in a different method when the delegate is cleared.
685
686         Instead, use a common idiom where the object setting the
687         delegate retains it as an instance variable on initialization.
688         Then the same object clears the delegate and releases its
689         instance variable during teardown.
690
691         Also add EXPECT_TRUE() tests to make sure the delegate objects
692         match before teardown.
693
694         * TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
695         (TestWebKitAPI::FullscreenZoomInitialFrame::initializeView):
696         (TestWebKitAPI::FullscreenZoomInitialFrame::teardownView):
697         * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
698         (TestWebKitAPI::PageVisibilityStateWithWindowChanges::initializeView):
699         (TestWebKitAPI::PageVisibilityStateWithWindowChanges::teardownView):
700
701 2017-06-26  David Kilzer  <ddkilzer@apple.com>
702
703         [TestWebKitAPI] REGRESSION (r218750): Fix leak of NSURLResponse in WKURLSchemeHandler-1.mm
704         <https://webkit.org/b/173836>
705
706         Reviewed by Brady Eidson.
707
708         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
709         (-[RedirectSchemeHandler webView:startURLSchemeTask:]): Use
710         adoptNS() to fix the leak.  Also use auto/adoptNS() for other
711         objects in this test.
712
713 2017-06-26  Joanmarie Diggs  <jdiggs@igalia.com>
714
715         [ATK] Add support for aria-details and aria-errormessage
716         https://bugs.webkit.org/show_bug.cgi?id=172588
717
718         Reviewed by Chris Fleizach.
719
720         Add additional methods to test ARIA properties which are exposed via
721         AtkRelation. Also bump minimum versions of at-spi2-core and at-spi2-atk
722         to versions which support the details and error-message relation types.
723
724         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
725         (WTR::AccessibilityUIElement::ariaDetailsElementAtIndex):
726         (WTR::AccessibilityUIElement::ariaDetailsReferencingElementAtIndex):
727         (WTR::AccessibilityUIElement::ariaErrorMessageElementAtIndex):
728         (WTR::AccessibilityUIElement::ariaErrorMessageReferencingElementAtIndex):
729         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
730         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
731         (WTR::AccessibilityUIElement::ariaDetailsElementAtIndex):
732         (WTR::AccessibilityUIElement::ariaDetailsReferencingElementAtIndex):
733         (WTR::AccessibilityUIElement::ariaErrorMessageElementAtIndex):
734         (WTR::AccessibilityUIElement::ariaErrorMessageReferencingElementAtIndex):
735         * gtk/jhbuild.modules:
736
737 2017-06-26  Carlos Garcia Campos  <cgarcia@igalia.com>
738
739         Unreviewed. Add libfii to GTK+ install dependencies script.
740
741         * gtk/install-dependencies:
742
743 2017-06-25  Michael Catanzaro  <mcatanzaro@igalia.com>
744
745         Unreviewed, rolling out r215190.
746
747         Broke product select element on GNOME Bugzilla
748
749         Reverted changeset:
750
751         "[GTK] Misplaced right click menu on web page due to
752         deprecated gtk_menu_popup()"
753         https://bugs.webkit.org/show_bug.cgi?id=170553
754         http://trac.webkit.org/changeset/215190
755
756 2017-06-24  Joseph Pecoraro  <pecoraro@apple.com>
757
758         Remove Reflect.enumerate
759         https://bugs.webkit.org/show_bug.cgi?id=173806
760
761         Reviewed by Yusuke Suzuki.
762
763         * Scripts/run-jsc-stress-tests:
764
765 2017-06-24  Chris Fleizach  <cfleizach@apple.com>
766
767         AX: Cannot call setValue() on contenteditable or ARIA text controls
768         https://bugs.webkit.org/show_bug.cgi?id=173520
769
770         Reviewed by Ryosuke Niwa.
771
772         Add setValue() method to WKTR (already existed in DRT).
773
774         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
775         (WTR::AccessibilityUIElement::setValue):
776         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
777         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
778         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
779         (WTR::AccessibilityUIElement::setValue):
780
781 2017-06-23  Keith Miller  <keith_miller@apple.com>
782
783         Switch VMTraps to use halt instructions rather than breakpoint instructions
784         https://bugs.webkit.org/show_bug.cgi?id=173677
785
786         Reviewed by JF Bastien.
787
788         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
789         (TEST):
790
791 2017-06-23  Youenn Fablet  <youenn@apple.com>
792
793         Set getUserMedia permission to true by default on WTR
794         https://bugs.webkit.org/show_bug.cgi?id=173610
795
796         Reviewed by Alex Christensen.
797
798         Adding a way to reset the getUserMedia permission to pending.
799
800         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
801         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
802         (WTR::InjectedBundle::setUserMediaPermissionAsUnset):
803         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
804         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
805         (WTR::TestRunner::setUserMediaPermissionAsUnset):
806         * WebKitTestRunner/InjectedBundle/TestRunner.h:
807         * WebKitTestRunner/TestController.cpp:
808         (WTR::TestController::resetStateToConsistentValues):
809         (WTR::TestController::setUserMediaPermissionAsUnset):
810         * WebKitTestRunner/TestController.h:
811         * WebKitTestRunner/TestInvocation.cpp:
812         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
813
814 2017-06-23  Alex Christensen  <achristensen@webkit.org>
815
816         Add SPI to WKURLSchemeTask for redirection
817         https://bugs.webkit.org/show_bug.cgi?id=173730
818
819         Reviewed by Brady Eidson.
820
821         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
822         (-[SchemeHandler webView:startURLSchemeTask:]):
823         (-[SchemeHandler webView:stopURLSchemeTask:]):
824         (TEST):
825         (-[RedirectSchemeHandler webView:startURLSchemeTask:]):
826         (-[RedirectSchemeHandler webView:stopURLSchemeTask:]):
827         (-[RedirectSchemeHandler webView:didReceiveServerRedirectForProvisionalNavigation:]):
828         (-[RedirectSchemeHandler webView:decidePolicyForNavigationResponse:decisionHandler:]):
829         (-[RedirectSchemeHandler userContentController:didReceiveScriptMessage:]):
830
831 2017-06-23  Carlos Garcia Campos  <cgarcia@igalia.com>
832
833         [WPE] Use JSC API to send script messages from web extension in tests
834         https://bugs.webkit.org/show_bug.cgi?id=173757
835
836         Reviewed by Žan Doberšek.
837
838         The GTK+ uses DOM bindings to send the messages. We can just build the message string and use JSEvaluateScript
839         to run postMessage().
840
841         Fixes: /wpe/WebKitSecurityManager/file-xhr
842                /wpe/WebKitConsoleMessage/console-api
843                /wpe/WebKitConsoleMessage/js-exception
844                /wpe/WebKitConsoleMessage/network-error
845                /wpe/WebKitConsoleMessage/security-error
846
847         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
848         (testWebKitConsoleMessageSecurityError): Remove ifdefs.
849         (beforeAll): Ditto.
850         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
851         (testWebContextSecurityFileXHR): Ditto.
852         (beforeAll): Ditto.
853         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
854         (consoleMessageSentCallback): Use JSEvaluateScript in WPE. We need to escape the '"' in the message string.
855         (pageCreatedCallback): Remove ifdefs.
856
857 2017-06-23  Carlos Garcia Campos  <cgarcia@igalia.com>
858
859         Unreviewed. Fix WPE /wpe/WebKitWebView/javascript-dialogs and /wpe/WebKitWebView/window-properties
860
861         Skip onbeforeunload dialog tests for now in WPE since we don't have a implemention for
862         simulateUserInteraction(). And do not expect changes in "geometry" property of WebKitWindowProperties that
863         doesn't exist yet in WPE.
864
865         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
866         (testWebViewJavaScriptDialogs):
867         (testWebViewWindowProperties):
868
869 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
870
871         [GTK] Upgrade pixman and cairo in jhbuild
872         https://bugs.webkit.org/show_bug.cgi?id=173710
873
874         Reviewed by Carlos Alberto Lopez Perez.
875
876         * gtk/jhbuild.modules:
877
878 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
879
880         REGRESSION(r218686): [GTK] Several unit tests are failing after r218686 in the bots
881         https://bugs.webkit.org/show_bug.cgi?id=173711
882
883         Reviewed by Carlos Alberto Lopez Perez.
884
885         I can't reproduce it locally, but it's complaining about a g_setenv() and I only added one in r218686 to recover
886         the XDG_RUNTIME_DIR, because it's required by Wayland to work. So, I guess that env var is not set in the bots.
887
888         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
889         (WebKitTestBus::run): Ensure value is not nullptr before calling g_setenv().
890
891 2017-06-22  David Kilzer  <ddkilzer@apple.com>
892
893         REGRESSION (r218419): 7 leaks in PluginLoadClientPolicies.mm
894         <https://webkit.org/b/173721>
895
896         Reviewed by Joseph Pecoraro.
897
898         Use RetainPtr<> to create NSMutableDictionary and NSNumber
899         objects to fix leaks and to avoid the autoreleasepool.
900
901         * TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm:
902         (TEST):
903
904 2017-06-22  Matt Lewis  <jlewis3@apple.com>
905
906         Unreviewed, rolling out r218633.
907
908         The test is failing frequently on Sierra Debug and Windows
909
910         Reverted changeset:
911
912         "AX: Cannot call setValue() on contenteditable or ARIA text
913         controls"
914         https://bugs.webkit.org/show_bug.cgi?id=173520
915         http://trac.webkit.org/changeset/218633
916
917 2017-06-22  David Kilzer  <ddkilzer@apple.com>
918
919         [TestWebKitAPI] Fix misuse of -[NSData dataWithBytesNoCopy:length:] with global variables
920         <https://webkit.org/b/173690>
921
922         Reviewed by Chris Dumez.
923
924         Per documentation, -[NSData dataWithBytesNoCopy:length:] takes
925         ownership of malloc()-ed memory, then frees it when it's
926         released.  These tests were passing global variables into the
927         method, which is not malloc()-ed memory, which violates the API
928         contract.
929
930         The fix is to switch to use
931         -[NSData dataWithBytesNoCopy:length:freeWhenDone:] and to pass
932         NO for the last argument.
933
934         Caught by the clang static analyzer.
935
936         * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
937         (TEST):
938         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
939         (TEST):
940
941 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
942
943         [GTK] Upgrade Harfbuzz to version 1.4.2
944         https://bugs.webkit.org/show_bug.cgi?id=173592
945
946         Reviewed by Carlos Alberto Lopez Perez.
947
948         * gtk/jhbuild.modules:
949
950 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
951
952         [WPE] Update WPEBackend-mesa
953         https://bugs.webkit.org/show_bug.cgi?id=173705
954
955         Reviewed by Carlos Alberto Lopez Perez.
956
957         A crash has been fixed, needed for unit tests to work.
958
959         * wpe/jhbuild.modules:
960
961 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
962
963         Remove unused coordinated graphics C API
964         https://bugs.webkit.org/show_bug.cgi?id=173706
965
966         Reviewed by Žan Doberšek.
967
968         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive.cpp: Removed.
969         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive_Bundle.cpp: Removed.
970         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewRestoreZoomAndScrollBackForward.cpp: Removed.
971         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewUserViewportToContents.cpp: Removed.
972         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/backforward1.html: Removed.
973         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/backforward2.html: Removed.
974
975 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
976
977         [WPE] Build glib API tests
978         https://bugs.webkit.org/show_bug.cgi?id=173702
979
980         Reviewed by Žan Doberšek.
981
982         Many of the tests pass without problems, others need to be investigated, and some others are known issues. The
983         main difference between the GTK+ and WPE WebKitWebView is that in GTK+ it's a GtkWidget, so initially
984         unowned. The tests assume that webkit_web_view_new methods return a floating reference. This patch adds
985         Test::adoptView() method that returns a GRefPtr<WebKitWebView> with a different implementation in GTK+ and
986         WPE. In the case of GTK+, it sinks the floating reference, while in WPE it simply adopts the reference. Another
987         difference is that in GTK+ the web view is initially hidden and needs to be added to a window to make it
988         visible. Also, some tests need the web view to be realized to work, and others need that the view is added to a
989         toplevel window, instead of a popup window. All those things are not needed at all in WPE. I've added several
990         #ifdefs with FIXME comments for the things that we know don't work in WPE yet, for example, because we haven't
991         implemented the methods to send events to the web view. Those will be removed eventually when we fix the issues
992         and implement the missing features.
993
994         * CMakeLists.txt:
995         * TestWebKitAPI/Tests/WebKit2Gtk/EditorTest.cpp:
996         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
997         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
998         (testAutomationSessionRequestSession):
999         * TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp:
1000         (testWebKitWebViewSessionState):
1001         (testWebKitWebViewSessionStateWithFormData):
1002         (testWebKitWebViewNavigationAfterSessionRestore):
1003         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
1004         (beforeAll):
1005         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
1006         (testCookieManagerEphemeral):
1007         * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
1008         (testBlobDownload):
1009         (beforeAll):
1010         * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
1011         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
1012         * TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp:
1013         (testProcessPerWebView):
1014         * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
1015         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
1016         (testWebViewCreateNavigationData):
1017         (testWebViewJavaScriptDialogs):
1018         (testWebViewWindowProperties):
1019         (testWebViewMouseTarget):
1020         (testWebViewGeolocationPermissionRequests):
1021         (testWebViewUserMediaPermissionRequests):
1022         (testWebViewAudioOnlyUserMediaPermissionRequests):
1023         (testWebViewFileChooserRequest):
1024         (beforeAll):
1025         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
1026         (beforeAll):
1027         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
1028         (testPrivateBrowsing):
1029         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
1030         (testFindControllerHide):
1031         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp:
1032         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
1033         (testWebKitSettings):
1034         (beforeAll):
1035         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
1036         (testWebViewNewWithUserContentManager):
1037         (beforeAll):
1038         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
1039         (testWebContextEphemeral):
1040         (testWebContextProxySettings):
1041         (beforeAll):
1042         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1043         (testWebViewWebContext):
1044         (testWebViewWebContextLifetime):
1045         (testWebViewEphemeral):
1046         (testWebViewSettings):
1047         (testWebViewCanShowMIMEType):
1048         (testWebViewPageVisibility):
1049         (testWebViewIsPlayingAudio):
1050         (beforeAll):
1051         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
1052         (testWebsiteDataEphemeral):
1053         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
1054         (documentLoadedCallback):
1055         (pageCreatedCallback):
1056         (methodCallCallback):
1057         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h:
1058         * TestWebKitAPI/glib/CMakeLists.txt:
1059         * TestWebKitAPI/glib/PlatformGTK.cmake:
1060         * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp:
1061         * TestWebKitAPI/glib/WebKitGLib/TestMain.cpp:
1062         (main):
1063         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1064         (Test::adoptView):
1065         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
1066         (WebKitTestBus::run):
1067         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
1068         (WebViewTest::~WebViewTest):
1069         (WebViewTest::initializeWebView):
1070         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
1071         * TestWebKitAPI/glib/WebKitGLib/gtk/WebViewTestGtk.cpp: Added.
1072         (WebViewTest::platformDestroy):
1073         (WebViewTest::platformInitializeWebView):
1074         (WebViewTest::quitMainLoopAfterProcessingPendingEvents):
1075         (WebViewTest::resizeView):
1076         (WebViewTest::hideView):
1077         (parentWindowMapped):
1078         (WebViewTest::showInWindow):
1079         (WebViewTest::showInWindowAndWaitUntilMapped):
1080         (WebViewTest::mouseMoveTo):
1081         (WebViewTest::clickMouseButton):
1082         (WebViewTest::emitPopupMenuSignal):
1083         (WebViewTest::keyStroke):
1084         (WebViewTest::doMouseButtonEvent):
1085         * TestWebKitAPI/glib/WebKitGLib/wpe/WebViewTestWPE.cpp: Copied from Tools/TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h.
1086         (WebViewTest::platformDestroy):
1087         (WebViewTest::platformInitializeWebView):
1088         (WebViewTest::quitMainLoopAfterProcessingPendingEvents):
1089         (WebViewTest::resizeView):
1090         (WebViewTest::hideView):
1091         (WebViewTest::mouseMoveTo):
1092         (WebViewTest::clickMouseButton):
1093         (WebViewTest::keyStroke):
1094
1095 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1096
1097         [GTK] Move WebKit2 GLib API tests to glib directories
1098         https://bugs.webkit.org/show_bug.cgi?id=173642
1099
1100         Reviewed by Žan Doberšek.
1101
1102         * CMakeLists.txt:
1103         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt: Removed.
1104         * TestWebKitAPI/Tests/WebKit2Gtk/resources/webkit2gtk-tests.gresource.xml: Removed.
1105         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/FrameTest.cpp.
1106         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestAuthentication.cpp.
1107         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp.
1108         * TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestBackForwardList.cpp.
1109         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestConsoleMessage.cpp.
1110         (testWebKitConsoleMessageNetworkError):
1111         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestCookieManager.cpp.
1112         * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp.
1113         * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestFrame.cpp.
1114         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestLoaderClient.cpp.
1115         (testLoadFromGResource):
1116         * TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp.
1117         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp.
1118         * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp.
1119         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp.
1120         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebExtensions.cpp.
1121         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp.
1122         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFindController.cpp.
1123         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitPolicyClient.cpp.
1124         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSecurityOrigin.cpp.
1125         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp.
1126         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitUserContentManager.cpp.
1127         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp.
1128         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp.
1129         (testWebViewRunJavaScript):
1130         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebsiteData.cpp.
1131         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp.
1132         (registerGResource):
1133         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp.
1134         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h.
1135         * TestWebKitAPI/Tests/WebKitGLib/resources/blank.ico: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/blank.ico.
1136         * TestWebKitAPI/Tests/WebKitGLib/resources/boring.html: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/boring.html.
1137         * TestWebKitAPI/Tests/WebKitGLib/resources/link-title.js: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/link-title.js.
1138         * TestWebKitAPI/Tests/WebKitGLib/resources/silence.mpg: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/silence.mpg.
1139         * TestWebKitAPI/Tests/WebKitGLib/resources/simple.json: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/simple.json.
1140         * TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.pem: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test-cert.pem.
1141         * TestWebKitAPI/Tests/WebKitGLib/resources/test-key.pem: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test-key.pem.
1142         * TestWebKitAPI/Tests/WebKitGLib/resources/test.pdf: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test.pdf.
1143         * TestWebKitAPI/Tests/WebKitGLib/resources/track.ogg: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/track.ogg.
1144         * TestWebKitAPI/Tests/WebKitGLib/resources/webkitglib-tests.gresource.xml: Added.
1145         * TestWebKitAPI/glib/CMakeLists.txt: Added.
1146         * TestWebKitAPI/glib/PlatformGTK.cmake: Added.
1147         * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.cpp.
1148         * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.h.
1149         * TestWebKitAPI/glib/WebKitGLib/TestMain.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/TestMain.cpp.
1150         (registerGResource):
1151         * TestWebKitAPI/glib/WebKitGLib/TestMain.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/TestMain.h.
1152         (Test::getResourcesDir):
1153         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.cpp.
1154         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.h.
1155         * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.cpp.
1156         * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.h.
1157         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp.
1158         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h.
1159
1160 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1161
1162         [WPE] Add initial web extensions API
1163         https://bugs.webkit.org/show_bug.cgi?id=173640
1164
1165         Reviewed by Žan Doberšek.
1166
1167         Add style checker exceptions for WPE web extensions API files.
1168
1169         * Scripts/webkitpy/style/checker.py:
1170
1171 2017-06-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1172
1173         [iOS DnD] [WK2] Cancelling a drag interaction using the ObjC SPI causes subsequent dragging to fail
1174         https://bugs.webkit.org/show_bug.cgi?id=173659
1175         <rdar://problem/32879788>
1176
1177         Reviewed by Tim Horton.
1178
1179         Adds a new test to verify that a lift cancelled within the UI process does not cause subsequent dragging to fail.
1180
1181         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-target-div.html:
1182
1183         Augment this test page to log dragend and dragstart events on the drag source as well.
1184
1185         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1186         (checkStringArraysAreEqual):
1187         (TestWebKitAPI::TEST):
1188
1189 2017-06-21  Antoine Quint  <graouts@apple.com>
1190
1191         Ensure DRT always logs rAF suspension debugging code
1192         https://bugs.webkit.org/show_bug.cgi?id=173681
1193
1194         Reviewed by Tim "Mr. T" Horton.
1195
1196         * DumpRenderTree/mac/DumpRenderTree.mm:
1197         (resetWebPreferencesToConsistentValues):
1198
1199 2017-06-21  Chris Dumez  <cdumez@apple.com>
1200
1201         Allow constructing a WTF:Function from a function pointer
1202         https://bugs.webkit.org/show_bug.cgi?id=173660
1203
1204         Reviewed by Alex Christensen.
1205
1206         Add API test coverage.
1207
1208         * TestWebKitAPI/Tests/WTF/Function.cpp:
1209         (TestWebKitAPI::returnThree):
1210         (TestWebKitAPI::returnFour):
1211         (TestWebKitAPI::returnPassedValue):
1212         (TestWebKitAPI::TEST):
1213
1214 2017-06-21  Antoine Quint  <graouts@apple.com>
1215
1216         Add logging to identify when the Page suspends scripted animations
1217         https://bugs.webkit.org/show_bug.cgi?id=173626
1218
1219         Reviewed by Tim Horton.
1220
1221         Turn the new logging on for WK1/DRT since the issue we're trying to pinpoint only occurs on WK1 bots.
1222
1223         * DumpRenderTree/mac/DumpRenderTree.mm:
1224         (resetWebPreferencesToConsistentValues):
1225
1226 2017-06-21  Chris Fleizach  <cfleizach@apple.com>
1227
1228         AX: Cannot call setValue() on contenteditable or ARIA text controls
1229         https://bugs.webkit.org/show_bug.cgi?id=173520
1230
1231         Reviewed by Ryosuke Niwa.
1232
1233         Add setValue() method to WKTR (already existed in DRT).
1234
1235         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
1236         (WTR::AccessibilityUIElement::setValue):
1237         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1238         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
1239         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1240         (WTR::AccessibilityUIElement::setValue):
1241
1242 2017-06-21  Zan Dobersek  <zdobersek@igalia.com>
1243
1244         List libtasn1 packages in GTK+ and WPE install-dependencies scripts
1245         as one of the dependencies required to build the product.
1246
1247         Rubber-stamped by Carlos Garcia Campos.
1248
1249         * gtk/install-dependencies:
1250         * wpe/install-dependencies:
1251
1252 2017-06-20  Myles C. Maxfield  <mmaxfield@apple.com>
1253
1254         Disable font variations on macOS Sierra and iOS 10
1255         https://bugs.webkit.org/show_bug.cgi?id=173618
1256         <rdar://problem/32879164>
1257
1258         Reviewed by Jon Lee.
1259
1260         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1261
1262 2017-06-20  Wenson Hsieh  <wenson_hsieh@apple.com>
1263
1264         [iOS DnD] [WK2] Remove custom logic for disambiguating long press action sheet gestures and drag lift
1265         https://bugs.webkit.org/show_bug.cgi?id=173578
1266         <rdar://problem/32825028>
1267
1268         Reviewed by Tim Horton.
1269
1270         Slight tweak to ensure that DataInteractionTests.CustomActionSheetPopover still passes and verifies that showing
1271         a custom popover does not cause dragging to fail when the popover is presented.
1272
1273         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1274         (-[DataInteractionSimulator _advanceProgress]):
1275
1276 2017-06-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1277
1278         [WPE] Add initial implementation of glib API
1279         https://bugs.webkit.org/show_bug.cgi?id=173546
1280
1281         Reviewed by Žan Doberšek.
1282
1283         Disable geolocation because WPE doesn't implement any provider and update the style checker exceptions to
1284         include WPE glib API files.
1285
1286         * Scripts/webkitperl/FeatureList.pm:
1287         * Scripts/webkitpy/style/checker.py:
1288         * Scripts/webkitpy/style/checkers/cpp.py:
1289         (check_identifier_name_in_declaration):
1290
1291 2017-06-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1292
1293         [GTK] Upgrade to ICU to version 57.1
1294         https://bugs.webkit.org/show_bug.cgi?id=173538
1295
1296         Reviewed by Žan Doberšek.
1297
1298         * gtk/jhbuild.modules:
1299
1300 2017-06-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1301
1302         [GTK] Remove unneeded modules from the jhbuild
1303         https://bugs.webkit.org/show_bug.cgi?id=170540
1304
1305         Reviewed by Michael Catanzaro.
1306
1307         We are building libxslt and libffi that we don't really need to build from sources.
1308
1309         * gtk/jhbuild.modules:
1310
1311 2017-06-19  Frederic Wang  <fwang@igalia.com>
1312
1313         [Mac] Add an experimental feature setting for async frame scrolling
1314         https://bugs.webkit.org/show_bug.cgi?id=173359
1315
1316         Reviewed by Simon Fraser.
1317
1318         * DumpRenderTree/mac/DumpRenderTree.mm:
1319         (enableExperimentalFeatures): Do not enable async frame scrolling for now.
1320         (resetWebPreferencesToConsistentValues): Disable async frame scrolling by default.
1321         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1322         (WTR::InjectedBundle::beginTesting): Initalize to async frame scrolling to false.
1323
1324 2017-06-19  Guillaume Emont  <guijemont@igalia.com>
1325
1326         Unreviewed, adding myself to contributors.json
1327
1328         * Scripts/webkitpy/common/config/contributors.json:
1329
1330 2017-06-19  Joseph Pecoraro  <pecoraro@apple.com>
1331
1332         test262: Completion values for control flow do not match the spec
1333         https://bugs.webkit.org/show_bug.cgi?id=171265
1334
1335         Reviewed by Saam Barati.
1336
1337         * Scripts/run-jsc-stress-tests:
1338         Include a :failDueToOutdatedOrBadTest to mark failures with justification.
1339
1340 2017-06-19  Zalan Bujtas  <zalan@apple.com>
1341
1342         Opening certain mails brings up a mail that grows indefinitely.
1343         https://bugs.webkit.org/show_bug.cgi?id=173562
1344         <rdar://problem/32766579>
1345
1346         Reviewed by Tim Horton.
1347
1348         * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
1349         (TEST):
1350
1351 2017-06-19  Wenson Hsieh  <wenson_hsieh@apple.com>
1352
1353         [iOS DnD] Support .zip archives for file uploads via drag and drop
1354         https://bugs.webkit.org/show_bug.cgi?id=173511
1355         <rdar://problem/32521025>
1356
1357         Reviewed by Tim Horton.
1358
1359         Adds tests for dropping .zip archives into a JavaScript-based file upload area, as well as into a file input.
1360         Also verifies that URLs are not handled as file drops. See WebCore ChangeLog for more details.
1361
1362         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1363         * TestWebKitAPI/Tests/WebKit2Cocoa/compressed-files.zip: Added.
1364         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1365         (testZIPArchive):
1366         (TestWebKitAPI::TEST):
1367
1368 2017-06-18  Darin Adler  <darin@apple.com>
1369
1370         Fix Ref to deref before assignment, add tests for this to RefPtr, Ref, Function
1371         https://bugs.webkit.org/show_bug.cgi?id=173526
1372
1373         Reviewed by Sam Weinig.
1374
1375         * TestWebKitAPI/CMakeLists.txt: Added Function.cpp.
1376         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
1377
1378         * TestWebKitAPI/Tests/WTF/Function.cpp: Added. Contains basic tests and some
1379         tests for assignment before destruction ones.
1380
1381         * TestWebKitAPI/Tests/WTF/MoveOnly.h: Added a () operator so this can be used
1382         as a function, so it can be used in WTF::Function tests.
1383
1384         * TestWebKitAPI/Tests/WTF/Ref.cpp: Use EXPECT macros insead of ASSERT.
1385         Added tests for swap and for assignment before deref.
1386
1387         * TestWebKitAPI/Tests/WTF/RefLogger.cpp: Stopped using inlining; no good reason
1388         to inline everything. Also removed the unnecessary clearing of the log every time
1389         the DerivedRefLogger constructor is called.
1390         * TestWebKitAPI/Tests/WTF/RefLogger.h: Ditto.
1391
1392         * TestWebKitAPI/Tests/WTF/RefPtr.cpp: Use EXPECT macros instead of ASSERT.
1393         Added tests for assignment before deref and similar for releaseNonNull.
1394
1395 2017-06-19  Sam Weinig  <sam@webkit.org>
1396
1397         [WebIDL] Properly model buffer source / typed arrays as their own IDL types
1398         https://bugs.webkit.org/show_bug.cgi?id=173513
1399
1400         Reviewed by Alex Christensen.
1401
1402         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
1403         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
1404         Replace IsNonPointerType subroutine with IsPrimitiveType so we can remove IsNonPointerType.
1405
1406 2017-06-19  Per Arne Vollan  <pvollan@apple.com>
1407
1408         [Win] fast/dom/assign-to-window-status.html is flaky.
1409         https://bugs.webkit.org/show_bug.cgi?id=173512
1410
1411         Reviewed by Alex Christensen.
1412
1413         We should not dump status callbacks when test is done.
1414
1415         * DumpRenderTree/win/UIDelegate.cpp:
1416         (UIDelegate::setStatusText):
1417
1418 2017-06-19  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1419
1420         [WPE][JHBuild] Update WPEBackend-mesa
1421         https://bugs.webkit.org/show_bug.cgi?id=173433
1422
1423         Unreviewed.
1424
1425         Update WPEBackend-mesa back (like it was done originally in r218344)
1426         after fixing the issue with the DISPLAY environment variables that
1427         caused the crashes.
1428
1429         * wpe/jhbuild.modules:
1430
1431 2017-06-19  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1432
1433         Rename unit test file after r218482
1434         https://bugs.webkit.org/show_bug.cgi?id=173483
1435
1436         Unreviewed.
1437
1438         * Scripts/webkitpy/port/waylanddriver_unittest.py: Renamed from Tools/Scripts/webkitpy/port/wayland_unittest.py.
1439
1440 2017-06-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1441
1442         Unreviewed. Fix wrong style checker condition added in r218487.
1443
1444         * Scripts/webkitpy/style/checkers/cpp.py:
1445         (check_identifier_name_in_declaration):
1446
1447 2017-06-19  Adrian Perez de Castro  <aperez@igalia.com>
1448
1449         Missing <functional> includes make builds fail with GCC 7.x
1450         https://bugs.webkit.org/show_bug.cgi?id=173544
1451
1452         Unreviewed gardening.
1453
1454         Fix compilation with GCC 7.
1455
1456         * TestWebKitAPI/Tests/WTF/HashSet.cpp:
1457         * TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h:
1458
1459 2017-06-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1460
1461         [GTK] Move GTK+ API files that could be shared to glib dirs
1462         https://bugs.webkit.org/show_bug.cgi?id=173545
1463
1464         Reviewed by Žan Doberšek.
1465
1466         Update paths of GTK+ API in watchlist and style checker.
1467
1468         * Scripts/webkitpy/common/config/watchlist:
1469         * Scripts/webkitpy/style/checker.py:
1470         * Scripts/webkitpy/style/checkers/cpp.py:
1471         (check_identifier_name_in_declaration):
1472
1473 2017-06-19  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1474
1475         Port setup_environ_for_server should not set environment variables related with the driver.
1476         https://bugs.webkit.org/show_bug.cgi?id=173483
1477
1478         Reviewed by Carlos Garcia Campos.
1479
1480         The port setup_environ_for_server() should not set environment variables
1481         that depend on the type of driver (like DISPLAY or GDK_BACKEND).
1482         This varibles should be only set on the driver setup_environ_for_test().
1483
1484         This causes that (for example) the variable DISPLAY or XAUTHORITY leaks
1485         into the test environment even when running the tests with a driver
1486         that is not the Xorg or Xvfb one.
1487
1488         * Scripts/webkitpy/port/base.py: Stop setting XAUTHORITY and DISPLAY here.
1489         (Port.to.setup_environ_for_server):
1490         * Scripts/webkitpy/port/driver.py: Remove unneded WEBKIT_OUTPUTDIR that is already set on base.py
1491         (Driver._setup_environ_for_driver):
1492         * Scripts/webkitpy/port/driver_unittest.py:
1493         (DriverTest.test_setup_environ_for_test):
1494         (DriverTest):
1495         (DriverTest.test_setup_environ_base_vars):
1496         * Scripts/webkitpy/port/gtk.py: Stop setting GDK_BACKEND here and do that on the driver (Xvfb).
1497         (GtkPort.setup_environ_for_server):
1498         * Scripts/webkitpy/port/wayland_unittest.py: Added.
1499         (WaylandDriverTest):
1500         (WaylandDriverTest.make_driver):
1501         (WaylandDriverTest.make_environment):
1502         (WaylandDriverTest.test_checkdriver):
1503         (WaylandDriverTest.test_environment_needed_variables):
1504         (WaylandDriverTest.test_environment_forbidden_variables):
1505         (WaylandDriverTest.test_environment_optional_variables):
1506         * Scripts/webkitpy/port/waylanddriver.py: Allow the driver to run also with WAYLAND_SOCKET.
1507         (WaylandDriver.check_driver):
1508         (WaylandDriver._setup_environ_for_test):
1509         * Scripts/webkitpy/port/xorgdriver.py:
1510         (XorgDriver.check_driver):
1511         (XorgDriver._setup_environ_for_test):
1512         * Scripts/webkitpy/port/xorgdriver_unittest.py: Added.
1513         (XorgDriverTest):
1514         (XorgDriverTest.make_driver):
1515         (XorgDriverTest.make_environment):
1516         (XorgDriverTest.test_checkdriver):
1517         (XorgDriverTest.test_environment_needed_variables):
1518         (XorgDriverTest.test_environment_forbidden_variables):
1519         (XorgDriverTest.test_environment_optional_variables):
1520         * Scripts/webkitpy/port/xvfbdriver.py:
1521         (XvfbDriver._setup_environ_for_test):
1522         * Scripts/webkitpy/port/xvfbdriver_unittest.py:
1523         (XvfbDriverTest.assertDriverStartSuccessful):
1524
1525
1526 2017-05-14 Frederic Wang  <fwang@igalia.com>
1527
1528         Add heuristic to avoid flattening "fullscreen" iframes
1529         https://bugs.webkit.org/show_bug.cgi?id=171914
1530
1531         Reviewed by Simon Fraser.
1532
1533         * DumpRenderTree/mac/DumpRenderTree.mm:
1534         (resetWebPreferencesToConsistentValues): Use WebKitFrameFlatteningDisabled.
1535
1536 2017-06-18  Chris Dumez  <cdumez@apple.com>
1537
1538         Crash when re-entering MediaDevicesEnumerationRequest::cancel()
1539         https://bugs.webkit.org/show_bug.cgi?id=173522
1540         <rdar://problem/31185739>
1541
1542         Reviewed by Darin Adler.
1543
1544         Add API test for re-entering Function's assignment operators.
1545
1546         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1547         * TestWebKitAPI/Tests/WTF/Function.cpp: Added.
1548         (TestWebKitAPI::TestObject::TestObject):
1549         (TestWebKitAPI::TestObject::~TestObject):
1550         (TestWebKitAPI::TestObject::operator()):
1551         (TestWebKitAPI::TEST):
1552
1553 2017-06-16  Dan Bernstein  <mitz@apple.com>
1554
1555         [Cocoa] Some declarations have missing or incorrect availability attributes
1556         https://bugs.webkit.org/show_bug.cgi?id=173508
1557
1558         Reviewed by Tim Horton.
1559
1560         * TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
1561         (TestWebKitAPI::TEST): Updated for renames.
1562
1563 2017-06-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1564
1565         [iOS DnD] Upstream iOS drag and drop implementation into OpenSource WebKit
1566         https://bugs.webkit.org/show_bug.cgi?id=173366
1567         <rdar://problem/32767014>
1568
1569         Reviewed by Tim Horton.
1570
1571         Move test pages and pieces of DataInteractionSimulator hidden behind WebKitAdditions into TestWebKitAPI. No
1572         change in behavior.
1573
1574         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1575         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1576         * TestWebKitAPI/Tests/WebKit2Cocoa/autofocus-contenteditable.html: Added.
1577         * TestWebKitAPI/Tests/WebKit2Cocoa/background-image-link-and-input.html: Added.
1578         * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-and-textarea.html: Added.
1579         * TestWebKitAPI/Tests/WebKit2Cocoa/div-and-large-image.html: Added.
1580         * TestWebKitAPI/Tests/WebKit2Cocoa/file-uploading.html: Added.
1581         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-contenteditable.html: Added.
1582         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-textarea.html: Added.
1583         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-input.html: Added.
1584         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-target-div.html: Added.
1585         * TestWebKitAPI/Tests/WebKit2Cocoa/prevent-operation.html: Added.
1586         * TestWebKitAPI/Tests/WebKit2Cocoa/prevent-start.html: Added.
1587         * TestWebKitAPI/Tests/WebKit2Cocoa/textarea-to-input.html: Added.
1588         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1589         (-[MockDragDropSession initWithItems:location:window:]):
1590         (-[MockDragDropSession allowsMoveOperation]):
1591         (-[MockDragDropSession isRestrictedToDraggingApplication]):
1592         (-[MockDragDropSession hasItemsConformingToTypeIdentifiers:]):
1593         (-[MockDragDropSession canLoadObjectsOfClass:]):
1594         (-[MockDragDropSession canLoadObjectsOfClasses:]):
1595         (-[MockDragDropSession items]):
1596         (-[MockDragDropSession setItems:]):
1597         (-[MockDragDropSession locationInView:]):
1598         (-[MockDataOperationSession initWithProviders:location:window:]):
1599         (-[MockDataOperationSession session]):
1600         (-[MockDataOperationSession isLocal]):
1601         (-[MockDataOperationSession progress]):
1602         (-[MockDataOperationSession setProgressIndicatorStyle:]):
1603         (-[MockDataOperationSession progressIndicatorStyle]):
1604         (-[MockDataOperationSession operationMask]):
1605         (-[MockDataOperationSession localDragSession]):
1606         (-[MockDataOperationSession hasItemsConformingToTypeIdentifier:]):
1607         (-[MockDataOperationSession canCreateItemsOfClass:]):
1608         (-[MockDataOperationSession loadObjectsOfClass:completion:]):
1609         (-[MockDataInteractionSession initWithWindow:]):
1610         (-[MockDataInteractionSession localOperationMask]):
1611         (-[MockDataInteractionSession externalOperationMask]):
1612         (-[MockDataInteractionSession session]):
1613         (-[DataInteractionSimulator _advanceProgress]):
1614
1615 2017-06-16  Alex Christensen  <achristensen@webkit.org>
1616
1617         Show punycode to user if a URL has dotless i or j followed by diacritic dot
1618         https://bugs.webkit.org/show_bug.cgi?id=173431
1619
1620         Reviewed by Darin Adler.
1621
1622         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
1623         (TestWebKitAPI::TEST):
1624
1625 2017-06-16  Chris Dumez  <cdumez@apple.com>
1626
1627         [WK2] Add WKProcessPool SPI to efficiently reset all plugin load client policies
1628         https://bugs.webkit.org/show_bug.cgi?id=173472
1629         <rdar://problem/28858817>
1630
1631         Reviewed by Brady Eidson.
1632
1633         Add API test coverage.
1634
1635         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1636         * TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm: Added.
1637         (TEST):
1638
1639 2017-06-16  Brady Eidson  <beidson@apple.com>
1640
1641         REGRESSION (r218015) IconLoaders for already-cached resources expect to be asynchronous, no longer are.
1642         <rdar://problem/32817519> and https://bugs.webkit.org/show_bug.cgi?id=173478
1643
1644         Reviewed by Daniel Bates.
1645
1646         * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
1647
1648 2017-06-16  Chris Dumez  <cdumez@apple.com>
1649
1650         DRT fails to reset page visibility between tests
1651         https://bugs.webkit.org/show_bug.cgi?id=173485
1652
1653         Reviewed by Alexey Proskuryakov.
1654
1655         DRT fails to reset page visibility between tests and relies on tests calling testRunner.resetPageVisibility().
1656         Fix this to address flakiness.
1657
1658         I confirmed this by commenting out the call to testRunner.resetPageVisibility() in
1659         fast/events/page-visibility-onvisibilitychange.html and running the test in a loop.
1660         The test became flaky without the DRT change and was no longer flaky with the DRT
1661         change.
1662
1663         WebKitTestRunner already does this.
1664
1665         * DumpRenderTree/mac/DumpRenderTree.mm:
1666         (resetWebViewToConsistentStateBeforeTesting):
1667
1668 2017-06-16  Alex Christensen  <achristensen@webkit.org>
1669
1670         Implement basic authentication in MiniBrowser
1671         https://bugs.webkit.org/show_bug.cgi?id=173443
1672
1673         Reviewed by Tim Horton.
1674
1675         * MiniBrowser/mac/WK2BrowserWindowController.m:
1676         (-[WK2BrowserWindowController webView:didReceiveAuthenticationChallenge:completionHandler:]):
1677
1678 2017-06-16  Jer Noble  <jer.noble@apple.com>
1679
1680         [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
1681         https://bugs.webkit.org/show_bug.cgi?id=173398
1682         <rdar://problem/32592961>
1683
1684         Reviewed by Eric Carlson.
1685
1686         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1687         * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
1688         (-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
1689         (-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
1690         (-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
1691         (TestWebKitAPI::TEST):
1692         * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
1693
1694 2017-06-16  Matt Lewis  <jlewis3@apple.com>
1695
1696         Unreviewed, rolling out r218375.
1697
1698         The API test MediaStreamTrackDetached is still timing out
1699         after the patch
1700
1701         Reverted changeset:
1702
1703         "[WebRTC] Removing a MediaStreamTrack from a MediaStream
1704         reports no recording to WebKit clients"
1705         https://bugs.webkit.org/show_bug.cgi?id=173398
1706         http://trac.webkit.org/changeset/218375
1707
1708 2017-06-15  Jer Noble  <jer.noble@apple.com>
1709
1710         [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
1711         https://bugs.webkit.org/show_bug.cgi?id=173398
1712         <rdar://problem/32592961>
1713
1714         Reviewed by Eric Carlson.
1715
1716         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1717         * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
1718         (-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
1719         (-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
1720         (-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
1721         (TestWebKitAPI::TEST):
1722         * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
1723
1724 2017-06-15  Matt Lewis  <jlewis3@apple.com>
1725
1726         Unreviewed, rolling out r218365.
1727
1728         The revision caused API timeouts on all builds.
1729
1730         Reverted changeset:
1731
1732         "[WebRTC] Removing a MediaStreamTrack from a MediaStream
1733         reports no recording to WebKit clients"
1734         https://bugs.webkit.org/show_bug.cgi?id=173398
1735         http://trac.webkit.org/changeset/218365
1736
1737 2017-06-15  Jer Noble  <jer.noble@apple.com>
1738
1739         [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
1740         https://bugs.webkit.org/show_bug.cgi?id=173398
1741         <rdar://problem/32592961>
1742
1743         Reviewed by Eric Carlson.
1744
1745         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1746         * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
1747         (-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
1748         (-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
1749         (-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
1750         (TestWebKitAPI::TEST):
1751         * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
1752
1753 2017-06-15  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1754
1755         REGRESSION(r218344): [WPE] Thousands of layout test crashes
1756         https://bugs.webkit.org/show_bug.cgi?id=173433
1757
1758         Unreviewed.
1759
1760         * wpe/jhbuild.modules: Revert the update of WPEBackend-mesa.
1761
1762 2017-06-15  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1763
1764         [WPE] The run-minibrowser script should allow to execute also a WPE launcher
1765         https://bugs.webkit.org/show_bug.cgi?id=173061
1766
1767         Reviewed by Žan Doberšek.
1768
1769         Launch dyz <https://github.com/Igalia/dyz> with the script
1770         run-minibrowser for the wpe port. It is now built as part of the
1771         WPE dependencies with JHBuild.
1772
1773         * Scripts/run-minibrowser:
1774         * Scripts/webkitdirs.pm:
1775         (launcherPath):
1776         (launcherName):
1777         * wpe/install-dependencies: Luajit is needed for building dyz.
1778         * wpe/jhbuild.modules: Add dyz and update the revision for WPEBackend-mesa.
1779
1780 2017-06-15  Wenson Hsieh  <wenson_hsieh@apple.com>
1781
1782         Using -[WebItemProviderPasteboard setItemProviders:] to swap out item providers before a drop breaks item provider loading
1783         https://bugs.webkit.org/show_bug.cgi?id=173338
1784         <rdar://problem/32777720>
1785
1786         Reviewed by Tim Horton.
1787
1788         Adds new unit tests to ensure that -_webView:willPerformDropWithSession: can be used to filter out drag items
1789         used by WebKit when handling a drop. These tests ensure that WebItemProviderPasteboard is still able to handle
1790         these remaining items on drop.
1791
1792         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1793         (TestWebKitAPI::TEST):
1794         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1795         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1796
1797         Add -overridePerformDropBlock, which can be set to provide custom handling of dropped items.
1798
1799         (-[DataInteractionSimulator _webView:willPerformDropWithSession:]):
1800
1801 2017-06-15  Per Arne Vollan  <pvollan@apple.com>
1802
1803         [Win] Crash in accessibility layout test.
1804         https://bugs.webkit.org/show_bug.cgi?id=173401
1805
1806         Reviewed by Brent Fulgham.
1807
1808         We should not manually release the punkVal IUnknown member in a _variant_t object, since the punkVal
1809         member will be automatically released when the _variant_t object goes out of scope if the vt member
1810         does not equal VT_UNKNOWN | VT_BYREF.
1811         See https://msdn.microsoft.com/en-us/library/windows/desktop/ms221165(v=vs.85).aspx. 
1812
1813         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
1814         (AccessibilityUIElement::titleUIElement):
1815
1816 2017-06-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1817
1818         [GTK] Add API to allow overriding popup menus
1819         https://bugs.webkit.org/show_bug.cgi?id=172905
1820
1821         Reviewed by Michael Catanzaro.
1822
1823         Add a unit test to check the new API.
1824
1825         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
1826         * TestWebKitAPI/Tests/WebKit2Gtk/TestOptionMenu.cpp: Added.
1827         (OptionMenuTest::OptionMenuTest):
1828         (OptionMenuTest::~OptionMenuTest):
1829         (OptionMenuTest::destroyMenu):
1830         (OptionMenuTest::showOptionMenuCallback):
1831         (OptionMenuTest::menuCloseCallback):
1832         (OptionMenuTest::showOptionMenu):
1833         (OptionMenuTest::clickAtPositionAndWaitUntilOptionMenuShown):
1834         (OptionMenuTest::close):
1835         (OptionMenuTest::activateItem):
1836         (OptionMenuTest::selectItem):
1837         (testOptionMenuSimple):
1838         (testOptionMenuGroups):
1839         (testOptionMenuActivate):
1840         (testOptionMenuSelect):
1841         (beforeAll):
1842         (afterAll):
1843
1844 2017-06-15  Fujii Hironori  <Hironori.Fujii@sony.com>
1845
1846         [WinCairo] DumpRenderTree.cpp: error C3861: 'CFURLCacheCreate': identifier not found
1847         https://bugs.webkit.org/show_bug.cgi?id=173399
1848
1849         Reviewed by Per Arne Vollan.
1850
1851         OpenCFLite doesn't have CFURLCacheCreate and CFURLCacheSetSharedURLCache.
1852         Curl port needs to do nothing because libcurl doesn't have disk cache.
1853
1854         * DumpRenderTree/win/DumpRenderTree.cpp:
1855         (prepareConsistentTestingEnvironment): Call CFURLCacheCreate() and
1856         CFURLCacheSetSharedURLCache() only if USE(CFURLCONNECTION).
1857
1858 2017-06-14  Tomas Popela  <tpopela@redhat.com>
1859
1860         [GTK] integer expression expected if running Tools/gtk/install-dependencies
1861         https://bugs.webkit.org/show_bug.cgi?id=173356
1862
1863         Reviewed by Michael Catanzaro.
1864
1865         Use the correct operator to compare the strings.
1866
1867         * gtk/install-dependencies:
1868
1869 2017-06-14  Commit Queue  <commit-queue@webkit.org>
1870
1871         Unreviewed, rolling out r218285.
1872         https://bugs.webkit.org/show_bug.cgi?id=173391
1873
1874         API test fails on iOS (Requested by alexchristensen on
1875         #webkit).
1876
1877         Reverted changeset:
1878
1879         "Add SPI for immediate injection of user scripts"
1880         https://bugs.webkit.org/show_bug.cgi?id=173342
1881         http://trac.webkit.org/changeset/218285
1882
1883 2017-06-14  Chris Dumez  <cdumez@apple.com>
1884
1885         WebKit falsely reports that a web process is unresponsive if you close a page shortly after stopping a load
1886         https://bugs.webkit.org/show_bug.cgi?id=173384
1887         <rdar://problem/32723779>
1888
1889         Reviewed by Dan Bernstein.
1890
1891         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1892         * TestWebKitAPI/Tests/WebKit2/ResponsivenessTimer.cpp: Added.
1893         Add API test coverage.
1894
1895         * TestWebKitAPI/cocoa/UtilitiesCocoa.mm:
1896         (TestWebKitAPI::Util::sleep):
1897         Update implementation of Util::sleep() so that we actually run the run loop.
1898         Otherwise, we don't process events while sleeping.
1899
1900 2017-06-14  Alex Christensen  <achristensen@webkit.org>
1901
1902         Add SPI for immediate injection of user scripts
1903         https://bugs.webkit.org/show_bug.cgi?id=173342
1904         <rdar://problem/29202285>
1905
1906         Reviewed by Brady Eidson.
1907
1908         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
1909         (waitForMessage):
1910         (TEST):
1911
1912 2017-06-14  Claudio Saavedra  <csaavedra@igalia.com>
1913
1914         Add WPE to the flakiness dashboard
1915         https://bugs.webkit.org/show_bug.cgi?id=173365
1916
1917         Reviewed by Carlos Alberto Lopez Perez.
1918
1919         * TestResultServer/static-dashboards/builders.jsonp:
1920         * TestResultServer/static-dashboards/flakiness_dashboard.js:
1921         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
1922         (resetGlobals):
1923         * TestResultServer/static-dashboards/loader_unittests.js:
1924
1925 2017-06-14  Brady Eidson  <beidson@apple.com>
1926
1927         WKIconLoadingDelegate never gets asked about the default favicon if touch/touch-precomposed icons are in the <head>
1928         <rdar://problem/32614328> and https://bugs.webkit.org/show_bug.cgi?id=173376
1929
1930         Reviewed by Alex Christensen.
1931
1932         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1933         * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm: Added.
1934         (-[IconLoadingDelegate webView:shouldLoadIconWithParameters:completionHandler:]):
1935         (-[IconLoadingSchemeHandler initWithData:mimeType:]):
1936         (-[IconLoadingSchemeHandler webView:startURLSchemeTask:]):
1937         (-[IconLoadingSchemeHandler webView:stopURLSchemeTask:]):
1938         (TEST):
1939
1940 2017-06-14  Tim Horton  <timothy_horton@apple.com>
1941
1942         WKContentViewEditingActions API test always fails
1943         https://bugs.webkit.org/show_bug.cgi?id=173374
1944
1945         Reviewed by Wenson Hsieh.
1946
1947         * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
1948         (TEST):
1949         selectAll isn't working, because canPerformAction for selectAll returns NO
1950         if selectionIsNone (which is true in the non-contenteditable case).
1951         Instead, make use of r218180's test page, which knows how to select itself.
1952         Also, reset the pasteboard at the beginning of the test to reduce confusion
1953         (I landed the test broken because my simulator had the correct text
1954         stuck in its pasteboard).
1955
1956 2017-06-14  Jonathan Bedard  <jbedard@apple.com>
1957
1958         Configure screen scale for running layout tests on plus devices
1959         https://bugs.webkit.org/show_bug.cgi?id=173319
1960
1961         Reviewed by Tim Horton.
1962
1963         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Include UIKitTestSPI.h in project.
1964         * DumpRenderTree/mac/DumpRenderTree.mm:
1965         (dumpRenderTree): Set screen scale to 2.0.
1966         * TestRunnerShared/spi/UIKitTestSPI.h: Copied from Tools/WebKitTestRunner/ios/UIKitSPI.h,
1967         add _setScale for UIScreen.
1968         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Include UIKitTestSPI.h in project.
1969         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm: Import UIKitTestSPI.h instead of UIKitSPI.h.
1970         * WebKitTestRunner/ios/HIDEventGenerator.h: Ditto.
1971         * WebKitTestRunner/ios/HIDEventGenerator.mm: Ditto.
1972         * WebKitTestRunner/ios/PlatformWebViewIOS.mm: Ditto.
1973         * WebKitTestRunner/ios/TestControllerIOS.mm: Ditto.
1974         (WTR::TestController::platformInitialize): Set screen scale to 2.0.
1975         * WebKitTestRunner/ios/UIKitSPI.h: Moved to TestRunnerShared/spi/UIKitTestSPI.h.
1976         * WebKitTestRunner/ios/UIScriptControllerIOS.mm: Import UIKitTestSPI.h instead of UIKitSPI.h.
1977         * WebKitTestRunner/ios/mainIOS.mm: Ditto.
1978
1979 2017-06-14  Alexey Proskuryakov  <ap@apple.com>
1980
1981         Add iOS 11 support to the bot watcher's dashboard
1982         https://bugs.webkit.org/show_bug.cgi?id=173369
1983
1984         Reviewed by Lucas Forschler.
1985
1986         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11.png: Added.
1987         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11@2x.png: Added.
1988         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator.png: Added.
1989         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator@2x.png: Added.
1990         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
1991         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
1992
1993 2017-06-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1994
1995         [GTK][WPE] Raise the timeout values for layout tests
1996         https://bugs.webkit.org/show_bug.cgi?id=173368
1997
1998         Reviewed by Carlos Garcia Campos.
1999
2000         Raise the values to 15 seconds in Release builds and 30 seconds (2x) in Debug builds.
2001         When running under valgrind a 10x multiplier is applied.
2002
2003         * Scripts/webkitpy/port/gtk.py:
2004         (GtkPort.default_timeout_ms):
2005         * Scripts/webkitpy/port/gtk_unittest.py:
2006         (GtkPortTest.test_default_timeout_ms):
2007         * Scripts/webkitpy/port/wpe.py:
2008         (WPEPort.default_timeout_ms):
2009         * Scripts/webkitpy/port/wpe_unittest.py: Copied from Tools/Scripts/webkitpy/port/gtk_unittest.py.
2010         (WPEPortTest):
2011         (WPEPortTest.make_port):
2012         (WPEPortTest.test_default_timeout_ms):
2013         (WPEPortTest.test_get_crash_log):
2014
2015 2017-06-14  Alex Christensen  <achristensen@webkit.org>
2016
2017         Test persistent WKHTTPCookieStorages on iOS.
2018         https://bugs.webkit.org/show_bug.cgi?id=173284
2019
2020         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2021         (TEST):
2022         Make the bots green again for now. There's still a problem, and I'll investigate and fix.
2023
2024 2017-06-14  Per Arne Vollan  <pvollan@apple.com>
2025
2026         [Win] DRT should not use disk cache.
2027         https://bugs.webkit.org/show_bug.cgi?id=173361
2028
2029         Reviewed by Darin Adler.
2030
2031         Like on macOS/iOS, DRT on Windows should only use memory cache.
2032
2033         * DumpRenderTree/win/DumpRenderTree.cpp:
2034         (setDefaultsToConsistentValuesForTesting):
2035         (prepareConsistentTestingEnvironment):
2036
2037 2017-06-14  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
2038
2039         MediaSource duration attribute should not be equal to Infinity when set to a value greater than 2^64
2040         https://bugs.webkit.org/show_bug.cgi?id=171668
2041
2042         Reviewed by Jer Noble.
2043
2044         MediaSource duration attribute is a double represented in MediaSource by a MediaTime instance created with
2045         MediaTime::CreateWithDouble(). This method implements an overflow control mechanism which sets MediaTime to
2046         Infinity when the double value passed as argument is greater than 2^64.
2047
2048         This patch removes the overflow control mechanism when time value is represented as a double. This patch also
2049         modifies the behavior of mathematical operations between a double MediaTime and rational MediaTime: the rational
2050         MediaTime is converted to a double before applying the operation. Double MediaTime precision is the same as for
2051         double. Overflow mechanisms still apply to the conversion of a double MediaTime to rational with setTimescale()
2052         method. No behavior change for rational MediaTime.
2053
2054         * TestWebKitAPI/Tests/WTF/MediaTime.cpp: Add tests to check operation results between double and rational MediaTime.
2055         (TestWebKitAPI::TEST):
2056
2057 2017-06-13  Alex Christensen  <achristensen@webkit.org>
2058
2059         Test persistent WKHTTPCookieStorages on iOS
2060         https://bugs.webkit.org/show_bug.cgi?id=173284
2061         <rdar://problem/32260156>
2062
2063         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2064         (TEST):
2065
2066 2017-06-13  Matt Rajca  <mrajca@apple.com>
2067
2068         WebsitePolicies: let clients select specific autoplay quirks
2069         https://bugs.webkit.org/show_bug.cgi?id=173343
2070
2071         Reviewed by Alex Christensen.
2072
2073         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
2074         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
2075         (TEST): Updated tests.
2076
2077 2017-06-13  Daniel Bates  <dabates@apple.com>
2078
2079         Implement W3C Secure Contexts Draft Specification
2080         https://bugs.webkit.org/show_bug.cgi?id=158121
2081         <rdar://problem/26012994>
2082
2083         Reviewed by Brent Fulgham.
2084
2085         Part 4
2086
2087         Expose the isSecureContext attribute by default in DumpRenderTree and WebKitTestRunner.
2088         Teach DumpRenderTree for Mac and WebKitTestRunner to parse the test option enableIsSecureContextAttribute
2089         to toggle the runtime enabled feature flag isSecureContextAttributeEnabled.
2090
2091         * DumpRenderTree/TestOptions.h:
2092         * DumpRenderTree/TestOptions.mm:
2093         (TestOptions::TestOptions):
2094         * DumpRenderTree/mac/DumpRenderTree.mm:
2095         (setWebPreferencesForTestOptions):
2096         * DumpRenderTree/win/DumpRenderTree.cpp:
2097         (enableExperimentalFeatures):
2098         * WebKitTestRunner/TestController.cpp:
2099         (WTR::TestController::resetPreferencesToConsistentValues):
2100         (WTR::updateTestOptionsFromTestHeader):
2101         * WebKitTestRunner/TestOptions.h:
2102         (WTR::TestOptions::hasSameInitializationOptions):
2103
2104 2017-06-13  Alex Christensen  <achristensen@webkit.org>
2105
2106         Test persistent WKHTTPCookieStorages on iOS
2107         https://bugs.webkit.org/show_bug.cgi?id=173284
2108         <rdar://problem/32260156>
2109
2110         Reviewed by Alexey Proskuryakov.
2111
2112         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2113         (TEST):
2114
2115 2017-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2116
2117         [GTK] Blob download doesn't work
2118         https://bugs.webkit.org/show_bug.cgi?id=172442
2119
2120         Reviewed by Carlos Alberto Lopez Perez.
2121
2122         Add a unit test to check blob downloads.
2123
2124         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
2125         (testBlobDownload):
2126         (beforeAll):
2127
2128 2017-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2129
2130         [GTK] Do not include WTR, DumpRendererTree and ImageDiff in tarballs
2131         https://bugs.webkit.org/show_bug.cgi?id=173316
2132
2133         Reviewed by Alex Christensen.
2134
2135         It's not really possible to run layout tests from the tarball, so it's better not to include those files.
2136
2137         * gtk/manifest.txt.in:
2138
2139 2017-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2140
2141         [WTR] Crash in WebGeolocationManagerProxy::~WebGeolocationManagerProxy() when running several tests
2142         https://bugs.webkit.org/show_bug.cgi?id=173315
2143
2144         Reviewed by Darin Adler.
2145
2146         This has started to happen after r218165, but I don't think it's a regression, but that r218165 revealed the bug
2147         somehow in WTR. The problem is that GeolocationProviderMock keeps a pointer to the WKGeolocationManagerRef
2148         returned by WKContextGetGeolocationManager. But in TestController::generatePageConfiguration() the context is
2149         freed before the GeolocationProviderMock. When the GeolocationProviderMock is then destroyed, it calls
2150         WKGeolocationManagerSetProvider(m_geolocationManager, 0); but the WKGeolocationManagerRef has already been
2151         destroyed. GeolocationProviderMock should keep a reference to the WKContext to ensure the
2152         WKGeolocationManagerRef is not destroyed.
2153
2154         * WebKitTestRunner/GeolocationProviderMock.cpp:
2155         (WTR::GeolocationProviderMock::GeolocationProviderMock):
2156         * WebKitTestRunner/GeolocationProviderMock.h:
2157
2158 2017-06-13  Wenson Hsieh  <wenson_hsieh@apple.com>
2159
2160         Unable to paste text that was copied from a page into the universal search field
2161         https://bugs.webkit.org/show_bug.cgi?id=173293
2162         <rdar://problem/32440918>
2163
2164         Reviewed by Ryosuke Niwa.
2165
2166         Adds 2 new unit tests for copying plain and rich selected web content.
2167         See WebCore and WebKit ChangeLogs for more detail.
2168
2169         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2170         * TestWebKitAPI/Tests/WebKit2Cocoa/rich-and-plain-text.html: Added.
2171         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm: Added.
2172         (TestWebKitAPI::dataForPasteboardType):
2173         (TestWebKitAPI::setUpWebViewForPasteboardTests):
2174         (TestWebKitAPI::TEST):
2175
2176 2017-06-13  Joanmarie Diggs  <jdiggs@igalia.com>
2177
2178         AX: [ATK] Implement missing AtkRelation types
2179         https://bugs.webkit.org/show_bug.cgi?id=155494
2180
2181         Reviewed by Darin Adler.
2182
2183         Add additional methods to test ARIA properties which are exposed via
2184         AtkRelation. Implement ATK support for ariaOwnsElementAtIndex().
2185
2186         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
2187         (WTR::AccessibilityUIElement::ariaLabelledByElementAtIndex):
2188         (WTR::AccessibilityUIElement::ariaDescribedByElementAtIndex):
2189         (WTR::AccessibilityUIElement::ariaOwnsReferencingElementAtIndex):
2190         (WTR::AccessibilityUIElement::ariaFlowToReferencingElementAtIndex):
2191         (WTR::AccessibilityUIElement::ariaControlsReferencingElementAtIndex):
2192         (WTR::AccessibilityUIElement::ariaLabelledByReferencingElementAtIndex):
2193         (WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
2194         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
2195         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2196         (WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
2197         (WTR::AccessibilityUIElement::ariaOwnsReferencingElementAtIndex):
2198         (WTR::AccessibilityUIElement::ariaFlowToReferencingElementAtIndex):
2199         (WTR::AccessibilityUIElement::ariaControlsReferencingElementAtIndex):
2200         (WTR::AccessibilityUIElement::ariaLabelledByElementAtIndex):
2201         (WTR::AccessibilityUIElement::ariaLabelledByReferencingElementAtIndex):
2202         (WTR::AccessibilityUIElement::ariaDescribedByElementAtIndex):
2203         (WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
2204
2205 2017-06-12  Daniel Bates  <dabates@apple.com>
2206
2207         Add unit tests for SecurityOrigin::IsPotentiallyTrustworthy()
2208         https://bugs.webkit.org/show_bug.cgi?id=173286
2209         <rdar://problem/32726102>
2210
2211         Reviewed by Brent Fulgham.
2212
2213         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
2214         (TestWebKitAPI::TEST_F):
2215
2216 2017-06-12  Lucas Forschler  <lforschler@apple.com>
2217
2218         <rdar://problem/32683422>
2219         Teach copy-webkitlibraries-to-product-directory script about updated libraries.
2220
2221         Reviewed by Conrad Schultz.
2222
2223         * Scripts/copy-webkitlibraries-to-product-directory:
2224
2225 2017-06-12  Tim Horton  <timothy_horton@apple.com>
2226
2227         [iOS] Cmd-C doesn't copy text from WKWebView
2228         https://bugs.webkit.org/show_bug.cgi?id=173277
2229         <rdar://problem/32396742>
2230
2231         Reviewed by Dan Bernstein.
2232
2233         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2234         * Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
2235         Add a test ensuring that -copy on WKContentView will cause text to be copied.
2236
2237 2017-06-12  Jiewen Tan  <jiewen_tan@apple.com>
2238
2239         [WebCrypto] Remove experimental feature flag of SubtleCrypto
2240         https://bugs.webkit.org/show_bug.cgi?id=173197
2241         <rdar://problem/32688148>
2242
2243         Reviewed by Brent Fulgham.
2244
2245         * DumpRenderTree/mac/DumpRenderTree.mm:
2246         (enableExperimentalFeatures):
2247         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2248         (WTR::InjectedBundle::beginTesting):
2249         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2250         (WTR::TestRunner::setSubtleCryptoEnabled): Deleted.
2251         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2252
2253 2017-06-12  Wenson Hsieh  <wenson_hsieh@apple.com>
2254
2255         [iOS DnD] Allow the injected bundle to add client data when writing an image to the pasteboard
2256         https://bugs.webkit.org/show_bug.cgi?id=173238
2257         <rdar://problem/31943370>
2258
2259         Reviewed by Ryosuke Niwa and Tim Horton.
2260
2261         Add a new unit test to verify that data inserted by the injected bundle when beginning a drag on an image
2262         element is plumbed across to the UI delegate. Also refactors injected bundle unit tests to use the new version
2263         of adjustedDataInteractionItemProvidersForItemProvider: that takes representing objects and additional data.
2264
2265         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2266         (TestWebKitAPI::TEST):
2267         * TestWebKitAPI/ios/DataInteractionSimulator.h:
2268         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
2269         (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
2270         (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProviders:]): Deleted.
2271
2272 2017-06-12  Wenson Hsieh  <wenson_hsieh@apple.com>
2273
2274         WebItemProviderPasteboard should call its completion block immediately after a synchronous load
2275         https://bugs.webkit.org/show_bug.cgi?id=173225
2276         <rdar://problem/32713144>
2277
2278         Reviewed by Tim Horton.
2279
2280         Adds a new unit test to verify whether the completion block is called synchronously or asynchronously, in both
2281         cases where the synchronous timeout is very large, and the synchronous timeout is not used (0).
2282
2283         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2284         (TestWebKitAPI::TEST):
2285
2286 2017-06-12  Jonathan Bedard  <jbedard@apple.com>
2287
2288         Return correct process names for iOS on-device testing
2289         https://bugs.webkit.org/show_bug.cgi?id=173263
2290
2291         Reviewed by Alex Christensen.
2292
2293         When running tests on iOS devices, process names do not end with '.Development'
2294         as they do on Mac and iOS simulator.
2295
2296         * WebKitTestRunner/TestController.cpp:
2297         (WTR::TestController::webProcessName): Return correct process name without '.Development'
2298         for iOS on-device testing.
2299         (WTR::TestController::networkProcessName): Ditto.
2300         (WTR::TestController::databaseProcessName): Ditto.
2301
2302 2017-06-12  Chris Dumez  <cdumez@apple.com>
2303
2304         Regression(r217867): Legacy SessionHistoryEntryData format should not change
2305         https://bugs.webkit.org/show_bug.cgi?id=173267
2306         <rdar://problem/32701257>
2307
2308         Reviewed by Simon Fraser.
2309
2310         Restrict test to stop covering saving / restore of scrollRestoration via the legacy
2311         SessionHistoryEntryData. Maintain coverage for the default value of scrollRestoration
2312         though as this covers the crash that r217867 was fixing.
2313
2314         * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp:
2315         (TestWebKitAPI::createSessionStateData):
2316         (TestWebKitAPI::TEST):
2317         (TestWebKitAPI::createSessionStateDataContainingScrollRestoration): Deleted.
2318
2319 2017-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2320
2321         [GTK] Stop dismissing menus attached to the web view for every injected event
2322         https://bugs.webkit.org/show_bug.cgi?id=172708
2323
2324         Reviewed by Alex Christensen.
2325
2326         It's a workaround we added in r184015 that has worked so far for the context menu, but doesn't really work now
2327         that we also attach popup menus to the web view. We really need to be able to show a popup menu, and then send
2328         events while the menu is open.
2329
2330         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
2331         (WTR::EventSendingController::contextClick): Use WKBundlePageCopyContextMenuAtPointInWindow() also in GTK+ port.
2332         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
2333         (WTR::EventSenderProxy::dispatchEvent): Stop calling PlatformWebView::dismissAllPopupMenus().
2334
2335 2017-06-12  Miguel Gomez  <magomez@igalia.com>
2336
2337         [GTK][WPE] Enable GStreamer GL on development builds
2338         https://bugs.webkit.org/show_bug.cgi?id=173248
2339
2340         Enable GStreamer GL for GTK and WPE.
2341
2342         Reviewed by Carlos Garcia Campos.
2343
2344         * Scripts/webkitperl/FeatureList.pm:
2345
2346 2017-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2347
2348         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/notification after r216641.
2349
2350         Notifications are no longer cleared on page navigation.
2351
2352         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
2353         (testWebViewNotification):
2354
2355 2017-06-11  Carlos Garcia Campos  <cgarcia@igalia.com>
2356
2357         Unreviewed. Fix GTK+ test /webkit2/WebKitAutomationSession/request-session after r217831.
2358
2359         DBus interface and object path names were updated in r217831.
2360
2361         * TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp:
2362
2363 2017-06-10  Dan Bernstein  <mitz@apple.com>
2364
2365         Reverted r218056 because it made the IDE reindex constantly.
2366
2367         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
2368         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
2369         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
2370         * MiniBrowser/Configurations/DebugRelease.xcconfig:
2371         * MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
2372         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
2373         * WebEditingTester/Configurations/DebugRelease.xcconfig:
2374         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
2375
2376 2017-06-10  Dan Bernstein  <mitz@apple.com>
2377
2378         [Xcode] With Xcode 9 developer beta, everything rebuilds when switching between command-line and IDE
2379         https://bugs.webkit.org/show_bug.cgi?id=173223
2380
2381         Reviewed by Sam Weinig.
2382
2383         The rebuilds were happening due to a difference in the compiler options that the IDE and
2384         xcodebuild were specifying. Only the IDE was passing the -index-store-path option. To make
2385         xcodebuild pass that option, too, set CLANG_INDEX_STORE_ENABLE to YES if it is unset, and
2386         specify an appropriate path in CLANG_INDEX_STORE_PATH.
2387
2388         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
2389         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
2390         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
2391         * MiniBrowser/Configurations/DebugRelease.xcconfig:
2392         * MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
2393         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
2394         * WebEditingTester/Configurations/DebugRelease.xcconfig:
2395         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
2396
2397 2017-06-10  Jonathan Bedard  <jbedard@apple.com>
2398
2399         webkitpy: Reduce polling in ServerProcess
2400         https://bugs.webkit.org/show_bug.cgi?id=173116
2401
2402         Reviewed by Ryosuke Niwa.
2403
2404         We should be smarter about polling. We do not need to poll every time a line is read from
2405         stdout and stderr since lines are usually read from cached data. We should only poll
2406         when extracting that cached data from stdout and stderr.
2407
2408         * Scripts/webkitpy/port/driver.py:
2409         (Driver._read_block): Rely on output of the ServerProcess to detect a crash or a timeout
2410         and on ServerProcess to poll the process if not data is available in stdout and stderr.
2411         * Scripts/webkitpy/port/driver_unittest.py:
2412         (DriverTest.test_read_block_crashed_process): Test that the Driver will handle a crashing
2413         ServerProcess.
2414         * Scripts/webkitpy/port/server_process.py:
2415         (ServerProcess._read): Allow for data to be read from _output even if the process has
2416         crashed. Only poll the process if data needs to be extracted from stdout or stderr. 
2417         * Scripts/webkitpy/port/server_process_mock.py:
2418         (MockServerProcess): Add number_of_times_polled.
2419         (MockServerProcess.poll): Increment number_of_times_polled.
2420         (MockServerProcess.has_crashed): Poll before returning crash state.
2421         (MockServerProcess.read_stdout_line): MockServerProcess should return None if it has crashed,
2422         just like a ServerProcess would.
2423         (MockServerProcess.read_stdout): Ditto.
2424         * Scripts/webkitpy/port/server_process_unittest.py:
2425         (TestServerProcess.test_basic): Use stdin.readline() instead of time.sleep() to prevent the
2426         process from ending before stdout and stderr are read. This is the reason this test was flakey.
2427         (TestServerProcess):
2428         (TestServerProcess.test_process_crashing): Test that when a process crashes, data can be read until
2429         the processes is polled.
2430         (TestServerProcess.test_process_crashing_no_data): Test that when a process which has not output any
2431         data to stdout and stderr crashes, ServerProcess._read(...) polls the process to detect the crash.
2432
2433 2017-06-10  Andy Estes  <aestes@apple.com>
2434
2435         [QuickLook] PreviewLoader needs to check if its ResourceLoader has reached the terminal state before calling didReceiveResponse() and friends
2436         https://bugs.webkit.org/show_bug.cgi?id=173190
2437         <rdar://problem/31360659>
2438
2439         Reviewed by Brady Eidson.
2440         
2441         Added a release assert that tries to create a proper test failure if the web process crashes.
2442
2443         * TestWebKitAPI/Tests/WebKit2Cocoa/QuickLook.mm:
2444         (-[QuickLookDecidePolicyDelegate _webViewWebProcessDidCrash:]):
2445
2446 2017-06-09  Wenson Hsieh  <wenson_hsieh@apple.com>
2447
2448         [iOS DnD] Add a hook to perform two-step drops in editable content
2449         https://bugs.webkit.org/show_bug.cgi?id=172992
2450         <rdar://problem/32590174>
2451
2452         Reviewed by Tim Horton.
2453
2454         Adds 2 new API tests to cover using the injected editing bundle to override performTwoStepDrop.
2455         Tests:  DataInteractionTests.InjectedBundleOverridePerformTwoStepDrop
2456                 DataInteractionTests.InjectedBundleAllowPerformTwoStepDrop
2457
2458         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm:
2459         (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2460         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:performTwoStepDrop:atDestination:isMove:]):
2461
2462         Allow the BundleOverridePerformTwoStepDrop bundle parameter to determine whether or not two-step drops should
2463         be overridden. Currently, this is overridden to just return true.
2464
2465         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2466         (TestWebKitAPI::TEST):
2467         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2468         (WTR::InjectedBundlePage::InjectedBundlePage):
2469
2470 2017-06-09  Zan Dobersek  <zdobersek@igalia.com>
2471
2472         [WPE] Enable ENCRYPTED_MEDIA for build-webkit builds
2473         https://bugs.webkit.org/show_bug.cgi?id=173103
2474
2475         Reviewed by Xabier Rodriguez-Calvar.
2476
2477         * Scripts/webkitperl/FeatureList.pm: Enable ENCRYPTED_MEDIA flag
2478         when building the WPE port through build-webkit.
2479
2480 2017-06-09  Zan Dobersek  <zdobersek@igalia.com>
2481
2482         [WPE] Enable MEDIA_SOURCE for build-webkit builds
2483         https://bugs.webkit.org/show_bug.cgi?id=173136
2484
2485         Reviewed by Xabier Rodriguez-Calvar.
2486
2487         * Scripts/webkitperl/FeatureList.pm: Enable the MEDIA_SOURCE feature for WPE.
2488
2489 2017-06-08  Carlos Garcia Campos  <cgarcia@igalia.com>
2490
2491         [GTK] Use API::FormClient instead of the C API in WebKitFormClient
2492         https://bugs.webkit.org/show_bug.cgi?id=173098
2493
2494         Reviewed by Žan Doberšek.
2495
2496         Fix memory leak and runtime warning when running /webkit2/WebKitWebView/submit-form. The web extension is
2497         assuming that all tests containing forms define ids for the form elements like
2498         /webkit2/WebKitWebExtension/form-controls-associated-signal does.
2499
2500         * TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
2501         (formControlsAssociatedCallback):
2502
2503 2017-06-08  Jonathan Bedard  <jbedard@apple.com>
2504
2505         webkitpy: Run sample/spindump on iOS devices
2506         https://bugs.webkit.org/show_bug.cgi?id=171881
2507         <rdar://problem/32084602>
2508
2509         Reviewed by Daniel Bates.
2510
2511         * Scripts/webkitpy/port/darwin.py:
2512         (DarwinPort.sample_process): Only add sudo prefix if the platform is Mac, which
2513         requires sudo to run spindump.
2514         * Scripts/webkitpy/port/ios_device.py:
2515         (IOSDevicePort.look_for_new_samples): Deleted.
2516         (IOSDevicePort.sample_process): Deleted.
2517         * Scripts/webkitpy/port/ios_device_unittest.py:
2518         (IOSDeviceTest): iOS devices use 'ios' and their os_name.
2519         (IOSDeviceTest.test_spindump):
2520         (IOSDeviceTest.test_sample_process):
2521         (IOSDeviceTest.test_sample_process_exception):
2522         * Scripts/webkitpy/port/ios_simulator_unittest.py:
2523         (IOSSimulatorTest): iOS Simulators run on Mac and use 'mac' as their os_name.
2524
2525 2017-06-08  Keith Miller  <keith_miller@apple.com>
2526
2527         WebAssembly: We should only create wrappers for functions that can be exported
2528         https://bugs.webkit.org/show_bug.cgi?id=173088
2529
2530         Reviewed by Saam Barati.
2531
2532         Add quick mode for wasm tests.
2533
2534         * Scripts/run-jsc-stress-tests:
2535
2536 2017-06-08  Darin Adler  <darin@apple.com>
2537
2538         WTF tests have incorrect RefLogger lifetimes making it impossible to test with Address Sanitizer
2539         https://bugs.webkit.org/show_bug.cgi?id=173106
2540
2541         Reviewed by Sam Weinig.
2542
2543         * TestWebKitAPI/Tests/WTF/HashCountedSet.cpp: Define RefLogger objects first, so they are
2544         destroyed last.
2545         * TestWebKitAPI/Tests/WTF/HashMap.cpp: Ditto.
2546         * TestWebKitAPI/Tests/WTF/HashSet.cpp: Ditto.
2547
2548 2017-06-07  Dan Bernstein  <mitz@apple.com>
2549
2550         [Cocoa] additionalReadAccessAllowedURLs doesn’t preserve non-Latin1 paths
2551         https://bugs.webkit.org/show_bug.cgi?id=173086
2552
2553         Reviewed by Andy Estes.
2554
2555         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
2556         (TEST):
2557
2558 2017-06-07  Alexey Proskuryakov  <ap@apple.com>
2559
2560         Add High Sierra support to WebKit tools
2561         https://bugs.webkit.org/show_bug.cgi?id=173080
2562
2563         Rubber-stamped by Daniel Bates.
2564
2565         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra.png: Added.
2566         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra@2x.png: Added.
2567         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
2568         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
2569         Added dashboard support.
2570
2571         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
2572         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
2573         Trigger the right build queues on check-in.
2574
2575         * Scripts/webkitpy/common/system/platforminfo.py:
2576         * Scripts/webkitpy/common/system/platforminfo_unittest.py:
2577         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
2578         * Scripts/webkitpy/port/mac.py:
2579         * Scripts/webkitpy/port/mac_unittest.py:
2580         * TestResultServer/static-dashboards/flakiness_dashboard.js:
2581         Added cases for Sierra, and updated tests for new baseline search paths.
2582
2583 2017-06-07  Ryan Haddad  <ryanhaddad@apple.com>
2584
2585         Unreviewed, rolling out r217902.
2586
2587         This change appears to have caused imported/w3c/web-platform-
2588         tests/fetch/api/cors tests to fail on El Capitan.
2589
2590         Reverted changeset:
2591
2592         "Teach run-webkit-tests how to run HTTPS Web Platform Tests"
2593         https://bugs.webkit.org/show_bug.cgi?id=172930
2594         http://trac.webkit.org/changeset/217902
2595
2596 2017-06-07  Daniel Bates  <dabates@apple.com>
2597
2598         Teach run-webkit-tests how to run HTTPS Web Platform Tests
2599         https://bugs.webkit.org/show_bug.cgi?id=172930
2600         <rdar://problem/32570201>
2601
2602         Reviewed by Youenn Fablet.
2603
2604         Some web platform tests need to be run from an HTTPS server in order to exercise functionality
2605         that is conditioned on the page being delivered over a secure protocol. One example of such
2606         a test is LayoutTests/imported/w3c/web-platform-tests/WebCryptoAPI/secure_context/crypto-subtle-secure-context-available.https.sub.html.
2607
2608         Ideally we should look to use wptrunner to run Web Platform Tests. For now, modify run-webkit-tests
2609         to access web platform tests from an HTTPS server when the filename of the test contains ".https.".
2610         This makes run-webkit-test match the behavior of wptrunner: <https://github.com/w3c/web-platform-tests/blob/7ce469d1c46dd45aacfe1b408bf2ad36a630e089/tools/manifest/item.py#L42>.
2611
2612         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
2613         (https_base_url): Parses the Web Platform Tests JSON configuration and returns the base URL
2614         to the Web Platform Tests HTTPS server.
2615         * Scripts/webkitpy/port/base.py:
2616         (Port.to.web_platform_test_server_https_base_url): Turns around and calls https_base_url().
2617         * Scripts/webkitpy/port/driver.py:
2618         (Driver.__init__): Caches the base URL to the Web Platform Tests HTTPS server. Also rename
2619         instance variables web_platform_test_server_doc_root, web_platform_test_server_base_url to
2620         _web_platform_test_server_doc_root and _web_platform_test_server_base_url, respectively to
2621         indicate that they should be considered private instance variables.
2622         (Driver.is_web_platform_test): Update code for renamed instance variables.
2623         (Driver):
2624         (Driver._web_platform_test_base_url_for_test): Returns the URL to access the specified test.
2625         (Driver.test_to_uri): Modified to use Driver._web_platform_test_base_url_for_test() to
2626         determine the base URL to use to access the test.
2627         (Driver.uri_to_test): Added logic to compute the filesystem local test name from a Web
2628         Platform Tests HTTPS URL. Also updated code for renamed instance variables.
2629
2630 2017-06-07  Per Arne Vollan  <pvollan@apple.com>
2631
2632         Support removal of authentication data through the Website data store API.
2633         https://bugs.webkit.org/show_bug.cgi?id=171217
2634
2635         Reviewed by Brady Eidson.
2636
2637         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2638         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2639         (WTR::InjectedBundle::didReceiveMessageToPage):
2640         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2641         (WTR::TestRunner::removeAllSessionCredentials):
2642         (WTR::TestRunner::callDidRemoveAllSessionCredentialsCallback):
2643         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2644         * WebKitTestRunner/TestController.h:
2645         * WebKitTestRunner/TestInvocation.cpp:
2646         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2647         (WTR::TestInvocation::didRemoveAllSessionCredentials):
2648         * WebKitTestRunner/TestInvocation.h:
2649         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2650         (WTR::TestController::removeAllSessionCredentials):
2651
2652 2017-06-07  Charlie Turner  <cturner@igalia.com>
2653
2654         Add Charlie Turner as contributor
2655         https://bugs.webkit.org/show_bug.cgi?id=173055
2656
2657         Reviewed by Carlos Alberto Lopez Perez.
2658
2659         I also ran the Tools/Scripts/validate-committer-lists --canonicalize command at the suggestion
2660         of webkit-patch upload, which reordered some fields and removed a newline.
2661
2662         * Scripts/webkitpy/common/config/contributors.json:
2663
2664 2017-06-06  Chris Dumez  <cdumez@apple.com>
2665
2666         RELEASE_ASSERT(static_cast<size_t>(enumerationValue) < WTF_ARRAY_LENGTH(values)) hit in convertEnumerationToJS<WebCore::History::ScrollRestoration>()
2667         https://bugs.webkit.org/show_bug.cgi?id=173033
2668         <rdar://problem/32591099>
2669
2670         Reviewed by Simon Fraser.
2671
2672         Add API test coverage to make sure History's scrollRestoration is properly saved / restored via the
2673         WKPageCopySessionState() / WKPageRestoreFromSessionState() C API.
2674
2675         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2676         * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp: Added.
2677         (TestWebKitAPI::didFinishLoadForFrame):
2678         (TestWebKitAPI::setPageLoaderClient):
2679         (TestWebKitAPI::createSessionStateDataContainingScrollRestoration):
2680         (TestWebKitAPI::TEST):
2681
2682 2017-06-06  Andy Estes  <aestes@apple.com>
2683
2684         REGRESSION (r199558): WKWebView upload file which name contains Chinese character results in garbled code
2685         https://bugs.webkit.org/show_bug.cgi?id=172849
2686         <rdar://problem/32567454>
2687
2688         Reviewed by Darin Adler.
2689
2690         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2691         * TestWebKitAPI/Tests/WebKit2Cocoa/RunOpenPanel.mm: Added.
2692         (-[RunOpenPanelUIDelegate webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
2693         (TestWebKitAPI::TEST):
2694
2695 2017-06-06  Yoav Weiss  <yoav@yoav.ws>
2696
2697         [preload] Conditional support for media preloading and align media `as` values.
2698         https://bugs.webkit.org/show_bug.cgi?id=172501
2699
2700         Reviewed by Dean Jackson.
2701
2702         Turn on media preloading preference for tests.
2703
2704         * DumpRenderTree/mac/DumpRenderTree.mm: Turn on media preloading preference.
2705         * DumpRenderTree/win/DumpRenderTree.cpp: Turn on media preloading preference.
2706         * WebKitTestRunner/TestController.cpp: Turn on media preloading preference.
2707
2708 2017-06-06  Jonathan Bedard  <jbedard@apple.com>
2709
2710         webkitpy: Return correct process names from SimulatorProcess
2711         https://bugs.webkit.org/show_bug.cgi?id=172940
2712
2713         Reviewed by Aakash Jain.
2714
2715         * Scripts/webkitpy/port/darwin.py:
2716         (DarwinPort.plist_data_from_bundle): Share plist access code for accessing different plist entries.
2717         (DarwinPort.app_identifier_from_bundle): Use plist_data_from_bundle.
2718         (DarwinPort.app_executable_from_bundle): Access name of app executable from provided app bundle.
2719         * Scripts/webkitpy/port/driver.py:
2720         (Driver.has_crashed): Use _server_process.process_name() instead of _server_process.name() since
2721         _server_process.name() will not return the correct process name for iOS.
2722         (Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
2723         (Driver._read_block): Ditto.
2724         * Scripts/webkitpy/port/driver_unittest.py:
2725         (DriverTest.test_check_for_driver_crash.FakeServerProcess.process_name): Update since Driver uses
2726         process_name() instead of name().
2727         * Scripts/webkitpy/port/server_process.py:
2728         (ServerProcess._start): Use process_name() instead of name().
2729         (ServerProcess.stop): Ditto.
2730         (ServerProcess.name): Deleted.
2731         * Scripts/webkitpy/port/simulator_process.py:
2732         (SimulatorProcess.process_name): Check the provided bundle for the process name.
2733
2734 2017-06-06  Dean Johnson  <dean_johnson@apple.com>
2735
2736         test-webkitpy: stop forking unsafely from within a spawned process
2737         https://bugs.webkit.org/show_bug.cgi?id=172774
2738
2739         Reviewed by Darin Adler.
2740
2741         * Scripts/webkitpy/common/net/buildbot/buildbot.py:
2742         (Builder.__init__): We don't use mechanize.Browser() as part of testing, so only initialize it when
2743         it's going to be used.
2744         (Builder.force_build):
2745
2746 2017-06-06  Jonathan Bedard  <jbedard@apple.com>
2747
2748         webkitpy: Process crash-logs for iOS devices
2749         https://bugs.webkit.org/show_bug.cgi?id=171976
2750         <rdar://problem/32134551>
2751
2752         Reviewed by David Kilzer.
2753
2754         When running layout tests on an iOS device, crash logs should be processed.
2755         Implement crash log searching and parsing for iOS devices.
2756
2757         * Scripts/webkitpy/common/system/crashlogs.py:
2758         (CrashLogs): Moved process regular expression for Darwin to class variable.
2759         (CrashLogs.__init__): Accept optional list of crash logs to ignore.
2760         (CrashLogs.find_newest_log): Add iOS as a potential platform.
2761         (CrashLogs.find_all_logs): Ditto.
2762         (CrashLogs._parse_darwin_crash_log): Share code for parsing of Darwin crash logs.
2763         Do not assume that a Darwin crash log starts with the process.
2764         (CrashLogs._find_newest_log_darwin): Remove .app in process name for iOS, use
2765         shared code for parsing Darwin crash logs.
2766         (CrashLogs._find_newest_log_darwin.is_crash_log): Skip crash logs passed into this
2767         object so that crash logs already on the system before testing are not parsed.
2768         (CrashLogs._find_newest_log_win.is_crash_log): Ditto.
2769         (CrashLogs._find_all_logs_darwin.is_crash_log): Ditto.
2770         (CrashLogs._find_all_logs_darwin): Use shared code for parsing Darwin crash logs.
2771         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
2772         (make_mock_crash_report_darwin): Crash logs may not have their process on the first line.
2773         * Scripts/webkitpy/common/system/systemhost.py:
2774         (SystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
2775         systems is just the crashlog, use this behavior by default.
2776         * Scripts/webkitpy/common/system/systemhost_mock.py:
2777         (MockSystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
2778         systems is just the crashlog, use this behavior by default.
2779         * Scripts/webkitpy/port/apple.py:
2780         (ApplePort): Add a dictionary mapping hosts to a list of crash logs to be skipped.
2781         (ApplePort.setup_test_run): Set the list of crash logs to be skipped to the crash logs on
2782         the system before testing begins
2783         * Scripts/webkitpy/port/base.py:
2784         (Port._get_crash_log): Pass optional target host when getting crash logs.
2785         * Scripts/webkitpy/port/darwin.py:
2786         (DarwinPort._look_for_all_crash_logs_in_log_dir): Pass list of crash logs to be skipped to
2787         CrashLogs object.
2788         (DarwinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
2789         logs to be skipped to CrashLogs object.
2790         * Scripts/webkitpy/port/darwin_testcase.py:
2791         (DarwinTest.test_get_crash_log): Removed unused local function.
2792         (DarwinTest.test_get_crash_log.fake_time_cb): Deleted.
2793         * Scripts/webkitpy/port/device.py:
2794         (Device.symbolicate_crash_log_if_needed): If the platform device has a function with this
2795         name, call it. Otherwise, assume the default behavior and read the file at the provided path.
2796         * Scripts/webkitpy/port/driver.py:
2797         (Driver._get_crash_log): Pass optional target host when getting crash logs.
2798         * Scripts/webkitpy/port/gtk.py:
2799         (GtkPort._get_crash_log): Pass optional target host when getting crash logs.
2800         * Scripts/webkitpy/port/ios.py: Ditto.
2801         (IOSPort.setup_test_run): Each device is treated as an independent host. Set the list of crash logs
2802         to be skipped for each host.
2803         * Scripts/webkitpy/port/ios_device.py:
2804         (IOSDevicePort.path_to_crash_logs): Consult apple_additions for the path to crash logs.
2805         (IOSDevicePort._look_for_all_crash_logs_in_log_dir): Search every connected device for
2806         crash logs and pass list of crash logs to ignore to each instance of CrashLogs.
2807         (IOSDevicePort._get_crash_log): Search the specified target host for a crash log if a target
2808         host is specified. Else, search all connected devices for the specified crash-log.
2809         (IOSDevicePort.look_for_new_crash_logs): Deleted.
2810         * Scripts/webkitpy/port/ios_device_unittest.py:
2811         (IOSDeviceTest.test_crashlog_path): Without apple_additions, an exception should be raised.
2812         (IOSDeviceTest.test_get_crash_log): Ditto.
2813         * Scripts/webkitpy/port/simulator_process.py:
2814         (SimulatorProcess.process_name): Check the provided bundle for the process name.
2815         * Scripts/webkitpy/port/win.py:
2816         (WinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
2817         logs to be skipped to CrashLogs object.
2818         * Scripts/webkitpy/port/wpe.py:
2819         (WPEPort._get_crash_log): Pass optional target host when getting crash logs.
2820
2821 2017-06-06  David Kilzer  <ddkilzer@apple.com>
2822
2823         Move WTF_ATTRIBUTE_PRINTF() from implementation to declaration
2824         <https://webkit.org/b/172804>
2825
2826         Reviewed by Darin Adler.
2827
2828         WTF_ATTRIBUTE_PRINTF() only works outside the current
2829         compilation unit if it's on the declaration, not the
2830         implementation, of a function or class method.
2831
2832         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
2833         * DumpRenderTree/TestNetscapePlugIn/PluginObject.h:
2834         * DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
2835         * DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
2836         - Move WTF_ATTRIBUTE_PRINTF() macro to declaration.
2837         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
2838         - Remove redundant CRASH() macro definition.  Use the one from
2839           <wtf/Assertions.h> instead.
2840
2841 2017-06-06  Joseph Pecoraro  <pecoraro@apple.com>
2842
2843         Move Resource Timing / User Timing from experimental features into main preferences
2844         https://bugs.webkit.org/show_bug.cgi?id=172950
2845
2846         Reviewed by Darin Adler.
2847
2848         * DumpRenderTree/mac/DumpRenderTree.mm:
2849         (enableExperimentalFeatures):
2850         (resetWebPreferencesToConsistentValues):
2851         * DumpRenderTree/win/DumpRenderTree.cpp:
2852         (enableExperimentalFeatures):
2853         (resetWebPreferencesToConsistentValues):
2854         * WebKitTestRunner/TestController.cpp:
2855         (WTR::TestController::resetPreferencesToConsistentValues):
2856         Move out no longer experimental features to the main list.
2857
2858 2017-06-06  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2859
2860         [WPE] Add an install-dependencies script
2861         https://bugs.webkit.org/show_bug.cgi?id=172948
2862
2863         Reviewed by Žan Doberšek.
2864
2865         It is based on the gtk/install-dependencies script.
2866         Includes support for Debian based distrubutions, Fedora and Arch.
2867         It has been tested on a minimal Debian 9 chroot.
2868
2869         * wpe/install-dependencies: Added.
2870
2871 2017-06-05  Wenson Hsieh  <wenson_hsieh@apple.com>
2872
2873         Refactor -[WebItemProviderPasteboard valuesForPasteboardType:inItemSet:] to check readable types
2874         https://bugs.webkit.org/show_bug.cgi?id=172891
2875         <rdar://problem/32204540>
2876
2877         Reviewed by Darin Adler.
2878
2879         Adds 2 new API tests to exercise data interaction of HTML data and an attributed string into a rich
2880         contenteditable. See WebCore ChangeLog for more details.
2881
2882         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2883         (TestWebKitAPI::TEST):
2884
2885 2017-06-05  Daniel Bates  <dabates@apple.com>
2886
2887         webkitpy: Abstract Executive class
2888         https://bugs.webkit.org/show_bug.cgi?id=172928
2889         <rdar://problem/32569531>
2890
2891         Reviewed by Ryosuke Niwa.
2892
2893         Adds an AbstractExecutive class and makes Executive extend AbstractExecutive.
2894         This will make it straightforward to create additional derived classes that
2895         adhere to the same interface, say for iOS on-device testing.
2896
2897         * Scripts/webkitpy/common/system/abstractexecutive.py: Added.
2898         (AbstractExecutive):
2899         (AbstractExecutive.run_and_throw_if_fail):
2900         (AbstractExecutive.cpu_count):
2901         (AbstractExecutive.interpreter_for_script):
2902         (AbstractExecutive.shell_command_for_script):
2903         (AbstractExecutive.kill_process):
2904         (AbstractExecutive.check_running_pid):
2905         (AbstractExecutive.running_pids):
2906         (AbstractExecutive.wait_newest):
2907         (AbstractExecutive.wait_limited):
2908         (AbstractExecutive.interrupt):
2909         (AbstractExecutive.default_error_handler):
2910         (AbstractExecutive.ignore_error):
2911         (AbstractExecutive._stringify_args):
2912         (AbstractExecutive.command_for_printing):
2913         (AbstractExecutive.run_command):
2914         (AbstractExecutive.popen):
2915         (AbstractExecutive.run_in_parallel):
2916         * Scripts/webkitpy/common/system/executive.py:
2917         (Executive):
2918         (Executive.cpu_count):
2919         (Executive.running_pids):
2920         (Executive.kill_all):
2921         (Executive._compute_stdin):
2922         (Executive.interpreter_for_script): Deleted.
2923         (Executive.shell_command_for_script): Deleted.
2924         (Executive.wait_newest): Deleted.
2925         (Executive.wait_limited): Deleted.
2926         (Executive.default_error_handler): Deleted.
2927         (Executive.ignore_error): Deleted.
2928         (Executive.command_for_printing): Deleted.
2929
2930 2017-06-05  Jonathan Bedard  <jbedard@apple.com>
2931
2932         webkitpy: Add iOS to platform
2933         https://bugs.webkit.org/show_bug.cgi?id=172931
2934
2935         Reviewed by Daniel Bates.
2936
2937         * Scripts/webkitpy/common/system/platforminfo.py:
2938         PlatformInfo.__init__): Use platform_module.release() as the os_version for iOS device.
2939         (PlatformInfo.is_ios): Added.
2940         (PlatformInfo._determine_os_name): A platform name of 'ios' means that the os name is 'ios'.
2941         * Scripts/webkitpy/common/system/platforminfo_mock.py:
2942         (MockPlatformInfo.is_ios): Added.
2943
2944 2017-06-05  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2945
2946         [WPE][JHBuild] Switch github repository from git:// to https://
2947         https://bugs.webkit.org/show_bug.cgi?id=172921
2948
2949         Reviewed by Alex Christensen.
2950
2951         * wpe/jhbuild.modules:
2952
2953 2017-06-05  Tim Horton  <timothy_horton@apple.com>
2954
2955         ASSERTION FAILED: m_currentScriptCallbackID in UIScriptContext::requestUIScriptCompletion(JSStringRef) running fast/events/ios/autocorrect-with-range-selection.html
2956         https://bugs.webkit.org/show_bug.cgi?id=172887
2957         <rdar://problem/32546061>
2958
2959         Reviewed by Sam Weinig.
2960
2961         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2962         (WTR::UIScriptController::applyAutocorrection):
2963         applyAutocorrection can call its completion handler synchronously,
2964         which makes UIScriptController unhappy (see bug 172884).
2965
2966 2017-06-03  Jonathan Bedard  <jbedard@apple.com>
2967
2968         webkitpy: Add contextmanager to disable logging for a block
2969         https://bugs.webkit.org/show_bug.cgi?id=172876
2970
2971         Reviewed by Daniel Bates.
2972
2973         Add a context manager which will use an OutputCapture object to capture logging
2974         in a block and hold it in a variable.
2975
2976         * Scripts/webkitpy/common/system/outputcapture.py:
2977         (OutputCaptureScope):
2978         (OutputCaptureScope.__init__): Construct with OutputCapture object.
2979         (OutputCaptureScope.__enter__): Begin capturing output. 
2980         (OutputCaptureScope.__exit__): Restore output and save captured output to a variable.
2981         output and retain the resulting log.
2982         * Scripts/webkitpy/common/system/outputcapture_unittest.py:
2983         (OutputCaptureTest.test_output_capture_scope): Added.
2984
2985 2017-06-02  Zalan Bujtas  <zalan@apple.com>
2986
2987         Cleanup FrameView::autoSizeIfEnabled.
2988         https://bugs.webkit.org/show_bug.cgi?id=172889
2989         <rdar://problem/32550783>
2990
2991         Reviewed by Tim Horton.
2992
2993         * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
2994         (-[AutoLayoutWKWebView load:withWidth:expectingContentSize:resettingWidth:]): progression.
2995         (TEST):
2996
2997 2017-06-02  Chris Dumez  <cdumez@apple.com>
2998
2999         ResourceLoadStatistics are not using unique paths during test runs
3000         https://bugs.webkit.org/show_bug.cgi?id=172861
3001         <rdar://problem/32442251>
3002
3003         Reviewed by Darin Adler.
3004
3005         Make sure WebKitTestRunner sets a temporary path for saving resource
3006         load statistics.
3007
3008         * WebKitTestRunner/TestController.cpp:
3009         (WTR::TestController::generateContextConfiguration):
3010
3011 2017-06-02  Brady Eidson  <beidson@apple.com>
3012
3013         Prevent scheme handlers from handling all built-in URL schemes.
3014         <rdar://problem/32404790> and https://bugs.webkit.org/show_bug.cgi?id=172869
3015
3016         Reviewed by Andy Estes.
3017
3018         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
3019
3020 2017-06-02  Stephan Szabo  <stephan.szabo@am.sony.com>
3021
3022         [JSCOnly] Build static jsc.exe on Windows
3023         https://bugs.webkit.org/show_bug.cgi?id=172833
3024
3025         Reviewed by Konstantin Tokarev.
3026
3027         * CMakeLists.txt:
3028         * Scripts/build-jsc:
3029
3030 2017-06-02  Zalan Bujtas  <zalan@apple.com>
3031
3032         Disable ViewportSizeForViewportUnits tests on iOS.
3033         https://bugs.webkit.org/show_bug.cgi?id=172872
3034
3035         Reviewed by Tim Horton.
3036
3037         * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm:
3038
3039 2017-06-02  Zalan Bujtas  <zalan@apple.com>
3040
3041         Allow clients to override viewport size for CSS viewport units.
3042         https://bugs.webkit.org/show_bug.cgi?id=172838
3043         <rdar://problem/32523441>
3044
3045         Reviewed by Tim Horton.
3046
3047         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3048         * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm: Added.
3049         (TEST):
3050
3051 2017-06-02  Simon Fraser  <simon.fraser@apple.com>
3052
3053         Get <chrono> out of StdLibExtras.h
3054         https://bugs.webkit.org/show_bug.cgi?id=172744
3055
3056         Reviewed by Zalan Bujtas.
3057
3058         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
3059
3060 2017-06-02  Zan Dobersek  <zdobersek@igalia.com>
3061
3062         [WPE] Enable SUBTLE_CRYPTO
3063         https://bugs.webkit.org/show_bug.cgi?id=172756
3064
3065         Reviewed by Michael Catanzaro.
3066
3067         * Scripts/webkitperl/FeatureList.pm: Set ENABLE_SUBTLE_CRYPTO to 1 for WPE.
3068         * wpe/jhbuild.modules: Add libgpg-error and libgcrypt dependencies.
3069         * wpe/patches/libgcrypt-use-only-dev-urandom-for-testing.patch: Added. Prevents
3070         exhausting entropy when running the crypto layout tests.
3071
3072 2017-06-01  Carlos Garcia Campos  <cgarcia@igalia.com>
3073
3074         [GTK] Bump GTK+ and its dependencies in jhbuild
3075         https://bugs.webkit.org/show_bug.cgi?id=171918
3076
3077         Reviewed by Carlos Alberto Lopez Perez.
3078
3079         * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
3080         (WTR::initializeGtkSettings):
3081         * gtk/jhbuild.modules:
3082         * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Removed.
3083         * gtk/patches/librsvg-2.36.1-bump-up-config.guess-to-support-aarch64.patch: Removed.
3084
3085 2017-06-01  Carlos Garcia Campos  <cgarcia@igalia.com>
3086
3087         [GTK] Bump wayland and weston in jhbuild
3088         https://bugs.webkit.org/show_bug.cgi?id=171921
3089
3090         Reviewed by Carlos Alberto Lopez Perez.
3091
3092         * gtk/jhbuild.modules:
3093         * gtk/patches/weston-libweston-include-weston-egl-ext.h-in-drm-x11-and-wa.patch: Added.
3094
3095 2017-06-01  Andy Estes  <aestes@apple.com>
3096
3097         REGRESSION (r217626): ENABLE_APPLE_PAY_SESSION_V3 was disabled by mistake
3098         https://bugs.webkit.org/show_bug.cgi?id=172828
3099
3100         Reviewed by Beth Dakin.
3101
3102         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3103
3104 2017-06-01  Jonathan Bedard  <jbedard@apple.com>
3105
3106         webkitpy: Remove unneeded simulator teardown
3107         https://bugs.webkit.org/show_bug.cgi?id=171891
3108
3109         Reviewed by Aakash Jain.
3110
3111         * Scripts/webkitpy/port/ios_simulator.py:
3112         (IOSSimulatorPort.clean_up_test_run): Remove FIFO deletion since TCP is used
3113         for communication between Python and WebKitTestRunner/DumpRenderTree.
3114
3115 2017-06-01  Keith Miller  <keith_miller@apple.com>
3116
3117         Undo rollout in r217638 with bug fix
3118         https://bugs.webkit.org/show_bug.cgi?id=172824
3119
3120         Unreviewed, reland patch with unused set_state code removed.
3121
3122         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
3123         (runThreadMessageTest):
3124         (TEST):
3125
3126 2017-06-01  Jonathan Bedard  <jbedard@apple.com>
3127
3128         webkitpy: Do not send 0 or -1 as a pid to kill_process
3129         https://bugs.webkit.org/show_bug.cgi?id=172818
3130
3131         Reviewed by Darin Adler.
3132
3133         Sending a signal to process 0 will result in all processes in the group receiving 
3134         the signal. Sending a signal to process -1 will result in all non-system processes
3135         receiving the signal. Both Executive.kill_process and Executive.check_running_pid
3136         should consider these cases
3137
3138         * Scripts/webkitpy/common/system/executive.py:
3139         (Executive.kill_process): Throw exception if pid is undefined, 0 or negative.
3140         (Executive.check_running_pid): An undefined pid, pid 0 or a negative pid will
3141         never be running, although os.kill may succeed.
3142         * Scripts/webkitpy/port/simulator_process.py:
3143         (SimulatorProcess.stop): Do not kill process if it is undefined.
3144
3145 2017-05-31  Alexey Proskuryakov  <ap@apple.com>
3146
3147         JSC EWS bot does not run on WTF only patches
3148         https://bugs.webkit.org/show_bug.cgi?id=172777
3149         rdar://problem/32495975
3150
3151         Reviewed by Aakash Jain.
3152
3153         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
3154         (CheckPatchRelevance): Add a missing comma.
3155
3156 2017-05-31  Commit Queue  <commit-queue@webkit.org>
3157
3158         Unreviewed, rolling out r217611 and r217631.
3159         https://bugs.webkit.org/show_bug.cgi?id=172785
3160
3161         "caused wasm-hashset-many.html to become flaky." (Requested by
3162         keith_miller on #webkit).
3163
3164         Reverted changesets:
3165
3166         "Reland r216808, underlying lldb bug has been fixed."
3167         https://bugs.webkit.org/show_bug.cgi?id=172759
3168         http://trac.webkit.org/changeset/217611
3169
3170         "Use dispatch queues for mach exceptions"
3171         https://bugs.webkit.org/show_bug.cgi?id=172775
3172         http://trac.webkit.org/changeset/217631
3173
3174 2017-05-31  Ryan Haddad  <ryanhaddad@apple.com>
3175
3176         EWS bots should reboot themselves more frequently
3177         https://bugs.webkit.org/show_bug.cgi?id=172402
3178
3179         Reviewed by Alexey Proskuryakov.
3180
3181         Instead of rebooting once a day, EWS bots will reboot after running 10 iterations.
3182
3183         * EWSTools/start-queue-mac.sh: Remove the restriction placed on the time that the bot will perform a reboot.
3184
3185 2017-05-31  Ryan Haddad  <ryanhaddad@apple.com>
3186
3187         Reallocate hardware for iOS bots.
3188         https://bugs.webkit.org/show_bug.cgi?id=172657
3189
3190         Reviewed by Alexey Proskuryakov.
3191
3192         * BuildSlaveSupport/build.webkit.org-config/config.json:
3193
3194 2017-05-31  Andy Estes  <aestes@apple.com>
3195
3196         Rename ENABLE_APPLE_PAY_DELEGATE to ENABLE_APPLE_PAY_SESSION_V3 and bump the supported version number
3197         https://bugs.webkit.org/show_bug.cgi?id=172366
3198
3199         Reviewed by Daniel Bates.
3200
3201         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3202
3203 2017-05-31  Jiewen Tan  <jiewen_tan@apple.com>
3204
3205         Unreviewed, add Jiewen Tan as a reviewer
3206
3207         * Scripts/webkitpy/common/config/contributors.json:
3208
3209 2017-05-31  Adrian Perez de Castro  <aperez@igalia.com>
3210
3211         [GTK] MiniBrowser's browser_window_get_or_create_web_view_for_automation never creates new windows
3212         https://bugs.webkit.org/show_bug.cgi?id=172770
3213
3214         Reviewed by Michael Catanzaro.
3215
3216         * MiniBrowser/gtk/BrowserWindow.c:
3217         (browser_window_get_or_create_web_view_for_automation): Removed stray semicolon
3218         which caused the body of the if-clause to be accidentally empty.
3219
3220 2017-05-31  Keith Miller  <keith_miller@apple.com>
3221
3222         Reland r216808, underlying lldb bug has been fixed.
3223         https://bugs.webkit.org/show_bug.cgi?id=172759
3224
3225         Unreviewed, relanding old patch. See: rdar://problem/31183352
3226
3227         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
3228         (runThreadMessageTest):
3229         (TEST):
3230
3231 2017-05-31  Matt Lewis  <jlewis3@apple.com>
3232
3233         Unreviewed, rolling out r217603.
3234
3235         This patch broke the internal builds.
3236
3237         Reverted changeset:
3238
3239         "Get <chrono> out of StdLibExtras.h"
3240         https://bugs.webkit.org/show_bug.cgi?id=172744
3241         http://trac.webkit.org/changeset/217603
3242
3243 2017-05-31  Brent Fulgham  <bfulgham@apple.com>
3244
3245         Make ResourceLoadStatistics testing more reliable
3246         https://bugs.webkit.org/show_bug.cgi?id=172730
3247         <rdar://problem/32028373>
3248
3249         Reviewed by Andy Estes.
3250
3251         When we tell the UIProcess (WebKitTestRunner) to notify the system about statistics update notifications,
3252         we also need to tell the WebProcess to do so, too, or else the test system doesn't get messages.
3253
3254         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3255         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
3256
3257 2017-05-31  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3258
3259         [GTK][WPE] run-javascriptcore-tests should use the jhbuild
3260         https://bugs.webkit.org/show_bug.cgi?id=172757
3261
3262         Reviewed by Xabier Rodriguez-Calvar.
3263
3264         When needed, add the jhbuild wrapper at the beginning of the array
3265         that will be invoked to execute the run-jsc-stress-test or testapi
3266         commands.
3267
3268         * Scripts/run-javascriptcore-tests:
3269         (runJSCStressTests):
3270         * Scripts/webkitdirs.pm:
3271         (shouldUseJhbuild):
3272
3273 2017-05-31  Simon Fraser  <simon.fraser@apple.com>
3274
3275         Get <chrono> out of StdLibExtras.h
3276         https://bugs.webkit.org/show_bug.cgi?id=172744
3277
3278         Reviewed by Saam Barati.
3279
3280         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
3281
3282 2017-05-30  Tim Horton  <timothy_horton@apple.com>
3283
3284         Keyboard autocorrections do not apply with an active selection (but keyboard acts like they did)
3285         https://bugs.webkit.org/show_bug.cgi?id=172735
3286         <rdar://problem/32015977>
3287
3288         Reviewed by Enrica Casucci.
3289
3290         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3291         (WTR::UIScriptController::applyAutocorrection):
3292         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3293         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3294         (WTR::UIScriptController::applyAutocorrection):
3295         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3296         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3297         (WTR::UIScriptController::applyAutocorrection):
3298         Expose applyAutocorrection to UIScriptController. Use a WKTesting method
3299         because I don't know how to tap the button in the autocorrection bar from a test.
3300
3301 2017-05-30  Daniel Bates  <dabates@apple.com>
3302
3303         Add unit test for WebKit2 C SPI runBeforeUnloadConfirmPanel()
3304         https://bugs.webkit.org/show_bug.cgi?id=172671
3305
3306         Reviewed by Alex Christensen.
3307
3308         We should add a unit test to ensure we do not regress the WKPageUIClient runBeforeUnloadConfirmPanel() callback.
3309         For completeness, the callback runBeforeUnloadConfirmPanel() existed since inception of WKPageUIClient (WKPageUIClientV0).
3310
3311         * TestWebKitAPI/Tests/WebKit2/ModalAlertsSPI.cpp:
3312         (TestWebKitAPI::analyzeDialogArguments): Test the runBeforeUnloadConfirmPanel() callback last as we need
3313         to trigger a navigation to test it.
3314         (TestWebKitAPI::runBeforeUnloadConfirmPanel): Added.
3315         (TestWebKitAPI::createNewPage): Wire up the runBeforeUnloadConfirmPanel callback.
3316
3317 2017-05-30  Jonathan Bedard  <jbedard@apple.com>
3318
3319         webkitpy: Start servers before setting-up for testing
3320         https://bugs.webkit.org/show_bug.cgi?id=172176
3321         <rdar://problem/32225538>
3322
3323         Reviewed by Alexey Proskuryakov.
3324
3325         On-device testing requires that servers are started before ports set-up their
3326         test environments.
3327
3328         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
3329         (LayoutTestRunner.__init__): Start servers when initializing LayoutTestRunner.
3330         Servers are unconditionally stopped on exit.
3331         (LayoutTestRunner.run_tests): Move the starting of servers to the initializer. The
3332         Manager now stops servers.
3333         (LayoutTestRunner.start_servers): Set flag to indicate servers are running.
3334         (LayoutTestRunner.stop_servers): Check flag, only shutdown servers if they are shutdown.
3335         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3336         (Manager.__init__): Delay construction of the test runner until we can determine
3337         if servers need to be started.
3338         (Manager.run): Determine if servers need to be started and construct the test runner.
3339         Shut servers down when the test run is finished.
3340         (Manager._run_tests): Move the determination of servers to run into Manager.run.
3341         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
3342         (is_wpt_server_running): Server is not running if no config is found.
3343         * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
3344         (PyWebSocket.is_running): Check if this WebSocket server is running.
3345         * Scripts/webkitpy/port/base.py:
3346         (Port.__init__): Define secure WebSocket server.
3347         (Port.to.is_websocket_server_running): Check if WebSocket servers are defined.
3348
3349 2017-05-30  Daniel Bates  <dabates@apple.com>
3350
3351         [WK2] Add runBeforeUnloadConfirmPanel WKUIDelegate SPI; support onbeforeunload confirm panel in MiniBrowser
3352         https://bugs.webkit.org/show_bug.cgi?id=172603
3353         <rdar://problem/32471306>
3354
3355         Reviewed by Brady Eidson.
3356
3357         Implement the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: delegate
3358         method in MiniBrowser to show a confirm panel as to whether to allow the unloading of the page when
3359         unloading is initiated for a page that registered a onbeforeunload handler.
3360
3361         Modify TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm to test that the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:
3362         is called. Also fix style nit; pass YES instead of true to avoid implicit conversion from bool to BOOL
3363         when invoking the completion handler in -_webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:.
3364
3365         Until we fix <https://bugs.webkit.org/show_bug.cgi?id=172614> the unit test in TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm
3366         for -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: is only run on Mac
3367         as we do not have the infrastructure to simulate a click/tap on iOS and a click/tap on the page that
3368         registered an onbeforeunload handler is required to show a confirm panel when the page will be unloaded.
3369
3370         * MiniBrowser/mac/WK2BrowserWindowController.m:
3371         (-[WK2BrowserWindowController _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
3372         * TestWebKitAPI/Tests/WebKit2/modal-alerts-in-new-about-blank-window.html:
3373         * TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm:
3374         (sawDialog):
3375         (-[ModalAlertsUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
3376         (-[ModalAlertsUIDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
3377         (-[ModalAlertsUIDelegate _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
3378
3379 2017-05-30  Alex Christensen  <achristensen@webkit.org>
3380
3381         Update libwebrtc configuration
3382         https://bugs.webkit.org/show_bug.cgi?id=172727
3383
3384         Reviewed by Geoffrey Garen.
3385
3386         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3387
3388 2017-05-30  Fujii Hironori  <Hironori.Fujii@sony.com>
3389
3390         [WinCairo] TestWebKitAPI: ASSERTION FAILED: m_eglDisplay == EGL_NO_DISPLAY
3391         https://bugs.webkit.org/show_bug.cgi?id=172702
3392
3393         Reviewed by Alex Christensen.
3394
3395         EGL PlatformDisplay needs to be shut down before existing a
3396         program on Windows.
3397
3398         * TestWebKitAPI/Tests/WebKit/win/ScaleWebView.cpp:
3399         (TestWebKitAPI::ScaleWebView::TearDown): Call shutDownWebKit().
3400         * TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp:
3401         (TestWebKitAPI::WebViewDestruction::TearDown): Ditto.
3402
3403 2017-05-30  Per Arne Vollan  <pvollan@apple.com>
3404
3405         [Win] fast/shadow-dom/fullscreen-in-slot-fullscreenElement.html is flaky.
3406         https://bugs.webkit.org/show_bug.cgi?id=172709
3407
3408         Reviewed by Brent Fulgham.
3409
3410         Exit fullscreen mode after a fullscreen test.
3411
3412         * DumpRenderTree/win/DumpRenderTree.cpp:
3413         (resetWebViewToConsistentStateBeforeTesting):
3414
3415 2017-05-30  Antti Koivisto  <antti@apple.com>
3416
3417         ASSERTION FAILED: !needsLayout() in com.apple.WebCore: WebCore::FrameView::paintContents in fast/events/tabindex-focus-blur-all.html on WK1
3418         https://bugs.webkit.org/show_bug.cgi?id=172713
3419
3420         Reviewed by Zalan Bujtas.
3421
3422         * DumpRenderTree/mac/ResourceLoadDelegate.mm:
3423         (-[ResourceLoadDelegate webView:plugInFailedWithError:dataSource:]):
3424
3425             Remove forced display from plugin resource load delegate. It is testing some long-obsolete
3426             Safari WK1 behavior. Forcing display from this resource load delegate will hit the assertion
3427             because on Mac WK1 it may get invoked from middle of a layout.
3428
3429             Painting code skips out after the assert so it doesn't indicate unsafe access of any sort.
3430
3431 2017-05-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3432
3433         Add a WPE EWS queue
3434         https://bugs.webkit.org/show_bug.cgi?id=172693
3435
3436         Reviewed by Carlos Garcia Campos.
3437
3438         * QueueStatusServer/config/queues.py:
3439         * QueueStatusServer/model/queues.py: Capitalize the name of the
3440         port on the tooltip of the bubbles. Do the same for the GTK port.
3441         (Queue.display_name):
3442         * Scripts/webkitpy/common/config/ews.json: Update the watcher mail
3443         for the GTK+ EWS also. Set for both ports as watcher the alias
3444         bugs-noreply@webkitgtk.org that maintainers of both ports follow.
3445         * Scripts/webkitpy/common/config/ports.py:
3446         (DeprecatedPort.port):
3447         (WpePort):
3448         (WpePort.build_webkit_command):
3449         (WpePort.run_webkit_tests_command):
3450         * Scripts/webkitpy/common/config/ports_unittest.py:
3451         (DeprecatedPortTest):
3452         (DeprecatedPortTest.test_wpe_port):
3453         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
3454         (test_ews_name):
3455
3456 2017-05-29  Zan Dobersek  <zdobersek@igalia.com>
3457
3458         Unreviewed. Bumping the WPEBackend-mesa dependency version.
3459
3460         * wpe/jhbuild.modules: Use the latest version that uses proper GLib
3461         priorities for IPC communication.
3462
3463 2017-05-27  Yusuke Suzuki  <utatane.tea@gmail.com>
3464
3465         [JSC] Map and Set constructors should have fast path for cloning
3466         https://bugs.webkit.org/show_bug.cgi?id=172413
3467
3468         Reviewed by Saam Barati.
3469
3470         * TestWebKitAPI/Tests/WTF/MathExtras.cpp:
3471         (TestWebKitAPI::TEST):
3472
3473 2017-05-27  Zalan Bujtas  <zalan@apple.com>
3474
3475         enclosingIntRect returns a rect with -1 width/height when the input FloatRect overflows integer.
3476         https://bugs.webkit.org/show_bug.cgi?id=172676
3477
3478         Reviewed by Simon Fraser.
3479
3480         * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
3481         (TestWebKitAPI::TEST):
3482
3483 2017-05-26  Zalan Bujtas  <zalan@apple.com>
3484
3485         TestWebKitAPI: EnclosingIntRect and RoundedIntRect should use EXPECT_EQ.
3486         https://bugs.webkit.org/show_bug.cgi?id=172674
3487
3488         Reviewed by Simon Fraser.
3489
3490         * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
3491         (TestWebKitAPI::TEST):
3492
3493 2017-05-26  Wenson Hsieh  <wenson_hsieh@apple.com>
3494
3495         Add test resources back into TestWebKitAPI Copy Resources phase
3496
3497         Rubber-stamped by Beth Dakin.
3498
3499         Add two files back into the Copy Resources phase after they were unintentionally
3500         removed in r217447 and r217496.
3501
3502         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3503
3504 2017-05-26  Beth Dakin  <bdakin@apple.com>
3505
3506         Media documents inside iframes should not get controls in the TouchBar unless the 
3507         video is playing
3508         https://bugs.webkit.org/show_bug.cgi?id=172620
3509         -and corresponding-
3510         rdar://problem/32165477
3511
3512         Reviewed by Jon Lee.
3513
3514         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3515         * TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
3516         (TestWebKitAPI::TEST):
3517         * TestWebKitAPI/Tests/WebKit2Cocoa/offscreen-iframe-of-media-document.html: Added.
3518
3519 2017-05-25  Joseph Pecoraro  <pecoraro@apple.com>
3520
3521         _WKUserStyleSheet and WKUserScript leak string data
3522         https://bugs.webkit.org/show_bug.cgi?id=172583
3523         <rdar://problem/32395209>
3524
3525         Reviewed by Sam Weinig.
3526
3527         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
3528         We should not have been adopting an autoreleased object.
3529
3530 2017-05-25  Myles C. Maxfield  <mmaxfield@apple.com>
3531
3532         [WK1] iframes in layer-backed NSViews are not cleared between successive draws
3533         https://bugs.webkit.org/show_bug.cgi?id=172554
3534         <rdar://problem/31247133>
3535
3536         Reviewed by Simon Fraser.
3537
3538         Previously, there was no way to make DumpRenderTree's views layer-backed. Unfortunately,
3539         simply setting [WebView setWantsLayer:] is insufficient; turning it on and then off again
3540         leaves some state around inside the NSWindow which isn't easily cleaned up. Instead,
3541         we should just tear down and rebuild the window whenever we need a layer-backed WebView.
3542         We can also use the "webkit-test-runner" header comment to trigger this new layer-backed
3543         codepath.
3544
3545         * DumpRenderTree/TestOptions.h:
3546         * DumpRenderTree/TestOptions.mm:
3547         (TestOptions::TestOptions):
3548         (TestOptions::webViewIsCompatibleWithOptions):
3549         * DumpRenderTree/mac/DumpRenderTree.mm:
3550         (shouldIgnoreWebCoreNodeLeaks):
3551         (allowedFontFamilySet):
3552         (-[DRTMockScroller rectForPart:]):
3553         (-[DRTMockScroller drawKnob]):
3554         (-[DRTMockScroller drawRect:]):
3555         (createWebViewAndOffscreenWindow):
3556         (initializeGlobalsFromCommandLineOptions):
3557         (prepareConsistentTestingEnvironment):
3558         (dumpRenderTree):
3559         (dumpAudio):
3560         (dumpHistoryItem):
3561         (dumpBackForwardListForWebView):
3562         (resetWebViewToConsistentStateBeforeTesting):
3563         (WebThreadLockAfterDelegateCallbacksHaveCompleted):
3564         (runTest):
3565
3566 2017-05-25  Sam Weinig  <sam@webkit.org>
3567
3568         [WebIDL] Use the term 'operation' more consistently
3569         https://bugs.webkit.org/show_bug.cgi?id=172601
3570
3571         Reviewed by Chris Dumez.
3572
3573         We were using the term 'operation', a WebIDL term for function-like
3574         constructs, inconsistently in the code generator. Now, when we use
3575         'operation' when referring to the IDL concept (usually the object the
3576         parser produces) and 'function' when referring to code being generated.
3577
3578         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
3579         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
3580
3581 2017-05-25  Jer Noble  <jer.noble@apple.com>
3582
3583         Unreviewed build fix after r217447; only run test where JSC's ObjC API is available.
3584
3585         * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm:
3586
3587 2017-05-25  Jer Noble  <jer.noble@apple.com>
3588
3589         System sleeps while playing to wireless target, ending stream.
3590         https://bugs.webkit.org/show_bug.cgi?id=172541
3591
3592         Reviewed by Eric Carlson.
3593
3594         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3595         * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.html: Added.
3596         * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm: Added.
3597         (-[MediaPlaybackSleepAssertionLoadDelegate webView:didCreateJavaScriptContext:forFrame:]):
3598         (-[MediaPlaybackSleepAssertionPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
3599         (TestWebKitAPI::simulateKeyDown):
3600         (TestWebKitAPI::hasAssertionType):
3601         (TestWebKitAPI::TEST):
3602
3603 2017-05-25  Commit Queue  <commit-queue@webkit.org>
3604
3605         Unreviewed, rolling out r217423 and r217424.
3606         https://bugs.webkit.org/show_bug.cgi?id=172607
3607
3608         These caused an api failure on all testers. (Requested by
3609         mlewis13 on #webkit).
3610
3611         Reverted changesets:
3612
3613         "REGRESSION (r216977): 4 leaks introduced in new
3614         WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test"
3615         https://bugs.webkit.org/show_bug.cgi?id=172558
3616         http://trac.webkit.org/changeset/217423
3617
3618         "REGRESSION (r217423): Fix last-second typo in 'auto'"
3619         http://trac.webkit.org/changeset/217424
3620
3621 2017-05-25  Joanmarie Diggs  <jdiggs@igalia.com>
3622
3623         [ATK] Expose doc-footnote ARIA role with ATK_ROLE_FOOTNOTE
3624         https://bugs.webkit.org/show_bug.cgi?id=172355
3625
3626         Reviewed by Chris Fleizach.
3627
3628         Add map ATK_ROLE_FOOTNOTE to "AXFootnote" and bump jhbuild minimum
3629         versions of atk, at-spi2-core, and at-spi2-atk to 2.25.2 (the earliest
3630         releases which support the new platform footnote accessibility role.
3631
3632         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3633         * gtk/jhbuild.modules:
3634
3635 2017-05-25  David Kilzer  <ddkilzer@apple.com>
3636
3637         REGRESSION (r217423): Fix last-second typo in 'auto'
3638
3639         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
3640         (WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test): Fix typo.
3641
3642 2017-05-24  David Kilzer  <ddkilzer@apple.com>
3643
3644         REGRESSION (r216977): 4 leaks introduced in new WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test
3645         <https://webkit.org/b/172558>
3646
3647         Reviewed by Sam Weinig.
3648
3649         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
3650         (WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test): Fix the leaks.
3651
3652 2017-05-24  Don Olmstead  <don.olmstead@am.sony.com>
3653
3654         [CMake] Consolidate CMake code related to Cairo
3655         https://bugs.webkit.org/show_bug.cgi?id=172568
3656
3657         Reviewed by Alex Christensen.
3658
3659         * DumpRenderTree/config.h:
3660         * TestWebKitAPI/config.h:
3661
3662 2017-05-24  Wenson Hsieh  <wenson_hsieh@apple.com>
3663
3664         Plumb additional image metadata to item providers when beginning data interaction on an image
3665         https://bugs.webkit.org/show_bug.cgi?id=172536
3666         <rdar://problem/32371300>
3667
3668         Reviewed by Beth Dakin.
3669
3670         Tweak existing image data interaction tests to check for suggested name and estimated size on the generated
3671         source item providers.
3672
3673         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3674         (checkSuggestedNameAndEstimatedSize):
3675         (TestWebKitAPI::TEST):
3676
3677 2017-05-24  Per Arne Vollan  <pvollan@apple.com>
3678
3679         [Win] Create unique network storage session for each DRT.
3680         https://bugs.webkit.org/show_bug.cgi?id=172540
3681
3682         Reviewed by Brent Fulgham.
3683
3684         During layout testing, each DRT instance should have its own network storage session.
3685
3686         * DumpRenderTree/win/DumpRenderTree.cpp:
3687         (prepareConsistentTestingEnvironment):
3688
3689 2017-05-24  Wenson Hsieh  <wenson_hsieh@apple.com>
3690
3691         Respect image UTIs when writing to item providers when beginning data interaction on an image
3692         https://bugs.webkit.org/show_bug.cgi?id=172436
3693         <rdar://problem/31786569>
3694
3695         Reviewed by Beth Dakin.
3696
3697         Tweaks existing unit tests and adds a new test for image data interaction. See WebCore ChangeLog for more
3698         details.
3699
3700         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3701         * TestWebKitAPI/Tests/WebKit2Cocoa/apple.gif: Added.
3702         * TestWebKitAPI/Tests/WebKit2Cocoa/gif-and-file-input.html: Added.
3703
3704         Create a new test page containing a GIF and a file input.
3705
3706         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3707         (checkTypeIdentifierIsRegisteredAtIndex):
3708         (TestWebKitAPI::TEST):
3709
3710 2017-05-23  Per Arne Vollan  <pvollan@apple.com>
3711
3712         [Win] Increase test timeout for slow tests.
3713         https://bugs.webkit.org/show_bug.cgi?id=172449
3714
3715         Reviewed by Alexey Proskuryakov.
3716
3717         Instead of using a fixed timeout of 30 seconds for all tests, we should use the
3718         timeout member in the TestRunner class.
3719
3720         * DumpRenderTree/win/TestRunnerWin.cpp:
3721         (TestRunner::setWaitToDump):
3722
3723 2017-05-15  Matt Rajca  <mrajca@apple.com>
3724
3725         Replace autoplay events that fire at navigation with a DidAutoplayMediaPastThreshold event.
3726         https://bugs.webkit.org/show_bug.cgi?id=172138
3727
3728         Reviewed by Alex Christensen.
3729
3730         Added API tests.
3731
3732         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3733         * TestWebKitAPI/Tests/WebKit2/js-autoplay-audio.html: Added.
3734         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
3735         (TEST):
3736         * TestWebKitAPI/Tests/WebKit2Cocoa/silence-long.m4a: Added.
3737
3738 2017-05-23  Simon Fraser  <simon.fraser@apple.com>
3739
3740         Stop consulting -viewsNeedDisplay when doing layer flushing in WebKit1
3741         https://bugs.webkit.org/show_bug.cgi?id=172522
3742         rdar://problem/31071812
3743
3744         Reviewed by Sam Weinig.
3745
3746         Remove NSWindowStyleMaskFullSizeContentView which is no longer referenced in code.
3747         We set this in the .xib file now.
3748
3749         * MiniBrowser/mac/MiniBrowser_Prefix.pch:
3750
3751 2017-05-22  Simon Fraser  <simon.fraser@apple.com>
3752
3753         Snapshotting via -renderInContext: should do synchronous image decodes
3754         https://bugs.webkit.org/show_bug.cgi?id=172485
3755         rdar://problem/32276146
3756
3757         Reviewed by Tim Horton.
3758
3759         New API test.
3760
3761         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3762         * TestWebKitAPI/Tests/WebKit/ios/SnapshotViaRenderInContext.mm: Added.
3763         (-[RenderInContextWebViewDelegate webViewDidFinishLoad:]):
3764         (-[RenderInContextWebViewDelegate webView:didFailLoadWithError:]):
3765         (TestWebKitAPI::getPixelIndex):
3766         (TestWebKitAPI::TEST):
3767
3768 2017-05-23  Myles C. Maxfield  <mmaxfield@apple.com>
3769
3770         Remove dead ENABLE(FONT_LOAD_EVENTS) code
3771         https://bugs.webkit.org/show_bug.cgi?id=172517
3772
3773         Rubber-stamped by Simon Fraser.
3774
3775         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3776
3777 2017-05-23  Wenson Hsieh  <wenson_hsieh@apple.com>
3778
3779         Multiple links should be inserted separately when performing data interaction
3780         https://bugs.webkit.org/show_bug.cgi?id=172489
3781         <rdar://problem/31510832>
3782
3783         Reviewed by Dan Bernstein.
3784
3785         Adds a new test that performs data interaction in a contenteditable with multiple items containing URLs.
3786
3787         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3788         (TestWebKitAPI::TEST):
3789
3790 2017-05-23  Tim Horton  <timothy_horton@apple.com>
3791
3792         REGRESSION: API test WebKit2.WKObject is failing
3793         https://bugs.webkit.org/show_bug.cgi?id=172497
3794         <rdar://problem/31694641>
3795
3796         Reviewed by Geoff Garen.
3797
3798         * TestWebKitAPI/Tests/WebKit2Cocoa/WKObject.mm:
3799         (TestWebKitAPI::TEST):
3800         Add a test that ensures that we pretend to at least be *some* kind of
3801         NSString, which my first fix would not have passed.
3802
3803 2017-05-23  youenn fablet  <youenn@apple.com>
3804
3805         There should be an easy way to run HTTP/WPT served tests on a browser
3806         https://bugs.webkit.org/show_bug.cgi?id=172068
3807
3808         Reviewed by Sam Weinig.
3809
3810         Adding a new script open-layout-test to open a layout-test in a
3811         browser and making sure it is served as done through run-webkit-tests.
3812         In case tests should be run using a server, detecting whether the
3813         server are running. If not, calling run-webkit-httpd to run the
3814         servers and open the URL in a browser.
3815         Otherwise, open directly the URL.
3816
3817         Adding an option in run-webkit-httpd to open an URL after having
3818         started the servers.
3819
3820         Adding the --no-http-servers option in run-webkit-tests to not start any HTTP server.
3821         This allows running run-webkit-httpd once and not having to restart
3822         servers everytime a test should be served.
3823
3824         Moving most of run-webkit-httpd logic in its own python file to reuse
3825         it in open-layout-test script.
3826
3827         Adding routines to check whether HTTP and WPT servers are running.
3828
3829         * Scripts/open-layout-test: Added.
3830         (parse_args):
3831         (main):
3832         * Scripts/run-webkit-httpd:
3833         (main):
3834         * Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:
3835         (LayoutTestFinder.find_tests):
3836         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
3837         (LayoutTestRunner.run_tests):
3838         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3839         (parse_args):
3840         * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
3841         (HttpServerBase._is_server_running_on_all_ports):
3842         (HttpServerBase):
3843         (HttpServerBase._is_running_on_port):
3844         (HttpServerBase._check_that_all_ports_are_available):
3845         (is_http_server_running):
3846         * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py: Copied from Tools/Scripts/run-webkit-httpd.
3847         (parse_args):
3848         (main):
3849         (run_server):
3850         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
3851         (is_wpt_server_running):
3852         * Scripts/webkitpy/port/base.py:
3853         (Port.to.is_http_server_running):
3854         (Port.to):
3855         (Port.to.is_wpt_server_running):
3856         (Port.to.start_web_platform_test_server):
3857         * Scripts/webkitpy/port/driver.py:
3858         (DriverProxy.is_web_platform_test):
3859         (DriverProxy):
3860         (DriverProxy.is_webkit_specific_web_platform_test):
3861
3862 2017-05-23  Emilio Cobos Álvarez  <ecobos@igalia.com>
3863
3864         Add a RuntimeEnabledFeature for display: contents, defaulted to false.
3865         https://bugs.webkit.org/show_bug.cgi?id=171984
3866
3867         Reviewed by Antti Koivisto.
3868
3869         * DumpRenderTree/mac/DumpRenderTree.mm:
3870         (enableExperimentalFeatures):
3871         * WebKitTestRunner/TestController.cpp:
3872         (WTR::TestController::resetPreferencesToConsistentValues):
3873
3874 2017-05-20  Alex Christensen  <achristensen@webkit.org>
3875
3876         REGRESSION(r215686): O(n^2) algorithm in CachedRawResource::addDataBuffer
3877         https://bugs.webkit.org/show_bug.cgi?id=172406
3878         <rdar://32109532>
3879
3880         Reviewed by Brady Eidson.
3881
3882         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
3883         (TestWebKitAPI::checkBuffer):
3884         (TestWebKitAPI::TEST_F):
3885
3886 2017-05-22  Jason Marcell  <jmarcell@apple.com>
3887
3888         Do not enter Subversion-specific logic when parsing Git-based Trac data.
3889         https://bugs.webkit.org/show_bug.cgi?id=172433
3890         <rdar://problem/32234188>
3891
3892         Reviewed by Alexey Proskuryakov.
3893
3894         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
3895         (Trac.prototype._convertCommitInfoElementToObject):
3896
3897 2017-05-22  Tim Horton  <timothy_horton@apple.com>
3898
3899         ExplicitSnapshotsChangeUponNavigation API test often fails
3900         https://bugs.webkit.org/show_bug.cgi?id=172475
3901         <rdar://problem/31688322>
3902
3903         Reviewed by Simon Fraser.
3904
3905         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3906         (-[TestWKWebView _setUpTestWindow:]):
3907         Make TestWKWebView's window layer-backed. This is now the default,
3908         and it's also easy to accidentally write a test that depends on it
3909         (for example, ExplicitSnapshotsChangeUponNavigation adds an NSBox,
3910         which becomes layer backed, just like the WKWebView, but with no
3911         common layer-backed ancestor).
3912
3913 2017-05-22  youenn fablet  <youenn@apple.com>
3914
3915         Resync web-platform-tests up to 8df7c9c215678328212f232ce0b5270c505a8563
3916         https://bugs.webkit.org/show_bug.cgi?id=172426
3917
3918         Reviewed by Chris Dumez.
3919
3920         * Scripts/webkitpy/w3c/test_importer.py:
3921         (TestImporter.remove_deleted_files): Outputting warning when trying to delete a file that no longer exists.
3922
3923 2017-05-22  Konstantin Tokarev  <annulen@yandex.ru>
3924
3925         Unreviewed, change my status to reviewer and fill "expertise" field
3926
3927         * Scripts/webkitpy/common/config/contributors.json:
3928
3929 2017-05-22  Tomas Popela  <tpopela@redhat.com>
3930
3931         Remove some of the EFL port leftovers
3932         https://bugs.webkit.org/show_bug.cgi?id=172440
3933
3934         Reviewed by Carlos Garcia Campos.
3935
3936         * BuildSlaveSupport/built-product-archive:
3937         (archiveBuiltProduct):
3938         (extractBuiltProduct):
3939         * BuildSlaveSupport/test-result-archive:
3940         (archiveTestResults):
3941         * ImageDiff/PlatformEfl.cmake: Removed.
3942         * Scripts/run-efl-tests: Removed.
3943         * Scripts/webkit-build-directory:
3944         * Scripts/webkitpy/common/config/contributionareas.py:
3945         * Scripts/webkitpy/common/config/watchlist:
3946         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3947         (parse_args):
3948         (_set_up_derived_options):
3949         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
3950         (PerfTestsRunner.__init__):
3951         * Scripts/webkitpy/style/checker.py:
3952         * Scripts/webkitpy/style/checker_unittest.py:
3953         (GlobalVariablesTest.test_path_rules_specifier):
3954         * gtk/manifest.txt.in:
3955         * jhbuild/jhbuild-wrapper:
3956
3957 2017-05-22  Carlos Garcia Campos  <cgarcia@igalia.com>
3958
3959         Unreviewed. Do not include WPE files in GTK+ tarballs.
3960
3961         * gtk/manifest.txt.in:
3962
3963 2017-05-22  Carlos Garcia Campos  <cgarcia@igalia.com>
3964
3965         [GTK] Add webkit_context_menu_item_new_from_gaction
3966         https://bugs.webkit.org/show_bug.cgi?id=159631
3967
3968         Reviewed by Michael Catanzaro.
3969
3970         Update context menu tests to check the new GAction API.
3971
3972         * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
3973         (testContextMenuPopulateMenu):
3974
3975 2017-05-21  Michael Catanzaro  <mcatanzaro@igalia.com>
3976
3977         [GTK] Remove Firefox user agent quirk for Google domains
3978         https://bugs.webkit.org/show_bug.cgi?id=171941
3979
3980         Reviewed by Carlos Garcia Campos.
3981
3982         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
3983         (TestWebKitAPI::TEST):
3984         (TestWebKitAPI::assertUserAgentForURLHasFirefoxBrowserQuirk): Deleted.
3985
3986 2017-05-20  Ting-Wei Lan  <lantw44@gmail.com>
3987
3988         [GTK] gtkdoc-fixxref needs --module argument to work
3989         https://bugs.webkit.org/show_bug.cgi?id=172415
3990
3991         Reviewed by Michael Catanzaro.
3992
3993         * gtk/gtkdoc.py:
3994         (GTKDoc._run_gtkdoc_fixxref):
3995
3996 2017-05-20  Alexey Proskuryakov  <ap@apple.com>
3997
3998         make-new-script-test should create tests that use js-test.js, not js-test-pre.js
3999         https://bugs.webkit.org/show_bug.cgi?id=172416
4000
4001         Reviewed by Daniel Bates.
4002
4003         * Scripts/make-new-script-test:
4004
4005 2017-05-19  Fujii Hironori  <Hironori.Fujii@sony.com>
4006
4007         [Win] error LNK2005: WebCore::JSNode::checkSubClassPatchpoint() already defined in WebKit.lib
4008         https://bugs.webkit.org/show_bug.cgi?id=172267
4009
4010         Reviewed by Per Arne Vollan.
4011
4012         TestWebCoreLib and TestWebKitLib have linked both WebCore and WebKit.
4013         TestWebCoreLib should link only with WebCore. And, TestWebKitLib
4014         should link only with WebKit.
4015
4016         Unfortunately, there is a layer violation at the moment.
4017         WebCore::Image::loadPlatformResource needs loadResourceIntoBuffer
4018         in WebKit. This change contains a stub of loadResourceIntoBuffer
4019         in TestWebCoreLib for the workaround.
4020
4021         * TestWebKitAPI/PlatformWin.cmake: Do not link WebKit to
4022         TestWebCoreLib. Do not link WebCore to TestWebKitLib.
4023         * TestWebKitAPI/win/TestWebCoreStubs.cpp: Added.
4024         (loadResourceIntoBuffer): Added a stub.
4025
4026 2017-05-19  Simon Fraser  <simon.fraser@apple.com>
4027
4028         Fix dump-class-layout to handle different file architectures
4029         https://bugs.webkit.org/show_bug.cgi?id=172392
4030
4031         Reviewed by Zalan Bujtas.
4032
4033         Instead of using lldb.LLDB_ARCH_DEFAULT by default, run 'file' on the binary
4034         and use the first architecture reported. Also add a "--architecture" argument
4035         to allow the user to specify an architecture.
4036
4037         * Scripts/dump-class-layout:
4038         (import_lldb):
4039         (verify_type_recursive):
4040         (get_first_file_architecture):
4041         (dump_class):
4042         (main):
4043         (find_build_directory): Deleted.
4044
4045 2017-05-19  Jonathan Bedard  <jbedard@apple.com>
4046
4047         Unreviewed infrastructure fix.
4048
4049         * Scripts/webkitpy/port/ios_simulator.py:
4050         (IOSSimulatorPort._create_devices): Ignore failure to open Simulator.app.
4051
4052 2017-05-19  Jonathan Bedard  <jbedard@apple.com>
4053
4054         webkitpy: Use simctl boot to run multiple simulators at once
4055         https://bugs.webkit.org/show_bug.cgi?id=172374
4056
4057         Reviewed by Alexey Proskuryakov.
4058
4059         * Scripts/webkitpy/common/system/platforminfo.py:
4060         (PlatformInfo.xcode_version): Return the current version of Xcode.
4061         * Scripts/webkitpy/common/system/platforminfo_mock.py:
4062         (MockPlatformInfo.xcode_version): Return version 8.0 for testing.
4063         * Scripts/webkitpy/port/ios_simulator.py:
4064         (IOSSimulatorPort.use_multiple_simulator_apps): Return true if we need to
4065         run multiple Simulator.app instances.
4066         (IOSSimulatorPort._create_simulators): Only copy the simulator app for older
4067         versions of Xcode.
4068         (IOSSimulatorPort._create_devices): Use 'simctl boot' directly unless using
4069         an older version of Xcode.
4070
4071 2017-05-19  Wenson Hsieh  <wenson_hsieh@apple.com>
4072
4073         Unreviewed, fix the build on the latest internal SDK.
4074
4075         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
4076         (TestWebKitAPI::TEST):
4077
4078 2017-05-19  Filip Pizlo  <fpizlo@apple.com>
4079
4080         arrayProtoPrivateFuncConcatMemcpy needs to be down with firstArray being undecided
4081         https://bugs.webkit.org/show_bug.cgi?id=172369
4082
4083         Reviewed by Mark Lam.
4084         
4085         Because I wrote a test that relies on the NoCJIT config scribbling free cells, I thought it
4086         would be a good idea to write this down.
4087
4088         * Scripts/run-jsc-stress-tests:
4089
4090 2017-05-19  Jonathan Bedard  <jbedard@apple.com>
4091
4092         webkitpy: Layout tests which have no output will succeed
4093         https://bugs.webkit.org/show_bug.cgi?id=172322
4094         <rdar://problem/32258350>
4095
4096         Reviewed by David Kilzer.
4097
4098         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
4099         (SingleTestRunner._compare_text): Add FailreNotTested to failures if test has no output.
4100         * Scripts/webkitpy/layout_tests/models/test_failures.py:
4101         (determine_result_type): FailureNotTested means that the test could not be loaded. This
4102         is classified as a MISSING failure.
4103         (FailureNotTested): Added.
4104         (FailureNotTested.message):
4105
4106 2017-05-19  Yusuke Suzuki  <utatane.tea@gmail.com>
4107
4108         Add SixSpeed benchmark to PerformanceTests
4109         https://bugs.webkit.org/show_bug.cgi?id=172326
4110
4111         Reviewed by Sam Weinig.
4112
4113         * Scripts/run-jsc-benchmarks:
4114
4115 2017-05-19  Wenson Hsieh  <wenson_hsieh@apple.com>
4116
4117         [WK1] MiniBrowser should navigate when handling a dropped URL
4118         https://bugs.webkit.org/show_bug.cgi?id=172350
4119
4120         Reviewed by Tim Horton.
4121
4122         Allow all drop actions, including URL navigation, for WebKit1 MiniBrowser.
4123
4124         * MiniBrowser/mac/WK1BrowserWindowController.m:
4125         (-[WK1BrowserWindowController webView:dragDestinationActionMaskForDraggingInfo:]):
4126
4127 2017-05-18  Ryosuke Niwa  <rniwa@webkit.org>
4128
4129         REGRESSION (r216694 - 216712): Performance test Speedometer/Full.html is failing
4130         https://bugs.webkit.org/show_bug.cgi?id=172077
4131
4132         Reviewed by Chris Dumez.
4133
4134         Fixed perftest.py by updating the lines to ignore in Speedometer.
4135
4136         Also start report the results as "Speedometer" instead of "DoYouEvenBench/Full.html" to perf.webkit.org.
4137
4138         * Scripts/webkitpy/performance_tests/perftest.py:
4139         (PerfTest._lines_to_ignore_in_parser_result): Updated for Speedometer 2.0.
4140         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
4141         (PerfTestsRunner._collect_tests): Use "Speedometer" instead of "Speedometer/index.html" as the test name.
4142         (_generate_results_dict): Removed the workaround to keep reporting Speedometer as DoYouEvenBench.
4143         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
4144         (MainTest.test_collect_tests_with_index_html_and_resources): Added.
4145
4146 2017-05-18  Andy Estes  <aestes@apple.com>
4147
4148         ENABLE(APPLE_PAY_DELEGATE) should be NO on macOS Sierra and earlier
4149         https://bugs.webkit.org/show_bug.cgi?id=172305
4150
4151         Reviewed by Anders Carlsson.
4152
4153         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
4154
4155 2017-05-18  Wenson Hsieh  <wenson_hsieh@apple.com>
4156
4157         Selection around attachment elements should not persist when beginning a drag
4158         https://bugs.webkit.org/show_bug.cgi?id=172319
4159         <rdar://problem/32283008>
4160
4161         Reviewed by Tim Horton.
4162
4163         Tests that temporary selection around an attachment does not persist longer than it needs to.
4164
4165         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
4166         (TestWebKitAPI::TEST):
4167
4168 2017-05-18  John Wilander  <wilander@apple.com>
4169
4170         Resource Load Statistics: Grandfather domains for existing data records
4171         https://bugs.webkit.org/show_bug.cgi?id=172155
4172         <rdar://problem/24913532>
4173
4174         Reviewed by Alex Christensen.
4175
4176         Adds test infrastructure needed for the added functionality.
4177
4178         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
4179         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
4180         (WTR::InjectedBundle::didReceiveMessageToPage):
4181         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
4182         (WTR::TestRunner::setStatisticsGrandfathered):
4183         (WTR::TestRunner::isStatisticsGrandfathered):
4184         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
4185         (WTR::TestRunner::statisticsDidScanDataRecordsCallback):
4186         (WTR::TestRunner::setStatisticsGrandfatheringTime):
4187         * WebKitTestRunner/InjectedBundle/TestRunner.h:
4188         * WebKitTestRunner/TestController.cpp:
4189         (WTR::TestController::setStatisticsGrandfathered):
4190         (WTR::TestController::isStatisticsGrandfathered):
4191         (WTR::TestController::setStatisticsGrandfatheringTime):
4192         * WebKitTestRunner/TestController.h:
4193         * WebKitTestRunner/TestInvocation.cpp:
4194         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
4195
4196 2017-05-18  Saam Barati  <sbarati@apple.com>
4197
4198         WebAssembly: perform stack checks
4199         https://bugs.webkit.org/show_bug.cgi?id=165546
4200         <rdar://problem/29760307>
4201
4202         Reviewed by Filip Pizlo.
4203
4204         Add some new testing modes for using and not using fast TLS wasm contexts.
4205
4206         * Scripts/run-jsc-stress-tests:
4207
4208 2017-05-18  Daniel Bates  <dabates@apple.com>
4209
4210         REGRESSION (r209608): Cross-origin plugin document opened in child window blocked by parent
4211         window CSP when object-src 'none' is set
4212         https://bugs.webkit.org/show_bug.cgi?id=172038
4213         <rdar://problem/32258262>
4214
4215         Reviewed by Andy Estes.
4216
4217         Teach the test Netscape plugin to look for a URL that contains plugin-document-alert-and-notify-done.pl.
4218         When it sees this URL it will show a JavaScript alert and call testRunner.notifyDone().
4219
4220         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
4221         (NPP_New):
4222
4223 2017-05-18  Per Arne Vollan  <pvollan@apple.com>
4224
4225         [Win] Many layout tests are failing.
4226         https://bugs.webkit.org/show_bug.cgi?id=172286
4227
4228         Reviewed by Brent Fulgham.
4229
4230         Add a FIXME comment about unimplemented functions, instead of writing this to the test result file.
4231  
4232         * DumpRenderTree/win/TestRunnerWin.cpp:
4233         (TestRunner::grantWebNotificationPermission):
4234         (TestRunner::denyWebNotificationPermission):
4235         (TestRunner::removeAllWebNotificationPermissions):
4236         (TestRunner::simulateWebNotificationClick):
4237
4238 2017-05-18  Don Olmstead  <don.olmstead@am.sony.com>
4239
4240         [Win] Remove usage of _snprintf
4241         https://bugs.webkit.org/show_bug.cgi?id=172251
4242
4243         Reviewed by Per Arne Vollan.
4244
4245         * DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
4246         * MiniBrowser/win/PageLoadTestClient.cpp:
4247         (PageLoadTestClient::dumpRunStatistics):
4248
4249 2017-05-17  Ryan Haddad  <ryanhaddad@apple.com>
4250
4251         Unreviewed, rolling out r217014.
4252
4253         This change caused mac-wk2 LayoutTests to exit early due to
4254         crashes.
4255
4256         Reverted changeset:
4257
4258         "Resource Load Statistics: Grandfather domains for existing
4259         data records"
4260         https://bugs.webkit.org/show_bug.cgi?id=172155
4261         http://trac.webkit.org/changeset/217014
4262
4263 2017-05-17  John Wilander  <wilander@apple.com>
4264
4265         Resource Load Statistics: Grandfather domains for existing data records
4266         https://bugs.webkit.org/show_bug.cgi?id=172155
4267         <rdar://problem/24913532>
4268
4269         Reviewed by Alex Christensen.
4270
4271         Adds test infrastructure needed for the added functionality.
4272
4273         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
4274         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
4275         (WTR::InjectedBundle::didReceiveMessageToPage):
4276         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
4277         (WTR::TestRunner::setStatisticsGrandfathered):
4278         (WTR::TestRunner::isStatisticsGrandfathered):
4279         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
4280         (WTR::TestRunner::statisticsDidScanDataRecordsCallback):
4281         (WTR::TestRunner::setStatisticsGrandfatheringTime):
4282         * WebKitTestRunner/InjectedBundle/TestRunner.h:
4283         * WebKitTestRunner/TestController.cpp:
4284         (WTR::TestController::setStatisticsGrandfathered):
4285         (WTR::TestController::isStatisticsGrandfathered):
4286         (WTR::TestController::setStatisticsGrandfatheringTime):
4287         * WebKitTestRunner/TestController.h:
4288         * WebKitTestRunner/TestInvocation.cpp:
4289         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
4290
4291 2017-05-17  Alex Christensen  <achristensen@webkit.org>
4292