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