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