Fix CMake build.
[WebKit-https.git] / Tools / ChangeLog
1 2017-04-05  Alex Christensen  <achristensen@webkit.org>
2
3         Fix CMake build.
4
5         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
6         * TestRunnerShared/spi/CoreGraphicsSPI.h: Removed.
7         * TestRunnerShared/spi/CoreGraphicsTestSPI.h: Copied from Tools/TestRunnerShared/spi/CoreGraphicsSPI.h.
8         There is a CoreGraphicsSPI.h in WebCore and the CMake build was finding the wrong one.
9         Since we just inherit the include paths from WebCore in the CMake build and since this SPI is only used for testing,
10         I just renamed CoreGraphicsSPI.h to CoreGraphicsTestSPI.h to avoid any name collisions.
11         * WebKitTestRunner/PlatformMac.cmake:
12         Add some missing files.
13         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
14
15 2017-04-05  Keith Miller  <keith_miller@apple.com>
16
17         Add debug option to run-jsc script
18         https://bugs.webkit.org/show_bug.cgi?id=170503
19
20         Reviewed by Yusuke Suzuki.
21
22         Adds a new option to the run-jsc script so that when passed
23         "--debug" it will wrap the jsc call with an lldb invocation. If
24         someone wishes to use a different debugger they can set the
25         DEBUGGER environment variable. Additionally, run-jsc now exits
26         with the exit status of the jsc call.
27
28         * Scripts/run-jsc:
29
30 2017-04-05  Andy Estes  <aestes@apple.com>
31
32         REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
33         https://bugs.webkit.org/show_bug.cgi?id=170365
34         <rdar://problem/29205721>
35
36         Reviewed by Tim Horton.
37
38         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
39         (expectLinkCount): Changed to only query links with the x-apple-data-detectors attribute.
40         (TEST): Re-enabled the test, which now passes.
41
42 2017-04-05  Andy Estes  <aestes@apple.com>
43
44         [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
45         https://bugs.webkit.org/show_bug.cgi?id=167594
46
47         Re-enabled this API test now that webkit.org/b/161967 is fixed.
48
49         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
50         (TEST):
51
52 2017-04-05  Andy Estes  <aestes@apple.com>
53
54         [ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
55         https://bugs.webkit.org/show_bug.cgi?id=161967
56
57         Reviewed by Alexey Proskuryakov.
58
59         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
60         (TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
61
62 2017-04-04  Simon Fraser  <simon.fraser@apple.com>
63
64         Various settings in Minibrowser are off by default, and should be on
65         https://bugs.webkit.org/show_bug.cgi?id=170465
66         rdar://problem/31421543
67
68         Reviewed by Tim Horton.
69
70         Explicitly set preferences that should be on by default to enabled, if they have not been
71         set previously.
72
73         * MiniBrowser/mac/SettingsController.m:
74         (-[SettingsController init]):
75
76 2017-04-04  JF Bastien  <jfbastien@apple.com>
77
78         Add JF Bastien as reviewer
79         https://bugs.webkit.org/show_bug.cgi?id=170481
80
81         Reviewed by Mark Lam.
82
83         * Scripts/webkitpy/common/config/contributors.json:
84
85 2017-04-04  Jonathan Bedard  <jbedard@apple.com>
86
87         Increase timeouts for simulator testing
88
89         Unreviewed infrastructure fix.
90
91         * Scripts/webkitpy/port/simulator_process.py:
92         (SimulatorProcess._start): Increase timeout from 3 to 6 seconds.
93         * Scripts/webkitpy/xcode/simulated_device.py:
94         (SimulatedDevice.install_app): Increase timeout from 1 to 3 seconds.
95
96 2017-04-04  Tim Horton  <timothy_horton@apple.com>
97
98         [Mac] -[WKWebView findMatchesForString:relativeToMatch:findOptions:maxResults:resultCollector:] invokes the resultCollector with didWrap = NO even when it wraps
99         https://bugs.webkit.org/show_bug.cgi?id=165801
100         <rdar://problem/29649535>
101
102         Reviewed by Wenson Hsieh.
103
104         * TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm:
105         (TEST):
106         Add some tests for wrapping finds.
107
108 2017-04-03  Joseph Pecoraro  <pecoraro@apple.com>
109
110         Add some new patterns to filter-build-webkit
111         https://bugs.webkit.org/show_bug.cgi?id=170429
112
113         Reviewed by Alexey Proskuryakov.
114
115         * Scripts/filter-build-webkit:
116         (setOutputFormatOption):
117
118 2017-04-03  Wenson Hsieh  <wenson_hsieh@apple.com>
119
120         Data interaction should register type identifiers in order of priority
121         https://bugs.webkit.org/show_bug.cgi?id=170428
122         <rdar://problem/30633296>
123
124         Reviewed by Tim Horton.
125
126         Augments existing unit tests to check for the existence and priority of type identifiers in the UIItemProviders
127         created upon starting data interaction. Also fixes a race condition in one of the unit tests and adds a new unit
128         test for data interaction from a textarea to an input.
129
130         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
131         (checkTypeIdentifierPrecedesOtherTypeIdentifier):
132         (TestWebKitAPI::TEST):
133         * TestWebKitAPI/ios/DataInteractionSimulator.h:
134         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
135         (-[DataInteractionSimulator _advanceProgress]):
136         (-[DataInteractionSimulator sourceItemProviders]):
137         (-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
138
139 2017-04-03  Carlos Alberto Lopez Perez  <clopez@igalia.com>
140
141         [GTK][JHBuild] Update mesa repository url for tarballs
142         https://bugs.webkit.org/show_bug.cgi?id=170431
143
144         Reviewed by Michael Catanzaro.
145
146         * gtk/jhbuild.modules:
147
148 2017-04-03  Joseph Pecoraro  <pecoraro@apple.com>
149
150         TestWebKitAPI: Warning: Multiple build commands for Ahem.ttf
151         https://bugs.webkit.org/show_bug.cgi?id=170430
152
153         Reviewed by Alexey Proskuryakov.
154
155         * TestWebKitAPI/Tests/mac/Ahem.ttf: Removed.
156         Eliminate one of the copies of Ahem.ttf.
157
158         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
159         Once eliminated, there is now only one Ahem.ttf that is copied
160         to the Resources bundle. Drive-by sort the project file.
161
162 2017-04-03  Simon Fraser  <simon.fraser@apple.com>
163
164         Allow MiniBrowser windows to receive local file drags again
165         https://bugs.webkit.org/show_bug.cgi?id=170422
166
167         Reviewed by Wenson Hsieh.
168
169         Adopt the new UIDelegate SPI to allow drops.
170
171         * MiniBrowser/mac/WK2BrowserWindowController.m:
172         (-[WK2BrowserWindowController _webView:dragDestinationActionMaskForDraggingInfo:]):
173
174 2017-04-03  Carlos Alberto Lopez Perez  <clopez@igalia.com>
175
176         [GTK][JHBuild] Fetch libvpx from a release tarball instead of git
177         https://bugs.webkit.org/show_bug.cgi?id=170426
178
179         Reviewed by Michael Catanzaro.
180
181         * gtk/jhbuild.modules:
182
183 2017-04-03  Nan Wang  <n_wang@apple.com>
184
185         AX: Expose link children when doing search predication on iOS
186         https://bugs.webkit.org/show_bug.cgi?id=170424
187         <rdar://problem/31413335>
188
189         Reviewed by Chris Fleizach.
190
191         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
192         (AccessibilityUIElement::uiElementForSearchPredicate):
193         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
194         (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
195
196 2017-04-03  Brian Burg  <bburg@apple.com>
197
198         run-safari should support launching with custom language and locale
199         https://bugs.webkit.org/show_bug.cgi?id=170397
200
201         Reviewed by Alexey Proskuryakov.
202
203         Hook up -AppleLanguages and -AppleLocale to command line options.
204
205         * Scripts/webkitdirs.pm:
206         (printHelpAndExitForRunAndDebugWebKitAppIfNeeded):
207         (argumentsForRunAndDebugMacWebKitApp):
208
209 2017-04-03  Jonathan Bedard  <jbedard@apple.com>
210
211         webkitpy: Provide option to skip install
212         https://bugs.webkit.org/show_bug.cgi?id=170344
213
214         Reviewed by Alexey Proskuryakov.
215
216         Installing can take time for on device testing.  Provide an option to skip install
217         and use whatever driver is currently installed on the device or simulator.
218
219         * Scripts/webkitpy/port/base.py:
220         (Port.check_build): Do not check driver if skipping install.
221         * Scripts/webkitpy/port/factory.py:
222         (platform_options): Add '--no-install' option.
223         * Scripts/webkitpy/port/ios.py:
224         (IOSPort.setup_test_run): Check install option before installing.
225
226 2017-04-03  Keith Miller  <keith_miller@apple.com>
227
228         WebAssembly: Update spec tests
229         https://bugs.webkit.org/show_bug.cgi?id=170361
230
231         Rubber-stamped by Saam Barati.
232
233         Update the runner to know the new wasm spec test harness code.
234
235         * Scripts/run-jsc-stress-tests:
236
237 2017-04-01  Alexey Proskuryakov  <ap@apple.com>
238
239         Rolling back <https://trac.webkit.org/r214697>, as it made WebKit2.DataDetectionReferenceDate time out.
240
241         Was REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
242         https://bugs.webkit.org/show_bug.cgi?id=170365
243
244         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
245
246 2017-04-01  Csaba Osztrogonác  <ossy@webkit.org>
247
248         Mac cmake buildfix after 214586.
249         https://bugs.webkit.org/show_bug.cgi?id=170381
250
251         Unreviewed speculative buildfix.
252
253         * WebKitTestRunner/PlatformMac.cmake:
254
255 2017-04-01  Csaba Osztrogonác  <ossy@webkit.org>
256
257         Unreviewed speculative Mac cmake buildfix after r214586, just for fun.
258         https://bugs.webkit.org/show_bug.cgi?id=161675
259
260         * WebKitTestRunner/PlatformMac.cmake:
261
262 2017-03-31  Jonathan Bedard  <jbedard@apple.com>
263
264         webkitpy: Add target host concept
265         https://bugs.webkit.org/show_bug.cgi?id=170186
266         <rdar://problem/31301797>
267
268         Reviewed by Alexey Proskuryakov.
269
270         Adding the idea of a target host. Target hosts are objects conforming to the
271         structure of the SystemHost object in Scripts/webkitpy/common/system/systemhost.py
272         Target hosts are the hosts associated with a worker process.
273
274         * Scripts/webkitpy/common/system/filesystem.py:
275         (FileSystem.map_base_host_path): Convert a path from an absolute path on the base
276         host to an absolute path on this host.
277         (FileSystem.move_to_base_host): Move file from this host to the base host.
278         (FileSystem.move_from_base_host): Move file from the base host to this host.
279         (FileSystem.copy_to_base_host): Copy file from this host to the base host.
280         (FileSystem.copy_from_base_host): Copy file from the base host to this host.
281         * Scripts/webkitpy/common/system/filesystem_mock.py:
282         (MockFileSystem.map_base_host_path): Convert a path from an absolute path on the base
283         host to an absolute path on this host.
284         (MockFileSystem.move_to_base_host): Move file from this host to the base host.
285         (MockFileSystem.move_from_base_host): Move file from the base host to this host.
286         (MockFileSystem.copy_to_base_host): Copy file from this host to the base host.
287         (MockFileSystem.copy_from_base_host): Copy file from the base host to this host.
288         * Scripts/webkitpy/port/base.py:
289         (Port.target_host): Return host determined by worker number.
290         (Port.abspath_for_test): Accept optional target_host argument to return location
291         of test on a target host.
292         (Port._driver_tempdir): Accept optional target_host argument to return a temporary
293         directory on a target host.
294         (Port.sample_process): Accept optional target_host argument to sample process on
295         a target host.
296         * Scripts/webkitpy/port/darwin.py:
297         (DarwinPort.sample_process): Run sample process on target host.
298         (DarwinPort.sample_file_path): Accept directory for file.
299         (DarwinPort.spindump_file_path): Ditto.
300         * Scripts/webkitpy/port/darwin_testcase.py:
301         (DarwinTest.test_spindump): Check file movement.
302         (DarwinTest.test_sample_process): Ditto.
303         (DarwinTest.test_sample_process_exception):
304         * Scripts/webkitpy/port/driver.py:
305         (Driver.__init__): Add and set self._target_host variable.
306         (Driver._start): Pass target host to _driver_tempdir().
307         (Driver.stop): Call the target host's rmtree.
308         (Driver._check_for_driver_timeout): Pass target host to sample_process.
309         (Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
310         (Driver._command_from_driver_input): Pass target host to abspath_for_test and map
311         layout test directory to target host.
312         * Scripts/webkitpy/port/ios.py:
313         (IOSPort):
314         (IOSPort.target_host): Replaced device_for_worker_number.
315         (IOSPort.setup_test_run): Replace device_for_worker_number with target_host.
316         (IOSPort.device_for_worker_number): Replaced with target_host.
317         * Scripts/webkitpy/port/server_process.py:
318         (ServerProcess.__init__): Accept target_host instead of worker_number.
319         (ServerProcess._start): Replace _host with _target_host.
320         (ServerProcess._handle_timeout): Ditto.
321         (ServerProcess._kill): Ditto.
322         * Scripts/webkitpy/port/simulator_process.py:
323         (SimulatorProcess.__init__): Accept target_host instead of worker_number.
324         (SimulatorProcess._start): Replace _device with _target_host.
325         (SimulatorProcess.stop): Ditto.
326         (SimulatorProcess._kill): Deleted.
327
328 2017-03-31  Jonathan Bedard  <jbedard@apple.com>
329
330         Unreviewed fix after r214569
331         https://bugs.webkit.org/show_bug.cgi?id=170255
332
333         Unreviewed infrastructure fix.
334
335         * Scripts/webkitpy/port/ios.py:
336         (IOSPort.clean_up_test_run): Check if the device is defined before teardown.
337
338 2017-03-31  Andy Estes  <aestes@apple.com>
339
340         REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
341         https://bugs.webkit.org/show_bug.cgi?id=170365
342         <rdar://problem/29205721>
343
344         Reviewed by Tim Horton.
345
346         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
347         (expectLinkCount): Changed to only query links with the x-apple-data-detectors attribute.
348         (TEST): Re-enabled the test, which now passes.
349
350 2017-03-31  Tim Horton  <timothy_horton@apple.com>
351
352         Mail can get stuck underneath FindController::findStringMatches after searching in a long message
353         https://bugs.webkit.org/show_bug.cgi?id=170326
354         <rdar://problem/30330395>
355
356         Reviewed by Simon Fraser.
357
358         * TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm:
359         (TEST):
360
361 2017-03-31  Carlos Garcia Campos  <cgarcia@igalia.com>
362
363         Unreviewed. Fix WTR crashes in GTK+ port after r214413.
364
365         Fixes: http/tests/ssl/upgrade-origin-usage.html
366                http/tests/websocket/tests/hybi/network-process-crash-error.html
367                http/tests/websocket/tests/hybi/simple-wss.html
368
369         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
370         (WTR::TestController::platformContext): Return the context.
371
372 2017-03-30  Sam Weinig  <sam@webkit.org>
373
374         Expose the WKView SPI, _prepareForMoveToWindow:withCompletionHandler as WKWebView SPI
375         https://bugs.webkit.org/show_bug.cgi?id=170315
376
377         Reviewed by Simon Fraser.
378
379         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
380         * TestWebKitAPI/Tests/WebKit2Cocoa/PrepareForMoveToWindow.mm: Added.
381         Add test showing the completion handler is called.
382
383 2017-03-30  Filip Pizlo  <fpizlo@apple.com>
384
385         Air should support linear scan for optLevel<2
386         https://bugs.webkit.org/show_bug.cgi?id=170161
387
388         Reviewed by Saam Barati.
389         
390         This makes us run a bunch of JS tests at optLevel=1 to force testing of this new compiler
391         pipeline.
392
393         * Scripts/run-jsc-stress-tests:
394
395 2017-03-30  Aakash Jain  <aakash_jain@apple.com>
396
397         Support tvOS and watchOS in webkitdirs.pm
398         https://bugs.webkit.org/show_bug.cgi?id=170267
399
400         Reviewed by Alexey Proskuryakov.
401
402         * Scripts/webkitdirs.pm:
403         (determineXcodeSDK): Evaluate sdk for tvos and watchos.
404         (xcodeSDKPlatformName): Added support for tvos and watchos.
405         (determinePortName): Same.
406         (isAppleCocoaWebKit): Same.
407         (willUseAppleTVDeviceSDK): Added.
408         (willUseAppleTVSimulatorSDK): Added.
409         (willUseWatchDeviceSDK): Added.
410         (willUseWatchSimulatorSDK): Added.
411         (isTVOSWebKit): Added.
412         (isWATCHOSWebKit): Added.
413         (isIOSLikeWebKit): Added.
414
415 2017-03-30  Wenson Hsieh  <wenson_hsieh@apple.com>
416
417         [WK2] Touches should not cancel when showing a custom action sheet while data interaction is active
418         https://bugs.webkit.org/show_bug.cgi?id=170291
419         <rdar://problem/31301388>
420
421         Reviewed by Tim Horton.
422
423         Adds support for testing how the custom action sheet presentation codepath interacts with data interaction, as
424         well as a new unit test. In this case, we force data interaction to fail if touches are canceled on the
425         shared UIApplication, and verify that data interaction completes successfully.
426
427         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
428         (TestWebKitAPI::TEST):
429         * TestWebKitAPI/ios/DataInteractionSimulator.h:
430         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
431         (-[DataInteractionSimulatorApplication _cancelAllTouches]):
432         (-[DataInteractionSimulator initWithWebView:]):
433         (-[DataInteractionSimulator simulateAllTouchesCanceled:]):
434         (-[DataInteractionSimulator runFrom:to:]):
435         (-[DataInteractionSimulator _advanceProgress]):
436         (-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
437
438 2017-03-30  Per Arne Vollan  <pvollan@apple.com>
439
440         [Win] Pass close_fds = True in Python popen call.
441         https://bugs.webkit.org/show_bug.cgi?id=170172
442
443         Reviewed by Brent Fulgham.
444
445         This was previously not supported on Windows, but in Python 2.7.10 it is.
446
447         * Scripts/webkitpy/common/system/executive.py:
448         (Executive._should_close_fds):
449         * Scripts/webkitpy/port/server_process.py:
450         (ServerProcess._start):
451
452 2017-03-30  Aakash Jain  <aakash_jain@apple.com>
453
454         Change my status to be a WebKit reviewer.
455
456         Unreviewed status update edit.
457
458         * Scripts/webkitpy/common/config/contributors.json:
459
460 2017-03-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
461
462         Change my status to be a WebKit reviewer.
463
464         Unreviewed status update edit.
465
466         * Scripts/webkitpy/common/config/contributors.json:
467
468 2017-03-29  Tim Horton  <timothy_horton@apple.com>
469
470         Swipe gesture tests don't work on macOS Sierra
471         https://bugs.webkit.org/show_bug.cgi?id=161675
472         <rdar://problem/23379930>
473
474         Reviewed by Darin Adler.
475
476         * DumpRenderTree/mac/UIScriptControllerMac.mm:
477         (WTR::UIScriptController::platformPlayBackEventStream):
478         (WTR::UIScriptController::beginBackSwipe):
479         (WTR::UIScriptController::completeBackSwipe):
480         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.h: Copied from Tools/DumpRenderTree/mac/UIScriptControllerMac.mm.
481         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm: Added.
482         (eventIsOfType):
483         (eventIsOfTypes):
484         (eventIsOfGestureType):
485         (eventIsOfGestureTypes):
486         (+[EventSerializer dictionaryForEvent:relativeToTime:]):
487         (+[EventSerializer createEventForDictionary:inWindow:relativeToTime:]):
488         (+[EventSerializer playEventStream:inWindow:completionHandler:]):
489         * TestRunnerShared/EventSerialization/mac/SharedEventStreamsMac.h: Copied from Tools/WebKitTestRunner/mac/UIScriptControllerMac.mm.
490         * TestRunnerShared/EventSerialization/mac/SharedEventStreamsMac.mm: Added.
491         (beginSwipeBackEventStream):
492         (completeSwipeBackEventStream):
493         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
494         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
495         (WTR::UIScriptController::playBackEventStream):
496         (WTR::UIScriptController::beginBackSwipe):
497         (WTR::UIScriptController::completeBackSwipe):
498         (WTR::UIScriptController::platformPlayBackEventStream):
499         (WTR::UIScriptController::platformClearAllCallbacks): Deleted.
500         * TestRunnerShared/UIScriptContext/UIScriptController.h:
501         * TestRunnerShared/spi/CoreGraphicsSPI.h: Added.
502         * TestRunnerShared/spi/IOKitSPI.h: Renamed from Tools/WebKitTestRunner/ios/IOKitSPI.h.
503         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
504         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
505         (WTR::playBackEvents):
506         (WTR::UIScriptController::beginBackSwipe):
507         (WTR::UIScriptController::completeBackSwipe):
508         (WTR::UIScriptController::platformPlayBackEventStream):
509
510 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
511
512         webkitpy: Robust test clean-up
513         https://bugs.webkit.org/show_bug.cgi?id=170255
514
515         Reviewed by Alexey Proskuryakov.
516
517         On-device testing is the motivation for this change.  Failure to run clean-up functions can
518         result in zombie processes, residual NFS mounts and other undesirable remnants from a failed
519         test run.  Make an effort to clean-up even if exceptions are thrown during set-up or clean-up.
520
521         * Scripts/webkitpy/layout_tests/controllers/manager.py:
522         (Manager._set_up_run): Clean up test run if set-up fails.
523         * Scripts/webkitpy/port/ios.py:
524         (IOSPort.clean_up_test_run): Continue cleaning up devices even after an exception is thrown.
525
526 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
527
528         Simulator testing stops after the first crash
529         <rdar://problem/31325362>
530
531         Unreviewed infrastructure fix.
532
533         * Scripts/webkitpy/xcode/simulated_device.py:
534         (SimulatedDevice):
535         (SimulatedDevice.launch_app): Increase timeout when attempting to launch app.
536
537 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
538
539         webkitpy: Standardize web-server port definitions
540         https://bugs.webkit.org/show_bug.cgi?id=170144
541         <rdar://problem/31284026>
542
543         Reviewed by Daniel Bates.
544
545         Default web-server ports should be declared in global variables.
546         Add functions to web-servers which return the ports these servers
547         are using so that other tools can forward them.
548
549         * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
550         (LayoutTestApacheHttpd.__init__): Use shared constants in http_server_base.py.
551         * Scripts/webkitpy/layout_tests/servers/apache_http_server_unittest.py:
552         (TestLayoutTestApacheHttpd.test_start_cmd): Check port_to_forward for expected values.
553         * Scripts/webkitpy/layout_tests/servers/http_server.py:
554         (Lighttpd.__init__): Use shared constants in http_server_base.py.
555         (Lighttpd._prepare_config): Ditto.
556         * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
557         (HttpServerBase): Add default port constants.
558         (HttpServerBase.ports_to_forward): Add function to return ports used for http server.
559         * Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:
560         (TestHttpServer.test_start_cmd): Check port_to_forward for expected values.
561         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
562          (WebPlatformTestServer.ports_to_forward): Add function to return ports used for web-platform tests.
563         * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
564         (PyWebSocket): Make default port values public.
565         (PyWebSocket.__init__): Use public default port.
566         (PyWebSocket.ports_to_forward): Return port used in an array.
567         * Scripts/webkitpy/port/base.py:
568         (Port.to.ports_to_forward): Return all ports used the various web-servers managed by the port object.
569         (Port.to.start_websocket_server): Use PyWebSocket port constants.
570
571 2017-03-29  Wenson Hsieh  <wenson_hsieh@apple.com>
572
573         Links with empty hrefs should not be drag sources
574         https://bugs.webkit.org/show_bug.cgi?id=170241
575         <rdar://problem/31305505>
576
577         Reviewed by Tim Horton.
578
579         Adds a new API test: DataInteractionTests.LinkWithEmptyHREF.
580
581         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
582         (TestWebKitAPI::TEST):
583         * TestWebKitAPI/ios/DataInteractionSimulator.h:
584
585         Expose the current phase of the data interaction simulator for verifying behaviors in unit tests.
586
587         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
588         (-[DataInteractionSimulator phase]):
589
590 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
591
592         Use TCP instead of FIFOs for Simulator/Device communication
593         https://bugs.webkit.org/show_bug.cgi?id=169419
594         <rdar://problem/30949615>
595
596         Reviewed by Alexey Proskuryakov.
597
598         Using TCP instead of FIFOs when communicating with devices allows the device being tested
599         to be on a different machine then the one handling the management of the test run.
600
601         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
602         * DumpRenderTree/mac/DumpRenderTree.mm:
603         (dumpRenderTree): Call setUp/tearDownIOSLayoutTestCommunication() instead of using FIFOs.
604         * Scripts/webkitpy/port/device.py:
605         (Device.__init__): Initialize the listening_socket.
606         (Device.listening_port): Return port of listening socket.
607         (Device.prepare_for_testing): Open listening socket on an open port, prepare platform device
608         fro testing.
609         (Device.finished_testing): Close listening socket associated with this device, call the
610         platform device's finished_testing function if it exists.
611         * Scripts/webkitpy/port/ios.py:
612         (IOSPort.setup_test_run): Prepare each device for testing.
613         (IOSPort.clean_up_test_run): Notify each device that testing has completed.
614         * Scripts/webkitpy/port/ios_simulator.py:
615         (IOSSimulatorPort): Work around device persistence bug.
616         (IOSSimulatorPort.__init__): Ditto.
617         * Scripts/webkitpy/port/simulator_process.py:
618         (SimulatorProcess):
619         (SimulatorProcess.NonBlockingFileFromSocket): Add to work around shortcomings in
620         Python 2’s makefile.
621         (SimulatorProcess.NonBlockingFileFromSocket.__init__): Initialize file with socket.
622         (SimulatorProcess.ReadFileSocket.close): Close file and then socket;
623         (SimulatorProcess.__init__): Pass TCP port over environment, remove FIFO names.
624         (SimulatorProcess.__getattr__): Expose all file attributes.
625         (SimulatorProcess._accept_connection_create_file): Wait for connection from server and
626         create and return a file-like object from the incoming connection.
627         (SimulatorProcess._start): Use TCP connections instead of FIFOs.
628         (SimulatorProcess._start.handler): Output server port in timeout exception.
629         (SimulatorProcess._reset): Deleted.
630         * TestRunnerShared/IOSLayoutTestCommunication.cpp: Added.
631         (connectToServer): Return socket connected to the provided server address.
632         (setupiOSLayoutTestCommunication): Connect stdin, stdout and stderr as socket to a
633         TCP server running on localhost.
634         (tearDownIOSLayoutTestCommunication): Close stdin, stdout and stderr TCP sockets.
635         * TestRunnerShared/IOSLayoutTestCommunication.h: Added.
636         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
637         * WebKitTestRunner/ios/TestControllerIOS.mm:
638         (WTR::TestController::platformInitialize): Call setUpIOSLayoutTestCommunication()
639         instead of using FIFOs.
640         (WTR::TestController::platformDestroy): Call tearDownIOSLayoutTestCommunication().
641
642 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
643
644         webkitpy: Add IOSDevicePort and IOSPort tests
645         https://bugs.webkit.org/show_bug.cgi?id=170206
646         <rdar://problem/31308364>
647
648         Reviewed by Alexey Proskuryakov.
649
650         * Scripts/webkitpy/port/darwin_testcase.py: Removed unused import.
651         * Scripts/webkitpy/port/ios_device_unittest.py: Added.
652         (iosDeviceTest): Contains tests for the IOSDevicePort.
653         (iosDeviceTest.make_port): Creates an IOSDevicePort with arguments.
654         (iosDeviceTest.test_operating_system): Check for the correct operating system.
655         * Scripts/webkitpy/port/ios_simulator_unittest.py: Moved from Tools/Scripts/webkitpy/port/ios_unittest.py.
656         (iosSimulatorTest): Inherit from ios_testcase.
657         (iosSimulatorTest.make_port): Ditto.
658         (iosSimulatorTest.test_get_crash_log): Ditto.
659         * Scripts/webkitpy/port/ios_testcase.py: Added.
660         (iOSTest): Contains shared tests for the IOSDevicePort and IOSSimulatorPort.
661         (iOSTest.test_driver_name): Tests for iOS app driver.
662         (iOSTest.test_baseline_searchpath): Check that ios and ios-wk1 are in the baseline search path.
663         * Scripts/webkitpy/port/ios_unittest.py: Moved to ios_simulator_unittest.py.
664         * Scripts/webkitpy/port/port_testcase.py:
665         (PortTestCase): Rename is_simulator to disable_setup to more accurately describe it's meaning.
666         (PortTestCase.test_diff_image): Use disable_setup instead of is_simulator.
667         (PortTestCase.test_diff_image_crashed): Ditto.
668
669 2017-03-28  Jason Marcell  <jmarcell@apple.com>
670
671         Fix `index-expected.txt` for dashboard test results.
672         https://bugs.webkit.org/show_bug.cgi?id=170214
673
674         Reviewed by Alexey Proskuryakov.
675
676         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/index-expected.txt:
677
678 2017-03-28  Alexey Proskuryakov  <ap@apple.com>
679
680         Bot watcher's dashboard has separate settings for "mac" and "macos"
681         https://bugs.webkit.org/show_bug.cgi?id=170164
682
683         Reviewed by Tim Horton.
684
685         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js:
686         (Settings.prototype.parsePlatformFamily): Aded a special case for "macos".
687
688 2017-03-28  Alexey Proskuryakov  <ap@apple.com>
689
690         Fix dashboard test results on the dashboard
691         https://bugs.webkit.org/show_bug.cgi?id=170158
692
693         Reviewed by Tim Horton.
694
695         Link to result diff instead of stdio. Looking at the diff, I wonder if it can be
696         further improved, as it's not super readable, but stdio is entirely useless in this context.
697
698         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
699         (Buildbot.prototype.dashboardTestResultsURLForIteration): Generate formatted diff link.
700
701         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
702         Fixed a typo in step name, so that it's actually treated as productive.
703
704         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
705         (BuildbotTesterQueueView.prototype.appendBuilderQueueStatus):
706         (BuildbotTesterQueueView.prototype.update):
707         (BuildbotTesterQueueView.prototype._presentPopoverForGenericTestFailures):
708         Added special handling for dashboard test results.
709
710 2017-03-28  Aakash Jain  <aakash_jain@apple.com>
711
712         Fix Dashboard test _presentPopoverForJavaScriptCoreTestRegressions
713         https://bugs.webkit.org/show_bug.cgi?id=170193
714
715         Reviewed by Alexey Proskuryakov.
716
717         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
718         Fixed the order of arguments.
719
720 2017-03-28  Aakash Jain  <aakash_jain@apple.com>
721
722         Dashboard tests fails to fetch the revision from commits
723         https://bugs.webkit.org/show_bug.cgi?id=170191
724
725         Reviewed by Alexey Proskuryakov.
726
727         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/MockTrac.js:
728         Added recordedCommitIndicesByRevisionNumber.
729         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
730         (setup): Populated trac.recordedCommitIndicesByRevisionNumber since the dashboard code uses this variable.
731
732 2017-03-28  Timothy Horton  <timothy_horton@apple.com>
733
734         Safari crashes when attempting to close tab that is displaying PDF
735         https://bugs.webkit.org/show_bug.cgi?id=170201
736         <rdar://problem/31242019>
737
738         Reviewed by Wenson Hsieh.
739
740         * TestWebKitAPI/Tests/WebKit2Cocoa/DoAfterNextPresentationUpdateAfterCrash.mm:
741         (TEST):
742         Add a test for doAfterNextStablePresentationUpdate just like the existing
743         non-stable one.
744
745 2017-03-28  Jonathan Bedard  <jbedard@apple.com>
746
747         webkitpy: Use host pattern for devices
748         https://bugs.webkit.org/show_bug.cgi?id=170121
749
750         Reviewed by Daniel Bates.
751
752         Devices should be treated like hosts throughout webkitpy
753         so that more code can be re-used.  Add the needed properties
754         and use executive over custom implemented polling/killing
755         functions.
756
757         * Scripts/webkitpy/port/device.py:
758         (Device):
759         (Device.executive): Add optional executive property.
760         (Device.filesystem): Add optional filesystem property.
761         (Device.user): Add optional user property.
762         (Device.platform): Add optional platform property.
763         (Device.workspace): Add optional workspace property.
764         (Device.poll): Deleted.
765         * Scripts/webkitpy/port/simulator_process.py:
766         (SimulatorProcess.Popen.poll): Use the devices executive.
767         (SimulatorProcess.stop): Ditto.
768         (SimulatorProcess._kill): Ditto.
769         * Scripts/webkitpy/xcode/simulated_device.py:
770         (SimulatedDevice.__init__): Add executive, filesystem, user, platform
771         and workspace to the platform device.
772         (SimulatedDevice.poll): Deleted.
773
774 2017-03-28  Aakash Jain  <aakash_jain@apple.com>
775
776         Dashboard test fails with error: latestIterationGetter is not a function
777         https://bugs.webkit.org/show_bug.cgi?id=170167
778
779         Reviewed by Alexey Proskuryakov.
780
781         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
782         (this.view._latestProductiveIteration): Configure _latestProductiveIteration in setup.
783
784 2017-03-27  Lucas Forschler  <lforschler@apple.com>
785
786         Another test v8.
787
788 2017-03-27  Lucas Forschler  <lforschler@apple.com>
789
790         Another test v7.
791
792 2017-03-27  Lucas Forschler  <lforschler@apple.com>
793
794         Another test v6.
795
796 2017-03-27  Lucas Forschler  <lforschler@apple.com>
797
798         Another test v5.
799
800 2017-03-27  Lucas Forschler  <lforschler@apple.com>
801
802         Another test v4.
803
804 2017-03-27  Lucas Forschler  <lforschler@apple.com>
805
806         Another test v3.
807
808 2017-03-27  Lucas Forschler  <lforschler@apple.com>
809
810         Another test v2.
811
812 2017-03-27  Lucas Forschler  <lforschler@apple.com>
813
814         Another test.
815
816 2017-03-27  Lucas Forschler  <lforschler@apple.com>
817
818         <rdar://problem/30949128>
819         Update build.webkit.org to use port 16000 for PBChangeSource.
820         
821         Reviewed by Alexey Proskuryakov.
822
823         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
824
825 2017-03-27  Jason Marcell  <jmarcell@apple.com>
826
827         Bots should run the dashboard tests
828         https://bugs.webkit.org/show_bug.cgi?id=168994
829
830         Reviewed by Daniel Bates and David Kilzer.
831
832         We pull the `--results-directory` argument value out so that `RunDashboardTests` can override it so that we can separately run the dashboard layout tests.
833
834         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
835         (RunWebKitTests): Define a class variable called resultDirectory for the `--results-directory` argument so that subclasses can override this if needed.
836         (RunWebKitTests.start): Set the `--results-directory` argument value to the value of self.resultDirectory.
837         (RunDashboardTests): Subclass of RunWebKitTests in which we run the layout tests for the Bot Watcher's Dashboard.
838         (RunDashboardTests.start): Override the `--layout-tests-directory` to point to the dashboard layout tests.
839         (ExtractTestResults.addCustomURLs): Update the current results URL label to indicate that it links to layout tests results and add a new link to link to dashboard layout test results.
840         (TestFactory.__init__): Update unit tests to account for new RunDashboardTests step.
841         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
842         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
843
844 2017-03-27  Jonathan Bedard  <jbedard@apple.com>
845
846         webkitpy: Look for 'ios' test expectations for IOSPorts
847         https://bugs.webkit.org/show_bug.cgi?id=169413
848
849         Reviewed by Alexey Proskuryakov.
850
851         Test expectations for iOS tests should include the 'ios' folder.  Modify
852         default_baseline_search_path to include 'ios' folder and derivatives for
853         IOSPort.
854
855         * Scripts/webkitpy/port/ios.py:
856         (IOSPort._generate_all_test_configurations): Moved from IOSSimulatorPort.
857         (IOSPort.default_baseline_search_path): Add ios expectations along with port specific expectations.
858         (IOSPort.test_expectations_file_position): Added for testing.
859         * Scripts/webkitpy/port/ios_simulator.py:
860         (IOSSimulatorPort._generate_all_test_configurations): Moved to IOSPort.
861         (IOSSimulatorPort.default_baseline_search_path): Moved to IOSPort.
862
863 2017-03-27  Jonathan Bedard  <jbedard@apple.com>
864
865         REGRESSION: Reseting _device_map on each child process
866         <rdar://problem/31274476>
867
868         Unreviewed infrastructure fix.
869
870         * Scripts/webkitpy/port/ios_simulator.py:
871         (IOSSimulatorPort): Add _DEVICE_MAP class variable.
872         (IOSSimulatorPort.__init__): Use shared class variable
873         (IOSSimulatorPort._device_for_worker_number_map): Use _DEVICE_MAP class variable
874         (IOSSimulatorPort._create_devices): Ditto.
875         (IOSSimulatorPort._quit_ios_simulator): Ditto.
876         (IOSSimulatorPort.clean_up_test_run): Ditto.
877
878 2017-03-27  Jonathan Bedard  <jbedard@apple.com>
879
880         REGRESSION: Failing to iterate over Simulator.managed_devices map
881         <rdar://problem/31274476>
882
883         Unreviewed infrastructure fix.
884
885         * Scripts/webkitpy/port/ios_simulator.py:
886         (IOSSimulatorPort._create_devices): Iterate through managed_devices by worker number.
887
888 2017-03-27  Alex Christensen  <achristensen@webkit.org>
889
890         Make WebSockets work in network process
891         https://bugs.webkit.org/show_bug.cgi?id=169930
892
893         Reviewed by Youenn Fablet.
894
895         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
896         Add terminateNetworkProcess for the new test
897         http/tests/websocket/tests/hybi/network-process-crash-error.html
898         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
899         (WTR::TestRunner::setAllowsAnySSLCertificate):
900         (WTR::TestRunner::terminateNetworkProcess):
901         * WebKitTestRunner/InjectedBundle/TestRunner.h:
902         * WebKitTestRunner/TestController.cpp:
903         (WTR::TestController::setAllowsAnySSLCertificate):
904         (WTR::TestController::terminateNetworkProcess):
905         * WebKitTestRunner/TestController.h:
906         * WebKitTestRunner/TestInvocation.cpp:
907         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
908         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
909         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
910         (WTR::TestController::platformContext):
911         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
912         (WTR::TestController::platformContext):
913         (WTR::TestController::platformLibraryPathForTesting):
914         Add some infrastructure for http/tests/websocket/tests/hybi/simple-wss.html
915         which calls testRunner.setAllowsAnySSLCertificate.  It used to only be effective
916         for the WebProcess, but SocketStreamHandleImpl::createStreams is now in the NetworkProcess,
917         and we need its call to Settings::allowsAnySSLCertificate to be loosened for this test,
918         which tests that wss works, but our test certificate has an invalid certificate chain.
919         We want production software to not have the ability to have its security weakened, so this
920         is a test code path that is only implemented in WebKitTestRunner.
921
922 2017-03-25  Jonathan Bedard  <jbedard@apple.com>
923
924         webkitpy: Use generalized device instead of platform specific one
925         https://bugs.webkit.org/show_bug.cgi?id=170078
926
927         Reviewed by Daniel Bates.
928
929         SimulatedDevice is re-created each time 'xcrun simctl list' is called.  Device
930         should remain persistent.  Changing Device to a more explicit interface.
931         SimulatedDevice no longer inherits from Device and IOSSimulator returns Devices
932         wrapping SimulatedDevices.
933
934         * Scripts/webkitpy/port/device.py: Added.
935         (Device):
936         (Device.__init__): Construct with platform device.
937         (Device.install_app): Install app at app path on platform device.
938         (Device.launch_app): Launch app with bundle ID on platform device.
939         (Device.poll): Poll platform device.
940         (Device.udid): Access platform device UDID.
941         (Device.__nonzero__): Check if instantiated with a valid platform device.
942         (Device.__eq__): Compare by udid.
943         (Device.__ne__): Ditto.
944         (Device.__repr__): Print out platform_device representation.
945         * Scripts/webkitpy/port/ios_simulator.py:
946         (IOSSimulatorPort.__init__): Initialize the _device_map to an empty dictionary.
947         (IOSSimulatorPort._device_for_worker_number_map):  Return self._device_map.
948         (IOSSimulatorPort._create_simulators): Call Simulator.managed_devices directly.
949         (IOSSimulatorPort._create_devices): Place Simulator.managed_devices into the
950         device map.
951         (IOSSimulatorPort._quit_ios_simulator): Reset self._device_map.
952         * Scripts/webkitpy/xcode/device.py: Removed.
953         * Scripts/webkitpy/xcode/simulated_device.py:
954         (SimulatedDevice):
955         (SimulatedDevice.__init__): Move host, name and did to SimulatedDevice.
956         (SimulatedDevice.__eq__): Compare two simulated devices.
957         (SimulatedDevice.__ne__): Ditto.
958         (SimulatedDevice.__repr__): Print name and udid.
959
960 2017-03-25  Adrian Perez de Castro  <aperez@igalia.com>
961
962         [GTK] No value returned from PrintCustomWidgetTest::createWebKitPrintOperation() in TestPrinting.cpp
963         https://bugs.webkit.org/show_bug.cgi?id=170059
964
965         Reviewed by Carlos Garcia Campos.
966
967         * TestWebKitAPI/Tests/WebKit2Gtk/TestPrinting.cpp: Use "void" as return type in the declaration,
968         the only use of the method in this same file ignores the returned value anyway.
969
970 2017-03-24  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
971
972         webkitpy should be able to run API tests
973         https://bugs.webkit.org/show_bug.cgi?id=170028
974
975         Reviewed by Alexey Proskuryakov.
976
977         * Scripts/webkitpy/common/config/ports.py:
978         (DeprecatedPort.run_api_tests_command): Added.
979         * Scripts/webkitpy/port/base.py:
980         (Port.api_results_directory): Added.
981         * Scripts/webkitpy/tool/steps/runtests.py:
982         (RunTests.run): Check if we should be running API tests.
983         (RunTests._run_api_tests): Generate script to run API tests with json output.
984         * Scripts/webkitpy/tool/steps/steps_unittest.py: Unit tests.
985
986 2017-03-24  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
987
988         Add JSON results for API tests
989         https://bugs.webkit.org/show_bug.cgi?id=170021
990
991         Reviewed by Alexey Proskuryakov.
992
993         * Scripts/run-api-tests:
994         (runTestsBySuite): Appends failures and timeouts to JSON data.
995         (writeJsonDataIfApplicable): Writes JSON data to a file.
996
997 2017-03-24  Lucas Forschler  <lforschler@apple.com>
998
999         update committer_auth.py to be python 2.7 compliant
1000         https://bugs.webkit.org/show_bug.cgi?id=170063
1001         
1002         Reviewed by Alexey Proskuryakov.
1003
1004         * BuildSlaveSupport/build.webkit.org-config/committer_auth.py:
1005         (CommitterAuth.authenticate):
1006             convert e.message to e.args[0]
1007
1008 2017-03-24  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
1009
1010         webkitpy: Parse JSON results from run-api-tests
1011         https://bugs.webkit.org/show_bug.cgi?id=170062
1012
1013         Reviewed by Alexey Proskuryakov.
1014
1015         * Scripts/webkitpy/common/net/apitestresults.py: Added.
1016         (APITestResults): Structure to represent API test results.
1017         (APITestResults.__init__):
1018         (APITestResults.intersection): Return the failures common to both sets of results.
1019         (APITestResults.results_from_string): Create an APITestResults object from a JSON results string.
1020         (APITestResults.equals): Return True if both results were the same.
1021         (APITestResults.is_subset): Return True if failing tests are a subset of the other failing tests.
1022         (APITestResults.all_passed): Return True if everything passed.
1023         (APITestResults.failing_tests): List of tests that didn't pass.
1024         (APITestResults.did_exceed_test_failure_limit): Always False.
1025         * Scripts/webkitpy/common/net/apitestresults_unittest.py: Added.
1026         (APITestResultsTest): Unit tests.
1027         * Scripts/webkitpy/tool/bot/apitestresultsreader.py: Added.
1028         (APITestResultsReader): Read contents of JSON results file.
1029
1030 2017-03-24  Alex Christensen  <achristensen@webkit.org>
1031
1032         REGRESSION: Content Blocker: Blocking "a[href*=randomString]" doesn't work
1033         https://bugs.webkit.org/show_bug.cgi?id=169167
1034
1035         Reviewed by Simon Fraser.
1036
1037         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
1038         (TestWebKitAPI::TEST_F):
1039         Test an example of a selector that was incorrectly determined to be invalid.
1040
1041 2017-03-24  Jonathan Bedard  <jbedard@apple.com>
1042
1043         Increase timeout for booting simulators.
1044         <rdar://problem/31080009>
1045
1046         Unreviewed infrastructure fix.
1047
1048         * Scripts/webkitpy/xcode/simulator.py:
1049         (Simulator.wait_until_device_is_booted): Increase timeout.
1050         (Simulator.wait_until_device_is_in_state): Increase timeout.
1051
1052 2017-03-24  Carlos Garcia Campos  <cgarcia@igalia.com>
1053
1054         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/javascript-dialogs after r214277.
1055
1056         Since r214277 beforeunload events are not fired unless there's some user interaction, so we need to simulate it
1057         in our unit tests to work.
1058
1059         * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
1060         (testWebViewJavaScriptDialogs):
1061
1062 2017-03-24  Carlos Garcia Campos  <cgarcia@igalia.com>
1063
1064         [GTK] Add MIMETypeRegistry implementation using xdgmime and remove the GTK+ one
1065         https://bugs.webkit.org/show_bug.cgi?id=170001
1066
1067         Reviewed by Michael Catanzaro.
1068
1069         Ignore style of xdgmime sources.
1070
1071         * Scripts/webkitpy/tool/steps/checkstyle.py:
1072
1073 2017-03-23  Wenson Hsieh  <wenson_hsieh@apple.com>
1074
1075         Dragging on a large image should not revert to a file icon if data interaction is enabled
1076         https://bugs.webkit.org/show_bug.cgi?id=170018
1077         <rdar://problem/31184508>
1078
1079         Reviewed by Tim Horton.
1080
1081         Add new tests for data interaction. LargeImageToTargetDiv verifies the change made in this patch, while
1082         AttachmentElementItemProviders was a test that was previously removed due to <rdar://problem/31038797>.
1083
1084         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1085         * TestWebKitAPI/Tests/WebKit2Cocoa/large-red-square.png: Added.
1086         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1087         (TestWebKitAPI::TEST):
1088
1089 2017-03-23  Fujii Hironori  <Hironori.Fujii@sony.com>
1090
1091         Update WinCairoRequirements.zip
1092         https://bugs.webkit.org/show_bug.cgi?id=169950
1093
1094         Reviewed by Alex Christensen.
1095
1096         * Scripts/update-webkit-wincairo-libs: Replace $winCairoLibsURL.
1097
1098 == Rolled over to ChangeLog-2017-03-23 ==