[iOS] Cmd-C doesn't copy text from WKWebView
[WebKit-https.git] / Tools / ChangeLog
1 2017-06-12  Tim Horton  <timothy_horton@apple.com>
2
3         [iOS] Cmd-C doesn't copy text from WKWebView
4         https://bugs.webkit.org/show_bug.cgi?id=173277
5         <rdar://problem/32396742>
6
7         Reviewed by Dan Bernstein.
8
9         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
10         * Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
11         Add a test ensuring that -copy on WKContentView will cause text to be copied.
12
13 2017-06-12  Jiewen Tan  <jiewen_tan@apple.com>
14
15         [WebCrypto] Remove experimental feature flag of SubtleCrypto
16         https://bugs.webkit.org/show_bug.cgi?id=173197
17         <rdar://problem/32688148>
18
19         Reviewed by Brent Fulgham.
20
21         * DumpRenderTree/mac/DumpRenderTree.mm:
22         (enableExperimentalFeatures):
23         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
24         (WTR::InjectedBundle::beginTesting):
25         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
26         (WTR::TestRunner::setSubtleCryptoEnabled): Deleted.
27         * WebKitTestRunner/InjectedBundle/TestRunner.h:
28
29 2017-06-12  Wenson Hsieh  <wenson_hsieh@apple.com>
30
31         [iOS DnD] Allow the injected bundle to add client data when writing an image to the pasteboard
32         https://bugs.webkit.org/show_bug.cgi?id=173238
33         <rdar://problem/31943370>
34
35         Reviewed by Ryosuke Niwa and Tim Horton.
36
37         Add a new unit test to verify that data inserted by the injected bundle when beginning a drag on an image
38         element is plumbed across to the UI delegate. Also refactors injected bundle unit tests to use the new version
39         of adjustedDataInteractionItemProvidersForItemProvider: that takes representing objects and additional data.
40
41         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
42         (TestWebKitAPI::TEST):
43         * TestWebKitAPI/ios/DataInteractionSimulator.h:
44         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
45         (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
46         (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProviders:]): Deleted.
47
48 2017-06-12  Wenson Hsieh  <wenson_hsieh@apple.com>
49
50         WebItemProviderPasteboard should call its completion block immediately after a synchronous load
51         https://bugs.webkit.org/show_bug.cgi?id=173225
52         <rdar://problem/32713144>
53
54         Reviewed by Tim Horton.
55
56         Adds a new unit test to verify whether the completion block is called synchronously or asynchronously, in both
57         cases where the synchronous timeout is very large, and the synchronous timeout is not used (0).
58
59         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
60         (TestWebKitAPI::TEST):
61
62 2017-06-12  Jonathan Bedard  <jbedard@apple.com>
63
64         Return correct process names for iOS on-device testing
65         https://bugs.webkit.org/show_bug.cgi?id=173263
66
67         Reviewed by Alex Christensen.
68
69         When running tests on iOS devices, process names do not end with '.Development'
70         as they do on Mac and iOS simulator.
71
72         * WebKitTestRunner/TestController.cpp:
73         (WTR::TestController::webProcessName): Return correct process name without '.Development'
74         for iOS on-device testing.
75         (WTR::TestController::networkProcessName): Ditto.
76         (WTR::TestController::databaseProcessName): Ditto.
77
78 2017-06-12  Chris Dumez  <cdumez@apple.com>
79
80         Regression(r217867): Legacy SessionHistoryEntryData format should not change
81         https://bugs.webkit.org/show_bug.cgi?id=173267
82         <rdar://problem/32701257>
83
84         Reviewed by Simon Fraser.
85
86         Restrict test to stop covering saving / restore of scrollRestoration via the legacy
87         SessionHistoryEntryData. Maintain coverage for the default value of scrollRestoration
88         though as this covers the crash that r217867 was fixing.
89
90         * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp:
91         (TestWebKitAPI::createSessionStateData):
92         (TestWebKitAPI::TEST):
93         (TestWebKitAPI::createSessionStateDataContainingScrollRestoration): Deleted.
94
95 2017-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
96
97         [GTK] Stop dismissing menus attached to the web view for every injected event
98         https://bugs.webkit.org/show_bug.cgi?id=172708
99
100         Reviewed by Alex Christensen.
101
102         It's a workaround we added in r184015 that has worked so far for the context menu, but doesn't really work now
103         that we also attach popup menus to the web view. We really need to be able to show a popup menu, and then send
104         events while the menu is open.
105
106         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
107         (WTR::EventSendingController::contextClick): Use WKBundlePageCopyContextMenuAtPointInWindow() also in GTK+ port.
108         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
109         (WTR::EventSenderProxy::dispatchEvent): Stop calling PlatformWebView::dismissAllPopupMenus().
110
111 2017-06-12  Miguel Gomez  <magomez@igalia.com>
112
113         [GTK][WPE] Enable GStreamer GL on development builds
114         https://bugs.webkit.org/show_bug.cgi?id=173248
115
116         Enable GStreamer GL for GTK and WPE.
117
118         Reviewed by Carlos Garcia Campos.
119
120         * Scripts/webkitperl/FeatureList.pm:
121
122 2017-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
123
124         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/notification after r216641.
125
126         Notifications are no longer cleared on page navigation.
127
128         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
129         (testWebViewNotification):
130
131 2017-06-11  Carlos Garcia Campos  <cgarcia@igalia.com>
132
133         Unreviewed. Fix GTK+ test /webkit2/WebKitAutomationSession/request-session after r217831.
134
135         DBus interface and object path names were updated in r217831.
136
137         * TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp:
138
139 2017-06-10  Dan Bernstein  <mitz@apple.com>
140
141         Reverted r218056 because it made the IDE reindex constantly.
142
143         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
144         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
145         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
146         * MiniBrowser/Configurations/DebugRelease.xcconfig:
147         * MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
148         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
149         * WebEditingTester/Configurations/DebugRelease.xcconfig:
150         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
151
152 2017-06-10  Dan Bernstein  <mitz@apple.com>
153
154         [Xcode] With Xcode 9 developer beta, everything rebuilds when switching between command-line and IDE
155         https://bugs.webkit.org/show_bug.cgi?id=173223
156
157         Reviewed by Sam Weinig.
158
159         The rebuilds were happening due to a difference in the compiler options that the IDE and
160         xcodebuild were specifying. Only the IDE was passing the -index-store-path option. To make
161         xcodebuild pass that option, too, set CLANG_INDEX_STORE_ENABLE to YES if it is unset, and
162         specify an appropriate path in CLANG_INDEX_STORE_PATH.
163
164         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
165         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
166         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
167         * MiniBrowser/Configurations/DebugRelease.xcconfig:
168         * MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
169         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
170         * WebEditingTester/Configurations/DebugRelease.xcconfig:
171         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
172
173 2017-06-10  Jonathan Bedard  <jbedard@apple.com>
174
175         webkitpy: Reduce polling in ServerProcess
176         https://bugs.webkit.org/show_bug.cgi?id=173116
177
178         Reviewed by Ryosuke Niwa.
179
180         We should be smarter about polling. We do not need to poll every time a line is read from
181         stdout and stderr since lines are usually read from cached data. We should only poll
182         when extracting that cached data from stdout and stderr.
183
184         * Scripts/webkitpy/port/driver.py:
185         (Driver._read_block): Rely on output of the ServerProcess to detect a crash or a timeout
186         and on ServerProcess to poll the process if not data is available in stdout and stderr.
187         * Scripts/webkitpy/port/driver_unittest.py:
188         (DriverTest.test_read_block_crashed_process): Test that the Driver will handle a crashing
189         ServerProcess.
190         * Scripts/webkitpy/port/server_process.py:
191         (ServerProcess._read): Allow for data to be read from _output even if the process has
192         crashed. Only poll the process if data needs to be extracted from stdout or stderr. 
193         * Scripts/webkitpy/port/server_process_mock.py:
194         (MockServerProcess): Add number_of_times_polled.
195         (MockServerProcess.poll): Increment number_of_times_polled.
196         (MockServerProcess.has_crashed): Poll before returning crash state.
197         (MockServerProcess.read_stdout_line): MockServerProcess should return None if it has crashed,
198         just like a ServerProcess would.
199         (MockServerProcess.read_stdout): Ditto.
200         * Scripts/webkitpy/port/server_process_unittest.py:
201         (TestServerProcess.test_basic): Use stdin.readline() instead of time.sleep() to prevent the
202         process from ending before stdout and stderr are read. This is the reason this test was flakey.
203         (TestServerProcess):
204         (TestServerProcess.test_process_crashing): Test that when a process crashes, data can be read until
205         the processes is polled.
206         (TestServerProcess.test_process_crashing_no_data): Test that when a process which has not output any
207         data to stdout and stderr crashes, ServerProcess._read(...) polls the process to detect the crash.
208
209 2017-06-10  Andy Estes  <aestes@apple.com>
210
211         [QuickLook] PreviewLoader needs to check if its ResourceLoader has reached the terminal state before calling didReceiveResponse() and friends
212         https://bugs.webkit.org/show_bug.cgi?id=173190
213         <rdar://problem/31360659>
214
215         Reviewed by Brady Eidson.
216         
217         Added a release assert that tries to create a proper test failure if the web process crashes.
218
219         * TestWebKitAPI/Tests/WebKit2Cocoa/QuickLook.mm:
220         (-[QuickLookDecidePolicyDelegate _webViewWebProcessDidCrash:]):
221
222 2017-06-09  Wenson Hsieh  <wenson_hsieh@apple.com>
223
224         [iOS DnD] Add a hook to perform two-step drops in editable content
225         https://bugs.webkit.org/show_bug.cgi?id=172992
226         <rdar://problem/32590174>
227
228         Reviewed by Tim Horton.
229
230         Adds 2 new API tests to cover using the injected editing bundle to override performTwoStepDrop.
231         Tests:  DataInteractionTests.InjectedBundleOverridePerformTwoStepDrop
232                 DataInteractionTests.InjectedBundleAllowPerformTwoStepDrop
233
234         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm:
235         (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
236         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:performTwoStepDrop:atDestination:isMove:]):
237
238         Allow the BundleOverridePerformTwoStepDrop bundle parameter to determine whether or not two-step drops should
239         be overridden. Currently, this is overridden to just return true.
240
241         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
242         (TestWebKitAPI::TEST):
243         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
244         (WTR::InjectedBundlePage::InjectedBundlePage):
245
246 2017-06-09  Zan Dobersek  <zdobersek@igalia.com>
247
248         [WPE] Enable ENCRYPTED_MEDIA for build-webkit builds
249         https://bugs.webkit.org/show_bug.cgi?id=173103
250
251         Reviewed by Xabier Rodriguez-Calvar.
252
253         * Scripts/webkitperl/FeatureList.pm: Enable ENCRYPTED_MEDIA flag
254         when building the WPE port through build-webkit.
255
256 2017-06-09  Zan Dobersek  <zdobersek@igalia.com>
257
258         [WPE] Enable MEDIA_SOURCE for build-webkit builds
259         https://bugs.webkit.org/show_bug.cgi?id=173136
260
261         Reviewed by Xabier Rodriguez-Calvar.
262
263         * Scripts/webkitperl/FeatureList.pm: Enable the MEDIA_SOURCE feature for WPE.
264
265 2017-06-08  Carlos Garcia Campos  <cgarcia@igalia.com>
266
267         [GTK] Use API::FormClient instead of the C API in WebKitFormClient
268         https://bugs.webkit.org/show_bug.cgi?id=173098
269
270         Reviewed by Žan Doberšek.
271
272         Fix memory leak and runtime warning when running /webkit2/WebKitWebView/submit-form. The web extension is
273         assuming that all tests containing forms define ids for the form elements like
274         /webkit2/WebKitWebExtension/form-controls-associated-signal does.
275
276         * TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
277         (formControlsAssociatedCallback):
278
279 2017-06-08  Jonathan Bedard  <jbedard@apple.com>
280
281         webkitpy: Run sample/spindump on iOS devices
282         https://bugs.webkit.org/show_bug.cgi?id=171881
283         <rdar://problem/32084602>
284
285         Reviewed by Daniel Bates.
286
287         * Scripts/webkitpy/port/darwin.py:
288         (DarwinPort.sample_process): Only add sudo prefix if the platform is Mac, which
289         requires sudo to run spindump.
290         * Scripts/webkitpy/port/ios_device.py:
291         (IOSDevicePort.look_for_new_samples): Deleted.
292         (IOSDevicePort.sample_process): Deleted.
293         * Scripts/webkitpy/port/ios_device_unittest.py:
294         (IOSDeviceTest): iOS devices use 'ios' and their os_name.
295         (IOSDeviceTest.test_spindump):
296         (IOSDeviceTest.test_sample_process):
297         (IOSDeviceTest.test_sample_process_exception):
298         * Scripts/webkitpy/port/ios_simulator_unittest.py:
299         (IOSSimulatorTest): iOS Simulators run on Mac and use 'mac' as their os_name.
300
301 2017-06-08  Keith Miller  <keith_miller@apple.com>
302
303         WebAssembly: We should only create wrappers for functions that can be exported
304         https://bugs.webkit.org/show_bug.cgi?id=173088
305
306         Reviewed by Saam Barati.
307
308         Add quick mode for wasm tests.
309
310         * Scripts/run-jsc-stress-tests:
311
312 2017-06-08  Darin Adler  <darin@apple.com>
313
314         WTF tests have incorrect RefLogger lifetimes making it impossible to test with Address Sanitizer
315         https://bugs.webkit.org/show_bug.cgi?id=173106
316
317         Reviewed by Sam Weinig.
318
319         * TestWebKitAPI/Tests/WTF/HashCountedSet.cpp: Define RefLogger objects first, so they are
320         destroyed last.
321         * TestWebKitAPI/Tests/WTF/HashMap.cpp: Ditto.
322         * TestWebKitAPI/Tests/WTF/HashSet.cpp: Ditto.
323
324 2017-06-07  Dan Bernstein  <mitz@apple.com>
325
326         [Cocoa] additionalReadAccessAllowedURLs doesn’t preserve non-Latin1 paths
327         https://bugs.webkit.org/show_bug.cgi?id=173086
328
329         Reviewed by Andy Estes.
330
331         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
332         (TEST):
333
334 2017-06-07  Alexey Proskuryakov  <ap@apple.com>
335
336         Add High Sierra support to WebKit tools
337         https://bugs.webkit.org/show_bug.cgi?id=173080
338
339         Rubber-stamped by Daniel Bates.
340
341         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra.png: Added.
342         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra@2x.png: Added.
343         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
344         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
345         Added dashboard support.
346
347         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
348         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
349         Trigger the right build queues on check-in.
350
351         * Scripts/webkitpy/common/system/platforminfo.py:
352         * Scripts/webkitpy/common/system/platforminfo_unittest.py:
353         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
354         * Scripts/webkitpy/port/mac.py:
355         * Scripts/webkitpy/port/mac_unittest.py:
356         * TestResultServer/static-dashboards/flakiness_dashboard.js:
357         Added cases for Sierra, and updated tests for new baseline search paths.
358
359 2017-06-07  Ryan Haddad  <ryanhaddad@apple.com>
360
361         Unreviewed, rolling out r217902.
362
363         This change appears to have caused imported/w3c/web-platform-
364         tests/fetch/api/cors tests to fail on El Capitan.
365
366         Reverted changeset:
367
368         "Teach run-webkit-tests how to run HTTPS Web Platform Tests"
369         https://bugs.webkit.org/show_bug.cgi?id=172930
370         http://trac.webkit.org/changeset/217902
371
372 2017-06-07  Daniel Bates  <dabates@apple.com>
373
374         Teach run-webkit-tests how to run HTTPS Web Platform Tests
375         https://bugs.webkit.org/show_bug.cgi?id=172930
376         <rdar://problem/32570201>
377
378         Reviewed by Youenn Fablet.
379
380         Some web platform tests need to be run from an HTTPS server in order to exercise functionality
381         that is conditioned on the page being delivered over a secure protocol. One example of such
382         a test is LayoutTests/imported/w3c/web-platform-tests/WebCryptoAPI/secure_context/crypto-subtle-secure-context-available.https.sub.html.
383
384         Ideally we should look to use wptrunner to run Web Platform Tests. For now, modify run-webkit-tests
385         to access web platform tests from an HTTPS server when the filename of the test contains ".https.".
386         This makes run-webkit-test match the behavior of wptrunner: <https://github.com/w3c/web-platform-tests/blob/7ce469d1c46dd45aacfe1b408bf2ad36a630e089/tools/manifest/item.py#L42>.
387
388         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
389         (https_base_url): Parses the Web Platform Tests JSON configuration and returns the base URL
390         to the Web Platform Tests HTTPS server.
391         * Scripts/webkitpy/port/base.py:
392         (Port.to.web_platform_test_server_https_base_url): Turns around and calls https_base_url().
393         * Scripts/webkitpy/port/driver.py:
394         (Driver.__init__): Caches the base URL to the Web Platform Tests HTTPS server. Also rename
395         instance variables web_platform_test_server_doc_root, web_platform_test_server_base_url to
396         _web_platform_test_server_doc_root and _web_platform_test_server_base_url, respectively to
397         indicate that they should be considered private instance variables.
398         (Driver.is_web_platform_test): Update code for renamed instance variables.
399         (Driver):
400         (Driver._web_platform_test_base_url_for_test): Returns the URL to access the specified test.
401         (Driver.test_to_uri): Modified to use Driver._web_platform_test_base_url_for_test() to
402         determine the base URL to use to access the test.
403         (Driver.uri_to_test): Added logic to compute the filesystem local test name from a Web
404         Platform Tests HTTPS URL. Also updated code for renamed instance variables.
405
406 2017-06-07  Per Arne Vollan  <pvollan@apple.com>
407
408         Support removal of authentication data through the Website data store API.
409         https://bugs.webkit.org/show_bug.cgi?id=171217
410
411         Reviewed by Brady Eidson.
412
413         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
414         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
415         (WTR::InjectedBundle::didReceiveMessageToPage):
416         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
417         (WTR::TestRunner::removeAllSessionCredentials):
418         (WTR::TestRunner::callDidRemoveAllSessionCredentialsCallback):
419         * WebKitTestRunner/InjectedBundle/TestRunner.h:
420         * WebKitTestRunner/TestController.h:
421         * WebKitTestRunner/TestInvocation.cpp:
422         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
423         (WTR::TestInvocation::didRemoveAllSessionCredentials):
424         * WebKitTestRunner/TestInvocation.h:
425         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
426         (WTR::TestController::removeAllSessionCredentials):
427
428 2017-06-07  Charlie Turner  <cturner@igalia.com>
429
430         Add Charlie Turner as contributor
431         https://bugs.webkit.org/show_bug.cgi?id=173055
432
433         Reviewed by Carlos Alberto Lopez Perez.
434
435         I also ran the Tools/Scripts/validate-committer-lists --canonicalize command at the suggestion
436         of webkit-patch upload, which reordered some fields and removed a newline.
437
438         * Scripts/webkitpy/common/config/contributors.json:
439
440 2017-06-06  Chris Dumez  <cdumez@apple.com>
441
442         RELEASE_ASSERT(static_cast<size_t>(enumerationValue) < WTF_ARRAY_LENGTH(values)) hit in convertEnumerationToJS<WebCore::History::ScrollRestoration>()
443         https://bugs.webkit.org/show_bug.cgi?id=173033
444         <rdar://problem/32591099>
445
446         Reviewed by Simon Fraser.
447
448         Add API test coverage to make sure History's scrollRestoration is properly saved / restored via the
449         WKPageCopySessionState() / WKPageRestoreFromSessionState() C API.
450
451         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
452         * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp: Added.
453         (TestWebKitAPI::didFinishLoadForFrame):
454         (TestWebKitAPI::setPageLoaderClient):
455         (TestWebKitAPI::createSessionStateDataContainingScrollRestoration):
456         (TestWebKitAPI::TEST):
457
458 2017-06-06  Andy Estes  <aestes@apple.com>
459
460         REGRESSION (r199558): WKWebView upload file which name contains Chinese character results in garbled code
461         https://bugs.webkit.org/show_bug.cgi?id=172849
462         <rdar://problem/32567454>
463
464         Reviewed by Darin Adler.
465
466         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
467         * TestWebKitAPI/Tests/WebKit2Cocoa/RunOpenPanel.mm: Added.
468         (-[RunOpenPanelUIDelegate webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
469         (TestWebKitAPI::TEST):
470
471 2017-06-06  Yoav Weiss  <yoav@yoav.ws>
472
473         [preload] Conditional support for media preloading and align media `as` values.
474         https://bugs.webkit.org/show_bug.cgi?id=172501
475
476         Reviewed by Dean Jackson.
477
478         Turn on media preloading preference for tests.
479
480         * DumpRenderTree/mac/DumpRenderTree.mm: Turn on media preloading preference.
481         * DumpRenderTree/win/DumpRenderTree.cpp: Turn on media preloading preference.
482         * WebKitTestRunner/TestController.cpp: Turn on media preloading preference.
483
484 2017-06-06  Jonathan Bedard  <jbedard@apple.com>
485
486         webkitpy: Return correct process names from SimulatorProcess
487         https://bugs.webkit.org/show_bug.cgi?id=172940
488
489         Reviewed by Aakash Jain.
490
491         * Scripts/webkitpy/port/darwin.py:
492         (DarwinPort.plist_data_from_bundle): Share plist access code for accessing different plist entries.
493         (DarwinPort.app_identifier_from_bundle): Use plist_data_from_bundle.
494         (DarwinPort.app_executable_from_bundle): Access name of app executable from provided app bundle.
495         * Scripts/webkitpy/port/driver.py:
496         (Driver.has_crashed): Use _server_process.process_name() instead of _server_process.name() since
497         _server_process.name() will not return the correct process name for iOS.
498         (Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
499         (Driver._read_block): Ditto.
500         * Scripts/webkitpy/port/driver_unittest.py:
501         (DriverTest.test_check_for_driver_crash.FakeServerProcess.process_name): Update since Driver uses
502         process_name() instead of name().
503         * Scripts/webkitpy/port/server_process.py:
504         (ServerProcess._start): Use process_name() instead of name().
505         (ServerProcess.stop): Ditto.
506         (ServerProcess.name): Deleted.
507         * Scripts/webkitpy/port/simulator_process.py:
508         (SimulatorProcess.process_name): Check the provided bundle for the process name.
509
510 2017-06-06  Dean Johnson  <dean_johnson@apple.com>
511
512         test-webkitpy: stop forking unsafely from within a spawned process
513         https://bugs.webkit.org/show_bug.cgi?id=172774
514
515         Reviewed by Darin Adler.
516
517         * Scripts/webkitpy/common/net/buildbot/buildbot.py:
518         (Builder.__init__): We don't use mechanize.Browser() as part of testing, so only initialize it when
519         it's going to be used.
520         (Builder.force_build):
521
522 2017-06-06  Jonathan Bedard  <jbedard@apple.com>
523
524         webkitpy: Process crash-logs for iOS devices
525         https://bugs.webkit.org/show_bug.cgi?id=171976
526         <rdar://problem/32134551>
527
528         Reviewed by David Kilzer.
529
530         When running layout tests on an iOS device, crash logs should be processed.
531         Implement crash log searching and parsing for iOS devices.
532
533         * Scripts/webkitpy/common/system/crashlogs.py:
534         (CrashLogs): Moved process regular expression for Darwin to class variable.
535         (CrashLogs.__init__): Accept optional list of crash logs to ignore.
536         (CrashLogs.find_newest_log): Add iOS as a potential platform.
537         (CrashLogs.find_all_logs): Ditto.
538         (CrashLogs._parse_darwin_crash_log): Share code for parsing of Darwin crash logs.
539         Do not assume that a Darwin crash log starts with the process.
540         (CrashLogs._find_newest_log_darwin): Remove .app in process name for iOS, use
541         shared code for parsing Darwin crash logs.
542         (CrashLogs._find_newest_log_darwin.is_crash_log): Skip crash logs passed into this
543         object so that crash logs already on the system before testing are not parsed.
544         (CrashLogs._find_newest_log_win.is_crash_log): Ditto.
545         (CrashLogs._find_all_logs_darwin.is_crash_log): Ditto.
546         (CrashLogs._find_all_logs_darwin): Use shared code for parsing Darwin crash logs.
547         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
548         (make_mock_crash_report_darwin): Crash logs may not have their process on the first line.
549         * Scripts/webkitpy/common/system/systemhost.py:
550         (SystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
551         systems is just the crashlog, use this behavior by default.
552         * Scripts/webkitpy/common/system/systemhost_mock.py:
553         (MockSystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
554         systems is just the crashlog, use this behavior by default.
555         * Scripts/webkitpy/port/apple.py:
556         (ApplePort): Add a dictionary mapping hosts to a list of crash logs to be skipped.
557         (ApplePort.setup_test_run): Set the list of crash logs to be skipped to the crash logs on
558         the system before testing begins
559         * Scripts/webkitpy/port/base.py:
560         (Port._get_crash_log): Pass optional target host when getting crash logs.
561         * Scripts/webkitpy/port/darwin.py:
562         (DarwinPort._look_for_all_crash_logs_in_log_dir): Pass list of crash logs to be skipped to
563         CrashLogs object.
564         (DarwinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
565         logs to be skipped to CrashLogs object.
566         * Scripts/webkitpy/port/darwin_testcase.py:
567         (DarwinTest.test_get_crash_log): Removed unused local function.
568         (DarwinTest.test_get_crash_log.fake_time_cb): Deleted.
569         * Scripts/webkitpy/port/device.py:
570         (Device.symbolicate_crash_log_if_needed): If the platform device has a function with this
571         name, call it. Otherwise, assume the default behavior and read the file at the provided path.
572         * Scripts/webkitpy/port/driver.py:
573         (Driver._get_crash_log): Pass optional target host when getting crash logs.
574         * Scripts/webkitpy/port/gtk.py:
575         (GtkPort._get_crash_log): Pass optional target host when getting crash logs.
576         * Scripts/webkitpy/port/ios.py: Ditto.
577         (IOSPort.setup_test_run): Each device is treated as an independent host. Set the list of crash logs
578         to be skipped for each host.
579         * Scripts/webkitpy/port/ios_device.py:
580         (IOSDevicePort.path_to_crash_logs): Consult apple_additions for the path to crash logs.
581         (IOSDevicePort._look_for_all_crash_logs_in_log_dir): Search every connected device for
582         crash logs and pass list of crash logs to ignore to each instance of CrashLogs.
583         (IOSDevicePort._get_crash_log): Search the specified target host for a crash log if a target
584         host is specified. Else, search all connected devices for the specified crash-log.
585         (IOSDevicePort.look_for_new_crash_logs): Deleted.
586         * Scripts/webkitpy/port/ios_device_unittest.py:
587         (IOSDeviceTest.test_crashlog_path): Without apple_additions, an exception should be raised.
588         (IOSDeviceTest.test_get_crash_log): Ditto.
589         * Scripts/webkitpy/port/simulator_process.py:
590         (SimulatorProcess.process_name): Check the provided bundle for the process name.
591         * Scripts/webkitpy/port/win.py:
592         (WinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
593         logs to be skipped to CrashLogs object.
594         * Scripts/webkitpy/port/wpe.py:
595         (WPEPort._get_crash_log): Pass optional target host when getting crash logs.
596
597 2017-06-06  David Kilzer  <ddkilzer@apple.com>
598
599         Move WTF_ATTRIBUTE_PRINTF() from implementation to declaration
600         <https://webkit.org/b/172804>
601
602         Reviewed by Darin Adler.
603
604         WTF_ATTRIBUTE_PRINTF() only works outside the current
605         compilation unit if it's on the declaration, not the
606         implementation, of a function or class method.
607
608         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
609         * DumpRenderTree/TestNetscapePlugIn/PluginObject.h:
610         * DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
611         * DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
612         - Move WTF_ATTRIBUTE_PRINTF() macro to declaration.
613         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
614         - Remove redundant CRASH() macro definition.  Use the one from
615           <wtf/Assertions.h> instead.
616
617 2017-06-06  Joseph Pecoraro  <pecoraro@apple.com>
618
619         Move Resource Timing / User Timing from experimental features into main preferences
620         https://bugs.webkit.org/show_bug.cgi?id=172950
621
622         Reviewed by Darin Adler.
623
624         * DumpRenderTree/mac/DumpRenderTree.mm:
625         (enableExperimentalFeatures):
626         (resetWebPreferencesToConsistentValues):
627         * DumpRenderTree/win/DumpRenderTree.cpp:
628         (enableExperimentalFeatures):
629         (resetWebPreferencesToConsistentValues):
630         * WebKitTestRunner/TestController.cpp:
631         (WTR::TestController::resetPreferencesToConsistentValues):
632         Move out no longer experimental features to the main list.
633
634 2017-06-06  Carlos Alberto Lopez Perez  <clopez@igalia.com>
635
636         [WPE] Add an install-dependencies script
637         https://bugs.webkit.org/show_bug.cgi?id=172948
638
639         Reviewed by Žan Doberšek.
640
641         It is based on the gtk/install-dependencies script.
642         Includes support for Debian based distrubutions, Fedora and Arch.
643         It has been tested on a minimal Debian 9 chroot.
644
645         * wpe/install-dependencies: Added.
646
647 2017-06-05  Wenson Hsieh  <wenson_hsieh@apple.com>
648
649         Refactor -[WebItemProviderPasteboard valuesForPasteboardType:inItemSet:] to check readable types
650         https://bugs.webkit.org/show_bug.cgi?id=172891
651         <rdar://problem/32204540>
652
653         Reviewed by Darin Adler.
654
655         Adds 2 new API tests to exercise data interaction of HTML data and an attributed string into a rich
656         contenteditable. See WebCore ChangeLog for more details.
657
658         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
659         (TestWebKitAPI::TEST):
660
661 2017-06-05  Daniel Bates  <dabates@apple.com>
662
663         webkitpy: Abstract Executive class
664         https://bugs.webkit.org/show_bug.cgi?id=172928
665         <rdar://problem/32569531>
666
667         Reviewed by Ryosuke Niwa.
668
669         Adds an AbstractExecutive class and makes Executive extend AbstractExecutive.
670         This will make it straightforward to create additional derived classes that
671         adhere to the same interface, say for iOS on-device testing.
672
673         * Scripts/webkitpy/common/system/abstractexecutive.py: Added.
674         (AbstractExecutive):
675         (AbstractExecutive.run_and_throw_if_fail):
676         (AbstractExecutive.cpu_count):
677         (AbstractExecutive.interpreter_for_script):
678         (AbstractExecutive.shell_command_for_script):
679         (AbstractExecutive.kill_process):
680         (AbstractExecutive.check_running_pid):
681         (AbstractExecutive.running_pids):
682         (AbstractExecutive.wait_newest):
683         (AbstractExecutive.wait_limited):
684         (AbstractExecutive.interrupt):
685         (AbstractExecutive.default_error_handler):
686         (AbstractExecutive.ignore_error):
687         (AbstractExecutive._stringify_args):
688         (AbstractExecutive.command_for_printing):
689         (AbstractExecutive.run_command):
690         (AbstractExecutive.popen):
691         (AbstractExecutive.run_in_parallel):
692         * Scripts/webkitpy/common/system/executive.py:
693         (Executive):
694         (Executive.cpu_count):
695         (Executive.running_pids):
696         (Executive.kill_all):
697         (Executive._compute_stdin):
698         (Executive.interpreter_for_script): Deleted.
699         (Executive.shell_command_for_script): Deleted.
700         (Executive.wait_newest): Deleted.
701         (Executive.wait_limited): Deleted.
702         (Executive.default_error_handler): Deleted.
703         (Executive.ignore_error): Deleted.
704         (Executive.command_for_printing): Deleted.
705
706 2017-06-05  Jonathan Bedard  <jbedard@apple.com>
707
708         webkitpy: Add iOS to platform
709         https://bugs.webkit.org/show_bug.cgi?id=172931
710
711         Reviewed by Daniel Bates.
712
713         * Scripts/webkitpy/common/system/platforminfo.py:
714         PlatformInfo.__init__): Use platform_module.release() as the os_version for iOS device.
715         (PlatformInfo.is_ios): Added.
716         (PlatformInfo._determine_os_name): A platform name of 'ios' means that the os name is 'ios'.
717         * Scripts/webkitpy/common/system/platforminfo_mock.py:
718         (MockPlatformInfo.is_ios): Added.
719
720 2017-06-05  Carlos Alberto Lopez Perez  <clopez@igalia.com>
721
722         [WPE][JHBuild] Switch github repository from git:// to https://
723         https://bugs.webkit.org/show_bug.cgi?id=172921
724
725         Reviewed by Alex Christensen.
726
727         * wpe/jhbuild.modules:
728
729 2017-06-05  Tim Horton  <timothy_horton@apple.com>
730
731         ASSERTION FAILED: m_currentScriptCallbackID in UIScriptContext::requestUIScriptCompletion(JSStringRef) running fast/events/ios/autocorrect-with-range-selection.html
732         https://bugs.webkit.org/show_bug.cgi?id=172887
733         <rdar://problem/32546061>
734
735         Reviewed by Sam Weinig.
736
737         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
738         (WTR::UIScriptController::applyAutocorrection):
739         applyAutocorrection can call its completion handler synchronously,
740         which makes UIScriptController unhappy (see bug 172884).
741
742 2017-06-03  Jonathan Bedard  <jbedard@apple.com>
743
744         webkitpy: Add contextmanager to disable logging for a block
745         https://bugs.webkit.org/show_bug.cgi?id=172876
746
747         Reviewed by Daniel Bates.
748
749         Add a context manager which will use an OutputCapture object to capture logging
750         in a block and hold it in a variable.
751
752         * Scripts/webkitpy/common/system/outputcapture.py:
753         (OutputCaptureScope):
754         (OutputCaptureScope.__init__): Construct with OutputCapture object.
755         (OutputCaptureScope.__enter__): Begin capturing output. 
756         (OutputCaptureScope.__exit__): Restore output and save captured output to a variable.
757         output and retain the resulting log.
758         * Scripts/webkitpy/common/system/outputcapture_unittest.py:
759         (OutputCaptureTest.test_output_capture_scope): Added.
760
761 2017-06-02  Zalan Bujtas  <zalan@apple.com>
762
763         Cleanup FrameView::autoSizeIfEnabled.
764         https://bugs.webkit.org/show_bug.cgi?id=172889
765         <rdar://problem/32550783>
766
767         Reviewed by Tim Horton.
768
769         * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
770         (-[AutoLayoutWKWebView load:withWidth:expectingContentSize:resettingWidth:]): progression.
771         (TEST):
772
773 2017-06-02  Chris Dumez  <cdumez@apple.com>
774
775         ResourceLoadStatistics are not using unique paths during test runs
776         https://bugs.webkit.org/show_bug.cgi?id=172861
777         <rdar://problem/32442251>
778
779         Reviewed by Darin Adler.
780
781         Make sure WebKitTestRunner sets a temporary path for saving resource
782         load statistics.
783
784         * WebKitTestRunner/TestController.cpp:
785         (WTR::TestController::generateContextConfiguration):
786
787 2017-06-02  Brady Eidson  <beidson@apple.com>
788
789         Prevent scheme handlers from handling all built-in URL schemes.
790         <rdar://problem/32404790> and https://bugs.webkit.org/show_bug.cgi?id=172869
791
792         Reviewed by Andy Estes.
793
794         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
795
796 2017-06-02  Stephan Szabo  <stephan.szabo@am.sony.com>
797
798         [JSCOnly] Build static jsc.exe on Windows
799         https://bugs.webkit.org/show_bug.cgi?id=172833
800
801         Reviewed by Konstantin Tokarev.
802
803         * CMakeLists.txt:
804         * Scripts/build-jsc:
805
806 2017-06-02  Zalan Bujtas  <zalan@apple.com>
807
808         Disable ViewportSizeForViewportUnits tests on iOS.
809         https://bugs.webkit.org/show_bug.cgi?id=172872
810
811         Reviewed by Tim Horton.
812
813         * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm:
814
815 2017-06-02  Zalan Bujtas  <zalan@apple.com>
816
817         Allow clients to override viewport size for CSS viewport units.
818         https://bugs.webkit.org/show_bug.cgi?id=172838
819         <rdar://problem/32523441>
820
821         Reviewed by Tim Horton.
822
823         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
824         * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm: Added.
825         (TEST):
826
827 2017-06-02  Simon Fraser  <simon.fraser@apple.com>
828
829         Get <chrono> out of StdLibExtras.h
830         https://bugs.webkit.org/show_bug.cgi?id=172744
831
832         Reviewed by Zalan Bujtas.
833
834         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
835
836 2017-06-02  Zan Dobersek  <zdobersek@igalia.com>
837
838         [WPE] Enable SUBTLE_CRYPTO
839         https://bugs.webkit.org/show_bug.cgi?id=172756
840
841         Reviewed by Michael Catanzaro.
842
843         * Scripts/webkitperl/FeatureList.pm: Set ENABLE_SUBTLE_CRYPTO to 1 for WPE.
844         * wpe/jhbuild.modules: Add libgpg-error and libgcrypt dependencies.
845         * wpe/patches/libgcrypt-use-only-dev-urandom-for-testing.patch: Added. Prevents
846         exhausting entropy when running the crypto layout tests.
847
848 2017-06-01  Carlos Garcia Campos  <cgarcia@igalia.com>
849
850         [GTK] Bump GTK+ and its dependencies in jhbuild
851         https://bugs.webkit.org/show_bug.cgi?id=171918
852
853         Reviewed by Carlos Alberto Lopez Perez.
854
855         * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
856         (WTR::initializeGtkSettings):
857         * gtk/jhbuild.modules:
858         * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Removed.
859         * gtk/patches/librsvg-2.36.1-bump-up-config.guess-to-support-aarch64.patch: Removed.
860
861 2017-06-01  Carlos Garcia Campos  <cgarcia@igalia.com>
862
863         [GTK] Bump wayland and weston in jhbuild
864         https://bugs.webkit.org/show_bug.cgi?id=171921
865
866         Reviewed by Carlos Alberto Lopez Perez.
867
868         * gtk/jhbuild.modules:
869         * gtk/patches/weston-libweston-include-weston-egl-ext.h-in-drm-x11-and-wa.patch: Added.
870
871 2017-06-01  Andy Estes  <aestes@apple.com>
872
873         REGRESSION (r217626): ENABLE_APPLE_PAY_SESSION_V3 was disabled by mistake
874         https://bugs.webkit.org/show_bug.cgi?id=172828
875
876         Reviewed by Beth Dakin.
877
878         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
879
880 2017-06-01  Jonathan Bedard  <jbedard@apple.com>
881
882         webkitpy: Remove unneeded simulator teardown
883         https://bugs.webkit.org/show_bug.cgi?id=171891
884
885         Reviewed by Aakash Jain.
886
887         * Scripts/webkitpy/port/ios_simulator.py:
888         (IOSSimulatorPort.clean_up_test_run): Remove FIFO deletion since TCP is used
889         for communication between Python and WebKitTestRunner/DumpRenderTree.
890
891 2017-06-01  Keith Miller  <keith_miller@apple.com>
892
893         Undo rollout in r217638 with bug fix
894         https://bugs.webkit.org/show_bug.cgi?id=172824
895
896         Unreviewed, reland patch with unused set_state code removed.
897
898         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
899         (runThreadMessageTest):
900         (TEST):
901
902 2017-06-01  Jonathan Bedard  <jbedard@apple.com>
903
904         webkitpy: Do not send 0 or -1 as a pid to kill_process
905         https://bugs.webkit.org/show_bug.cgi?id=172818
906
907         Reviewed by Darin Adler.
908
909         Sending a signal to process 0 will result in all processes in the group receiving 
910         the signal. Sending a signal to process -1 will result in all non-system processes
911         receiving the signal. Both Executive.kill_process and Executive.check_running_pid
912         should consider these cases
913
914         * Scripts/webkitpy/common/system/executive.py:
915         (Executive.kill_process): Throw exception if pid is undefined, 0 or negative.
916         (Executive.check_running_pid): An undefined pid, pid 0 or a negative pid will
917         never be running, although os.kill may succeed.
918         * Scripts/webkitpy/port/simulator_process.py:
919         (SimulatorProcess.stop): Do not kill process if it is undefined.
920
921 2017-05-31  Alexey Proskuryakov  <ap@apple.com>
922
923         JSC EWS bot does not run on WTF only patches
924         https://bugs.webkit.org/show_bug.cgi?id=172777
925         rdar://problem/32495975
926
927         Reviewed by Aakash Jain.
928
929         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
930         (CheckPatchRelevance): Add a missing comma.
931
932 2017-05-31  Commit Queue  <commit-queue@webkit.org>
933
934         Unreviewed, rolling out r217611 and r217631.
935         https://bugs.webkit.org/show_bug.cgi?id=172785
936
937         "caused wasm-hashset-many.html to become flaky." (Requested by
938         keith_miller on #webkit).
939
940         Reverted changesets:
941
942         "Reland r216808, underlying lldb bug has been fixed."
943         https://bugs.webkit.org/show_bug.cgi?id=172759
944         http://trac.webkit.org/changeset/217611
945
946         "Use dispatch queues for mach exceptions"
947         https://bugs.webkit.org/show_bug.cgi?id=172775
948         http://trac.webkit.org/changeset/217631
949
950 2017-05-31  Ryan Haddad  <ryanhaddad@apple.com>
951
952         EWS bots should reboot themselves more frequently
953         https://bugs.webkit.org/show_bug.cgi?id=172402
954
955         Reviewed by Alexey Proskuryakov.
956
957         Instead of rebooting once a day, EWS bots will reboot after running 10 iterations.
958
959         * EWSTools/start-queue-mac.sh: Remove the restriction placed on the time that the bot will perform a reboot.
960
961 2017-05-31  Ryan Haddad  <ryanhaddad@apple.com>
962
963         Reallocate hardware for iOS bots.
964         https://bugs.webkit.org/show_bug.cgi?id=172657
965
966         Reviewed by Alexey Proskuryakov.
967
968         * BuildSlaveSupport/build.webkit.org-config/config.json:
969
970 2017-05-31  Andy Estes  <aestes@apple.com>
971
972         Rename ENABLE_APPLE_PAY_DELEGATE to ENABLE_APPLE_PAY_SESSION_V3 and bump the supported version number
973         https://bugs.webkit.org/show_bug.cgi?id=172366
974
975         Reviewed by Daniel Bates.
976
977         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
978
979 2017-05-31  Jiewen Tan  <jiewen_tan@apple.com>
980
981         Unreviewed, add Jiewen Tan as a reviewer
982
983         * Scripts/webkitpy/common/config/contributors.json:
984
985 2017-05-31  Adrian Perez de Castro  <aperez@igalia.com>
986
987         [GTK] MiniBrowser's browser_window_get_or_create_web_view_for_automation never creates new windows
988         https://bugs.webkit.org/show_bug.cgi?id=172770
989
990         Reviewed by Michael Catanzaro.
991
992         * MiniBrowser/gtk/BrowserWindow.c:
993         (browser_window_get_or_create_web_view_for_automation): Removed stray semicolon
994         which caused the body of the if-clause to be accidentally empty.
995
996 2017-05-31  Keith Miller  <keith_miller@apple.com>
997
998         Reland r216808, underlying lldb bug has been fixed.
999         https://bugs.webkit.org/show_bug.cgi?id=172759
1000
1001         Unreviewed, relanding old patch. See: rdar://problem/31183352
1002
1003         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
1004         (runThreadMessageTest):
1005         (TEST):
1006
1007 2017-05-31  Matt Lewis  <jlewis3@apple.com>
1008
1009         Unreviewed, rolling out r217603.
1010
1011         This patch broke the internal builds.
1012
1013         Reverted changeset:
1014
1015         "Get <chrono> out of StdLibExtras.h"
1016         https://bugs.webkit.org/show_bug.cgi?id=172744
1017         http://trac.webkit.org/changeset/217603
1018
1019 2017-05-31  Brent Fulgham  <bfulgham@apple.com>
1020
1021         Make ResourceLoadStatistics testing more reliable
1022         https://bugs.webkit.org/show_bug.cgi?id=172730
1023         <rdar://problem/32028373>
1024
1025         Reviewed by Andy Estes.
1026
1027         When we tell the UIProcess (WebKitTestRunner) to notify the system about statistics update notifications,
1028         we also need to tell the WebProcess to do so, too, or else the test system doesn't get messages.
1029
1030         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1031         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
1032
1033 2017-05-31  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1034
1035         [GTK][WPE] run-javascriptcore-tests should use the jhbuild
1036         https://bugs.webkit.org/show_bug.cgi?id=172757
1037
1038         Reviewed by Xabier Rodriguez-Calvar.
1039
1040         When needed, add the jhbuild wrapper at the beginning of the array
1041         that will be invoked to execute the run-jsc-stress-test or testapi
1042         commands.
1043
1044         * Scripts/run-javascriptcore-tests:
1045         (runJSCStressTests):
1046         * Scripts/webkitdirs.pm:
1047         (shouldUseJhbuild):
1048
1049 2017-05-31  Simon Fraser  <simon.fraser@apple.com>
1050
1051         Get <chrono> out of StdLibExtras.h
1052         https://bugs.webkit.org/show_bug.cgi?id=172744
1053
1054         Reviewed by Saam Barati.
1055
1056         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
1057
1058 2017-05-30  Tim Horton  <timothy_horton@apple.com>
1059
1060         Keyboard autocorrections do not apply with an active selection (but keyboard acts like they did)
1061         https://bugs.webkit.org/show_bug.cgi?id=172735
1062         <rdar://problem/32015977>
1063
1064         Reviewed by Enrica Casucci.
1065
1066         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1067         (WTR::UIScriptController::applyAutocorrection):
1068         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1069         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1070         (WTR::UIScriptController::applyAutocorrection):
1071         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1072         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1073         (WTR::UIScriptController::applyAutocorrection):
1074         Expose applyAutocorrection to UIScriptController. Use a WKTesting method
1075         because I don't know how to tap the button in the autocorrection bar from a test.
1076
1077 2017-05-30  Daniel Bates  <dabates@apple.com>
1078
1079         Add unit test for WebKit2 C SPI runBeforeUnloadConfirmPanel()
1080         https://bugs.webkit.org/show_bug.cgi?id=172671
1081
1082         Reviewed by Alex Christensen.
1083
1084         We should add a unit test to ensure we do not regress the WKPageUIClient runBeforeUnloadConfirmPanel() callback.
1085         For completeness, the callback runBeforeUnloadConfirmPanel() existed since inception of WKPageUIClient (WKPageUIClientV0).
1086
1087         * TestWebKitAPI/Tests/WebKit2/ModalAlertsSPI.cpp:
1088         (TestWebKitAPI::analyzeDialogArguments): Test the runBeforeUnloadConfirmPanel() callback last as we need
1089         to trigger a navigation to test it.
1090         (TestWebKitAPI::runBeforeUnloadConfirmPanel): Added.
1091         (TestWebKitAPI::createNewPage): Wire up the runBeforeUnloadConfirmPanel callback.
1092
1093 2017-05-30  Jonathan Bedard  <jbedard@apple.com>
1094
1095         webkitpy: Start servers before setting-up for testing
1096         https://bugs.webkit.org/show_bug.cgi?id=172176
1097         <rdar://problem/32225538>
1098
1099         Reviewed by Alexey Proskuryakov.
1100
1101         On-device testing requires that servers are started before ports set-up their
1102         test environments.
1103
1104         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
1105         (LayoutTestRunner.__init__): Start servers when initializing LayoutTestRunner.
1106         Servers are unconditionally stopped on exit.
1107         (LayoutTestRunner.run_tests): Move the starting of servers to the initializer. The
1108         Manager now stops servers.
1109         (LayoutTestRunner.start_servers): Set flag to indicate servers are running.
1110         (LayoutTestRunner.stop_servers): Check flag, only shutdown servers if they are shutdown.
1111         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1112         (Manager.__init__): Delay construction of the test runner until we can determine
1113         if servers need to be started.
1114         (Manager.run): Determine if servers need to be started and construct the test runner.
1115         Shut servers down when the test run is finished.
1116         (Manager._run_tests): Move the determination of servers to run into Manager.run.
1117         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
1118         (is_wpt_server_running): Server is not running if no config is found.
1119         * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
1120         (PyWebSocket.is_running): Check if this WebSocket server is running.
1121         * Scripts/webkitpy/port/base.py:
1122         (Port.__init__): Define secure WebSocket server.
1123         (Port.to.is_websocket_server_running): Check if WebSocket servers are defined.
1124
1125 2017-05-30  Daniel Bates  <dabates@apple.com>
1126
1127         [WK2] Add runBeforeUnloadConfirmPanel WKUIDelegate SPI; support onbeforeunload confirm panel in MiniBrowser
1128         https://bugs.webkit.org/show_bug.cgi?id=172603
1129         <rdar://problem/32471306>
1130
1131         Reviewed by Brady Eidson.
1132
1133         Implement the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: delegate
1134         method in MiniBrowser to show a confirm panel as to whether to allow the unloading of the page when
1135         unloading is initiated for a page that registered a onbeforeunload handler.
1136
1137         Modify TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm to test that the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:
1138         is called. Also fix style nit; pass YES instead of true to avoid implicit conversion from bool to BOOL
1139         when invoking the completion handler in -_webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:.
1140
1141         Until we fix <https://bugs.webkit.org/show_bug.cgi?id=172614> the unit test in TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm
1142         for -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: is only run on Mac
1143         as we do not have the infrastructure to simulate a click/tap on iOS and a click/tap on the page that
1144         registered an onbeforeunload handler is required to show a confirm panel when the page will be unloaded.
1145
1146         * MiniBrowser/mac/WK2BrowserWindowController.m:
1147         (-[WK2BrowserWindowController _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
1148         * TestWebKitAPI/Tests/WebKit2/modal-alerts-in-new-about-blank-window.html:
1149         * TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm:
1150         (sawDialog):
1151         (-[ModalAlertsUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
1152         (-[ModalAlertsUIDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
1153         (-[ModalAlertsUIDelegate _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
1154
1155 2017-05-30  Alex Christensen  <achristensen@webkit.org>
1156
1157         Update libwebrtc configuration
1158         https://bugs.webkit.org/show_bug.cgi?id=172727
1159
1160         Reviewed by Geoffrey Garen.
1161
1162         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1163
1164 2017-05-30  Fujii Hironori  <Hironori.Fujii@sony.com>
1165
1166         [WinCairo] TestWebKitAPI: ASSERTION FAILED: m_eglDisplay == EGL_NO_DISPLAY
1167         https://bugs.webkit.org/show_bug.cgi?id=172702
1168
1169         Reviewed by Alex Christensen.
1170
1171         EGL PlatformDisplay needs to be shut down before existing a
1172         program on Windows.
1173
1174         * TestWebKitAPI/Tests/WebKit/win/ScaleWebView.cpp:
1175         (TestWebKitAPI::ScaleWebView::TearDown): Call shutDownWebKit().
1176         * TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp:
1177         (TestWebKitAPI::WebViewDestruction::TearDown): Ditto.
1178
1179 2017-05-30  Per Arne Vollan  <pvollan@apple.com>
1180
1181         [Win] fast/shadow-dom/fullscreen-in-slot-fullscreenElement.html is flaky.
1182         https://bugs.webkit.org/show_bug.cgi?id=172709
1183
1184         Reviewed by Brent Fulgham.
1185
1186         Exit fullscreen mode after a fullscreen test.
1187
1188         * DumpRenderTree/win/DumpRenderTree.cpp:
1189         (resetWebViewToConsistentStateBeforeTesting):
1190
1191 2017-05-30  Antti Koivisto  <antti@apple.com>
1192
1193         ASSERTION FAILED: !needsLayout() in com.apple.WebCore: WebCore::FrameView::paintContents in fast/events/tabindex-focus-blur-all.html on WK1
1194         https://bugs.webkit.org/show_bug.cgi?id=172713
1195
1196         Reviewed by Zalan Bujtas.
1197
1198         * DumpRenderTree/mac/ResourceLoadDelegate.mm:
1199         (-[ResourceLoadDelegate webView:plugInFailedWithError:dataSource:]):
1200
1201             Remove forced display from plugin resource load delegate. It is testing some long-obsolete
1202             Safari WK1 behavior. Forcing display from this resource load delegate will hit the assertion
1203             because on Mac WK1 it may get invoked from middle of a layout.
1204
1205             Painting code skips out after the assert so it doesn't indicate unsafe access of any sort.
1206
1207 2017-05-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1208
1209         Add a WPE EWS queue
1210         https://bugs.webkit.org/show_bug.cgi?id=172693
1211
1212         Reviewed by Carlos Garcia Campos.
1213
1214         * QueueStatusServer/config/queues.py:
1215         * QueueStatusServer/model/queues.py: Capitalize the name of the
1216         port on the tooltip of the bubbles. Do the same for the GTK port.
1217         (Queue.display_name):
1218         * Scripts/webkitpy/common/config/ews.json: Update the watcher mail
1219         for the GTK+ EWS also. Set for both ports as watcher the alias
1220         bugs-noreply@webkitgtk.org that maintainers of both ports follow.
1221         * Scripts/webkitpy/common/config/ports.py:
1222         (DeprecatedPort.port):
1223         (WpePort):
1224         (WpePort.build_webkit_command):
1225         (WpePort.run_webkit_tests_command):
1226         * Scripts/webkitpy/common/config/ports_unittest.py:
1227         (DeprecatedPortTest):
1228         (DeprecatedPortTest.test_wpe_port):
1229         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1230         (test_ews_name):
1231
1232 2017-05-29  Zan Dobersek  <zdobersek@igalia.com>
1233
1234         Unreviewed. Bumping the WPEBackend-mesa dependency version.
1235
1236         * wpe/jhbuild.modules: Use the latest version that uses proper GLib
1237         priorities for IPC communication.
1238
1239 2017-05-27  Yusuke Suzuki  <utatane.tea@gmail.com>
1240
1241         [JSC] Map and Set constructors should have fast path for cloning
1242         https://bugs.webkit.org/show_bug.cgi?id=172413
1243
1244         Reviewed by Saam Barati.
1245
1246         * TestWebKitAPI/Tests/WTF/MathExtras.cpp:
1247         (TestWebKitAPI::TEST):
1248
1249 2017-05-27  Zalan Bujtas  <zalan@apple.com>
1250
1251         enclosingIntRect returns a rect with -1 width/height when the input FloatRect overflows integer.
1252         https://bugs.webkit.org/show_bug.cgi?id=172676
1253
1254         Reviewed by Simon Fraser.
1255
1256         * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
1257         (TestWebKitAPI::TEST):
1258
1259 2017-05-26  Zalan Bujtas  <zalan@apple.com>
1260
1261         TestWebKitAPI: EnclosingIntRect and RoundedIntRect should use EXPECT_EQ.
1262         https://bugs.webkit.org/show_bug.cgi?id=172674
1263
1264         Reviewed by Simon Fraser.
1265
1266         * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
1267         (TestWebKitAPI::TEST):
1268
1269 2017-05-26  Wenson Hsieh  <wenson_hsieh@apple.com>
1270
1271         Add test resources back into TestWebKitAPI Copy Resources phase
1272
1273         Rubber-stamped by Beth Dakin.
1274
1275         Add two files back into the Copy Resources phase after they were unintentionally
1276         removed in r217447 and r217496.
1277
1278         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1279
1280 2017-05-26  Beth Dakin  <bdakin@apple.com>
1281
1282         Media documents inside iframes should not get controls in the TouchBar unless the 
1283         video is playing
1284         https://bugs.webkit.org/show_bug.cgi?id=172620
1285         -and corresponding-
1286         rdar://problem/32165477
1287
1288         Reviewed by Jon Lee.
1289
1290         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1291         * TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
1292         (TestWebKitAPI::TEST):
1293         * TestWebKitAPI/Tests/WebKit2Cocoa/offscreen-iframe-of-media-document.html: Added.
1294
1295 2017-05-25  Joseph Pecoraro  <pecoraro@apple.com>
1296
1297         _WKUserStyleSheet and WKUserScript leak string data
1298         https://bugs.webkit.org/show_bug.cgi?id=172583
1299         <rdar://problem/32395209>
1300
1301         Reviewed by Sam Weinig.
1302
1303         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
1304         We should not have been adopting an autoreleased object.
1305
1306 2017-05-25  Myles C. Maxfield  <mmaxfield@apple.com>
1307
1308         [WK1] iframes in layer-backed NSViews are not cleared between successive draws
1309         https://bugs.webkit.org/show_bug.cgi?id=172554
1310         <rdar://problem/31247133>
1311
1312         Reviewed by Simon Fraser.
1313
1314         Previously, there was no way to make DumpRenderTree's views layer-backed. Unfortunately,
1315         simply setting [WebView setWantsLayer:] is insufficient; turning it on and then off again
1316         leaves some state around inside the NSWindow which isn't easily cleaned up. Instead,
1317         we should just tear down and rebuild the window whenever we need a layer-backed WebView.
1318         We can also use the "webkit-test-runner" header comment to trigger this new layer-backed
1319         codepath.
1320
1321         * DumpRenderTree/TestOptions.h:
1322         * DumpRenderTree/TestOptions.mm:
1323         (TestOptions::TestOptions):
1324         (TestOptions::webViewIsCompatibleWithOptions):
1325         * DumpRenderTree/mac/DumpRenderTree.mm:
1326         (shouldIgnoreWebCoreNodeLeaks):
1327         (allowedFontFamilySet):
1328         (-[DRTMockScroller rectForPart:]):
1329         (-[DRTMockScroller drawKnob]):
1330         (-[DRTMockScroller drawRect:]):
1331         (createWebViewAndOffscreenWindow):
1332         (initializeGlobalsFromCommandLineOptions):
1333         (prepareConsistentTestingEnvironment):
1334         (dumpRenderTree):
1335         (dumpAudio):
1336         (dumpHistoryItem):
1337         (dumpBackForwardListForWebView):
1338         (resetWebViewToConsistentStateBeforeTesting):
1339         (WebThreadLockAfterDelegateCallbacksHaveCompleted):
1340         (runTest):
1341
1342 2017-05-25  Sam Weinig  <sam@webkit.org>
1343
1344         [WebIDL] Use the term 'operation' more consistently
1345         https://bugs.webkit.org/show_bug.cgi?id=172601
1346
1347         Reviewed by Chris Dumez.
1348
1349         We were using the term 'operation', a WebIDL term for function-like
1350         constructs, inconsistently in the code generator. Now, when we use
1351         'operation' when referring to the IDL concept (usually the object the
1352         parser produces) and 'function' when referring to code being generated.
1353
1354         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
1355         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
1356
1357 2017-05-25  Jer Noble  <jer.noble@apple.com>
1358
1359         Unreviewed build fix after r217447; only run test where JSC's ObjC API is available.
1360
1361         * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm:
1362
1363 2017-05-25  Jer Noble  <jer.noble@apple.com>
1364
1365         System sleeps while playing to wireless target, ending stream.
1366         https://bugs.webkit.org/show_bug.cgi?id=172541
1367
1368         Reviewed by Eric Carlson.
1369
1370         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1371         * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.html: Added.
1372         * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm: Added.
1373         (-[MediaPlaybackSleepAssertionLoadDelegate webView:didCreateJavaScriptContext:forFrame:]):
1374         (-[MediaPlaybackSleepAssertionPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
1375         (TestWebKitAPI::simulateKeyDown):
1376         (TestWebKitAPI::hasAssertionType):
1377         (TestWebKitAPI::TEST):
1378
1379 2017-05-25  Commit Queue  <commit-queue@webkit.org>
1380
1381         Unreviewed, rolling out r217423 and r217424.
1382         https://bugs.webkit.org/show_bug.cgi?id=172607
1383
1384         These caused an api failure on all testers. (Requested by
1385         mlewis13 on #webkit).
1386
1387         Reverted changesets:
1388
1389         "REGRESSION (r216977): 4 leaks introduced in new
1390         WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test"
1391         https://bugs.webkit.org/show_bug.cgi?id=172558
1392         http://trac.webkit.org/changeset/217423
1393
1394         "REGRESSION (r217423): Fix last-second typo in 'auto'"
1395         http://trac.webkit.org/changeset/217424
1396
1397 2017-05-25  Joanmarie Diggs  <jdiggs@igalia.com>
1398
1399         [ATK] Expose doc-footnote ARIA role with ATK_ROLE_FOOTNOTE
1400         https://bugs.webkit.org/show_bug.cgi?id=172355
1401
1402         Reviewed by Chris Fleizach.
1403
1404         Add map ATK_ROLE_FOOTNOTE to "AXFootnote" and bump jhbuild minimum
1405         versions of atk, at-spi2-core, and at-spi2-atk to 2.25.2 (the earliest
1406         releases which support the new platform footnote accessibility role.
1407
1408         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1409         * gtk/jhbuild.modules:
1410
1411 2017-05-25  David Kilzer  <ddkilzer@apple.com>
1412
1413         REGRESSION (r217423): Fix last-second typo in 'auto'
1414
1415         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
1416         (WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test): Fix typo.
1417
1418 2017-05-24  David Kilzer  <ddkilzer@apple.com>
1419
1420         REGRESSION (r216977): 4 leaks introduced in new WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test
1421         <https://webkit.org/b/172558>
1422
1423         Reviewed by Sam Weinig.
1424
1425         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
1426         (WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test): Fix the leaks.
1427
1428 2017-05-24  Don Olmstead  <don.olmstead@am.sony.com>
1429
1430         [CMake] Consolidate CMake code related to Cairo
1431         https://bugs.webkit.org/show_bug.cgi?id=172568
1432
1433         Reviewed by Alex Christensen.
1434
1435         * DumpRenderTree/config.h:
1436         * TestWebKitAPI/config.h:
1437
1438 2017-05-24  Wenson Hsieh  <wenson_hsieh@apple.com>
1439
1440         Plumb additional image metadata to item providers when beginning data interaction on an image
1441         https://bugs.webkit.org/show_bug.cgi?id=172536
1442         <rdar://problem/32371300>
1443
1444         Reviewed by Beth Dakin.
1445
1446         Tweak existing image data interaction tests to check for suggested name and estimated size on the generated
1447         source item providers.
1448
1449         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1450         (checkSuggestedNameAndEstimatedSize):
1451         (TestWebKitAPI::TEST):
1452
1453 2017-05-24  Per Arne Vollan  <pvollan@apple.com>
1454
1455         [Win] Create unique network storage session for each DRT.
1456         https://bugs.webkit.org/show_bug.cgi?id=172540
1457
1458         Reviewed by Brent Fulgham.
1459
1460         During layout testing, each DRT instance should have its own network storage session.
1461
1462         * DumpRenderTree/win/DumpRenderTree.cpp:
1463         (prepareConsistentTestingEnvironment):
1464
1465 2017-05-24  Wenson Hsieh  <wenson_hsieh@apple.com>
1466
1467         Respect image UTIs when writing to item providers when beginning data interaction on an image
1468         https://bugs.webkit.org/show_bug.cgi?id=172436
1469         <rdar://problem/31786569>
1470
1471         Reviewed by Beth Dakin.
1472
1473         Tweaks existing unit tests and adds a new test for image data interaction. See WebCore ChangeLog for more
1474         details.
1475
1476         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1477         * TestWebKitAPI/Tests/WebKit2Cocoa/apple.gif: Added.
1478         * TestWebKitAPI/Tests/WebKit2Cocoa/gif-and-file-input.html: Added.
1479
1480         Create a new test page containing a GIF and a file input.
1481
1482         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1483         (checkTypeIdentifierIsRegisteredAtIndex):
1484         (TestWebKitAPI::TEST):
1485
1486 2017-05-23  Per Arne Vollan  <pvollan@apple.com>
1487
1488         [Win] Increase test timeout for slow tests.
1489         https://bugs.webkit.org/show_bug.cgi?id=172449
1490
1491         Reviewed by Alexey Proskuryakov.
1492
1493         Instead of using a fixed timeout of 30 seconds for all tests, we should use the
1494         timeout member in the TestRunner class.
1495
1496         * DumpRenderTree/win/TestRunnerWin.cpp:
1497         (TestRunner::setWaitToDump):
1498
1499 2017-05-15  Matt Rajca  <mrajca@apple.com>
1500
1501         Replace autoplay events that fire at navigation with a DidAutoplayMediaPastThreshold event.
1502         https://bugs.webkit.org/show_bug.cgi?id=172138
1503
1504         Reviewed by Alex Christensen.
1505
1506         Added API tests.
1507
1508         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1509         * TestWebKitAPI/Tests/WebKit2/js-autoplay-audio.html: Added.
1510         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
1511         (TEST):
1512         * TestWebKitAPI/Tests/WebKit2Cocoa/silence-long.m4a: Added.
1513
1514 2017-05-23  Simon Fraser  <simon.fraser@apple.com>
1515
1516         Stop consulting -viewsNeedDisplay when doing layer flushing in WebKit1
1517         https://bugs.webkit.org/show_bug.cgi?id=172522
1518         rdar://problem/31071812
1519
1520         Reviewed by Sam Weinig.
1521
1522         Remove NSWindowStyleMaskFullSizeContentView which is no longer referenced in code.
1523         We set this in the .xib file now.
1524
1525         * MiniBrowser/mac/MiniBrowser_Prefix.pch:
1526
1527 2017-05-22  Simon Fraser  <simon.fraser@apple.com>
1528
1529         Snapshotting via -renderInContext: should do synchronous image decodes
1530         https://bugs.webkit.org/show_bug.cgi?id=172485
1531         rdar://problem/32276146
1532
1533         Reviewed by Tim Horton.
1534
1535         New API test.
1536
1537         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1538         * TestWebKitAPI/Tests/WebKit/ios/SnapshotViaRenderInContext.mm: Added.
1539         (-[RenderInContextWebViewDelegate webViewDidFinishLoad:]):
1540         (-[RenderInContextWebViewDelegate webView:didFailLoadWithError:]):
1541         (TestWebKitAPI::getPixelIndex):
1542         (TestWebKitAPI::TEST):
1543
1544 2017-05-23  Myles C. Maxfield  <mmaxfield@apple.com>
1545
1546         Remove dead ENABLE(FONT_LOAD_EVENTS) code
1547         https://bugs.webkit.org/show_bug.cgi?id=172517
1548
1549         Rubber-stamped by Simon Fraser.
1550
1551         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1552
1553 2017-05-23  Wenson Hsieh  <wenson_hsieh@apple.com>
1554
1555         Multiple links should be inserted separately when performing data interaction
1556         https://bugs.webkit.org/show_bug.cgi?id=172489
1557         <rdar://problem/31510832>
1558
1559         Reviewed by Dan Bernstein.
1560
1561         Adds a new test that performs data interaction in a contenteditable with multiple items containing URLs.
1562
1563         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1564         (TestWebKitAPI::TEST):
1565
1566 2017-05-23  Tim Horton  <timothy_horton@apple.com>
1567
1568         REGRESSION: API test WebKit2.WKObject is failing
1569         https://bugs.webkit.org/show_bug.cgi?id=172497
1570         <rdar://problem/31694641>
1571
1572         Reviewed by Geoff Garen.
1573
1574         * TestWebKitAPI/Tests/WebKit2Cocoa/WKObject.mm:
1575         (TestWebKitAPI::TEST):
1576         Add a test that ensures that we pretend to at least be *some* kind of
1577         NSString, which my first fix would not have passed.
1578
1579 2017-05-23  youenn fablet  <youenn@apple.com>
1580
1581         There should be an easy way to run HTTP/WPT served tests on a browser
1582         https://bugs.webkit.org/show_bug.cgi?id=172068
1583
1584         Reviewed by Sam Weinig.
1585
1586         Adding a new script open-layout-test to open a layout-test in a
1587         browser and making sure it is served as done through run-webkit-tests.
1588         In case tests should be run using a server, detecting whether the
1589         server are running. If not, calling run-webkit-httpd to run the
1590         servers and open the URL in a browser.
1591         Otherwise, open directly the URL.
1592
1593         Adding an option in run-webkit-httpd to open an URL after having
1594         started the servers.
1595
1596         Adding the --no-http-servers option in run-webkit-tests to not start any HTTP server.
1597         This allows running run-webkit-httpd once and not having to restart
1598         servers everytime a test should be served.
1599
1600         Moving most of run-webkit-httpd logic in its own python file to reuse
1601         it in open-layout-test script.
1602
1603         Adding routines to check whether HTTP and WPT servers are running.
1604
1605         * Scripts/open-layout-test: Added.
1606         (parse_args):
1607         (main):
1608         * Scripts/run-webkit-httpd:
1609         (main):
1610         * Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:
1611         (LayoutTestFinder.find_tests):
1612         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
1613         (LayoutTestRunner.run_tests):
1614         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1615         (parse_args):
1616         * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
1617         (HttpServerBase._is_server_running_on_all_ports):
1618         (HttpServerBase):
1619         (HttpServerBase._is_running_on_port):
1620         (HttpServerBase._check_that_all_ports_are_available):
1621         (is_http_server_running):
1622         * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py: Copied from Tools/Scripts/run-webkit-httpd.
1623         (parse_args):
1624         (main):
1625         (run_server):
1626         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
1627         (is_wpt_server_running):
1628         * Scripts/webkitpy/port/base.py:
1629         (Port.to.is_http_server_running):
1630         (Port.to):
1631         (Port.to.is_wpt_server_running):
1632         (Port.to.start_web_platform_test_server):
1633         * Scripts/webkitpy/port/driver.py:
1634         (DriverProxy.is_web_platform_test):
1635         (DriverProxy):
1636         (DriverProxy.is_webkit_specific_web_platform_test):
1637
1638 2017-05-23  Emilio Cobos Álvarez  <ecobos@igalia.com>
1639
1640         Add a RuntimeEnabledFeature for display: contents, defaulted to false.
1641         https://bugs.webkit.org/show_bug.cgi?id=171984
1642
1643         Reviewed by Antti Koivisto.
1644
1645         * DumpRenderTree/mac/DumpRenderTree.mm:
1646         (enableExperimentalFeatures):
1647         * WebKitTestRunner/TestController.cpp:
1648         (WTR::TestController::resetPreferencesToConsistentValues):
1649
1650 2017-05-20  Alex Christensen  <achristensen@webkit.org>
1651
1652         REGRESSION(r215686): O(n^2) algorithm in CachedRawResource::addDataBuffer
1653         https://bugs.webkit.org/show_bug.cgi?id=172406
1654         <rdar://32109532>
1655
1656         Reviewed by Brady Eidson.
1657
1658         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
1659         (TestWebKitAPI::checkBuffer):
1660         (TestWebKitAPI::TEST_F):
1661
1662 2017-05-22  Jason Marcell  <jmarcell@apple.com>
1663
1664         Do not enter Subversion-specific logic when parsing Git-based Trac data.
1665         https://bugs.webkit.org/show_bug.cgi?id=172433
1666         <rdar://problem/32234188>
1667
1668         Reviewed by Alexey Proskuryakov.
1669
1670         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
1671         (Trac.prototype._convertCommitInfoElementToObject):
1672
1673 2017-05-22  Tim Horton  <timothy_horton@apple.com>
1674
1675         ExplicitSnapshotsChangeUponNavigation API test often fails
1676         https://bugs.webkit.org/show_bug.cgi?id=172475
1677         <rdar://problem/31688322>
1678
1679         Reviewed by Simon Fraser.
1680
1681         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1682         (-[TestWKWebView _setUpTestWindow:]):
1683         Make TestWKWebView's window layer-backed. This is now the default,
1684         and it's also easy to accidentally write a test that depends on it
1685         (for example, ExplicitSnapshotsChangeUponNavigation adds an NSBox,
1686         which becomes layer backed, just like the WKWebView, but with no
1687         common layer-backed ancestor).
1688
1689 2017-05-22  youenn fablet  <youenn@apple.com>
1690
1691         Resync web-platform-tests up to 8df7c9c215678328212f232ce0b5270c505a8563
1692         https://bugs.webkit.org/show_bug.cgi?id=172426
1693
1694         Reviewed by Chris Dumez.
1695
1696         * Scripts/webkitpy/w3c/test_importer.py:
1697         (TestImporter.remove_deleted_files): Outputting warning when trying to delete a file that no longer exists.
1698
1699 2017-05-22  Konstantin Tokarev  <annulen@yandex.ru>
1700
1701         Unreviewed, change my status to reviewer and fill "expertise" field
1702
1703         * Scripts/webkitpy/common/config/contributors.json:
1704
1705 2017-05-22  Tomas Popela  <tpopela@redhat.com>
1706
1707         Remove some of the EFL port leftovers
1708         https://bugs.webkit.org/show_bug.cgi?id=172440
1709
1710         Reviewed by Carlos Garcia Campos.
1711
1712         * BuildSlaveSupport/built-product-archive:
1713         (archiveBuiltProduct):
1714         (extractBuiltProduct):
1715         * BuildSlaveSupport/test-result-archive:
1716         (archiveTestResults):
1717         * ImageDiff/PlatformEfl.cmake: Removed.
1718         * Scripts/run-efl-tests: Removed.
1719         * Scripts/webkit-build-directory:
1720         * Scripts/webkitpy/common/config/contributionareas.py:
1721         * Scripts/webkitpy/common/config/watchlist:
1722         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1723         (parse_args):
1724         (_set_up_derived_options):
1725         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
1726         (PerfTestsRunner.__init__):
1727         * Scripts/webkitpy/style/checker.py:
1728         * Scripts/webkitpy/style/checker_unittest.py:
1729         (GlobalVariablesTest.test_path_rules_specifier):
1730         * gtk/manifest.txt.in:
1731         * jhbuild/jhbuild-wrapper:
1732
1733 2017-05-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1734
1735         Unreviewed. Do not include WPE files in GTK+ tarballs.
1736
1737         * gtk/manifest.txt.in:
1738
1739 2017-05-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1740
1741         [GTK] Add webkit_context_menu_item_new_from_gaction
1742         https://bugs.webkit.org/show_bug.cgi?id=159631
1743
1744         Reviewed by Michael Catanzaro.
1745
1746         Update context menu tests to check the new GAction API.
1747
1748         * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
1749         (testContextMenuPopulateMenu):
1750
1751 2017-05-21  Michael Catanzaro  <mcatanzaro@igalia.com>
1752
1753         [GTK] Remove Firefox user agent quirk for Google domains
1754         https://bugs.webkit.org/show_bug.cgi?id=171941
1755
1756         Reviewed by Carlos Garcia Campos.
1757
1758         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
1759         (TestWebKitAPI::TEST):
1760         (TestWebKitAPI::assertUserAgentForURLHasFirefoxBrowserQuirk): Deleted.
1761
1762 2017-05-20  Ting-Wei Lan  <lantw44@gmail.com>
1763
1764         [GTK] gtkdoc-fixxref needs --module argument to work
1765         https://bugs.webkit.org/show_bug.cgi?id=172415
1766
1767         Reviewed by Michael Catanzaro.
1768
1769         * gtk/gtkdoc.py:
1770         (GTKDoc._run_gtkdoc_fixxref):
1771
1772 2017-05-20  Alexey Proskuryakov  <ap@apple.com>
1773
1774         make-new-script-test should create tests that use js-test.js, not js-test-pre.js
1775         https://bugs.webkit.org/show_bug.cgi?id=172416
1776
1777         Reviewed by Daniel Bates.
1778
1779         * Scripts/make-new-script-test:
1780
1781 2017-05-19  Fujii Hironori  <Hironori.Fujii@sony.com>
1782
1783         [Win] error LNK2005: WebCore::JSNode::checkSubClassPatchpoint() already defined in WebKit.lib
1784         https://bugs.webkit.org/show_bug.cgi?id=172267
1785
1786         Reviewed by Per Arne Vollan.
1787
1788         TestWebCoreLib and TestWebKitLib have linked both WebCore and WebKit.
1789         TestWebCoreLib should link only with WebCore. And, TestWebKitLib
1790         should link only with WebKit.
1791
1792         Unfortunately, there is a layer violation at the moment.
1793         WebCore::Image::loadPlatformResource needs loadResourceIntoBuffer
1794         in WebKit. This change contains a stub of loadResourceIntoBuffer
1795         in TestWebCoreLib for the workaround.
1796
1797         * TestWebKitAPI/PlatformWin.cmake: Do not link WebKit to
1798         TestWebCoreLib. Do not link WebCore to TestWebKitLib.
1799         * TestWebKitAPI/win/TestWebCoreStubs.cpp: Added.
1800         (loadResourceIntoBuffer): Added a stub.
1801
1802 2017-05-19  Simon Fraser  <simon.fraser@apple.com>
1803
1804         Fix dump-class-layout to handle different file architectures
1805         https://bugs.webkit.org/show_bug.cgi?id=172392
1806
1807         Reviewed by Zalan Bujtas.
1808
1809         Instead of using lldb.LLDB_ARCH_DEFAULT by default, run 'file' on the binary
1810         and use the first architecture reported. Also add a "--architecture" argument
1811         to allow the user to specify an architecture.
1812
1813         * Scripts/dump-class-layout:
1814         (import_lldb):
1815         (verify_type_recursive):
1816         (get_first_file_architecture):
1817         (dump_class):
1818         (main):
1819         (find_build_directory): Deleted.
1820
1821 2017-05-19  Jonathan Bedard  <jbedard@apple.com>
1822
1823         Unreviewed infrastructure fix.
1824
1825         * Scripts/webkitpy/port/ios_simulator.py:
1826         (IOSSimulatorPort._create_devices): Ignore failure to open Simulator.app.
1827
1828 2017-05-19  Jonathan Bedard  <jbedard@apple.com>
1829
1830         webkitpy: Use simctl boot to run multiple simulators at once
1831         https://bugs.webkit.org/show_bug.cgi?id=172374
1832
1833         Reviewed by Alexey Proskuryakov.
1834
1835         * Scripts/webkitpy/common/system/platforminfo.py:
1836         (PlatformInfo.xcode_version): Return the current version of Xcode.
1837         * Scripts/webkitpy/common/system/platforminfo_mock.py:
1838         (MockPlatformInfo.xcode_version): Return version 8.0 for testing.
1839         * Scripts/webkitpy/port/ios_simulator.py:
1840         (IOSSimulatorPort.use_multiple_simulator_apps): Return true if we need to
1841         run multiple Simulator.app instances.
1842         (IOSSimulatorPort._create_simulators): Only copy the simulator app for older
1843         versions of Xcode.
1844         (IOSSimulatorPort._create_devices): Use 'simctl boot' directly unless using
1845         an older version of Xcode.
1846
1847 2017-05-19  Wenson Hsieh  <wenson_hsieh@apple.com>
1848
1849         Unreviewed, fix the build on the latest internal SDK.
1850
1851         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1852         (TestWebKitAPI::TEST):
1853
1854 2017-05-19  Filip Pizlo  <fpizlo@apple.com>
1855
1856         arrayProtoPrivateFuncConcatMemcpy needs to be down with firstArray being undecided
1857         https://bugs.webkit.org/show_bug.cgi?id=172369
1858
1859         Reviewed by Mark Lam.
1860         
1861         Because I wrote a test that relies on the NoCJIT config scribbling free cells, I thought it
1862         would be a good idea to write this down.
1863
1864         * Scripts/run-jsc-stress-tests:
1865
1866 2017-05-19  Jonathan Bedard  <jbedard@apple.com>
1867
1868         webkitpy: Layout tests which have no output will succeed
1869         https://bugs.webkit.org/show_bug.cgi?id=172322
1870         <rdar://problem/32258350>
1871
1872         Reviewed by David Kilzer.
1873
1874         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
1875         (SingleTestRunner._compare_text): Add FailreNotTested to failures if test has no output.
1876         * Scripts/webkitpy/layout_tests/models/test_failures.py:
1877         (determine_result_type): FailureNotTested means that the test could not be loaded. This
1878         is classified as a MISSING failure.
1879         (FailureNotTested): Added.
1880         (FailureNotTested.message):
1881
1882 2017-05-19  Yusuke Suzuki  <utatane.tea@gmail.com>
1883
1884         Add SixSpeed benchmark to PerformanceTests
1885         https://bugs.webkit.org/show_bug.cgi?id=172326
1886
1887         Reviewed by Sam Weinig.
1888
1889         * Scripts/run-jsc-benchmarks:
1890
1891 2017-05-19  Wenson Hsieh  <wenson_hsieh@apple.com>
1892
1893         [WK1] MiniBrowser should navigate when handling a dropped URL
1894         https://bugs.webkit.org/show_bug.cgi?id=172350
1895
1896         Reviewed by Tim Horton.
1897
1898         Allow all drop actions, including URL navigation, for WebKit1 MiniBrowser.
1899
1900         * MiniBrowser/mac/WK1BrowserWindowController.m:
1901         (-[WK1BrowserWindowController webView:dragDestinationActionMaskForDraggingInfo:]):
1902
1903 2017-05-18  Ryosuke Niwa  <rniwa@webkit.org>
1904
1905         REGRESSION (r216694 - 216712): Performance test Speedometer/Full.html is failing
1906         https://bugs.webkit.org/show_bug.cgi?id=172077
1907
1908         Reviewed by Chris Dumez.
1909
1910         Fixed perftest.py by updating the lines to ignore in Speedometer.
1911
1912         Also start report the results as "Speedometer" instead of "DoYouEvenBench/Full.html" to perf.webkit.org.
1913
1914         * Scripts/webkitpy/performance_tests/perftest.py:
1915         (PerfTest._lines_to_ignore_in_parser_result): Updated for Speedometer 2.0.
1916         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
1917         (PerfTestsRunner._collect_tests): Use "Speedometer" instead of "Speedometer/index.html" as the test name.
1918         (_generate_results_dict): Removed the workaround to keep reporting Speedometer as DoYouEvenBench.
1919         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
1920         (MainTest.test_collect_tests_with_index_html_and_resources): Added.
1921
1922 2017-05-18  Andy Estes  <aestes@apple.com>
1923
1924         ENABLE(APPLE_PAY_DELEGATE) should be NO on macOS Sierra and earlier
1925         https://bugs.webkit.org/show_bug.cgi?id=172305
1926
1927         Reviewed by Anders Carlsson.
1928
1929         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1930
1931 2017-05-18  Wenson Hsieh  <wenson_hsieh@apple.com>
1932
1933         Selection around attachment elements should not persist when beginning a drag
1934         https://bugs.webkit.org/show_bug.cgi?id=172319
1935         <rdar://problem/32283008>
1936
1937         Reviewed by Tim Horton.
1938
1939         Tests that temporary selection around an attachment does not persist longer than it needs to.
1940
1941         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1942         (TestWebKitAPI::TEST):
1943
1944 2017-05-18  John Wilander  <wilander@apple.com>
1945
1946         Resource Load Statistics: Grandfather domains for existing data records
1947         https://bugs.webkit.org/show_bug.cgi?id=172155
1948         <rdar://problem/24913532>
1949
1950         Reviewed by Alex Christensen.
1951
1952         Adds test infrastructure needed for the added functionality.
1953
1954         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1955         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1956         (WTR::InjectedBundle::didReceiveMessageToPage):
1957         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1958         (WTR::TestRunner::setStatisticsGrandfathered):
1959         (WTR::TestRunner::isStatisticsGrandfathered):
1960         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
1961         (WTR::TestRunner::statisticsDidScanDataRecordsCallback):
1962         (WTR::TestRunner::setStatisticsGrandfatheringTime):
1963         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1964         * WebKitTestRunner/TestController.cpp:
1965         (WTR::TestController::setStatisticsGrandfathered):
1966         (WTR::TestController::isStatisticsGrandfathered):
1967         (WTR::TestController::setStatisticsGrandfatheringTime):
1968         * WebKitTestRunner/TestController.h:
1969         * WebKitTestRunner/TestInvocation.cpp:
1970         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1971
1972 2017-05-18  Saam Barati  <sbarati@apple.com>
1973
1974         WebAssembly: perform stack checks
1975         https://bugs.webkit.org/show_bug.cgi?id=165546
1976         <rdar://problem/29760307>
1977
1978         Reviewed by Filip Pizlo.
1979
1980         Add some new testing modes for using and not using fast TLS wasm contexts.
1981
1982         * Scripts/run-jsc-stress-tests:
1983
1984 2017-05-18  Daniel Bates  <dabates@apple.com>
1985
1986         REGRESSION (r209608): Cross-origin plugin document opened in child window blocked by parent
1987         window CSP when object-src 'none' is set
1988         https://bugs.webkit.org/show_bug.cgi?id=172038
1989         <rdar://problem/32258262>
1990
1991         Reviewed by Andy Estes.
1992
1993         Teach the test Netscape plugin to look for a URL that contains plugin-document-alert-and-notify-done.pl.
1994         When it sees this URL it will show a JavaScript alert and call testRunner.notifyDone().
1995
1996         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
1997         (NPP_New):
1998
1999 2017-05-18  Per Arne Vollan  <pvollan@apple.com>
2000
2001         [Win] Many layout tests are failing.
2002         https://bugs.webkit.org/show_bug.cgi?id=172286
2003
2004         Reviewed by Brent Fulgham.
2005
2006         Add a FIXME comment about unimplemented functions, instead of writing this to the test result file.
2007  
2008         * DumpRenderTree/win/TestRunnerWin.cpp:
2009         (TestRunner::grantWebNotificationPermission):
2010         (TestRunner::denyWebNotificationPermission):
2011         (TestRunner::removeAllWebNotificationPermissions):
2012         (TestRunner::simulateWebNotificationClick):
2013
2014 2017-05-18  Don Olmstead  <don.olmstead@am.sony.com>
2015
2016         [Win] Remove usage of _snprintf
2017         https://bugs.webkit.org/show_bug.cgi?id=172251
2018
2019         Reviewed by Per Arne Vollan.
2020
2021         * DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
2022         * MiniBrowser/win/PageLoadTestClient.cpp:
2023         (PageLoadTestClient::dumpRunStatistics):
2024
2025 2017-05-17  Ryan Haddad  <ryanhaddad@apple.com>
2026
2027         Unreviewed, rolling out r217014.
2028
2029         This change caused mac-wk2 LayoutTests to exit early due to
2030         crashes.
2031
2032         Reverted changeset:
2033
2034         "Resource Load Statistics: Grandfather domains for existing
2035         data records"
2036         https://bugs.webkit.org/show_bug.cgi?id=172155
2037         http://trac.webkit.org/changeset/217014
2038
2039 2017-05-17  John Wilander  <wilander@apple.com>
2040
2041         Resource Load Statistics: Grandfather domains for existing data records
2042         https://bugs.webkit.org/show_bug.cgi?id=172155
2043         <rdar://problem/24913532>
2044
2045         Reviewed by Alex Christensen.
2046
2047         Adds test infrastructure needed for the added functionality.
2048
2049         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2050         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2051         (WTR::InjectedBundle::didReceiveMessageToPage):
2052         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2053         (WTR::TestRunner::setStatisticsGrandfathered):
2054         (WTR::TestRunner::isStatisticsGrandfathered):
2055         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
2056         (WTR::TestRunner::statisticsDidScanDataRecordsCallback):
2057         (WTR::TestRunner::setStatisticsGrandfatheringTime):
2058         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2059         * WebKitTestRunner/TestController.cpp:
2060         (WTR::TestController::setStatisticsGrandfathered):
2061         (WTR::TestController::isStatisticsGrandfathered):
2062         (WTR::TestController::setStatisticsGrandfatheringTime):
2063         * WebKitTestRunner/TestController.h:
2064         * WebKitTestRunner/TestInvocation.cpp:
2065         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2066
2067 2017-05-17  Alex Christensen  <achristensen@webkit.org>
2068
2069         Fix ios-simulator API test after r216977
2070         https://bugs.webkit.org/show_bug.cgi?id=171987
2071
2072         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2073         (TEST):
2074         <rdar://problem/32260156> covers the investigation of this, but fixing it is 
2075         not as urgent as having the rest of this working. Notably the ephemeral part of the
2076         test works, so something is just wrong with the persistent part.
2077
2078 2017-05-17  Ryan Haddad  <ryanhaddad@apple.com>
2079
2080         Unreviewed, rolling out r216955.
2081
2082         This change caused strange behavior with web-platform-tests
2083         locally and on EWS.
2084
2085         Reverted changeset:
2086
2087         "webkitpy: Start servers before setting-up for testing"
2088         https://bugs.webkit.org/show_bug.cgi?id=172176
2089         http://trac.webkit.org/changeset/216955
2090
2091 2017-05-17  Wenson Hsieh  <wenson_hsieh@apple.com>
2092
2093         A URL type is vended for a non-URL plain text string when starting data interaction
2094         https://bugs.webkit.org/show_bug.cgi?id=172228
2095         <rdar://problem/32166729>
2096
2097         Reviewed by Andy Estes.
2098
2099         Adds two new data interaction tests, SinglePlainTextWordTypeIdentifiers and SinglePlainTextURLTypeIdentifiers,
2100         to verify that a URL UTI is not vended when beginning a data interaction on a single word, but that a URL is
2101         still vended when beginning data interaction on something that resembles a link.
2102
2103         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2104
2105 2017-05-17  David Kilzer  <ddkilzer@apple.com>
2106
2107         BlobDataFileReference::generateReplacementFile() should use mkstemp()
2108         <https://webkit.org/b/172192>
2109
2110         Reviewed by Brent Fulgham.
2111
2112         * Scripts/webkitpy/style/checkers/cpp.py:
2113         (check_language): Add check for mktemp.
2114         (CppChecker): Add 'security/temp_file' category.
2115         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
2116         (CppStyleTest.test_insecure_temp_file): Add test.
2117
2118 2017-05-17  Devin Rousso  <drousso@apple.com>
2119
2120         Unreviewed, change my email.
2121
2122         * Scripts/webkitpy/common/config/contributors.json:
2123
2124 2017-05-17  Matt Lewis  <jlewis3@apple.com>
2125
2126         Unreviewed, rolling out r216974.
2127
2128         Revision caused consistent timeouts on all platforms.
2129
2130         Reverted changeset:
2131
2132         "Add a RuntimeEnabledFeature for display: contents, defaulted
2133         to false."
2134         https://bugs.webkit.org/show_bug.cgi?id=171984
2135         http://trac.webkit.org/changeset/216974
2136
2137 2017-05-17  Alex Christensen  <achristensen@webkit.org>
2138
2139         Interacting with WKHTTPCookieStores before creating WKWebViews and WKProcessPools should affect cookies used
2140         https://bugs.webkit.org/show_bug.cgi?id=171987
2141
2142         Reviewed by Brady Eidson.
2143
2144         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2145         (-[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2146         (TEST):
2147
2148 2017-05-17  Emilio Cobos Álvarez  <ecobos@igalia.com>
2149
2150         Add a RuntimeEnabledFeature for display: contents, defaulted to false.
2151         https://bugs.webkit.org/show_bug.cgi?id=171984
2152
2153         Reviewed by Antti Koivisto.
2154
2155         * DumpRenderTree/mac/DumpRenderTree.mm:
2156         (enableExperimentalFeatures):
2157         * WebKitTestRunner/TestController.cpp:
2158         (WTR::TestController::resetPreferencesToConsistentValues):
2159
2160 2017-05-16  Timothy Horton  <timothy_horton@apple.com>
2161
2162         Fix the build
2163
2164         * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
2165         (TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
2166
2167 2017-05-16  Tim Horton  <timothy_horton@apple.com>
2168
2169         PageVisibilityStateWithWindowChanges tests sometimes time out
2170         https://bugs.webkit.org/show_bug.cgi?id=172202
2171         <rdar://problem/29653266>
2172
2173         Reviewed by Dean Jackson.
2174
2175         * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
2176         (TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
2177         Make sure the window is miniaturizable, otherwise, in some cases, miniaturize: will not work.
2178
2179 2017-05-16  Jonathan Bedard  <jbedard@apple.com>
2180
2181         webkitpy: Start servers before setting-up for testing
2182         https://bugs.webkit.org/show_bug.cgi?id=172176
2183         <rdar://problem/32225538>
2184
2185         Reviewed by Alexey Proskuryakov.
2186
2187         On-device testing requires that servers are started before ports set-up their
2188         test environments.
2189
2190         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
2191         (LayoutTestRunner.__init__): Start servers when initializing LayoutTestRunner.
2192         (LayoutTestRunner.run_tests): Move the starting of servers to the initializer.
2193         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2194         (Manager.__init__): Delay construction of the test runner until we can determine
2195         if servers need to be started.
2196         (Manager.run): Determine if servers need to be started and construct the test runner.
2197         (Manager._run_tests): Move the determination of servers to run into Manager.run.
2198
2199 2017-05-16  Adrian Perez de Castro  <aperez@igalia.com>
2200
2201         Unreviewed, adding myself to contributors.json
2202
2203         * Scripts/webkitpy/common/config/contributors.json:
2204
2205 2017-05-16  Claudio Saavedra  <csaavedra@igalia.com>
2206
2207         [GTK] Tests that always pass when run alone, but fail in the bots
2208         https://bugs.webkit.org/show_bug.cgi?id=168572
2209
2210         Reviewed by Michael Catanzaro.
2211
2212         PlatformWebView::viewSupportsOptions() is basically a comparison
2213         that checks that the passed options are the ones supported by the
2214         web view. There is no reason for them to be implemented for each
2215         platform differently. In fact doing so causes issues each time a
2216         new option is added, if the corresponding platform implementation
2217         is not updated accordingly.
2218
2219         A consequence of not updating the viewSupportOptions()
2220         implementations when new options are added is that tests that need
2221         these options might fail if they are executed after a test that
2222         didn't need the option, as the webview will be reused even if the
2223         option is not supported. This cannot be spotted when running the
2224         tests individually. See bug #165133 for other example of the same
2225         problem.
2226
2227         Remove the platform implementations and make the comparison a
2228         method of the TestOptions structure, so that the check is in one
2229         place. For the time being, only include in the comparison the
2230         options that were checked in the mac platform, which seem to be
2231         the only ones relevant this far (unless newer ones have also been
2232         forgotten).
2233
2234         * WebKitTestRunner/PlatformWebView.h:
2235         (WTR::PlatformWebView::viewSupportsOptions): Use the method
2236         defined below.
2237         * WebKitTestRunner/TestOptions.h:
2238         (WTR::TestOptions::hasSameInitializationOptions): Added.
2239         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
2240         (WTR::PlatformWebView::viewSupportsOptions): Deleted.
2241         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2242         (WTR::PlatformWebView::viewSupportsOptions): Deleted.
2243         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2244         (WTR::PlatformWebView::viewSupportsOptions): Deleted.
2245         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
2246         (WTR::PlatformWebView::viewSupportsOptions): Deleted.
2247
2248 2017-05-15  Yusuke Suzuki  <utatane.tea@gmail.com>
2249
2250         [JSC] Build testapi in non Apple ports
2251         https://bugs.webkit.org/show_bug.cgi?id=172103
2252
2253         Reviewed by Filip Pizlo.
2254
2255         Now testapi is drived in JSCOnly, GTK and WPE ports too.
2256
2257         * Scripts/build-jsc:
2258         * Scripts/run-javascriptcore-tests:
2259
2260 2017-05-15  Youenn Fablet  <youenn@apple.com>
2261
2262         WPT test importer should not account for slow manual tests
2263         https://bugs.webkit.org/show_bug.cgi?id=172127
2264
2265         Reviewed by Ryosuke Niwa.
2266
2267         Making sure manual tests are not triggering updating tests-options.json file.
2268
2269         * Scripts/webkitpy/w3c/test_importer.py:
2270         (TestImporter.find_importable_tests):
2271         (TestImporter._already_identified_as_resource_file):
2272         (TestImporter.update_tests_options):
2273         * Scripts/webkitpy/w3c/test_importer_unittest.py:
2274         (test_manual_slow_test):
2275
2276 2017-05-15  Jonathan Bedard  <jbedard@apple.com>
2277
2278         webkitpy: Some versions of simctl do not place parenthesis around runtime identifiers
2279         https://bugs.webkit.org/show_bug.cgi?id=172142
2280
2281         Reviewed by Tim Horton.
2282
2283         * Scripts/webkitpy/xcode/simulator.py:
2284         (Simulator._parse_runtimes): Newer versions of simctl output do not put parenthesis
2285         around runtime identifiers.
2286         * Scripts/webkitpy/xcode/simulator_unittest.py: Add tests for new simctl output.
2287
2288 2017-05-15  Ryosuke Niwa  <rniwa@webkit.org>
2289
2290         Update ARES-6 plan file to use the latest version
2291         https://bugs.webkit.org/show_bug.cgi?id=172139
2292
2293         Reviewed by Keith Miller.
2294
2295         Include r216538.
2296
2297         * Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan:
2298
2299 2017-05-15  Jeremy Jones  <jeremyj@apple.com>
2300
2301         Disable Picture In Picture API tests on unsupported platforms.
2302         https://bugs.webkit.org/show_bug.cgi?id=172125
2303         rdar://problem/32199477
2304
2305         Reviewed by Simon Fraser.
2306
2307         The callbacks and allowing picture-in-picture require new SPI.
2308
2309         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm:
2310
2311 2017-05-15  Brady Eidson  <beidson@apple.com>
2312
2313         [ios-simulator] API test WKWebView.ClearAppCache is failing.
2314         https://bugs.webkit.org/show_bug.cgi?id=172120
2315
2316         Unreviewed test gardening.
2317
2318         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
2319         (TEST): ios-sim needs explicit deleting of the app cache paths that I'd removed in 216805.
2320           Restoring that code fixes this.
2321
2322 2017-05-15  Timothy Horton  <timothy_horton@apple.com>
2323
2324         Null deref under WebContentReader::readURL when interacting with a file URL
2325         https://bugs.webkit.org/show_bug.cgi?id=172045
2326         <rdar://problem/25880647>
2327
2328         Reviewed by Wenson Hsieh.
2329
2330         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2331         (TestWebKitAPI::TEST):
2332         The text of the file URL is pasted because a textual version of it gets
2333         onto the pasteboard. However, this test would have crashed before. Also
2334         tests that we don't make an <a>.
2335
2336 2017-05-14  Per Arne Vollan  <pvollan@apple.com>
2337
2338         [Win] fast/cookies/local-file-can-set-cookies.html is flaky.
2339         https://bugs.webkit.org/show_bug.cgi?id=172071
2340
2341         Reviewed by Alexey Proskuryakov.
2342
2343         * DumpRenderTree/win/DumpRenderTree.cpp:
2344         (resetWebPreferencesToConsistentValues):
2345
2346 2017-05-14  Chris Dumez  <cdumez@apple.com>
2347
2348         Drop PassRefPtr class from WTF
2349         https://bugs.webkit.org/show_bug.cgi?id=172091
2350
2351         Reviewed by Alex Christensen.
2352
2353         Drop API test coverage.
2354
2355         * TestWebKitAPI/Tests/WTF/Ref.cpp:
2356         (TestWebKitAPI::TEST):
2357         (TestWebKitAPI::passWithPassRefPtr): Deleted.
2358
2359 2017-05-13  Eric Carlson  <eric.carlson@apple.com>
2360
2361         [MediaStream] deviceId constraint doesn't work with getUserMedia
2362         https://bugs.webkit.org/show_bug.cgi?id=171877
2363         <rdar://problem/31899730>
2364
2365         Reviewed by Jer Noble.
2366
2367         The device ID hash salt is now required for getUserMedia to check deviceId constraint, so
2368         implement the "checkUserMediaPermission" callback.
2369         * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
2370         (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack):
2371         (TestWebKitAPI::checkUserMediaPermissionCallback):
2372         (TestWebKitAPI::TEST):
2373
2374         * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm:
2375         (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
2376
2377 2017-05-13  Chris Dumez  <cdumez@apple.com>
2378
2379         Stop using RefPtr::release()
2380         https://bugs.webkit.org/show_bug.cgi?id=172074
2381
2382         Reviewed by Geoffrey Garen.
2383
2384         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
2385         (TestWebKitAPI::TEST):
2386
2387 2017-05-13  Commit Queue  <commit-queue@webkit.org>
2388
2389         Unreviewed, rolling out r216808.
2390         https://bugs.webkit.org/show_bug.cgi?id=172075
2391
2392         caused lldb to hang when debugging (Requested by smfr on
2393         #webkit).
2394
2395         Reverted changeset:
2396
2397         "Use Mach exceptions instead of signals where possible"
2398         https://bugs.webkit.org/show_bug.cgi?id=171865
2399         http://trac.webkit.org/changeset/216808
2400
2401 2017-05-12  Alex Christensen  <achristensen@webkit.org>
2402
2403         Rename WKContentExtension to WKContentRuleList
2404         https://bugs.webkit.org/show_bug.cgi?id=172053
2405         <rdar://problem/32141005>
2406
2407         Reviewed by Geoffrey Garen.
2408
2409         * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentExtensionStore.mm:
2410         (WKContentRuleListStoreTest::SetUp):
2411         (TEST_F):
2412         (-[ContentRuleListDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2413         (WKContentExtensionStoreTest::SetUp): Deleted.
2414         (-[ContentExtensionDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.
2415
2416 2017-05-12  Keith Miller  <keith_miller@apple.com>
2417
2418         Use Mach exceptions instead of signals where possible
2419         https://bugs.webkit.org/show_bug.cgi?id=171865
2420
2421         Reviewed by Mark Lam.
2422
2423         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
2424         (runThreadMessageTest):
2425         (TEST):
2426
2427 2017-05-12  Jeremy Jones  <jeremyj@apple.com>
2428
2429         Add objc version of WK2 UIPageClient setHasVideoInPictureInPicture and rename it to hasVideoInPictureInPictureDidChange.
2430         https://bugs.webkit.org/show_bug.cgi?id=172048
2431         rdar://problem/32163054
2432
2433         Reviewed by Simon Fraser.
2434
2435         Add a WKWebView test for hasVideoInPictureInPictureDidChange UIDelegate callback.
2436
2437         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.html:
2438         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm:
2439         (hasVideoInPictureInPictureDidChange):
2440         (-[PictureInPictureUIDelegate _webView:hasVideoInPictureInPictureDidChange:]):
2441         (-[PictureInPictureUIDelegate userContentController:didReceiveScriptMessage:]):
2442         (TestWebKitAPI::TEST):
2443
2444 2017-05-12  Brady Eidson  <beidson@apple.com>
2445
2446         REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
2447         https://bugs.webkit.org/show_bug.cgi?id=172030
2448
2449         Unreviewed - Test gardening
2450
2451         Try to resolve this once and for all by using the WebsiteDataStore API to nuke everything
2452         before the test starts.
2453
2454         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
2455         (defaultWebsiteCacheDirectory):
2456         (defaultApplicationCacheDirectory):
2457         (TEST):
2458         (defaultWebsiteDataDirectory): Deleted.
2459
2460 2017-05-12  David Quesada  <david_quesada@apple.com>
2461
2462         Add SPI for overriding WKWebView's clipping behavior for _visibleContentRect
2463         https://bugs.webkit.org/show_bug.cgi?id=172000
2464         rdar://problem/32144756
2465
2466         Reviewed by Simon Fraser.
2467
2468         Added API tests to verify that WKWebView provides the expected value for
2469         _visibleContentRect in various configurations. (i.e. not inside a scrollview,
2470         inside a scrollview but not clipped, clipped by an ancestor scrollview,
2471         clipped by the webview's _enclosingViewForExposedRectComputation)
2472
2473         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2474         * TestWebKitAPI/Tests/WebKit2Cocoa/VisibleContentRect.mm: Added.
2475         (-[TestWKWebViewWithEnclosingView _enclosingViewForExposedRectComputation]):
2476         (TestWebKitAPI::TEST):
2477
2478 2017-05-12  Brady Eidson  <beidson@apple.com>
2479
2480         REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
2481         https://bugs.webkit.org/show_bug.cgi?id=172030
2482
2483         Unreviewed - Test gardening, in effect...
2484
2485         More exploration as to why this continues to fail on the bots.
2486         
2487         This change should give us a smoking gun.
2488         
2489         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
2490         (TEST):
2491
2492 2017-05-12  Hyungwook Lee  <hyungwook.lee@navercorp.com>
2493
2494         [GTK] Fix compile warnings in PlatformImageCairo.cpp
2495         https://bugs.webkit.org/show_bug.cgi?id=171850
2496
2497         Reviewed by Michael Catanzaro.
2498
2499         * ImageDiff/cairo/PlatformImageCairo.cpp:
2500         (ImageDiff::PlatformImage::createFromStdin):
2501         (ImageDiff::PlatformImage::writeAsPNGToStdout):
2502
2503 2017-05-12  Jeremy Jones  <jeremyj@apple.com>
2504
2505         Add UIClient callback for when picture-in-picture is activated.
2506         https://bugs.webkit.org/show_bug.cgi?id=172023
2507
2508         Reviewed by Simon Fraser.
2509
2510         Added a test for WKPageUIClientV10 setHasVideoInPictureInPicture.
2511
2512         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2513         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.html: Added.
2514         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm: Added.
2515         (onLoadedCompletedCallback):
2516         (waitUntilOnLoadIsCompleted):
2517         (didFinishLoadForFrame):
2518         (setHasVideoInPictureInPicture):
2519         (TestWebKitAPI::TEST):
2520
2521 2017-05-12  Jonathan Bedard  <jbedard@apple.com>
2522
2523         Unreviewed follow-up to r216776.
2524
2525         * Scripts/webkitpy/port/base.py:
2526         (Port.path_to_crash_logs): Raise not implemented.
2527         * Scripts/webkitpy/port/test.py:
2528         (TestPort.path_to_crash_logs): Return results directory as the location of crash logs.
2529         * Scripts/webkitpy/port/win.py:
2530         (WinPort.path_to_crash_logs): Ditto.
2531
2532 2017-05-12  Alexey Proskuryakov  <ap@apple.com>
2533
2534         Bot watcher's dashboard shows results links twice sometimes
2535         https://bugs.webkit.org/show_bug.cgi?id=172043
2536
2537         Reviewed by Tim Horton.
2538
2539         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
2540         (BuildbotTesterQueueView.prototype._presentPopoverForGenericTestFailures):
2541
2542 2017-05-12  Brady Eidson  <beidson@apple.com>
2543
2544         REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
2545         https://bugs.webkit.org/show_bug.cgi?id=172030
2546
2547         Unreviewed - Test gardening, in effect...
2548
2549         This failure is only being seen by the bots.
2550         
2551         I believe this test is utterly broken in the first place; when it checks the .wal file's
2552         size that is not actually an indicator that the records were deleted.
2553         
2554         But that isn't what's coming up as failure on the bots.
2555         
2556         This patch is an attempt to:
2557         1 - More forcefully clear the Website data directory of leftovers before the test starts.
2558         2 - Give an earlier indication of the failure that the bots are seeing, to possibly reveal more.
2559
2560         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
2561         (defaultWebsiteDataDirectory):
2562         (defaultApplicationCacheDirectory):
2563         (TEST):
2564
2565 2017-05-12  Jonathan Bedard  <jbedard@apple.com>
2566
2567         webkitpy: Pass directory with crash logs into CrashLogs
2568         https://bugs.webkit.org/show_bug.cgi?id=172033
2569         <rdar://problem/32157616>
2570
2571         Reviewed by Daniel Bates.
2572
2573         Refactor CrashLogs and the callers of CrashLogs so that the port object owns
2574         the location of crash logs.
2575
2576         * Scripts/webkitpy/common/system/crashlogs.py:
2577         (CrashLogs.__init__): Pass mandatory crash_log_directory when constructing.
2578         (CrashLogs._find_newest_log_darwin): Use self._crash_log_directory instead of
2579         generating one.
2580         (CrashLogs._find_newest_log_win): Use self._crash_log_directory instead of
2581         self._results_directory.
2582         (CrashLogs._find_all_logs_darwin): Use self._crash_log_directory instead of
2583         generating one.
2584         (CrashLogs._log_directory_darwin): Moved to port.
2585         * Scripts/webkitpy/common/system/crashlogs_unittest.py: Update tests since the path
2586         to the crash log is no longer owned by CrashLogs.
2587         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py: Use the general
2588         directory for uploading crash logs. Note that crash logs are only supported on Mac
2589         and Windows.
2590         * Scripts/webkitpy/port/apple.py: Remove unneeded CrashLogs import.
2591         * Scripts/webkitpy/port/base.py:
2592         (Port.path_to_crash_logs): Unless ports declare otherwise, crash logs are assumed
2593         to be in the results directory.
2594         * Scripts/webkitpy/port/darwin.py:
2595         (DarwinPort.path_to_crash_logs): Moved from CrashLogs._log_directory_darwin.
2596         (DarwinPort._look_for_all_crash_logs_in_log_dir): Use port specific crash log path.
2597         (DarwinPort._get_crash_log): Ditto.
2598         * Scripts/webkitpy/port/darwin_testcase.py:
2599         (DarwinTest.test_crashlog_path): Test that the Darwin ports are correctly calculating
2600         the path to crash logs.
2601         * Scripts/webkitpy/port/ios_device.py:
2602         (IOSDevicePort.path_to_crash_logs): Currently, crash log retrieval is undefined for iOS.
2603         * Scripts/webkitpy/port/ios_device_unittest.py:
2604         (IOSDeviceTest.test_crashlog_path): Currently, crash log retrieval is undefined for iOS.
2605         * Scripts/webkitpy/port/ios_simulator.py: Remove unneeded CrashLogs import.
2606         * Scripts/webkitpy/port/mac.py: Ditto.
2607         * Scripts/webkitpy/port/test.py:
2608         (TestDriver.run_test): Use port specific crash log path when retrieving crash logs.
2609         * Scripts/webkitpy/port/win.py:
2610         (WinPort._get_crash_log): Ditto.
2611         * Scripts/webkitpy/tool/commands/queries.py:
2612         (execute): Construct a port object since this is the object which owns the path to crash logs.
2613
2614 2017-05-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2615
2616         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/create-navigation-data after r216615.
2617
2618         In r216615 the custom code for window.open() was removed. The generated code now correctly handles the optional
2619         URL parameter using the default value "about:blank" when not provided.
2620
2621         * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
2622         (testWebViewCreateNavigationData):
2623
2624 2017-05-11  Youenn Fablet  <youenn@apple.com>
2625
2626         Allow WPT server to serve specific WebKit test
2627         https://bugs.webkit.org/show_bug.cgi?id=171479
2628
2629         Reviewed by Ryosuke Niwa.
2630
2631         Adding a new mount point to WPT server.
2632         It points to LayoutTests/http/wpt folder and is triggered on "/WebKit" urls.
2633
2634         Updating the webkitpy infrastructure to launch WPT server and do test url mapping for LayoutTests/wpt tests.
2635
2636         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2637         (Manager.__init__):
2638         (Manager._is_http_test):
2639         (Manager._needs_web_platform_test):
2640         (Manager._run_tests):
2641         (Manager._is_web_platform_test): Deleted.
2642         * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
2643         (build_routes):
2644         (main):
2645         * Scripts/webkitpy/port/driver.py:
2646         (Driver):
2647         (Driver.is_webkit_specific_web_platform_test):
2648         (Driver.test_to_uri):
2649         (Driver._command_from_driver_input):
2650
2651 2017-05-11  Brady Eidson  <beidson@apple.com>
2652
2653         [WKWebsiteDataStore removeDataOfTypes:...] doesn't work for IndexedDB if the data store has a custom IDB path.
2654         <rdar://problem/30612463> and https://bugs.webkit.org/show_bug.cgi?id=171994
2655
2656         Reviewed by Andy Estes.
2657         Informal review by Maureen Daum.
2658
2659         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
2660         (TEST):
2661
2662 2017-05-11  Joseph Pecoraro  <pecoraro@apple.com>
2663
2664         REGRESSION(r216217): lldb_webkit.py no longer prints out a WTFString, StringImpl needs to handle StringImplShape change
2665         https://bugs.webkit.org/show_bug.cgi?id=171989
2666
2667         Reviewed by Brian Burg.
2668
2669         * lldb/lldb_webkit.py:
2670         (WTFStringImplProvider.get_data8):
2671         (WTFStringImplProvider.get_data16):
2672         m_data8 and m_data16 are now part of the superclass StringImplShape
2673         instead of directly in StringImpl. So first get the shape by getting
2674         index 0, and the data properties are the same offset within that.
2675
2676 2017-05-11  Joseph Pecoraro  <pecoraro@apple.com>
2677
2678         Remove Vibration API
2679         https://bugs.webkit.org/show_bug.cgi?id=171766
2680
2681         Rubber-stamped by Alexey Proskuryakov.
2682
2683         * Scripts/webkitperl/FeatureList.pm:
2684
2685 2017-05-11  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2686
2687         Add WPE release bots
2688         https://bugs.webkit.org/show_bug.cgi?id=171973
2689
2690         Reviewed by Žan Doberšek.
2691
2692         This adds a WPE Release Build bot (64-bit) and a WPE Release Test bot.
2693         It also adds a new WPE buildbot category.
2694
2695         * BuildSlaveSupport/build.webkit.org-config/config.json:
2696         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2697         (InstallWpeDependencies):
2698         (appendCustomBuildFlags):
2699         (Factory.__init__):
2700         (loadBuilderConfig):
2701         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
2702         * BuildSlaveSupport/build.webkit.org-config/templates/root.html:
2703
2704 2017-05-09  Sam Weinig  <sam@webkit.org>
2705
2706         Remove support for legacy Notifications
2707         https://bugs.webkit.org/show_bug.cgi?id=171487
2708
2709         Reviewed by Jon Lee.
2710
2711         * DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
2712         (DRTDesktopNotificationPresenter::checkNotificationPermission):
2713         * Scripts/webkitperl/FeatureList.pm:
2714         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2715         Remove use and definition of ENABLE_LEGACY_NOTIFICATIONS.
2716
2717 2017-05-10  Michael Catanzaro  <mcatanzaro@igalia.com>
2718
2719         Remove user agent quirk for Slack
2720         https://bugs.webkit.org/show_bug.cgi?id=171869
2721
2722         Reviewed by Carlos Garcia Campos.
2723
2724         Remove the corresponding test.
2725
2726         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
2727         (TestWebKitAPI::TEST):
2728
2729 2017-05-10  Commit Queue  <commit-queue@webkit.org>
2730
2731         Unreviewed, rolling out r216578.
2732         https://bugs.webkit.org/show_bug.cgi?id=171920
2733
2734         Broke the GTK+ build with Wayland enabled (Requested by KaL on
2735         #webkit).
2736
2737         Reverted changeset:
2738
2739         "[GTK] Bump GTK+ and its dependencies in jhbuild"
2740         https://bugs.webkit.org/show_bug.cgi?id=171918
2741         http://trac.webkit.org/changeset/216578
2742
2743 2017-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2744
2745         [GTK] Bump GTK+ and its dependencies in jhbuild
2746         https://bugs.webkit.org/show_bug.cgi?id=171918
2747
2748         Reviewed by Carlos Alberto Lopez Perez.
2749
2750         * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
2751         (WTR::initializeGtkSettings):
2752         * gtk/jhbuild.modules:
2753         * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Removed.
2754         * gtk/patches/librsvg-2.36.1-bump-up-config.guess-to-support-aarch64.patch: Removed.
2755
2756 2017-05-10  Don Olmstead  <don.olmstead@am.sony.com>
2757
2758         [Win] Set CMake args in build-webkit
2759         https://bugs.webkit.org/show_bug.cgi?id=171436
2760
2761         Reviewed by Per Arne Vollan.
2762
2763         * Scripts/build-webkit:
2764
2765 2017-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2766
2767         ImageDiff: Add CG implementation for new ImageDiff
2768         https://bugs.webkit.org/show_bug.cgi?id=170608
2769
2770         Reviewed Alex Christensen.
2771
2772         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2773         * DumpRenderTree/win/ImageDiffCairo.cpp: Removed.
2774         * DumpRenderTree/win/ImageDiffWin.cpp: Removed.
2775         * ImageDiff/CMakeLists.txt:
2776         * ImageDiff/Cairo.cmake:
2777         * ImageDiff/ImageDiff.cpp:
2778         (main):
2779         * ImageDiff/ImageDiff.xcodeproj/project.pbxproj:
2780         * ImageDiff/PlatformImage.cpp:
2781         * ImageDiff/PlatformImage.h:
2782         * ImageDiff/cairo/PlatformImageCairo.cpp:
2783         * ImageDiff/cg/ImageDiff.cpp: Removed.
2784         * ImageDiff/cg/PlatformImageCG.cpp: Added.
2785         (ImageDiff::PlatformImage::createFromStdin):
2786         (ImageDiff::PlatformImage::createFromDiffData):
2787         (ImageDiff::PlatformImage::PlatformImage):
2788         (ImageDiff::PlatformImage::~PlatformImage):
2789         (ImageDiff::PlatformImage::width):
2790         (ImageDiff::PlatformImage::height):
2791         (ImageDiff::PlatformImage::rowBytes):
2792         (ImageDiff::PlatformImage::hasAlpha):
2793         (ImageDiff::PlatformImage::pixels):
2794         (ImageDiff::PlatformImage::writeAsPNGToStdout):
2795
2796 2017-05-10  Zan Dobersek  <zdobersek@igalia.com>
2797
2798         Enable FTL JIT by default on AArch64
2799         https://bugs.webkit.org/show_bug.cgi?id=144039
2800
2801         Reviewed by Yusuke Suzuki.
2802
2803         * Scripts/build-jsc: Enable the FTL JIT option by default on ARM64.
2804         * Scripts/run-jsc-stress-tests: Unmark the ARM64 and Linux combination
2805         as an unsupported FTL platform.
2806         * Scripts/webkitdirs.pm:
2807         (isARM64): Returns 1 if the determined architecture is 'arm64'.
2808         * Scripts/webkitperl/FeatureList.pm: Enable FTL_JIT and WEBASSEMBLY on ARM64.
2809
2810 2017-05-09  Jonathan Bedard  <jbedard@apple.com>
2811
2812         webkitpy: Remove unneeded crash log retrieval, refactor Darwin crash retrieval
2813         https://bugs.webkit.org/show_bug.cgi?id=170857
2814         <rdar://problem/31635373>
2815
2816         Reviewed by Aakash Jain.
2817
2818         Since LayoutTestRelay has been removed, iOS Simulators and Macs can use the same
2819         code to search for crash logs.
2820
2821         * Scripts/webkitpy/port/darwin.py:
2822         (DarwinPort._get_crash_log): Moved from MacPort.
2823         * Scripts/webkitpy/port/darwin_testcase.py:
2824         (DarwinTest.test_get_crash_log): Moved from MacTest.
2825         * Scripts/webkitpy/port/ios_device.py:
2826         (IOSDevicePort._get_crash_log): Implement pass-through for iOS device, since iOS
2827         devices must search for crash-logs remotely.
2828         * Scripts/webkitpy/port/ios_simulator.py:
2829         (IOSSimulatorPort._get_crash_log): Deleted.
2830         * Scripts/webkitpy/port/ios_simulator_unittest.py:
2831         (IOSSimulatorTest.test_get_crash_log): Deleted.
2832         * Scripts/webkitpy/port/mac.py:
2833         (MacPort._get_crash_log): Moved to DarwinPort
2834         * Scripts/webkitpy/port/mac_unittest.py:
2835         (MacTest.test_get_crash_log): Moved to DarwinTest.
2836
2837 2017-05-09  Jonathan Bedard  <jbedard@apple.com>
2838
2839         build ImageDiff with host SDK from Make
2840         https://bugs.webkit.org/show_bug.cgi?id=171835
2841
2842         Reviewed by Alexey Proskuryakov.
2843
2844         ImageDiff should be built for the default SDK and default architecture when
2845         the SDKROOT is set to either iOS device or iOS simulator. Check the
2846         DO_NOT_BUILD_IMAGE_DIFF flag to skip the ImageDiff build.
2847
2848         * ImageDiff/Makefile: Use Mac SDK when building for iOS Simulator or iOS device.
2849         * Makefile: Do not build ImageDiff if the DO_NOT_BUILD_IMAGE_DIFF flag is set.
2850
2851 2017-05-09  Matt Lewis  <jlewis3@apple.com>
2852
2853         Unreviewed, adding myself to contributors.json
2854
2855         * Scripts/webkitpy/common/config/contributors.json:
2856
2857 2017-05-09  Jonathan Bedard  <jbedard@apple.com>
2858
2859         REGRESSION: ImageDiff not building with make
2860         https://bugs.webkit.org/show_bug.cgi?id=171788
2861
2862         Reviewed by Alex Christensen.
2863
2864         * Makefile: Build ImageDiff for all platforms.
2865
2866 2017-05-09  Fujii Hironori  <Hironori.Fujii@sony.com>
2867
2868         [Win] ImageDiff isn't built since Bug 168945
2869         https://bugs.webkit.org/show_bug.cgi?id=171847
2870
2871         Reviewed by Alex Christensen.
2872
2873         * CMakeLists.txt: Add 'ImageDiff' sub-directory to build if WIN32.
2874         * ImageDiff/ImageDiff.cpp: Include some header files to fix compilation errors.
2875         * ImageDiff/PlatformWin.cmake: Define USE_CAIRO if WinCairo port.
2876
2877 2017-05-09  Zan Dobersek  <zdobersek@igalia.com>
2878
2879         Upstream the WPE port
2880         https://bugs.webkit.org/show_bug.cgi?id=171110
2881
2882         Reviewed by Alex Christensen.
2883
2884         webkit-dev thread:
2885         https://lists.webkit.org/pipermail/webkit-dev/2017-April/028923.html
2886
2887         Add WPE support to various tooling scripts, TestWebKitAPI and WebKitTestRunner.
2888         In-file changes removed from this ChangeLog entry for brevity.
2889
2890         * BuildSlaveSupport/built-product-archive:
2891         * BuildSlaveSupport/test-result-archive:
2892         * CMakeLists.txt:
2893         * ImageDiff/PlatformWPE.cmake: Added.
2894         * Scripts/build-dumprendertree:
2895         * Scripts/build-webkit:
2896         * Scripts/build-webkittestrunner:
2897         * Scripts/update-webkit-libs-jhbuild:
2898         * Scripts/update-webkitwpe-libs: Added.
2899         * Scripts/webkitdirs.pm:
2900         * Scripts/webkitperl/FeatureList.pm:
2901         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2902         * Scripts/webkitpy/port/factory.py:
2903         * Scripts/webkitpy/port/wpe.py: Added.
2904         * TestWebKitAPI/PlatformWPE.cmake: Added.
2905         * TestWebKitAPI/wpe/InjectedBundleControllerWPE.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
2906         * TestWebKitAPI/wpe/PlatformUtilitiesWPE.cpp: Added.
2907         * TestWebKitAPI/wpe/main.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
2908         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
2909         * WebKitTestRunner/InjectedBundle/AccessibilityController.h:
2910         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
2911         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
2912         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2913         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2914         * WebKitTestRunner/InjectedBundle/wpe/AccessibilityControllerWPE.cpp: Added.
2915         * WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp: Added.
2916         * WebKitTestRunner/InjectedBundle/wpe/ActivateFontsWPE.cpp: Added.
2917         * WebKitTestRunner/InjectedBundle/wpe/InjectedBundleWPE.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
2918         * WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
2919         * WebKitTestRunner/PlatformWPE.cmake: Added.
2920         * WebKitTestRunner/PlatformWebView.h:
2921         * WebKitTestRunner/TestController.cpp:
2922         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp: Added.
2923         * WebKitTestRunner/wpe/HeadlessViewBackend.cpp: Added.
2924         * WebKitTestRunner/wpe/HeadlessViewBackend.h: Copied from Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.h.
2925         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp: Added.
2926         * WebKitTestRunner/wpe/TestControllerWPE.cpp: Added.
2927         * WebKitTestRunner/wpe/main.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
2928         * jhbuild/jhbuild-wrapper:
2929         * wpe/generate-inspector-gresource-manifest.py: Added.
2930         * wpe/jhbuild.modules: Added.
2931         * wpe/jhbuildrc: Added.
2932         * wpe/patches/cairo-egl-device-create-for-egl-surface.patch: Added.
2933         * wpe/patches/fontconfig-C-11-requires-a-space-between-literal-and-identifier.patch: Added.
2934         * wpe/patches/freetype6-2.4.11-truetype-font-height-fix.patch: Added.
2935         * wpe/patches/gdate-suppress-string-format-literal-warning.patch: Added.
2936         * wpe/patches/glib-warning-fix.patch: Added.
2937         * wpe/patches/gst-plugins-bad-0001-dtls-port-to-OpenSSL-1.1.0.patch: Added.
2938         * wpe/patches/gst-plugins-bad-0002-dtlscertificate-Fix-error-checking-in-RSA_generate_k.patch: Added.
2939         * wpe/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Added.
2940         * wpe/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Added.
2941         * wpe/patches/gstreamer-typefind-Only-push-a-CAPS-event-downstream-if-the-.patch: Added.
2942
2943 2017-05-08  Jonathan Bedard  <jbedard@apple.com>
2944
2945         Implement PlatformWebView::windowSnapshotImage and createBitmapContextFromWebView for iOS devices
2946         https://bugs.webkit.org/show_bug.cgi?id=169421
2947         <rdar://problem/30950171>
2948
2949         Reviewed by Tim Horton.
2950
2951         * DumpRenderTree/ios/PixelDumpSupportIOS.mm:
2952         (createBitmapContextFromWebView): Implement for IOSurface.
2953         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2954         (WTR::PlatformWebView::windowSnapshotImage): Use snapshot API for device.
2955
2956 2017-05-08  Jonathan Bedard  <jbedard@apple.com>
2957
2958         buildbot: Cleanup simulators after running tests
2959         https://bugs.webkit.org/show_bug.cgi?id=171679
2960
2961         Reviewed by Aakash Jain.
2962
2963         simctl is partitioned for each user. Since kill-old-processes
2964         is run as root, we need to specify the buildbot user when tearing
2965         down simulators between steps.
2966
2967         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2968         (KillOldProcesses): Pass buildbot user to kill-old-processes.
2969         * BuildSlaveSupport/kill-old-processes:
2970         (main): Specify the user for simctl if one has been provided.
2971
2972 2017-05-08  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2973
2974         REGRESSION(r216179): [GTK] Script install-dependencies misses liborc
2975         https://bugs.webkit.org/show_bug.cgi?id=171681
2976
2977         Reviewed by Carlos Garcia Campos.
2978
2979         * gtk/install-dependencies:
2980
2981 2017-05-08  Carlos Garcia Campos  <cgarcia@igalia.com>
2982
2983         Unreviewed. Fix GTK+ test /webkit2/WebKitConsoleMessage/network-error after r215556.
2984
2985         Glib uses now Unicode quotes in error messages.
2986
2987         * TestWebKitAPI/Tests/WebKit2Gtk/TestConsoleMessage.cpp:
2988         (testWebKitConsoleMessageNetworkError):
2989
2990 2017-05-08  Carlos Garcia Campos  <cgarcia@igalia.com>
2991
2992         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/javascript-dialogs after r215404.
2993
2994         Sending down+up keys is no longer enough to simulate a real user interaction after r215404, the key events now
2995         should be handled by the web process to be considered a user interaction. So, add an input to the HTML and send
2996         characters to the input. Also fix typo in the function name.
2997
2998         * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
2999         (testWebViewJavaScriptDialogs):
3000
3001 2017-05-07  Michael Catanzaro  <mcatanzaro@igalia.com>
3002
3003         [GTK] Cannot sign in with new Google sign-in page
3004         https://bugs.webkit.org/show_bug.cgi?id=171770
3005
3006         Unreviewed. This just adds a test.
3007
3008         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
3009         (TestWebKitAPI::TEST):
3010
3011 2017-05-06  Simon Fraser  <simon.fraser@apple.com>
3012
3013         [iOS WK2] Make rotation tests more reliable
3014         https://bugs.webkit.org/show_bug.cgi?id=171778
3015
3016         Reviewed by Tim Horton.
3017
3018         Switching between "safari-style" rotation and normal rotation left state on the WKWebView
3019         that would cause later viewport-sensitive tests to fail. The WKWebView would be left
3020         with override layout parameters, and an override orientation, and these caused viewport
3021         size to leak into later tests, and WebCore orientation to not get reset correctly.
3022
3023         Also, WKWebView was unregistering for UIWindowDidRotateNotification notifications when
3024         an override orientation was set, and would never re-register, causing lost orientationchanged
3025         events.
3026
3027         Fix by exposing WKWebView SPI to clear the various bits of overide state. Also don't unregister
3028         from the UIWindowDidRotateNotification notification; it's already ignored anyway if it fires.
3029
3030         Also wait for a visible content rect update after resizing the WKWebVeiw between tests, to make sure
3031         the WebProcess is caught up before proceeding with the test.
3032
3033         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3034         (-[PlatformWebViewController viewWillTransitionToSize:withTransitionCoordinator:]):
3035         * WebKitTestRunner/ios/TestControllerIOS.mm:
3036         (WTR::TestController::platformResetStateToConsistentValues):
3037         (WTR::TestController::platformConfigureViewForTest):
3038
3039 2017-05-06  Csaba Osztrogonác  <ossy@webkit.org>
3040
3041         [Mac][cmake] Buildfix after r216047
3042         https://bugs.webkit.org/show_bug.cgi?id=171769
3043
3044         Unreviewed buildfix.
3045
3046         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3047
3048 2017-05-05  Brady Eidson  <beidson@apple.com>
3049
3050         API test WebKit2.WebsiteDataStoreCustomPaths is failing on ios-simulator.
3051         <rdar://problem/31977294> and https://bugs.webkit.org/show_bug.cgi?id=171513
3052
3053         Reviewed by Andy Estes.
3054
3055         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
3056         (TEST):
3057
3058 2017-05-05  Brian Burg  <bburg@apple.com>
3059
3060         [Cocoa] Converting from WebCore::Cookie to NSHTTPCookie always marks cookies as session cookies
3061         https://bugs.webkit.org/show_bug.cgi?id=171748
3062         <rdar://problem/32027327>
3063
3064         Reviewed by Michael Catanzaro.
3065
3066         Remove temporary workaround now that the assertion failure is fixed.
3067
3068         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
3069         (TEST):
3070
3071 2017-05-05  Simon Fraser  <simon.fraser@apple.com>
3072
3073         Make it possible to test rotation in iOS WebKitTestRunner
3074         https://bugs.webkit.org/show_bug.cgi?id=171755
3075
3076         Reviewed by Tim Horton.
3077
3078         Add to UIScriptController:
3079             void simulateRotation(DeviceOrientation orientation, object callback);
3080             void simulateRotationLikeSafari(DeviceOrientation orientation, object callback);
3081
3082         The former just does a view resize, as a simple WKWebView app would do. The second does
3083         animation more like MobileSafari, using _begin/_endAnimatedResize. and associated override
3084         layout size and interface orientation. The two behaviors produce different resize and
3085         orientationchange events and sizes, and both need to be tested.
3086
3087         Rotation is initiated by a call on UIDevice, and responded to by the root view controller,
3088         which is now a custom subclass (PlatformWebViewController).
3089
3090         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3091         (WTR::UIScriptController::simulateRotation):
3092         (WTR::UIScriptController::simulateRotationLikeSafari):
3093         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3094         (WTR::UIScriptController::simulateRotation):
3095         (WTR::UIScriptController::simulateRotationLikeSafari):
3096         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3097         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3098         (WTR::toDeviceOrientation):
3099         (WTR::UIScriptController::simulateRotation):
3100         (WTR::UIScriptController::simulateRotationLikeSafari):
3101         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3102         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
3103         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3104         (-[TestRunnerWKWebView dealloc]):
3105         (-[TestRunnerWKWebView _didEndRotation]):
3106         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3107         (-[PlatformWebViewController viewWillTransitionToSize:withTransitionCoordinator:]):
3108         (WTR::PlatformWebView::PlatformWebView):
3109         * WebKitTestRunner/ios/TestControllerIOS.mm:
3110         (WTR::TestController::platformResetStateToConsistentValues):
3111         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3112         (WTR::toUIDeviceOrientation):
3113         (WTR::UIScriptController::simulateRotation):
3114         (WTR::UIScriptController::simulateRotationLikeSafari):
3115         (WTR::UIScriptController::platformClearAllCallbacks):
3116         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3117         (WTR::UIScriptController::simulateRotation):
3118         (WTR::UIScriptController::simulateRotationLikeSafari):
3119
3120 2017-05-05  Jonathan Bedard  <jbedard@apple.com>
3121
3122         Use ImageDiff built by host SDK and remove ImageDiff from DumpRenderTree
3123         https://bugs.webkit.org/show_bug.cgi?id=168945
3124         <rdar://problem/30745695>
3125
3126         Reviewed by David Kilzer.
3127
3128         Use ImageDiff built with the host machine's SDK and stop building ImageDiff with the
3129         target SDK. These two changes must happen simultaneously because some archives will
3130         clobber the ImageDiff from the host SDK with the ImageDiff from the target SDK.
3131
3132         * DumpRenderTree/mac/Configurations/ImageDiff.xcconfig: Remove ImageDiff from project.
3133         * DumpRenderTree/PlatformWin.cmake: Remove ImageDiff. Note that the CMakeLists.txt in the
3134         tools directory still includes ImageDiff.
3135         * DumpRenderTree/cg/ImageDiffCG.cpp: Removed.
3136         * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig: Removed.
3137         * Scripts/webkitpy/port/darwin.py: 
3138         (DarwinPort._path_to_image_diff): Return the correct path to ImageDiff when building
3139         locally or when running archives.
3140         * Scripts/webkitpy/port/image_diff.py:
3141         (IOSSimulatorImageDiffer): Deleted.
3142         * Scripts/webkitpy/port/ios_simulator.py:
3143         (IOSSimulatorPort.diff_image): Deleted.
3144
3145 2017-05-05  Brian Burg  <bburg@apple.com>
3146
3147         API test WebKit2.WKHTTPCookieStore fails due to possible issue with handling non-session cookies
3148         https://bugs.webkit.org/show_bug.cgi?id=171748
3149
3150         Unreviewed test gardening.
3151
3152         The assertion failure will be investigated separately in order to avoid rolling out
3153         the fix for "secure" cookies. This assertion fails even without r216258 applied.
3154
3155         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
3156         (TEST):
3157
3158 2017-05-05  Jonathan Bedard  <jbedard@apple.com>
3159
3160         Unreviewed, rolling out r216260.
3161
3162         Breaks internal iOS testers
3163
3164         Reverted changeset:
3165
3166         "Use ImageDiff built by host SDK and remove ImageDiff from
3167         DumpRenderTree"
3168         https://bugs.webkit.org/show_bug.cgi?id=168945
3169         http://trac.webkit.org/changeset/216260
3170
3171 2017-05-05  Jonathan Bedard  <jbedard@apple.com>
3172
3173         Use ImageDiff built by host SDK and remove ImageDiff from DumpRenderTree
3174         https://bugs.webkit.org/show_bug.cgi?id=168945
3175         <rdar://problem/30745695>
3176
3177         Reviewed by David Kilzer.
3178
3179         Use ImageDiff built with the host machine's SDK and stop building ImageDiff with the
3180         target SDK. These two changes must happen simultaneously because some archives will
3181         clobber the ImageDiff from the host SDK with the ImageDiff from the target SDK.
3182
3183         * DumpRenderTree/mac/Configurations/ImageDiff.xcconfig: Remove ImageDiff from project.
3184         * DumpRenderTree/PlatformWin.cmake: Remove ImageDiff. Note that the CMakeLists.txt in the
3185         tools directory still includes ImageDiff.
3186         * DumpRenderTree/cg/ImageDiffCG.cpp: Removed.
3187         * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig: Removed.
3188         * Scripts/webkitpy/port/darwin.py: 
3189         (DarwinPort._path_to_image_diff): Return the correct path to ImageDiff when building
3190         locally or when running archives.
3191         * Scripts/webkitpy/port/image_diff.py:
3192         (IOSSimulatorImageDiffer): Deleted.
3193         * Scripts/webkitpy/port/ios_simulator.py:
3194         (IOSSimulatorPort.diff_image): Deleted.
3195
3196 2017-05-05  Brian Burg  <bburg@apple.com>
3197
3198         [Cocoa] Converting from WebCore::Cookie to NSHTTPCookie always marks cookies as secure
3199         https://bugs.webkit.org/show_bug.cgi?id=171700
3200         <rdar://problem/32017975>
3201
3202         Reviewed by Brady Eidson.
3203
3204         Fix a mistake in the test that should have caught this bug.
3205
3206         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
3207         (TEST):
3208         The assertions that were meant to check round-tripping were actually checking
3209         the properties of the original cookie objects, not the round-tripped ones.
3210         This test now fails without the bugfix and passes when it is applied.
3211
3212 2017-05-05  Daniel Bates  <dabates@apple.com>
3213
3214         Use EXPECT_EQ() when comparing strings in TestWebKitAPI tests
3215         https://bugs.webkit.org/show_bug.cgi?id=171698
3216
3217         Reviewed by Darin Adler.
3218
3219         We should use EXPECT_EQ() instead of EXPECT_TRUE() to compare WTF::String() objects
3220         so that we get pretty diff output when the actual string differs from the expected
3221         string as opposed to seeing a boolean result. The former makes makes it straightforward
3222         to diagnose a regression without reading the code for the test or instrumenting it to
3223         determine the actual string that was compared.
3224
3225         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
3226         (TestWebKitAPI::TEST):
3227         * TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm:
3228         (TestWebKitAPI::TEST_F):
3229         * TestWebKitAPI/Tests/WebCore/mac/GPULibrary.mm:
3230         (TestWebKitAPI::TEST_F):
3231
3232 2017-05-05  Chris Dumez  <cdumez@apple.com>
3233
3234         Rename webProcessDidCrashWithReason callback to webProcessDidTerminate and stop calling webProcessDidCrash for client terminations
3235         https://bugs.webkit.org/show_bug.cgi?id=171624
3236
3237         Reviewed by Dan Bernstein.
3238
3239         Extend API test coverage to cover crashes in addition to terminations requested by the client.
3240
3241         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3242         * TestWebKitAPI/Tests/WebKit2/ProcessDidTerminate.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2/ProcessDidCrashWithReason.cpp.
3243         (TestWebKitAPI::webProcessWasTerminatedByClient):
3244         (TestWebKitAPI::webProcessCrashed):
3245         (TestWebKitAPI::TEST):
3246
3247 2017-05-04  Mark Lam  <mark.lam@apple.com>
3248
3249         DRT's setAudioResultCallback() and IDBRequest::setResult() need to acquire the JSLock.
3250         https://bugs.webkit.org/show_bug.cgi?id=171716
3251         <rdar://problem/30878027>
3252
3253         Reviewed by Saam Barati.
3254
3255         setAudioResultCallback() needs to acquire the JSLock before calling toJS() (which
3256         does JS conversion and therefore, potentially JS allocations) and accessing
3257         methods of internal JS data structures (which may do JS invocation, etc).
3258
3259         * DumpRenderTree/TestRunner.cpp:
3260         (setAudioResultCallback):
3261
3262 2017-05-05  Jonathan Bedard  <jbedard@apple.com>
3263
3264         buildbot: Cleanup simulators after running tests
3265         https://bugs.webkit.org/show_bug.cgi?id=171679
3266         <rdar://problem/31994361>
3267
3268         Reviewed by Aakash Jain.
3269
3270         We shutdown the simulator process between tests, but in some cases, this is not
3271         sufficient. Explicitly shutdown every booted simulator.
3272
3273         * BuildSlaveSupport/kill-old-processes:
3274         (main): Shutdown all booted simulators.
3275
3276 2017-05-05  Carlos Garcia Campos  <cgarcia@igalia.com>
3277
3278         [GTK] Assertion failure in Inspector::RemoteInspector::setRemoteInspectorClient when disposing WebKitWebContext
3279         https://bugs.webkit.org/show_bug.cgi?id=171644
3280
3281         Reviewed by Michael Catanzaro.
3282
3283         Check that only one WebKitWebContext can have automation enabled.
3284
3285         * TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp:
3286         (testAutomationSessionRequestSession):
3287
3288 2017-05-05  Carlos Garcia Campos  <cgarcia@igalia.com>
3289
3290         [GTK] TestController timeout source callback should return G_SOURCE_REMOVE
3291         https://bugs.webkit.org/show_bug.cgi?id=171724
3292
3293         Reviewed by Michael Catanzaro.
3294
3295         It's currently returning CONTINUE which causes it to be called again even if the run loop has been stopped.
3296
3297         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
3298         (WTR::timeoutSource):
3299
3300 2017-05-05  Carlos Garcia Campos  <cgarcia@igalia.com>
3301
3302         Unreviewed. Fix wrong assert after r215176.
3303
3304         Cairo surface received by computeMD5HashStringForCairoSurface() doesn't need to be ARGB32 since r215176, it
3305         could also be RGB24 when created from a web view snapshot.
3306
3307         * WebKitTestRunner/cairo/TestInvocationCairo.cpp:
3308         (WTR::computeMD5HashStringForCairoSurface):
3309
3310 2017-05-04  Brian Burg  <bburg@apple.com>
3311
3312         lldb_webkit.py should provide a type summary for WebCore::URL
3313         https://bugs.webkit.org/show_bug.cgi?id=171670
3314
3315         Reviewed by Jer Noble.
3316
3317         Just print out the underlying string using the WTFString provider.
3318
3319         * lldb/lldb_webkit.py:
3320         (__lldb_init_module):
3321         (WebCoreURL_SummaryProvider):
3322         (WebCoreURLProvider):
3323         (WebCoreURLProvider.__init__):
3324         (WebCoreURLProvider.to_string):
3325
3326 2017-05-04  Commit Queue  <commit-queue@webkit.org>
3327
3328         Unreviewed, rolling out r216206.
3329         https://bugs.webkit.org/show_bug.cgi?id=171714
3330
3331         Multiple LayoutTests crashing in Document::page() (Requested
3332         by ap on #webkit).
3333
3334         Reverted changeset:
3335
3336         "Remove support for legacy Notifications"
3337         https://bugs.webkit.org/show_bug.cgi?id=171487
3338         http://trac.webkit.org/changeset/216206
3339
3340 2017-05-04  Mark Lam  <mark.lam@apple.com>
3341
3342         API test WTF.StaticStringImpl crashing in TestWebKitAPI::WTF_StaticStringImpl_Test::TestBody() + 3188
3343         https://bugs.webkit.org/show_bug.cgi?id=171702
3344
3345         Reviewed by Filip Pizlo.
3346
3347         The test was supposed to use the MAKE_STATIC_STRING_IMPL macro.  I had previously
3348         changed it to instantiate an automatic StaticStringImpl (i.e. stack allocated) to
3349         confirm that the test will detect a regression.  Unfortunately, I forgot to
3350         change it back to using MAKE_STATIC_STRING_IMPL before I landed the test.
3351         This patch fixes that.
3352
3353         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
3354         (TestWebKitAPI::neverDestroyedString):
3355
3356 2017-05-04  Ryan Haddad  <ryanhaddad@apple.com>
3357
3358         Disable failing API test WebKit2.ResizeWithHiddenContentDoesNotHang.
3359         https://bugs.webkit.org/show_bug.cgi?id=170195
3360
3361         Unreviewed test gardening.
3362
3363         * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
3364         (TEST):
3365
3366 2017-05-04  Don Olmstead  <don.olmstead@am.sony.com>
3367
3368         [Win] Remove redundant macros that are set in the CMake config
3369         https://bugs.webkit.org/show_bug.cgi?id=171571
3370
3371         Reviewed by Brent Fulgham.
3372
3373         * DumpRenderTree/config.h:
3374         * MiniBrowser/win/stdafx.h:
3375         * TestWebKitAPI/config.h:
3376
3377 2017-05-04  Said Abou-Hallawa  <sabouhallawa@apple.com>
3378
3379         Add testRunner.display() to force displaying the web page for testing
3380         https://bugs.webkit.org/show_bug.cgi?id=171694
3381
3382         Reviewed by Simon Fraser.
3383
3384         Unlike testRunner.displayAndTrackRepaints(), this new function forces 
3385         drawing the web page but without track repaints.
3386
3387         * DumpRenderTree/TestRunner.cpp:
3388         (displayCallback):
3389         (TestRunner::staticFunctions):
3390         * DumpRenderTree/TestRunner.h:
3391         * DumpRenderTree/mac/TestRunnerMac.mm:
3392         (TestRunner::display):
3393         * DumpRenderTree/win/TestRunnerWin.cpp:
3394         (TestRunner::display):
3395         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3396         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3397         (WTR::TestRunner::display):
3398         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3399
3400 2017-05-04  Mark Lam  <mark.lam@apple.com>
3401
3402         NeverDestroyed<String>(ASCIILiteral(...)) is not thread safe.
3403         https://bugs.webkit.org/show_bug.cgi?id=171586
3404         <rdar://problem/31873190>
3405
3406         Reviewed by Yusuke Suzuki.
3407
3408         API test for exercising StaticStringImpl and the MAKE_STATIC_STRING_IMPL macro.
3409
3410         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
3411         (TestWebKitAPI::neverDestroyedString):
3412         (TestWebKitAPI::getNeverDestroyedStringAtStackDepth):
3413         (TestWebKitAPI::TEST):
3414
3415 2017-05-04  Wenson Hsieh  <wenson_hsieh@apple.com>
3416
3417         [WK2] Add support for keeping the selection in a focused editable element when dragging begins
3418         https://bugs.webkit.org/show_bug.cgi?id=171585
3419         <rdar://problem/31544320>
3420
3421         Reviewed by Beth Dakin and Zalan Bujtas.
3422
3423         Adds 1 new unit test and tweaks existing tests to check that when first responder status is lost after beginning
3424         a drag while editing, content is still moved (and not copied) when performing data interaction on a different
3425         element. ContentEditableMoveParagraphs checks that content can be shifted within a single element via a move
3426         operation rather than a copy.
3427
3428         See WebCore ChangeLog for more details.
3429
3430         Tests:  DataInteractionSimulator.ContentEditableToContentEditable
3431                 DataInteractionSimulator.ContentEditableToTextarea
3432                 DataInteractionSimulator.ContentEditableMoveParagraphs
3433                 DataInteractionSimulator.TextAreaToInput
3434
3435         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3436         * TestWebKitAPI/Tests/WebKit2Cocoa/two-paragraph-contenteditable.html: Added.
3437         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3438         (TestWebKitAPI::TEST):
3439         * TestWebKitAPI/ios/DataInteractionSimulator.h:
3440         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
3441         (-[DataInteractionSimulator initWithWebView:]):
3442         (-[DataInteractionSimulator dealloc]):
3443         (-[DataInteractionSimulator _advanceProgress]):
3444         (-[DataInteractionSimulator waitForInputSession]):
3445         (-[DataInteractionSimulator _webView:focusShouldStartInputSession:]):
3446         (-[DataInteractionSimulator _webView:didStartInputSession:]):
3447
3448 2017-05-04  Said Abou-Hallawa  <sabouhallawa@apple.com>
3449
3450         Rename TestRunner.display() to TestRunner::displayAndTrackRepaints()
3451         https://bugs.webkit.org/show_bug.cgi?id=171641
3452
3453         Reviewed by Simon Fraser.
3454
3455         The plan is to add back the TestRunner.display() which does the display
3456         only without track repaints.
3457
3458         * DumpRenderTree/DumpRenderTree.h:
3459         * DumpRenderTree/TestRunner.cpp:
3460         (displayAndTrackRepaintsCallback):
3461         (TestRunner::staticFunctions):
3462         (displayCallback): Deleted.
3463         (displayInvalidatedRegionCallback): Deleted.
3464         * DumpRenderTree/TestRunner.h:
3465         * DumpRenderTree/mac/DumpRenderTree.mm:
3466         (displayWebView):
3467         (displayAndTrackRepaintsWebView):
3468         * DumpRenderTree/mac/TestRunnerMac.mm:
3469         (TestRunner::displayAndTrackRepaints):
3470         (TestRunner::display): Deleted.
3471         * DumpRenderTree/win/TestRunnerWin.cpp:
3472         (TestRunner::displayAndTrackRepaints):
3473         (TestRunner::display): Deleted.
3474         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3475         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3476         (WTR::TestRunner::displayAndTrackRepaints):
3477         (WTR::TestRunner::display): Deleted.
3478         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3479
3480 2017-05-04  Brady Eidson  <beidson@apple.com>
3481
3482         [ios-simulator] API test WebKit2.WebsiteDataStoreCustomPaths is failing.
3483         https://bugs.webkit.org/show_bug.cgi?id=171513
3484
3485         Unreviewed gardening.
3486
3487         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
3488         (TEST): Skip the failing parts of the test on iOS for now.
3489
3490 2017-05-03  Jonathan Bedard  <jbedard@apple.com>
3491
3492         Make ImageDiff stand-alone
3493         https://bugs.webkit.org/show_bug.cgi?id=168939
3494
3495         Reviewed by David Kilzer.
3496
3497         Create ImageDiff without dependencies on bmalloc and WTF so that it exists as a
3498         stand-alone project. Note that this change does not eliminate the ImageDiff inside
3499         the DumpRenderTree project.
3500
3501         * ImageDiff/ImageDiff.xcodeproj: Added.
3502         * ImageDiff/ImageDiff.xcodeproj/project.pbxproj: Added.
3503         * ImageDiff/Makefile: Use ImageDiff project.
3504         * ImageDiff/PlatformMac.cmake: Added.
3505         * ImageDiff/PlatformWin.cmake: Added.
3506         * ImageDiff/cg: Added.
3507         * ImageDiff/cg/Configurations: Added.
3508         * ImageDiff/cg/Configurations/Base.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/Base.xcconfig.
3509         * ImageDiff/cg/Configurations/DebugRelease.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/DebugRelease.xcconfig.
3510         * ImageDiff/cg/Configurations/ImageDiff.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/ImageDiff.xcconfig.
3511         * ImageDiff/cg/ImageDiff.cpp: Copied from Tools/DumpRenderTree/cg/ImageDiffCG.cpp.
3512         (createImageFromStdin): Stop using RetainPtr.
3513         (createDifferenceImage): Ditto.
3514         (main): Ditto.
3515         * Scripts/build-imagediff: Stop building WTF and bmalloc.
3516
3517 2017-05-04  Sam Weinig  <sam@webkit.org>
3518
3519         Remove support for legacy Notifications
3520         https://bugs.webkit.org/show_bug.cgi?id=171487
3521
3522         Reviewed by Jon Lee.
3523
3524         * DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
3525         (DRTDesktopNotificationPresenter::checkNotificationPermission):
3526         * Scripts/webkitperl/FeatureList.pm:
3527         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3528         Remove use and definition of ENABLE_LEGACY_NOTIFICATIONS.
3529
3530 2017-05-04  Andy Estes  <aestes@apple.com>
3531
3532         Give +testwebkitapi_configurationWithTestPlugInClassName: a shorter name
3533         https://bugs.webkit.org/show_bug.cgi?id=171673
3534
3535         Reviewed by Dan Bernstein.
3536
3537         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
3538         (TEST):
3539         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
3540         (TEST):
3541         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleParameters.mm:
3542         (TEST):
3543         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
3544         (TEST):
3545         * TestWebKitAPI/Tests/WebKit2Cocoa/CancelFontSubresource.mm:
3546         (TEST):
3547         * TestWebKitAPI/Tests/WebKit2Cocoa/ContentFiltering.mm:
3548         (configurationWithContentFilterSettings):
3549         (-[LazilyLoadPlatformFrameworksController init]):
3550         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.mm:
3551         (TEST):
3552         * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptions.mm:
3553         (runTestWithWidth):
3554         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentWorld.mm:
3555         (TEST):
3556         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3557         (TestWebKitAPI::TEST):
3558         * TestWebKitAPI/WKWebViewConfigurationExtras.h:
3559         * TestWebKitAPI/WKWebViewConfigurationExtras.mm:
3560         (+[WKWebViewConfiguration _test_configurationWithTestPlugInClassName:]):
3561         (+[WKWebViewConfiguration testwebkitapi_configurationWithTestPlugInClassName:]): Renamed to
3562         +_test_configurationWithTestPlugInClassName:
3563
3564 2017-05-04  Eric Carlson  <eric.carlson@apple.com>
3565
3566         [MediaStream] Allow host application to enable/disable media capture
3567         https://bugs.webkit.org/show_bug.cgi?id=171292
3568         <rdar://problem/31821492>
3569
3570         Reviewed by Jer Noble.
3571
3572         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3573         * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
3574         (-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
3575         (-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
3576         (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
3577         (MediaCaptureDisabledTest::SetUp):
3578         (MediaCaptureDisabledTest::loadTestAndWaitForMessage):
3579         (TEST_F):
3580         * TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
3581
3582 2017-05-04  Caio Lima  <ticaiolima@gmail.com>
3583
3584         Unreviewed, Adding self to contributors.json
3585
3586         * Scripts/webkitpy/common/config/contributors.json: Added name.
3587
3588 2017-05-04  Konstantin Tokarev  <annulen@yandex.ru>
3589
3590         Fix compilation with ICU 59.1
3591         https://bugs.webkit.org/show_bug.cgi?id=171612
3592
3593         Reviewed by Mark Lam.
3594
3595         ICU 59.1 has broken source compatibility. Now it defines UChar as
3596         char16_t, which does not allow automatic type conversion from unsigned
3597         short in C++ code.
3598
3599         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
3600         (UIScriptContext::tryToCompleteUIScriptForCurrentParentCallback):
3601
3602 2017-05-04  Andy Estes  <aestes@apple.com>
3603
3604         [Cocoa] Add an optional width parameter to -[WKWebProcessPlugInNodeHandle renderedImageWithOptions:]
3605         https://bugs.webkit.org/show_bug.cgi?id=171646
3606         <rdar://problem/30306321>
3607
3608         Reviewed by Tim Horton.
3609
3610         * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptions.mm:
3611         (runTestWithWidth):
3612         (TEST):
3613         (-[RenderedImageWithOptionsObject didRenderImageWithSize:]): Deleted.
3614         * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptionsPlugIn.mm:
3615         (-[RenderedImageWithOptionsPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
3616         (-[RenderedImageWithOptionsPlugIn webProcessPlugInBrowserContextController:didFinishLoadForFrame:]):
3617         (-[RenderedImageWithOptionsPlugIn renderImageWithWidth:completionHandler:]):
3618         * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptionsProtocol.h:
3619
3620 2017-05-04  Adrian Perez de Castro  <aperez@igalia.com>
3621
3622         [GTK] Fontconfig 2.11.2 in JHBuild does not build with glibc 2.25+ or gperf 3.1+
3623         https://bugs.webkit.org/show_bug.cgi?id=171649
3624
3625         Reviewed by Carlos Garcia Campos.
3626
3627         Add two patches picked from the upstream repository to fix building of
3628         the Fontconfig module in JHBuild. Additionally, this needed a patch to
3629         add "autogen.sh" as it is not included in release tarballs. Also:
3630         building the module with srcdir!=builddir prevents "fcobjshash.gperf"
3631         being regenerated (which is needed) so this is disabled for the
3632         Fontconfig module.
3633
3634         * gtk/jhbuild.modules:
3635