[ios-simulator] PositionInformationTests API tests are timing out
[WebKit-https.git] / Tools / ChangeLog
1 2017-04-20  Wenson Hsieh  <wenson_hsieh@apple.com>
2
3         [ios-simulator] PositionInformationTests API tests are timing out
4         https://bugs.webkit.org/show_bug.cgi?id=171089
5
6         Rubber-stamped by Tim Horton.
7
8         Addresses failures observed in the new position information tests added in r215573 by only running them if the
9         DATA_INTERACTION feature flag is enabled.
10
11         * TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
12
13 2017-04-20  Brady Eidson  <beidson@apple.com>
14
15         Skip WebKit2.OpenAndCloseWindowAsyncCallbackException for now.
16         https://bugs.webkit.org/show_bug.cgi?id=171083
17
18         Unreviewed.
19
20         * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
21
22 2017-04-20  Brady Eidson  <beidson@apple.com>
23
24         Add CompletionHandlerCallChecker to SPI added in r215545.
25         https://bugs.webkit.org/show_bug.cgi?id=171067
26
27         Reviewed by Dan Bernstein.
28
29         * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
30         (TEST):
31         (-[OpenAndCloseWindowUIDelegateAsync _webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:completionHandler:]):
32
33 2017-04-20  Wenson Hsieh  <wenson_hsieh@apple.com>
34
35         [WK2] -[WKContentView doAfterPositionInformationUpdate:atPosition:] should be robust against synchronous reentrancy
36         https://bugs.webkit.org/show_bug.cgi?id=170922
37         <rdar://problem/31634990>
38
39         Reviewed by Tim Horton.
40
41         Adds six new unit tests for retrieving interaction information at a given position in the UI process. See
42         WebKit2 ChangeLog for more details.
43
44         * TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
45         (-[_WKDraggableElementInfo expectToBeLink:image:atPoint:]):
46         (TestWebKitAPI::TEST):
47         (TestWebKitAPI::expectCGPointsToBeEqual): Deleted.
48
49 2017-04-20  Xan Lopez  <xlopez@igalia.com>
50
51         [GTK][jhbuild] Update glib and glib-networking to the latest stable versions
52         https://bugs.webkit.org/show_bug.cgi?id=170942
53
54         Reviewed by Carlos Garcia Campos.
55
56         Update glib and glib-networking to the last stable releases. This
57         is needed to get working TLS certificate verification at all at
58         least in Fedora.
59
60         * gtk/install-dependencies: add libmount, needed for newer glib.
61         * gtk/jhbuild.modules: update glib and glib-networking to last
62         stable releases.
63
64 2017-04-20  Joanmarie Diggs  <jdiggs@igalia.com>
65
66         [ATK] Implement support for DPub ARIA roles
67         https://bugs.webkit.org/show_bug.cgi?id=170679
68
69         Reviewed by Chris Fleizach.
70
71         Add DPub ARIA landmark roles to roleToString().
72
73         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
74
75 2017-04-19  Joseph Pecoraro  <pecoraro@apple.com>
76
77         Remove WebKitTestRunner code for enabling features that are already enabled by default
78         https://bugs.webkit.org/show_bug.cgi?id=171033
79
80         Reviewed by Ryosuke Niwa.
81
82         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
83         (WTR::InjectedBundle::beginTesting):
84         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
85         (WTR::TestRunner::setShadowDOMEnabled): Deleted.
86         (WTR::TestRunner::setCustomElementsEnabled): Deleted.
87         (WTR::TestRunner::setFetchAPIEnabled): Deleted.
88         (WTR::TestRunner::setDownloadAttributeEnabled): Deleted.
89         * WebKitTestRunner/InjectedBundle/TestRunner.h:
90
91 2017-04-19  Youenn Fablet  <youenn@apple.com>
92
93         [Mac] Allow customizing H264 encoder
94         https://bugs.webkit.org/show_bug.cgi?id=170829
95
96         Reviewed by Alex Christensen.
97
98         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
99
100 2017-04-19  Brady Eidson  <beidson@apple.com>
101
102         Add asynchronous equivalent of -[<WKUIDelegate> webView:createWebViewWithConfiguration:...].
103         <rdar://problem/30699851> and https://bugs.webkit.org/show_bug.cgi?id=171018
104
105         Reviewed by Tim Horton.
106
107         * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
108         (TEST):
109         (-[OpenAndCloseWindowUIDelegateAsync webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
110         (-[OpenAndCloseWindowUIDelegateAsync _webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:completionHandler:]):
111
112 2017-04-19  Brady Eidson  <beidson@apple.com>
113
114         REGRESSION (r213168): An extra Web Content process is spun up on launch and is never closed.
115         <rdar://problem/30774839> and https://bugs.webkit.org/show_bug.cgi?id=171002
116
117         Reviewed by Alex Christensen.
118
119         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
120         * TestWebKitAPI/Tests/WebKit2Cocoa/InitialWarmedProcessUsed.mm: Added.
121
122 2017-04-19  Brent Fulgham  <bfulgham@apple.com>
123
124         [WK2] Run tests with ResourceLoadStatistics enabled
125         https://bugs.webkit.org/show_bug.cgi?id=170952
126
127         Reviewed by Andy Estes.
128
129         Excercise the load statistics code during tests.
130
131         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
132         (WTR::initializeWebViewConfiguration):
133
134 2017-04-19  Bill Ming  <mbbill@gmail.com>
135
136         close_fds should be set to False on Windows.
137         https://bugs.webkit.org/show_bug.cgi?id=170838
138
139         Reviewed by Brent Fulgham.
140
141         * Scripts/webkitpy/common/system/executive.py:
142         (Executive._should_close_fds):
143
144 2017-04-19  David Kilzer  <ddkilzer@apple.com>
145
146         Stop using strcpy() in WebKit::EnvironmentUtilities::stripValuesEndingWithString()
147         <https://webkit.org/b/170994>
148         <rdar://problem/29889932>
149
150         Reviewed by Brent Fulgham.
151
152         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
153         (EnvironmentUtilitiesTest.cpp): Add to TestWebKitAPILibrary
154         target.
155         * TestWebKitAPI/Tests/WebKit2/EnvironmentUtilitiesTest.cpp: Add.
156         (TestWebKitAPI::strip): Helper method to set/get environment
157         variable for testing.
158         (TestWebKitAPI::WebKit2_StripValuesEndingWithString_Test): Add
159         tests.
160
161 2017-04-19  JF Bastien  <jfbastien@apple.com>
162
163         WebAssembly: add script which can import GCC torture tests
164         https://bugs.webkit.org/show_bug.cgi?id=170740
165
166         Reviewed by Saam Barati.
167
168         Add a script which can import the GCC torture tests and create a
169         yaml file to run them as part of jsc's WebAssembly regression
170         tests.
171
172         This patch doesn't commit the tests themselves because they're
173         licensed differently.
174
175         * Scripts/run-jsc-stress-tests: learn how to run
176         Emscripten-generated .js+.wasm files, and do a bit of cleanup on
177         the options because WebAssembly is enabled by default.
178         * Scripts/update-wasm-gcc-torture.py: Added.
179         (parse_args):
180         (update_lkgr):
181         (untar_torture):
182         (list_js_files):
183         (waterfall_known_failures):
184         (create_yaml):
185         (main):
186
187 2017-04-19  Youenn Fablet  <youenn@apple.com>
188
189         Import web-platform-tests/tools
190         https://bugs.webkit.org/show_bug.cgi?id=170718
191
192         Reviewed by Alex Christensen.
193
194         * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
195         (main):
196         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
197         (WebPlatformTestServer.ports_to_forward):
198         (WebPlatformTestServer._prepare_config):
199         (WebPlatformTestServer._install_modules): Deleted.
200         * Scripts/webkitpy/w3c/test_importer.py:
201         (TestImporter.write_html_files_for_templated_js_tests):
202
203 2017-04-18  Wenson Hsieh  <wenson_hsieh@apple.com>
204
205         [WK2] Add infrastructure and unit tests for file uploads using data interaction
206         https://bugs.webkit.org/show_bug.cgi?id=170903
207         <rdar://problem/31314689>
208
209         Reviewed by Tim Horton.
210
211         Adds 5 new unit tests covering different cases of uploading files through data interaction, as well as
212         infrastructure for simulating UIItemProviders that load file data. Makes a few adjustments to the
213         DataInteractionSimulator along the way, detailed in the per-method annotations below. See
214         <https://bugs.webkit.org/show_bug.cgi?id=170880> for more details about the change this patch is testing.
215
216         New tests:
217         DataInteractionTests.ExternalSourceImageToFileInput
218         DataInteractionTests.ExternalSourceHTMLToUploadArea
219         DataInteractionTests.ExternalSourceImageAndHTMLToSingleFileInput
220         DataInteractionTests.ExternalSourceImageAndHTMLToMultipleFileInput
221         DataInteractionTests.ExternalSourceImageAndHTMLToUploadArea
222
223         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
224         (testIconImage):
225         (temporaryURLForDataInteractionFileLoad):
226         (cleanUpDataInteractionTemporaryPath):
227
228         Creates and tears down temporary file directories for testing data interaction.
229
230         (-[UIItemProvider registerFileRepresentationForTypeIdentifier:withData:filename:]):
231         (TestWebKitAPI::TEST):
232         * TestWebKitAPI/ios/DataInteractionSimulator.h:
233         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
234
235         Make necessary changes to be able to test what happens when data interaction ends over an element with no
236         operation. Previously, we would always simulate performing a data interaction operation when ending the
237         simulation, but this causes us to wait indefinitely for a data operation response to arrive in the UI process.
238         Instead, we need to note whether or not the content view is allowing data interaction, and only perform an
239         operation and wait for the -didPerform call if the operation was allowed. Otherwise, we immediately transition
240         the phase to Cancelled and end the run.
241
242         (-[DataInteractionSimulator _resetSimulatedState]):
243         (-[DataInteractionSimulator runFrom:to:]):
244         (-[DataInteractionSimulator _concludeDataInteractionAndPerformOperationIfNecessary]):
245         (-[DataInteractionSimulator _advanceProgress]):
246         (-[DataInteractionSimulator externalItemProviders]):
247         (-[DataInteractionSimulator setExternalItemProviders:]):
248
249         Previously, we hard-coded DataInteractionSimulator to only support a single external item provider. In order to
250         test the scenario where multiple files are being "data interacted" into a file-type input, we generalize this to
251         take multiple item providers.
252
253         (-[DataInteractionSimulator externalItemProvider]): Deleted.
254         (-[DataInteractionSimulator setExternalItemProvider:]): Deleted.
255
256 2017-04-18  John Wilander  <wilander@apple.com>
257
258         Make WebCore::topPrivatelyControlledDomain() return "localhost" for localhost
259         https://bugs.webkit.org/show_bug.cgi?id=170798
260         <rdar://problem/31595108>
261
262         Reviewed by Alex Christensen.
263
264         * TestWebKitAPI/Tests/mac/PublicSuffix.mm:
265         (TestWebKitAPI::TEST_F):
266             Added two negative test cases for WebCore::isPublicSuffix().
267             Added test cases with mixed case domains, localhost, and
268             non-ASCII for WebCore::topPrivatelyControlledDomain().
269
270 2017-04-18  Jonathan Bedard  <jbedard@apple.com>
271
272         Unreviewed, rolling out r215346 and 215361.
273
274         The problem these changes were fixing was addressed in
275         <https://trac.webkit.org/changeset/215416/webkit>.
276
277         Reverted changesets:
278
279         "webkitpy: Ignore previously launched pid when system is under
280         stress"
281         https://bugs.webkit.org/show_bug.cgi?id=170741
282         http://trac.webkit.org/changeset/215346
283         http://trac.webkit.org/changeset/215361
284
285 2017-04-17  Alex Christensen  <achristensen@webkit.org>
286
287         Allow Variants of RetainPtrs
288         https://bugs.webkit.org/show_bug.cgi?id=170923
289
290         Reviewed by Tim Horton and Sam Weinig.
291
292         * TestWebKitAPI/Tests/WTF/Variant.cpp:
293         (TestWebKitAPI::TEST):
294         Add tests for RetainPtr and for another class with overloaded operator& to verify such classes can
295         work in Variants.
296
297 2017-04-17  Brady Eidson  <beidson@apple.com>
298
299         Make WKHTTPCookieStore public.
300         <rdar://problem/31024691> and https://bugs.webkit.org/show_bug.cgi?id=170920
301
302         Reviewed by Geoffrey Garen.
303
304         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
305         (TEST):
306
307 2017-04-17  Youenn Fablet  <youenn@apple.com>
308
309         Disable outdated WritableStream API
310         https://bugs.webkit.org/show_bug.cgi?id=170749
311         <rdar://problem/31446233>
312
313         Reviewed by Alex Christensen.
314
315         Replacing READABLE_STREAM_API, READABLE_BYTE_STREAM_API and WRITABLE_STREAM_API compilation flag by:
316         - A STREAMS_API compilation flag.
317         - A ReadableByteStreamAPI and WritableStreamAPI runtime flags, turned off except for RWT and DRT.
318
319         * DumpRenderTree/mac/DumpRenderTree.mm:
320         (enableExperimentalFeatures):
321         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
322         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
323         (WTR::InjectedBundle::beginTesting):
324         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
325         (WTR::TestRunner::setFetchAPIEnabled):
326         (WTR::TestRunner::setWritableStreamAPIEnabled):
327         (WTR::TestRunner::setReadableByteStreamAPIEnabled):
328         * WebKitTestRunner/InjectedBundle/TestRunner.h:
329
330 2017-04-17  Tim Horton  <timothy_horton@apple.com>
331
332         Provide a viewport parameter to disable clipping to the safe area
333         https://bugs.webkit.org/show_bug.cgi?id=170766
334         <rdar://problem/31564634>
335
336         Reviewed by Beth Dakin.
337
338         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
339         (WTR::UIScriptController::setObscuredInsets):
340         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
341         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
342         (WTR::UIScriptController::setObscuredInsets):
343         * TestRunnerShared/UIScriptContext/UIScriptController.h:
344         * WebKitTestRunner/ios/TestControllerIOS.mm:
345         (WTR::TestController::platformResetStateToConsistentValues):
346         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
347         (WTR::UIScriptController::setObscuredInsets):
348         Add a UIScriptController mechanism to install obscured insets
349         on the web view.
350
351 2017-04-17  Dan Bernstein  <mitz@apple.com>
352
353         [Cocoa] Move isNullFunctionPointer down into WTF
354         https://bugs.webkit.org/show_bug.cgi?id=170892
355
356         Reviewed by Sam Weinig.
357
358         * TestWebKitAPI/Configurations/TestWTF.xcconfig:
359         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
360         * TestWebKitAPI/Tests/WTF/darwin/WeakLinking.cpp: Added.
361         (TestWebKitAPI::TEST):
362         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS-v2.tbd: Added.
363         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS.tbd: Added.
364         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS-v2.tbd: Added.
365         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS.tbd: Added.
366
367 2017-04-17  Jonathan Bedard  <jbedard@apple.com>
368
369         webkitpy: Correct poll when killing ServerProcess
370
371         Unreviewed infrastructure fix.
372
373         * Scripts/webkitpy/port/server_process.py:
374         (ServerProcess._kill): A polled process equaling 'None' means the process is running.
375
376 2017-04-17  Eric Carlson  <eric.carlson@apple.com>
377
378         [MediaStream] Enable getUserMedia API test
379         https://bugs.webkit.org/show_bug.cgi?id=170901
380         <rdar://problem/31656594>
381
382         Reviewed by Youenn Fablet.
383
384         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add test.
385
386         * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
387         (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack):
388         (TestWebKitAPI::TEST): Enable capture with mock devices.
389         * TestWebKitAPI/Tests/WebKit2/getUserMedia.html: Update to mediaDevices.getUserMedia
390
391 2017-04-17  Xan Lopez  <xan@igalia.com>
392
393         [GTK] Update the Fedora dependencies for WebKitGTK+
394         https://bugs.webkit.org/show_bug.cgi?id=170590
395
396         Reviewed by Carlos Alberto Lopez Perez.
397
398         * gtk/install-dependencies: add a bunch of modules necessary to
399         get a proper set of GStreamer codecs for WebRTC.
400
401 2017-04-16  Sam Weinig  <sam@webkit.org>
402
403         [WebIDL] Switch IDLAttributes.txt over to a more structured format so that more information can be added for each attribute
404         https://bugs.webkit.org/show_bug.cgi?id=170843
405
406         Reviewed by Chris Dumez.
407
408         * DumpRenderTree/DerivedSources.make:
409         * WebKitTestRunner/DerivedSources.make:
410         * Scripts/webkitpy/bindings/main.py:
411         (BindingsTests.generate_from_idl):
412         Pass IDLAttributes.json, as it is now mandatory to have one.
413
414 2017-04-14  Mark Lam  <mark.lam@apple.com>
415
416         Update architectures in xcconfig files.
417         https://bugs.webkit.org/show_bug.cgi?id=170867
418         <rdar://problem/31628104>
419
420         Reviewed by Joseph Pecoraro.
421
422         * DumpRenderTree/mac/Configurations/Base.xcconfig:
423         * MobileMiniBrowser/Configurations/Base.xcconfig:
424         * TestWebKitAPI/Configurations/Base.xcconfig:
425         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
426         * WebKitTestRunner/Configurations/Base.xcconfig:
427
428 2017-04-14  Brady Eidson  <beidson@apple.com>
429
430         Fix basic WKURLSchemeHandler bugs.
431         <rdar://problem/30647559> and https://bugs.webkit.org/show_bug.cgi?id=170862
432
433         Reviewed by Andy Estes.
434
435         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
436         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm: Added.
437         (-[SchemeHandler initWithData:mimeType:]):
438         (-[SchemeHandler dealloc]):
439         (-[SchemeHandler webView:startTask:]):
440         (-[SchemeHandler webView:stopTask:]):
441         (TEST):
442
443 2017-04-14  Bill Ming  <mbbill@gmail.com>
444
445         webkit-patch failed to detect git repository
446         https://bugs.webkit.org/show_bug.cgi?id=170859
447
448         Reviewed by Daniel Bates.
449
450         Windows cmd does not accept single quoted path. So, using
451         double quotes here will provide better platform compatibility.
452
453         * Scripts/VCSUtils.pm:
454         (isGitDirectory):
455         (isGitSVNDirectory):
456         (svnRevisionForDirectory):
457         (svnInfoForPath):
458
459 2017-04-14  Ryan Haddad  <ryanhaddad@apple.com>
460
461         Unreviewed, rolling out r215374.
462
463         This change causes LayoutTests to exit early with crashes on
464         Sierra.
465
466         Reverted changeset:
467
468         "webkitpy: Ignore previously launched pid when system is under
469         stress"
470         https://bugs.webkit.org/show_bug.cgi?id=170741
471         http://trac.webkit.org/changeset/215374
472
473 2017-04-14  Dan Bernstein  <mitz@apple.com>
474
475         [ios-simulator] API test WebKit2.AdditionalReadAccessAllowedURLs is failing
476         https://bugs.webkit.org/show_bug.cgi?id=170856
477
478         Disabled the newly-added test in the Simulator, which doesn’t enforce sandboxing.
479
480         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
481
482 2017-04-14  Jonathan Bedard  <jbedard@apple.com>
483
484         webkitpy: Ignore previously launched pid when system is under stress
485         https://bugs.webkit.org/show_bug.cgi?id=170741
486
487         Unreviewed infrastructure fix.
488
489         Drivers are destroyed between failing layout tests, which is not necessary and
490         prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
491
492         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
493         (Worker._kill_driver): Do not destroy drivers when they are stopped.
494         * Scripts/webkitpy/port/driver.py:
495         (Driver.stop): Reset driver values set in initializer.
496
497 2017-04-14  Andy Estes  <aestes@apple.com>
498
499         [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
500         https://bugs.webkit.org/show_bug.cgi?id=167594
501
502         Re-enabled this API test now that webkit.org/b/161967 is fixed.
503
504         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
505         (TEST):
506
507 2017-04-14  Andy Estes  <aestes@apple.com>
508
509         [ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
510         https://bugs.webkit.org/show_bug.cgi?id=161967
511
512         Reviewed by Alexey Proskuryakov.
513
514         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
515         (TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
516
517 2017-04-14  Ryan Haddad  <ryanhaddad@apple.com>
518
519         Unreviewed, rolling out r215363.
520
521         This change causes LayoutTests to exit early with crashes.
522
523         Reverted changeset:
524
525         "webkitpy: Ignore previously launched pid when system is under
526         stress"
527         https://bugs.webkit.org/show_bug.cgi?id=170741
528         http://trac.webkit.org/changeset/215363
529
530 2017-04-14  Jonathan Bedard  <jbedard@apple.com>
531
532         webkitpy: Ignore previously launched pid when system is under stress
533         https://bugs.webkit.org/show_bug.cgi?id=170741
534
535         Unreviewed infrastructure fix.
536
537         Drivers are destroyed between failing layout tests, which is not necessary and
538         prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
539
540         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
541         (Worker._kill_driver): Do not destroy drivers when they are stopped.
542
543 2017-04-14  Jonathan Bedard  <jbedard@apple.com>
544
545         webkitpy: Ignore previously launched pid when system is under stress
546         https://bugs.webkit.org/show_bug.cgi?id=170741
547
548         Unreviewed infrastructure fix.
549
550         Server processes are destroyed in the driver, which is not necessary and prevents
551         the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
552
553         * Scripts/webkitpy/port/driver.py:
554         (Driver.run_test): Do not destroy server process.
555         (Driver._start): Only create the server process if it is None.
556         (Driver.stop): Do not destroy server process.
557
558 2017-04-13  Dan Bernstein  <mitz@apple.com>
559
560         [Cocoa] Allow clients to specify in _WKProcessPoolConfiguration additional directory sandbox extensions
561         https://bugs.webkit.org/show_bug.cgi?id=170387
562
563         Reviewed by Sam Weinig.
564
565         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
566         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm: Added.
567         (TEST):
568         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLsPlugin.mm: Added.
569         (-[AdditionalReadAccessAllowedURLsPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
570         (-[AdditionalReadAccessAllowedURLsPlugIn dealloc]):
571         (-[AdditionalReadAccessAllowedURLsPlugIn readStringFromURL:completionHandler:]):
572         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLsProtocol.h: Added.
573
574 2017-04-13  Jonathan Bedard  <jbedard@apple.com>
575
576         webkitpy: Ignore previously launched pid when system is under stress
577         https://bugs.webkit.org/show_bug.cgi?id=170741
578
579         Reviewed by David Kilzer.
580
581         We have seen cases where xcrun simctl launch will return a pid of a previous
582         process and the process will appear to be running even though it is crashing.
583         Ensure that the PID that simulator_process is receiving is not the pid of the
584         previously run process.
585
586         * Scripts/webkitpy/port/simulator_process.py:
587         (SimulatorProcess._start): Check to make sure we aren't receiving an old PID.
588
589 2017-04-13  Jonathan Bedard  <jbedard@apple.com>
590
591         Build ImageDiff with host SDK
592         https://bugs.webkit.org/show_bug.cgi?id=168531
593
594         Reviewed by David Kilzer.
595
596         ImageDiff should be built and run with the host SDK, not the target SDK.
597         Build ImageDiff twice, once for the target SDK and once for the host
598         as an intermediate step towards building for only the host SDK.
599
600         * ImageDiff/Makefile: Added.
601         * Makefile: Add ImageDiff to list of targets.
602         * Scripts/build-imagediff: Build bmalloc and WTF for the host.
603         * Scripts/build-webkit: Build ImageDiff for host.
604         * Scripts/webkitdirs.pm: Export extractNonMacOSHostConfiguration.
605         (extractNonMacOSHostConfiguration): Remove non-host configuration data from the array.
606         * Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl: Added.
607         * Scripts/webkitpy/port/base.py:
608         (Port.check_build): Attempt to build image diff if not found.
609         (Port.check_image_diff): Enable logging flag.
610         (Port._build_image_diff): Allow webkitpy to build image-diff during testing.
611
612 2017-04-12  Alex Christensen  <achristensen@webkit.org>
613
614         Clean up SharedBuffer public functions
615         https://bugs.webkit.org/show_bug.cgi?id=170795
616
617         Reviewed by Andreas Kling.
618
619         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
620         (TestWebKitAPI::TEST_F):
621
622 2017-04-12  Dan Bernstein  <mitz@apple.com>
623
624         [Mac] Future-proof .xcconfig files
625         https://bugs.webkit.org/show_bug.cgi?id=170802
626
627         Reviewed by Tim Horton.
628
629         * DumpRenderTree/mac/Configurations/Base.xcconfig:
630         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
631         * MiniBrowser/Configurations/Base.xcconfig:
632         * MiniBrowser/Configurations/DebugRelease.xcconfig:
633         * TestWebKitAPI/Configurations/Base.xcconfig:
634         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
635         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
636         * WebKitTestRunner/Configurations/Base.xcconfig:
637         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
638
639 2017-04-12  Alex Christensen  <achristensen@webkit.org>
640
641         Remove unused SharedBuffer::wrapCFDataArray
642         https://bugs.webkit.org/show_bug.cgi?id=170794
643
644         Reviewed by Brady Eidson.
645
646         * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
647         (TestWebKitAPI::TEST_F):
648
649 2017-04-12  Yusuke Suzuki  <utatane.tea@gmail.com>
650
651         [WTF] Introduce Thread class and use RefPtr<Thread> and align Windows Threading implementation semantics to Pthread one
652         https://bugs.webkit.org/show_bug.cgi?id=170502
653
654         Reviewed by Mark Lam.
655
656         Mechanical change. Use Thread:: APIs.
657
658         * DumpRenderTree/JavaScriptThreading.cpp:
659         (runJavaScriptThread):
660         (startJavaScriptThreads):
661         (stopJavaScriptThreads):
662         * DumpRenderTree/mac/DumpRenderTree.mm:
663         (testThreadIdentifierMap):
664         * TestWebKitAPI/Tests/WTF/Condition.cpp:
665         * TestWebKitAPI/Tests/WTF/Lock.cpp:
666         (TestWebKitAPI::runLockTest):
667         * TestWebKitAPI/Tests/WTF/ParkingLot.cpp:
668
669 2017-04-12  Alex Christensen  <achristensen@webkit.org>
670
671         Modernize vector adoption
672         https://bugs.webkit.org/show_bug.cgi?id=170758
673
674         Reviewed by Geoffrey Garen.
675
676         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
677         (TestWebKitAPI::TEST_F):
678
679 2017-04-11  Dean Jackson  <dino@apple.com>
680
681         Disable outdated WritableStream API
682         https://bugs.webkit.org/show_bug.cgi?id=170749
683         <rdar://problem/31446233>
684
685         Reviewed by Tim Horton.
686
687         The API we implement is no longer accurate. Disable it until we
688         are compatible with the new specification
689
690         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
691
692 2017-04-11  David Quesada  <david_quesada@apple.com>
693
694         Add SPI for handling geolocation authorization requests
695         https://bugs.webkit.org/show_bug.cgi?id=170362
696         rdar://problem/17508627
697
698         Reviewed by Alex Christensen.
699
700         Add API tests for the new WKUIDelegate SPI for allowing or denying websites permission
701         to use geolocation. Adopt the new WKProcessPool._coreLocationProvider property to
702         provide a stub object to simulate the various configurations of geolocation permissions:
703         1. The app doesn't have permission to use geolocation.
704         2. The app is allowed to use geolocation, but the UI delegate denies the web view permission.
705         3. The app is allowed to use geolocation, and the UI delegate allows the web view permission.
706
707         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
708         * TestWebKitAPI/Tests/WebKit2Cocoa/Geolocation.mm: Added.
709         (-[TestCoreLocationProvider setListener:]):
710         (-[TestCoreLocationProvider requestGeolocationAuthorization]):
711         (-[TestCoreLocationProvider start]):
712         (-[TestCoreLocationProvider stop]):
713         (-[TestCoreLocationProvider setEnableHighAccuracy:]):
714         (expectException):
715         (-[GeolocationTestUIDelegate _webView:requestGeolocationAuthorizationForURL:frame:decisionHandler:]):
716         (-[GeolocationTestUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
717         (TestWebKitAPI::TEST):
718         * TestWebKitAPI/Tests/WebKit2Cocoa/GeolocationGetCurrentPositionResult.html: Added.
719
720 2017-04-10  Matt Rajca  <mrajca@apple.com>
721
722         Change autoplay state to "prevented" when media is paused due to restrictions.
723         https://bugs.webkit.org/show_bug.cgi?id=170686
724
725         Reviewed by Alex Christensen.
726
727         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
728         * TestWebKitAPI/Tests/WebKit2/autoplay-muted-with-controls.html: Added test.
729         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
730         (TEST):
731
732 2017-04-11  Yusuke Suzuki  <utatane.tea@gmail.com>
733
734         [WebCore][JSC] ResourceUsageData.{timeOfNextEdenCollection,timeOfNextFullCollection} should be MonotonicTime
735         https://bugs.webkit.org/show_bug.cgi?id=170725
736
737         Reviewed by Sam Weinig.
738
739         * TestWebKitAPI/Tests/WTF/Time.cpp:
740         (TestWebKitAPI::TEST):
741
742 2017-04-10  Alex Christensen  <achristensen@webkit.org>
743
744         Revert r215217
745         https://bugs.webkit.org/show_bug.cgi?id=170703
746
747         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
748
749 2017-04-10  Alex Christensen  <achristensen@webkit.org>
750
751         Continue enabling WebRTC
752         https://bugs.webkit.org/show_bug.cgi?id=170703
753
754         Reviewed by Youenn Fablet.
755
756         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
757
758 2017-04-10  Kocsen Chung  <kocsen_chung@apple.com>
759
760         Have parseRevisionProperty use default repo name as the Buildbot key.
761         https://bugs.webkit.org/show_bug.cgi?id=170696
762
763         Reviewed by Daniel Bates.
764
765         Previously, we needed to set a key and a fallbackKey when addressing
766         Buildbot data for Internal. That is no longer necessary as we can make a safe assumption
767         that the repo name maps exactly to that key for every repository other
768         than WebKit.
769
770         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
771         Set `key = repositoryName` and only use fallback keys when dealing with WebKit.
772
773 2017-04-10  Aakash Jain  <aakash_jain@apple.com>
774
775         Add test262 JavaScriptCore tests to dashboard
776         https://bugs.webkit.org/show_bug.cgi?id=170711
777
778         Rubber-stamped by Joseph Pecoraro.
779
780         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
781         (WebKitBuildbot): Added test262 JSC tests to dashboard.
782
783 2017-04-10  Alex Christensen  <achristensen@webkit.org>
784
785         REGRESSION(r195479) First main resource load in new WebProcess bypasses content extensions
786         https://bugs.webkit.org/show_bug.cgi?id=170707
787         <rdar://problem/27788755>
788
789         Reviewed by Tim Horton.
790
791         * TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm:
792         (-[ContentExtensionDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
793         (TEST_F):
794         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
795         (-[ContentBlockingWebsitePoliciesDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
796         (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
797         (TEST):
798
799 2017-04-10  Alex Christensen  <achristensen@webkit.org>
800
801         Add API to get available content extension identifiers in a WKContentExtensionStore
802         https://bugs.webkit.org/show_bug.cgi?id=170093
803
804         Reviewed by Geoffrey Garen.
805
806         * TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm:
807         (TEST_F):
808
809 2017-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
810
811         Refactor DataInteractionTests.UnresponsivePageDoesNotHangUI to not check against a fixed time interval
812         https://bugs.webkit.org/show_bug.cgi?id=170658
813
814         Reviewed by Tim Horton.
815
816         Uses ignoreSynchronousMessagingTimeoutsForTesting to ensure that this test times out if data interaction
817         preparation is synchronous, or passes if it is asynchronous.
818
819         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
820         (TestWebKitAPI::TEST):
821         * TestWebKitAPI/cocoa/TestWKWebView.h:
822         * TestWebKitAPI/cocoa/TestWKWebView.mm:
823         (-[TestWKWebView initWithFrame:]):
824         (-[TestWKWebView initWithFrame:configuration:processPoolConfiguration:]):
825         (-[TestWKWebView _setUpTestWindow:]):
826
827 2017-04-10  Brent Fulgham  <bfulgham@apple.com>
828
829         [WK2][macOS] Block access to Apple Events before launch.
830         https://bugs.webkit.org/show_bug.cgi?id=170626
831         <rdar://problem/16079334>
832
833         Reviewed by Alexey Proskuryakov.
834
835         Add a new TestWebKitAPI test that fails if Apple Events are sent.
836
837         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
838         * TestWebKitAPI/Tests/WebKit2/mac/InjectedBundleAppleEvent.cpp: Added.
839         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
840         (TestWebKitAPI::didFinishLoadForFrame):
841         (TestWebKitAPI::TEST):
842         * TestWebKitAPI/Tests/WebKit2/mac/InjectedBundleAppleEvent_Bundle.cpp: Added.
843         (TestWebKitAPI::InjectedBundleAppleEventTest::InjectedBundleAppleEventTest):
844         (TestWebKitAPI::InjectedBundleAppleEventTest::didCreatePage):
845
846 2017-04-10  Guillaume Emont  <guijemont@igalia.com>
847
848         [JSC] Do not run FTL stress tests on MIPS
849         https://bugs.webkit.org/show_bug.cgi?id=170684
850
851         Reviewed by Carlos Alberto Lopez Perez.
852
853         run-jsc-stress-tests does not correctly detect MIPS platforms, and its
854         logic to detect if the platform supports FTL ignores that MIPS does
855         not support FTL. This adds detection of MIPS (with the magic number
856         determined empirically) and fixes the determination of whether we
857         support FTL.
858
859         * Scripts/run-jsc-stress-tests:
860
861 2017-04-10  Jonathan Bedard  <jbedard@apple.com>
862
863         webkitpy: Increase estimate for processes run by iOS Simulators
864         https://bugs.webkit.org/show_bug.cgi?id=170678
865         <rdar://problem/31534061>
866
867         Reviewed by Aakash Jain.
868
869         Previously, it was estimated that each simulated iOS device would run about 100
870         processes.  With newer versions of iOS, this is closer to 125.
871
872         * Scripts/webkitpy/port/ios_simulator.py:
873         (IOSSimulatorPort): Increase process estimate from 100 to 125.
874
875 2017-04-10  Adrian Perez de Castro  <aperez@igalia.com>
876
877         [GTK] Misplaced right click menu on web page due to deprecated gtk_menu_popup()
878         https://bugs.webkit.org/show_bug.cgi?id=170553
879
880         Reviewed by Michael Catanzaro.
881
882         Use gtk_menu_popup_at_pointer() and gtk_menu_popup_at_rect() when
883         building with GTK+ 3.22 or newer. This allows the Wayland GTK+ backend
884         to properly position popup menus, and also avoids using functions
885         which were deprecated starting at that GTK+ release.
886
887         * MiniBrowser/gtk/BrowserSearchBar.c:
888         (searchEntryMenuIconPressedCallback):
889         Update MiniBrowser to use gtk_menu_popup_at_pointer().
890
891 2017-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
892
893         REGRESSION (r214403): fast/events/drag-to-navigate.html and fast/events/only-valid-drop-targets-receive-file-drop.html failing
894         https://bugs.webkit.org/show_bug.cgi?id=170677
895         <rdar://problem/31512633>
896
897         Reviewed by Tim Horton.
898
899         Fixes two drag and drop LayoutTests by introducing and enabling a TestOptions switch (enableDragDestinationActionLoad)
900         to allow dropping URLs to trigger page navigation.
901
902         * DumpRenderTree/TestOptions.h:
903         * DumpRenderTree/TestOptions.mm:
904         (TestOptions::TestOptions):
905         * DumpRenderTree/mac/DumpRenderTree.mm:
906         (resetWebViewToConsistentStateBeforeTesting):
907         * DumpRenderTree/mac/UIDelegate.h:
908         * DumpRenderTree/mac/UIDelegate.mm:
909         (-[UIDelegate resetToConsistentStateBeforeTesting:]):
910         (-[UIDelegate webView:dragDestinationActionMaskForDraggingInfo:]):
911
912 2017-04-10  Fujii Hironori  <Hironori.Fujii@sony.com>
913
914         update-webkit-dependency should report $response->message for diagnose
915         https://bugs.webkit.org/show_bug.cgi?id=170666
916
917         Reviewed by Alex Christensen.
918
919         * Scripts/update-webkit-dependency: Print $response->message to STDERR if an error happens.
920
921 2017-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
922
923         Data interaction on an image enclosed by an anchor should vend the anchor's URL
924         https://bugs.webkit.org/show_bug.cgi?id=170660
925         <rdar://problem/31043220>
926
927         Reviewed by Tim Horton.
928
929         Adds two new unit tests covering cases where data interaction is triggered from an image nested underneath an
930         anchor. In one of the tests, the link has an href, and in the other, its href is missing, in which case we
931         should fall back to the image URL instead. Also fixes a related unit test that was trying to check selection
932         rects, but should not be.
933
934         See WebCore ChangeLog for more details.
935
936         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
937         * TestWebKitAPI/Tests/WebKit2Cocoa/image-in-link-and-input.html: Added.
938         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
939         (TestWebKitAPI::TEST):
940
941 2017-04-10  Carlos Garcia Campos  <cgarcia@igalia.com>
942
943         [GTK] Remove the GDK dependency from ImageDiff
944         https://bugs.webkit.org/show_bug.cgi?id=85299
945
946         Reviewed by Žan Doberšek.
947
948         Add a cairo only implementation of ImageDiff. We currently have 3 different implementations of ImageDiff: the
949         Gdk based one used by GTK+ port, the cairo based one used by WinCairo and the CG based one. Most of the code is
950         actually common in all of them, but it's duplicated. So, I've taken advantage of this patch to refactor the
951         ImageDiff code to share the common implementation. This patch adds the cross-platform code, and the cairo
952         implementation and enables it in the GTK+ port. In follow up patches we can move WinCairo to this implementation
953         and also add CG implementation.
954
955         * ImageDiff/CMakeLists.txt:
956         * ImageDiff/Cairo.cmake: Added.
957         * ImageDiff/ImageDiff.cpp: Added.
958         (main):
959         * ImageDiff/PlatformGTK.cmake:
960         * ImageDiff/PlatformImage.cpp: Added.
961         (ImageDiff::PlatformImage::isCompatible):
962         (ImageDiff::PlatformImage::difference):
963         * ImageDiff/PlatformImage.h: Added.
964         * ImageDiff/cairo/PlatformImageCairo.cpp: Added.
965         (ImageDiff::PlatformImage::createFromStdin):
966         (ImageDiff::PlatformImage::createFromDiffData):
967         (ImageDiff::PlatformImage::PlatformImage):
968         (ImageDiff::PlatformImage::~PlatformImage):
969         (ImageDiff::PlatformImage::width):
970         (ImageDiff::PlatformImage::height):
971         (ImageDiff::PlatformImage::rowBytes):
972         (ImageDiff::PlatformImage::hasAlpha):
973         (ImageDiff::PlatformImage::pixels):
974         (ImageDiff::PlatformImage::writeAsPNGToStdout):
975         * ImageDiff/gtk/ImageDiff.cpp: Removed.
976
977 2017-04-10  Carlos Garcia Campos  <cgarcia@igalia.com>
978
979         REGRESSION(r214426): [GTK] Test media/video-click-dblckick-standalone.html started to fail in the bots after r214426
980         https://bugs.webkit.org/show_bug.cgi?id=170667
981
982         Reviewed by Žan Doberšek.
983
984         In r214666 we disabled modern media controls runtime feature for the GTK+ port, but layout tests still override
985         that value.
986
987         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
988         (WTR::TestController::updatePlatformSpecificTestOptionsForTest): Disable modern media controls.
989
990 2017-04-10  Carlos Garcia Campos  <cgarcia@igalia.com>
991
992         WTR: Avoid conversion from platform image to WKImage and then to platform image again when dumping pixel results
993         https://bugs.webkit.org/show_bug.cgi?id=170653
994
995         Reviewed by Tim Horton.
996
997         When dumping pixels from a web view snapshot, we create a platform image that is then converted to a WKImage,
998         which is a ShareableBitmap, so the image is rendered into a graphics context. Then we immediately extract the
999         platform image back from the WKImage to dump the pixels. We could avoid that conversion by taking the web
1000         snapshot from TestInvocation::dumpPixelsAndCompareWithExpected().
1001
1002         * WebKitTestRunner/PlatformWebView.h: Add PlatformImage typedef and use it as return value of windowSnapshotImage().
1003         * WebKitTestRunner/TestInvocation.cpp:
1004         (WTR::TestInvocation::dumpResults): Pass the WKImage to dumpPixelsAndCompareWithExpected() only when pixel
1005         results were created in the web process.
1006         * WebKitTestRunner/TestInvocation.h: Make WKImage a default paramater of dumpPixelsAndCompareWithExpected().
1007         * WebKitTestRunner/cairo/TestInvocationCairo.cpp:
1008         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create the cairo surface from the given WKimage in case
1009         of web contents snapshot, and use PlatformWebView::windowSnapshotImage() in case of web view snapshot.
1010         * WebKitTestRunner/cg/TestInvocationCG.cpp:
1011         (WTR::createCGContextFromCGImage): Changed to receive a CGImageRef and renamed.
1012         (WTR::createCGContextFromImage): Get the CGImageRef from the WKImage and call createCGContextFromCGImage().
1013         (WTR::paintRepaintRectOverlay): It receives now the image size instead of the WKImage.
1014         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create the CGContextRef from the WKImage in case of web
1015         contents snpashot, and use PlatformWebView::windowSnapshotImage() in case of web view snapshot.
1016         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
1017         (WTR::PlatformWebView::windowSnapshotImage): Return the cairo surface instead of creating a WKImage. Also use
1018         RGB24 format to match what mac does (kCGWindowImageShouldBeOpaque).
1019         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
1020         (WTR::PlatformWebView::windowSnapshotImage): Return the CGImageRef instead of creating a WKImage.
1021         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
1022         (WTR::PlatformWebView::windowSnapshotImage): Ditto.
1023
1024 2017-04-10  Chris Dumez  <cdumez@apple.com>
1025
1026         Drop Timer::startOneShot() overload taking a double
1027         https://bugs.webkit.org/show_bug.cgi?id=170659
1028
1029         Reviewed by Yusuke Suzuki.
1030
1031         Drop Timer::startOneShot() overload taking a double as people should use Seconds type now.
1032
1033         * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
1034         (TestWebKitAPI::TEST):
1035         * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
1036         (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
1037
1038 2017-04-09  Wenson Hsieh  <wenson_hsieh@apple.com>
1039
1040         [WK2] Add infrastructure to perform actions after an asynchronous position information request finishes
1041         https://bugs.webkit.org/show_bug.cgi?id=170658
1042         <rdar://problem/31431450>
1043
1044         Reviewed by Tim Horton.
1045
1046         Adds a new test verifying that when a web page is unresponsive, the process of preparing for data interaction
1047         does not also cause the UI process to spin. We assume here that the call to prepare must be asynchronous, so it
1048         should complete before the unresponsiveness timeout is triggered.
1049
1050         See WebKit2 ChangeLog for more details.
1051
1052         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1053         (TestWebKitAPI::TEST):
1054
1055 2017-04-09  Chris Dumez  <cdumez@apple.com>
1056
1057         Drop Timer::startRepeating() overload taking a double
1058         https://bugs.webkit.org/show_bug.cgi?id=170656
1059
1060         Reviewed by Yusuke Suzuki.
1061
1062         Drop Timer::startRepeating() overload taking a double as people should use Seconds type now.
1063
1064         * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
1065         (TestWebKitAPI::TEST):
1066
1067 2017-04-09  Youenn Fablet  <youenn@apple.com>
1068
1069         Resync WPT tests up to 23cd07d4685d81024b7440e042f8bbdb33e7ddec
1070         https://bugs.webkit.org/show_bug.cgi?id=170647
1071
1072         Reviewed by Sam Weinig.
1073
1074         * Scripts/webkitpy/common/checkout/scm/git.py:
1075         (Git.fetch): Fetching origin remote in case there is more than one.
1076
1077 2017-04-08  Simon Fraser  <simon.fraser@apple.com>
1078
1079         Update CSSProperties.json with correct fill-and-stroke status, and other cleanup
1080         https://bugs.webkit.org/show_bug.cgi?id=170643
1081
1082         Reviewed by Chris Dumez.
1083         
1084         Update the CSSProperties.json style checker to allow:
1085             - comments in codegen_properties
1086             - obsolete-category and obsolete-url in specification blocks
1087             - renamed "done" to "supported"
1088             
1089         Fix some references to codegen_properties to be codegen-properties.
1090
1091         * Scripts/webkitpy/style/checkers/jsonchecker.py:
1092         (JSONCSSPropertiesChecker.validate_status_type):
1093         (JSONCSSPropertiesChecker.validate_property_specification):
1094         (JSONCSSPropertiesChecker.check_codegen_properties):
1095
1096 2017-04-08  Youenn Fablet  <youenn@apple.com>
1097
1098         WebRTC tests gardening
1099         https://bugs.webkit.org/show_bug.cgi?id=170508
1100
1101         Reviewed by Eric Carlson.
1102
1103         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1104
1105 2017-04-07  Keith Miller  <keith_miller@apple.com>
1106
1107         Add a PriorityQueue class
1108         https://bugs.webkit.org/show_bug.cgi?id=170579
1109
1110         Reviewed by Saam Barati.
1111
1112         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1113         * TestWebKitAPI/Tests/WTF/PriorityQueue.cpp: Added.
1114         (operator  _z ):
1115         (enqueue):
1116         (dequeue):
1117         (TEST):
1118         (compareMove):
1119
1120 2017-04-07  Ryosuke Niwa  <rniwa@webkit.org>
1121
1122         Replace ES6SampleBench by ARES-6 in run-benchmark
1123         https://bugs.webkit.org/show_bug.cgi?id=170585
1124
1125         Reviewed by Saam Barati.
1126
1127         Updated the plan file for ES6SampleBench to run ARES-6 instead. Also increased the number of iterations
1128         from 4 to 8 to match teh default, and reduced the number of browser instances to use from 5 to 3.
1129
1130         * Scripts/webkitpy/benchmark_runner/data/patches/ARES-6.patch: Renamed from ES6SampleBench.patch.
1131         * Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan: Renamed from es6bench.plan.
1132
1133 2017-04-07  Myles C. Maxfield  <mmaxfield@apple.com>
1134
1135         REGRESSION(r211382): Complex text with justification erroneously overflows containers
1136         https://bugs.webkit.org/show_bug.cgi?id=170399
1137         <rdar://problem/31442008>
1138
1139         Reviewed by Simon Fraser.
1140
1141         Check for the invariant that the sum of the advances is equal to m_totalWidth.
1142
1143         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
1144         (TestWebKitAPI::TEST_F):
1145
1146 2017-04-07  Ryan Haddad  <ryanhaddad@apple.com>
1147
1148         [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
1149         https://bugs.webkit.org/show_bug.cgi?id=167594
1150
1151         Unreviewed test gardening.
1152
1153         Disable this test because it is still timing out on the bots.
1154
1155         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
1156         (TEST):
1157
1158 2017-04-07  Jonathan Bedard  <jbedard@apple.com>
1159
1160         REGRESSION (r214553): Allow layout-tests to be run from Xcode without re-directing stdout, stdin and stderr
1161         https://bugs.webkit.org/show_bug.cgi?id=170601
1162         <rdar://problem/31492696>
1163
1164         Reviewed by Simon Fraser.
1165
1166         * TestRunnerShared/IOSLayoutTestCommunication.cpp:
1167         (setUpIOSLayoutTestCommunication): Skip TCP setup if no port is in the environment.
1168         (tearDownIOSLayoutTestCommunication): Only teardown if TCP was used.
1169
1170 2017-04-07  Aakash Jain  <aakash_jain@apple.com>
1171
1172         Add support for test262 JavaScriptCore tests
1173         https://bugs.webkit.org/show_bug.cgi?id=170523
1174
1175         Reviewed by Daniel Bates.
1176
1177         * BuildSlaveSupport/build.webkit.org-config/config.json: Added bot433 and bot434.
1178         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1179         (RunTest262Tests): Added class to run Test262 tests.
1180         (RunTest262Tests.start): Added.
1181         (RunTest262Tests.countFailures): Method to count the failures.
1182         (Test262Factory): Added Test262 factory class.
1183         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
1184         (RunTest262TestsTest): Added unit tests.
1185         (RunTest262TestsTest.assertResults): Helper method.
1186         (RunTest262TestsTest.test_no_regressions_output): Added test case.
1187         (test_failure_output): Same. 
1188         (test_failures_output): Same.
1189
1190 2017-04-07  Caio Lima  <ticaiolima@gmail.com>
1191
1192         [JSC] Change --debug option to --debugger
1193         https://bugs.webkit.org/show_bug.cgi?id=170587
1194
1195         Reviewed by Keith Miller.
1196
1197         * Scripts/run-jsc:
1198
1199         This patch is changing the new debugger flag for Tools/Scripts/run-jsc
1200         to --debugger to avoid shadowing --debug flag used to run JSC with
1201         Debug build.
1202
1203 2017-04-07  Brent Fulgham  <bfulgham@apple.com>
1204
1205         WebKit should percent encode single quotes in query strings
1206         https://bugs.webkit.org/show_bug.cgi?id=170561
1207         <rdar://problem/7415154>
1208
1209         Reviewed by Alex Christensen.
1210
1211         Add a test case for single-quote in the URL query string.
1212
1213         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1214
1215 2017-04-06  Myles C. Maxfield  <mmaxfield@apple.com>
1216
1217         Make FontWithFeatures test font pass OTS
1218         https://bugs.webkit.org/show_bug.cgi?id=169788
1219
1220         Reviewed by Tim Horton.
1221
1222         OTS, or the OpenType Sanitizer, is a check which tells if fonts are properly formed.
1223         Previously, our FontWithFeatures test font did not pass this check. This patch updates
1224         the font to pass the checks. Now, we can use this font on other platforms, and
1225         contribute the font to the W3C for testing the CSS Fonts level 3 spec.
1226
1227         * FontWithFeatures/FontWithFeatures/FontCreator.cpp:
1228         (Generator::appendCFFTable):
1229         (Generator::Feature::operator<):
1230         (Generator::appendGSUBTable):
1231         (Generator::appendOS2Table):
1232         (Generator::appendFormat4CMAPTable):
1233         (Generator::appendHEADTable):
1234         (Generator::appendHHEATable):
1235         (Generator::NameRecord::operator<):
1236         (Generator::appendNameSubtable):
1237         (Generator::appendNAMETable):
1238
1239 2017-04-06  Alexey Proskuryakov  <ap@apple.com>
1240
1241         Disable flaky WebKit2.ResizeWithHiddenContentDoesNotHang
1242         for https://bugs.webkit.org/show_bug.cgi?id=170195
1243
1244         * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
1245
1246 2017-04-06  Ryan Haddad  <ryanhaddad@apple.com>
1247
1248         Unreviewed, rolling out r215046.
1249
1250         This change broke internal builds.
1251
1252         Reverted changeset:
1253
1254         "WebRTC tests gardening"
1255         https://bugs.webkit.org/show_bug.cgi?id=170508
1256         http://trac.webkit.org/changeset/215046
1257
1258 2017-04-06  Youenn Fablet  <youenn@apple.com>
1259
1260         WebRTC tests gardening
1261         https://bugs.webkit.org/show_bug.cgi?id=170508
1262
1263         Reviewed by Eric Carlson.
1264
1265         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1266
1267 2017-04-06  Jonathan Bedard  <jbedard@apple.com>
1268
1269         REGRESSION: Simulators failing to install after launch_app times out
1270         <rdar://problem/31478107>
1271
1272         Unreviewed infrastructure fix.
1273
1274         * Scripts/webkitpy/xcode/simulated_device.py:
1275         (SimulatedDevice.launch_app._install_timeout): Raise RuntimeError, not Exception.
1276
1277 2017-04-05  Joseph Pecoraro  <pecoraro@apple.com>
1278
1279         test262: module test progressions need updated expectations (@@iterator changes)
1280         https://bugs.webkit.org/show_bug.cgi?id=170535
1281
1282         Reviewed by Saam Barati.
1283
1284         * Scripts/run-jsc-stress-tests:
1285         Add :failDueToOutdatedOrBadTest to distinguish between a test failure
1286         in JavaScriptCore or an outdated or incorrect test262 test.
1287
1288 2017-04-05  Joseph Pecoraro  <pecoraro@apple.com>
1289
1290         Remove run-jsc-stress-tests benign warning about otool '-S' switch
1291         https://bugs.webkit.org/show_bug.cgi?id=170527
1292
1293         Reviewed by Aakash Jain.
1294
1295         * Scripts/run-jsc-stress-tests:
1296         The switch is not necessary and produces an error.
1297
1298 2017-04-05  Jonathan Bedard  <jbedard@apple.com>
1299
1300         webkitpy: Add pid logging for simulator processes
1301         https://bugs.webkit.org/show_bug.cgi?id=170505
1302
1303         Reviewed by Alexey Proskuryakov.
1304
1305         * Scripts/webkitpy/port/simulator_process.py:
1306         (SimulatorProcess._start.handler): Add pid to exception.
1307         (SimulatorProcess._start): Ditto.
1308         * Scripts/webkitpy/xcode/simulated_device.py:
1309         (SimulatedDevice.launch_app): Log pid when the process fails to launch and when
1310         a pid is successfully returned.
1311
1312 2017-04-05  Ryan Haddad  <ryanhaddad@apple.com>
1313
1314         Unreviewed, rolling out r214932.
1315
1316         This change broke an internal build.
1317
1318         Reverted changeset:
1319
1320         "[ios-simulator] API test WebKit2.DataDetectionReferenceDate
1321         timing out"
1322         https://bugs.webkit.org/show_bug.cgi?id=161967
1323         http://trac.webkit.org/changeset/214932
1324
1325 2017-04-05  Ryan Haddad  <ryanhaddad@apple.com>
1326
1327         Unreviewed, rolling out r214962.
1328
1329         Roll r214937 back in because it wasn't at fault for the build
1330         breakage.
1331
1332         Reverted changeset:
1333
1334         "Unreviewed, rolling out r214937."
1335         https://bugs.webkit.org/show_bug.cgi?id=170365
1336         http://trac.webkit.org/changeset/214962
1337
1338 2017-04-05  Ryan Haddad  <ryanhaddad@apple.com>
1339
1340         Unreviewed, rolling out r214937.
1341
1342         This change broke an internal build.
1343
1344         Reverted changeset:
1345
1346         "REGRESSION (r202472): Data Detection overwrites existing
1347         links in detected ranges"
1348         https://bugs.webkit.org/show_bug.cgi?id=170365
1349         http://trac.webkit.org/changeset/214937
1350
1351 2017-04-05  Jonathan Bedard  <jbedard@apple.com>
1352
1353         Increase timeouts for simulator testing
1354         Unreviewed infrastructure fix.
1355
1356         r214895 was not sufficient, increasing timeouts again.
1357
1358         * Scripts/webkitpy/xcode/simulated_device.py:
1359         (SimulatedDevice.install_app): Increase timeout from 3 to 10 seconds.
1360
1361 2017-04-05  Aakash Jain  <aakash_jain@apple.com>
1362
1363         Formatting fix to remove extra space.
1364
1365         Unreviewed formatting fix.
1366
1367         * Scripts/webkitdirs.pm:
1368         (isEmbeddedWebKit): Remove extra space.
1369
1370 2017-04-05  Aakash Jain  <aakash_jain@apple.com>
1371
1372         Rename isIOSLikeWebKit to isEmbeddedWebKit.
1373
1374         Rubber-stamped by Alexey Proskuryakov. 
1375
1376         * Scripts/webkitdirs.pm:
1377         (isEmbeddedWebKit): Added
1378         (isIOSLikeWebKit): Deleted.
1379
1380 2017-04-05  Alex Christensen  <achristensen@webkit.org>
1381
1382         Fix CMake build.
1383
1384         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
1385         * TestRunnerShared/spi/CoreGraphicsSPI.h: Removed.
1386         * TestRunnerShared/spi/CoreGraphicsTestSPI.h: Copied from Tools/TestRunnerShared/spi/CoreGraphicsSPI.h.
1387         There is a CoreGraphicsSPI.h in WebCore and the CMake build was finding the wrong one.
1388         Since we just inherit the include paths from WebCore in the CMake build and since this SPI is only used for testing,
1389         I just renamed CoreGraphicsSPI.h to CoreGraphicsTestSPI.h to avoid any name collisions.
1390         * WebKitTestRunner/PlatformMac.cmake:
1391         Add some missing files.
1392         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1393
1394 2017-04-05  Keith Miller  <keith_miller@apple.com>
1395
1396         Add debug option to run-jsc script
1397         https://bugs.webkit.org/show_bug.cgi?id=170503
1398
1399         Reviewed by Yusuke Suzuki.
1400
1401         Adds a new option to the run-jsc script so that when passed
1402         "--debug" it will wrap the jsc call with an lldb invocation. If
1403         someone wishes to use a different debugger they can set the
1404         DEBUGGER environment variable. Additionally, run-jsc now exits
1405         with the exit status of the jsc call.
1406
1407         * Scripts/run-jsc:
1408
1409 2017-04-05  Andy Estes  <aestes@apple.com>
1410
1411         REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
1412         https://bugs.webkit.org/show_bug.cgi?id=170365
1413         <rdar://problem/29205721>
1414
1415         Reviewed by Tim Horton.
1416
1417         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
1418         (expectLinkCount): Changed to only query links with the x-apple-data-detectors attribute.
1419         (TEST): Re-enabled the test, which now passes.
1420
1421 2017-04-05  Andy Estes  <aestes@apple.com>
1422
1423         [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
1424         https://bugs.webkit.org/show_bug.cgi?id=167594
1425
1426         Re-enabled this API test now that webkit.org/b/161967 is fixed.
1427
1428         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
1429         (TEST):
1430
1431 2017-04-05  Andy Estes  <aestes@apple.com>
1432
1433         [ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
1434         https://bugs.webkit.org/show_bug.cgi?id=161967
1435
1436         Reviewed by Alexey Proskuryakov.
1437
1438         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
1439         (TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
1440
1441 2017-04-04  Simon Fraser  <simon.fraser@apple.com>
1442
1443         Various settings in Minibrowser are off by default, and should be on
1444         https://bugs.webkit.org/show_bug.cgi?id=170465
1445         rdar://problem/31421543
1446
1447         Reviewed by Tim Horton.
1448
1449         Explicitly set preferences that should be on by default to enabled, if they have not been
1450         set previously.
1451
1452         * MiniBrowser/mac/SettingsController.m:
1453         (-[SettingsController init]):
1454
1455 2017-04-04  JF Bastien  <jfbastien@apple.com>
1456
1457         Add JF Bastien as reviewer
1458         https://bugs.webkit.org/show_bug.cgi?id=170481
1459
1460         Reviewed by Mark Lam.
1461
1462         * Scripts/webkitpy/common/config/contributors.json:
1463
1464 2017-04-04  Jonathan Bedard  <jbedard@apple.com>
1465
1466         Increase timeouts for simulator testing
1467
1468         Unreviewed infrastructure fix.
1469
1470         * Scripts/webkitpy/port/simulator_process.py:
1471         (SimulatorProcess._start): Increase timeout from 3 to 6 seconds.
1472         * Scripts/webkitpy/xcode/simulated_device.py:
1473         (SimulatedDevice.install_app): Increase timeout from 1 to 3 seconds.
1474
1475 2017-04-04  Tim Horton  <timothy_horton@apple.com>
1476
1477         [Mac] -[WKWebView findMatchesForString:relativeToMatch:findOptions:maxResults:resultCollector:] invokes the resultCollector with didWrap = NO even when it wraps
1478         https://bugs.webkit.org/show_bug.cgi?id=165801
1479         <rdar://problem/29649535>
1480
1481         Reviewed by Wenson Hsieh.
1482
1483         * TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm:
1484         (TEST):
1485         Add some tests for wrapping finds.
1486
1487 2017-04-03  Joseph Pecoraro  <pecoraro@apple.com>
1488
1489         Add some new patterns to filter-build-webkit
1490         https://bugs.webkit.org/show_bug.cgi?id=170429
1491
1492         Reviewed by Alexey Proskuryakov.
1493
1494         * Scripts/filter-build-webkit:
1495         (setOutputFormatOption):
1496
1497 2017-04-03  Wenson Hsieh  <wenson_hsieh@apple.com>
1498
1499         Data interaction should register type identifiers in order of priority
1500         https://bugs.webkit.org/show_bug.cgi?id=170428
1501         <rdar://problem/30633296>
1502
1503         Reviewed by Tim Horton.
1504
1505         Augments existing unit tests to check for the existence and priority of type identifiers in the UIItemProviders
1506         created upon starting data interaction. Also fixes a race condition in one of the unit tests and adds a new unit
1507         test for data interaction from a textarea to an input.
1508
1509         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1510         (checkTypeIdentifierPrecedesOtherTypeIdentifier):
1511         (TestWebKitAPI::TEST):
1512         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1513         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1514         (-[DataInteractionSimulator _advanceProgress]):
1515         (-[DataInteractionSimulator sourceItemProviders]):
1516         (-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
1517
1518 2017-04-03  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1519
1520         [GTK][JHBuild] Update mesa repository url for tarballs
1521         https://bugs.webkit.org/show_bug.cgi?id=170431
1522
1523         Reviewed by Michael Catanzaro.
1524
1525         * gtk/jhbuild.modules:
1526
1527 2017-04-03  Joseph Pecoraro  <pecoraro@apple.com>
1528
1529         TestWebKitAPI: Warning: Multiple build commands for Ahem.ttf
1530         https://bugs.webkit.org/show_bug.cgi?id=170430
1531
1532         Reviewed by Alexey Proskuryakov.
1533
1534         * TestWebKitAPI/Tests/mac/Ahem.ttf: Removed.
1535         Eliminate one of the copies of Ahem.ttf.
1536
1537         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1538         Once eliminated, there is now only one Ahem.ttf that is copied
1539         to the Resources bundle. Drive-by sort the project file.
1540
1541 2017-04-03  Simon Fraser  <simon.fraser@apple.com>
1542
1543         Allow MiniBrowser windows to receive local file drags again
1544         https://bugs.webkit.org/show_bug.cgi?id=170422
1545
1546         Reviewed by Wenson Hsieh.
1547
1548         Adopt the new UIDelegate SPI to allow drops.
1549
1550         * MiniBrowser/mac/WK2BrowserWindowController.m:
1551         (-[WK2BrowserWindowController _webView:dragDestinationActionMaskForDraggingInfo:]):
1552
1553 2017-04-03  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1554
1555         [GTK][JHBuild] Fetch libvpx from a release tarball instead of git
1556         https://bugs.webkit.org/show_bug.cgi?id=170426
1557
1558         Reviewed by Michael Catanzaro.
1559
1560         * gtk/jhbuild.modules:
1561
1562 2017-04-03  Nan Wang  <n_wang@apple.com>
1563
1564         AX: Expose link children when doing search predication on iOS
1565         https://bugs.webkit.org/show_bug.cgi?id=170424
1566         <rdar://problem/31413335>
1567
1568         Reviewed by Chris Fleizach.
1569
1570         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
1571         (AccessibilityUIElement::uiElementForSearchPredicate):
1572         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
1573         (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
1574
1575 2017-04-03  Brian Burg  <bburg@apple.com>
1576
1577         run-safari should support launching with custom language and locale
1578         https://bugs.webkit.org/show_bug.cgi?id=170397
1579
1580         Reviewed by Alexey Proskuryakov.
1581
1582         Hook up -AppleLanguages and -AppleLocale to command line options.
1583
1584         * Scripts/webkitdirs.pm:
1585         (printHelpAndExitForRunAndDebugWebKitAppIfNeeded):
1586         (argumentsForRunAndDebugMacWebKitApp):
1587
1588 2017-04-03  Jonathan Bedard  <jbedard@apple.com>
1589
1590         webkitpy: Provide option to skip install
1591         https://bugs.webkit.org/show_bug.cgi?id=170344
1592
1593         Reviewed by Alexey Proskuryakov.
1594
1595         Installing can take time for on device testing.  Provide an option to skip install
1596         and use whatever driver is currently installed on the device or simulator.
1597
1598         * Scripts/webkitpy/port/base.py:
1599         (Port.check_build): Do not check driver if skipping install.
1600         * Scripts/webkitpy/port/factory.py:
1601         (platform_options): Add '--no-install' option.
1602         * Scripts/webkitpy/port/ios.py:
1603         (IOSPort.setup_test_run): Check install option before installing.
1604
1605 2017-04-03  Keith Miller  <keith_miller@apple.com>
1606
1607         WebAssembly: Update spec tests
1608         https://bugs.webkit.org/show_bug.cgi?id=170361
1609
1610         Rubber-stamped by Saam Barati.
1611
1612         Update the runner to know the new wasm spec test harness code.
1613
1614         * Scripts/run-jsc-stress-tests:
1615
1616 2017-04-01  Alexey Proskuryakov  <ap@apple.com>
1617
1618         Rolling back <https://trac.webkit.org/r214697>, as it made WebKit2.DataDetectionReferenceDate time out.
1619
1620         Was REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
1621         https://bugs.webkit.org/show_bug.cgi?id=170365
1622
1623         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
1624
1625 2017-04-01  Csaba Osztrogonác  <ossy@webkit.org>
1626
1627         Mac cmake buildfix after 214586.
1628         https://bugs.webkit.org/show_bug.cgi?id=170381
1629
1630         Unreviewed speculative buildfix.
1631
1632         * WebKitTestRunner/PlatformMac.cmake:
1633
1634 2017-04-01  Csaba Osztrogonác  <ossy@webkit.org>
1635
1636         Unreviewed speculative Mac cmake buildfix after r214586, just for fun.
1637         https://bugs.webkit.org/show_bug.cgi?id=161675
1638
1639         * WebKitTestRunner/PlatformMac.cmake:
1640
1641 2017-03-31  Jonathan Bedard  <jbedard@apple.com>
1642
1643         webkitpy: Add target host concept
1644         https://bugs.webkit.org/show_bug.cgi?id=170186
1645         <rdar://problem/31301797>
1646
1647         Reviewed by Alexey Proskuryakov.
1648
1649         Adding the idea of a target host. Target hosts are objects conforming to the
1650         structure of the SystemHost object in Scripts/webkitpy/common/system/systemhost.py
1651         Target hosts are the hosts associated with a worker process.
1652
1653         * Scripts/webkitpy/common/system/filesystem.py:
1654         (FileSystem.map_base_host_path): Convert a path from an absolute path on the base
1655         host to an absolute path on this host.
1656         (FileSystem.move_to_base_host): Move file from this host to the base host.
1657         (FileSystem.move_from_base_host): Move file from the base host to this host.
1658         (FileSystem.copy_to_base_host): Copy file from this host to the base host.
1659         (FileSystem.copy_from_base_host): Copy file from the base host to this host.
1660         * Scripts/webkitpy/common/system/filesystem_mock.py:
1661         (MockFileSystem.map_base_host_path): Convert a path from an absolute path on the base
1662         host to an absolute path on this host.
1663         (MockFileSystem.move_to_base_host): Move file from this host to the base host.
1664         (MockFileSystem.move_from_base_host): Move file from the base host to this host.
1665         (MockFileSystem.copy_to_base_host): Copy file from this host to the base host.
1666         (MockFileSystem.copy_from_base_host): Copy file from the base host to this host.
1667         * Scripts/webkitpy/port/base.py:
1668         (Port.target_host): Return host determined by worker number.
1669         (Port.abspath_for_test): Accept optional target_host argument to return location
1670         of test on a target host.
1671         (Port._driver_tempdir): Accept optional target_host argument to return a temporary
1672         directory on a target host.
1673         (Port.sample_process): Accept optional target_host argument to sample process on
1674         a target host.
1675         * Scripts/webkitpy/port/darwin.py:
1676         (DarwinPort.sample_process): Run sample process on target host.
1677         (DarwinPort.sample_file_path): Accept directory for file.
1678         (DarwinPort.spindump_file_path): Ditto.
1679         * Scripts/webkitpy/port/darwin_testcase.py:
1680         (DarwinTest.test_spindump): Check file movement.
1681         (DarwinTest.test_sample_process): Ditto.
1682         (DarwinTest.test_sample_process_exception):
1683         * Scripts/webkitpy/port/driver.py:
1684         (Driver.__init__): Add and set self._target_host variable.
1685         (Driver._start): Pass target host to _driver_tempdir().
1686         (Driver.stop): Call the target host's rmtree.
1687         (Driver._check_for_driver_timeout): Pass target host to sample_process.
1688         (Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
1689         (Driver._command_from_driver_input): Pass target host to abspath_for_test and map
1690         layout test directory to target host.
1691         * Scripts/webkitpy/port/ios.py:
1692         (IOSPort):
1693         (IOSPort.target_host): Replaced device_for_worker_number.
1694         (IOSPort.setup_test_run): Replace device_for_worker_number with target_host.
1695         (IOSPort.device_for_worker_number): Replaced with target_host.
1696         * Scripts/webkitpy/port/server_process.py:
1697         (ServerProcess.__init__): Accept target_host instead of worker_number.
1698         (ServerProcess._start): Replace _host with _target_host.
1699         (ServerProcess._handle_timeout): Ditto.
1700         (ServerProcess._kill): Ditto.
1701         * Scripts/webkitpy/port/simulator_process.py:
1702         (SimulatorProcess.__init__): Accept target_host instead of worker_number.
1703         (SimulatorProcess._start): Replace _device with _target_host.
1704         (SimulatorProcess.stop): Ditto.
1705         (SimulatorProcess._kill): Deleted.
1706
1707 2017-03-31  Jonathan Bedard  <jbedard@apple.com>
1708
1709         Unreviewed fix after r214569
1710         https://bugs.webkit.org/show_bug.cgi?id=170255
1711
1712         Unreviewed infrastructure fix.
1713
1714         * Scripts/webkitpy/port/ios.py:
1715         (IOSPort.clean_up_test_run): Check if the device is defined before teardown.
1716
1717 2017-03-31  Andy Estes  <aestes@apple.com>
1718
1719         REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
1720         https://bugs.webkit.org/show_bug.cgi?id=170365
1721         <rdar://problem/29205721>
1722
1723         Reviewed by Tim Horton.
1724
1725         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
1726         (expectLinkCount): Changed to only query links with the x-apple-data-detectors attribute.
1727         (TEST): Re-enabled the test, which now passes.
1728
1729 2017-03-31  Tim Horton  <timothy_horton@apple.com>
1730
1731         Mail can get stuck underneath FindController::findStringMatches after searching in a long message
1732         https://bugs.webkit.org/show_bug.cgi?id=170326
1733         <rdar://problem/30330395>
1734
1735         Reviewed by Simon Fraser.
1736
1737         * TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm:
1738         (TEST):
1739
1740 2017-03-31  Carlos Garcia Campos  <cgarcia@igalia.com>
1741
1742         Unreviewed. Fix WTR crashes in GTK+ port after r214413.
1743
1744         Fixes: http/tests/ssl/upgrade-origin-usage.html
1745                http/tests/websocket/tests/hybi/network-process-crash-error.html
1746                http/tests/websocket/tests/hybi/simple-wss.html
1747
1748         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
1749         (WTR::TestController::platformContext): Return the context.
1750
1751 2017-03-30  Sam Weinig  <sam@webkit.org>
1752
1753         Expose the WKView SPI, _prepareForMoveToWindow:withCompletionHandler as WKWebView SPI
1754         https://bugs.webkit.org/show_bug.cgi?id=170315
1755
1756         Reviewed by Simon Fraser.
1757
1758         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1759         * TestWebKitAPI/Tests/WebKit2Cocoa/PrepareForMoveToWindow.mm: Added.
1760         Add test showing the completion handler is called.
1761
1762 2017-03-30  Filip Pizlo  <fpizlo@apple.com>
1763
1764         Air should support linear scan for optLevel<2
1765         https://bugs.webkit.org/show_bug.cgi?id=170161
1766
1767         Reviewed by Saam Barati.
1768         
1769         This makes us run a bunch of JS tests at optLevel=1 to force testing of this new compiler
1770         pipeline.
1771
1772         * Scripts/run-jsc-stress-tests:
1773
1774 2017-03-30  Aakash Jain  <aakash_jain@apple.com>
1775
1776         Support tvOS and watchOS in webkitdirs.pm
1777         https://bugs.webkit.org/show_bug.cgi?id=170267
1778
1779         Reviewed by Alexey Proskuryakov.
1780
1781         * Scripts/webkitdirs.pm:
1782         (determineXcodeSDK): Evaluate sdk for tvos and watchos.
1783         (xcodeSDKPlatformName): Added support for tvos and watchos.
1784         (determinePortName): Same.
1785         (isAppleCocoaWebKit): Same.
1786         (willUseAppleTVDeviceSDK): Added.
1787         (willUseAppleTVSimulatorSDK): Added.
1788         (willUseWatchDeviceSDK): Added.
1789         (willUseWatchSimulatorSDK): Added.
1790         (isTVOSWebKit): Added.
1791         (isWATCHOSWebKit): Added.
1792         (isIOSLikeWebKit): Added.
1793
1794 2017-03-30  Wenson Hsieh  <wenson_hsieh@apple.com>
1795
1796         [WK2] Touches should not cancel when showing a custom action sheet while data interaction is active
1797         https://bugs.webkit.org/show_bug.cgi?id=170291
1798         <rdar://problem/31301388>
1799
1800         Reviewed by Tim Horton.
1801
1802         Adds support for testing how the custom action sheet presentation codepath interacts with data interaction, as
1803         well as a new unit test. In this case, we force data interaction to fail if touches are canceled on the
1804         shared UIApplication, and verify that data interaction completes successfully.
1805
1806         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1807         (TestWebKitAPI::TEST):
1808         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1809         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1810         (-[DataInteractionSimulatorApplication _cancelAllTouches]):
1811         (-[DataInteractionSimulator initWithWebView:]):
1812         (-[DataInteractionSimulator simulateAllTouchesCanceled:]):
1813         (-[DataInteractionSimulator runFrom:to:]):
1814         (-[DataInteractionSimulator _advanceProgress]):
1815         (-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
1816
1817 2017-03-30  Per Arne Vollan  <pvollan@apple.com>
1818
1819         [Win] Pass close_fds = True in Python popen call.
1820         https://bugs.webkit.org/show_bug.cgi?id=170172
1821
1822         Reviewed by Brent Fulgham.
1823
1824         This was previously not supported on Windows, but in Python 2.7.10 it is.
1825
1826         * Scripts/webkitpy/common/system/executive.py:
1827         (Executive._should_close_fds):
1828         * Scripts/webkitpy/port/server_process.py:
1829         (ServerProcess._start):
1830
1831 2017-03-30  Aakash Jain  <aakash_jain@apple.com>
1832
1833         Change my status to be a WebKit reviewer.
1834
1835         Unreviewed status update edit.
1836
1837         * Scripts/webkitpy/common/config/contributors.json:
1838
1839 2017-03-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1840
1841         Change my status to be a WebKit reviewer.
1842
1843         Unreviewed status update edit.
1844
1845         * Scripts/webkitpy/common/config/contributors.json:
1846
1847 2017-03-29  Tim Horton  <timothy_horton@apple.com>
1848
1849         Swipe gesture tests don't work on macOS Sierra
1850         https://bugs.webkit.org/show_bug.cgi?id=161675
1851         <rdar://problem/23379930>
1852
1853         Reviewed by Darin Adler.
1854
1855         * DumpRenderTree/mac/UIScriptControllerMac.mm:
1856         (WTR::UIScriptController::platformPlayBackEventStream):
1857         (WTR::UIScriptController::beginBackSwipe):
1858         (WTR::UIScriptController::completeBackSwipe):
1859         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.h: Copied from Tools/DumpRenderTree/mac/UIScriptControllerMac.mm.
1860         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm: Added.
1861         (eventIsOfType):
1862         (eventIsOfTypes):
1863         (eventIsOfGestureType):
1864         (eventIsOfGestureTypes):
1865         (+[EventSerializer dictionaryForEvent:relativeToTime:]):
1866         (+[EventSerializer createEventForDictionary:inWindow:relativeToTime:]):
1867         (+[EventSerializer playEventStream:inWindow:completionHandler:]):
1868         * TestRunnerShared/EventSerialization/mac/SharedEventStreamsMac.h: Copied from Tools/WebKitTestRunner/mac/UIScriptControllerMac.mm.
1869         * TestRunnerShared/EventSerialization/mac/SharedEventStreamsMac.mm: Added.
1870         (beginSwipeBackEventStream):
1871         (completeSwipeBackEventStream):
1872         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1873         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1874         (WTR::UIScriptController::playBackEventStream):
1875         (WTR::UIScriptController::beginBackSwipe):
1876         (WTR::UIScriptController::completeBackSwipe):
1877         (WTR::UIScriptController::platformPlayBackEventStream):
1878         (WTR::UIScriptController::platformClearAllCallbacks): Deleted.
1879         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1880         * TestRunnerShared/spi/CoreGraphicsSPI.h: Added.
1881         * TestRunnerShared/spi/IOKitSPI.h: Renamed from Tools/WebKitTestRunner/ios/IOKitSPI.h.
1882         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1883         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
1884         (WTR::playBackEvents):
1885         (WTR::UIScriptController::beginBackSwipe):
1886         (WTR::UIScriptController::completeBackSwipe):
1887         (WTR::UIScriptController::platformPlayBackEventStream):
1888
1889 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
1890
1891         webkitpy: Robust test clean-up
1892         https://bugs.webkit.org/show_bug.cgi?id=170255
1893
1894         Reviewed by Alexey Proskuryakov.
1895
1896         On-device testing is the motivation for this change.  Failure to run clean-up functions can
1897         result in zombie processes, residual NFS mounts and other undesirable remnants from a failed
1898         test run.  Make an effort to clean-up even if exceptions are thrown during set-up or clean-up.
1899
1900         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1901         (Manager._set_up_run): Clean up test run if set-up fails.
1902         * Scripts/webkitpy/port/ios.py:
1903         (IOSPort.clean_up_test_run): Continue cleaning up devices even after an exception is thrown.
1904
1905 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
1906
1907         Simulator testing stops after the first crash
1908         <rdar://problem/31325362>
1909
1910         Unreviewed infrastructure fix.
1911
1912         * Scripts/webkitpy/xcode/simulated_device.py:
1913         (SimulatedDevice):
1914         (SimulatedDevice.launch_app): Increase timeout when attempting to launch app.
1915
1916 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
1917
1918         webkitpy: Standardize web-server port definitions
1919         https://bugs.webkit.org/show_bug.cgi?id=170144
1920         <rdar://problem/31284026>
1921
1922         Reviewed by Daniel Bates.
1923
1924         Default web-server ports should be declared in global variables.
1925         Add functions to web-servers which return the ports these servers
1926         are using so that other tools can forward them.
1927
1928         * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
1929         (LayoutTestApacheHttpd.__init__): Use shared constants in http_server_base.py.
1930         * Scripts/webkitpy/layout_tests/servers/apache_http_server_unittest.py:
1931         (TestLayoutTestApacheHttpd.test_start_cmd): Check port_to_forward for expected values.
1932         * Scripts/webkitpy/layout_tests/servers/http_server.py:
1933         (Lighttpd.__init__): Use shared constants in http_server_base.py.
1934         (Lighttpd._prepare_config): Ditto.
1935         * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
1936         (HttpServerBase): Add default port constants.
1937         (HttpServerBase.ports_to_forward): Add function to return ports used for http server.
1938         * Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:
1939         (TestHttpServer.test_start_cmd): Check port_to_forward for expected values.
1940         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
1941          (WebPlatformTestServer.ports_to_forward): Add function to return ports used for web-platform tests.
1942         * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
1943         (PyWebSocket): Make default port values public.
1944         (PyWebSocket.__init__): Use public default port.
1945         (PyWebSocket.ports_to_forward): Return port used in an array.
1946         * Scripts/webkitpy/port/base.py:
1947         (Port.to.ports_to_forward): Return all ports used the various web-servers managed by the port object.
1948         (Port.to.start_websocket_server): Use PyWebSocket port constants.
1949
1950 2017-03-29  Wenson Hsieh  <wenson_hsieh@apple.com>
1951
1952         Links with empty hrefs should not be drag sources
1953         https://bugs.webkit.org/show_bug.cgi?id=170241
1954         <rdar://problem/31305505>
1955
1956         Reviewed by Tim Horton.
1957
1958         Adds a new API test: DataInteractionTests.LinkWithEmptyHREF.
1959
1960         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1961         (TestWebKitAPI::TEST):
1962         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1963
1964         Expose the current phase of the data interaction simulator for verifying behaviors in unit tests.
1965
1966         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1967         (-[DataInteractionSimulator phase]):
1968
1969 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
1970
1971         Use TCP instead of FIFOs for Simulator/Device communication
1972         https://bugs.webkit.org/show_bug.cgi?id=169419
1973         <rdar://problem/30949615>
1974
1975         Reviewed by Alexey Proskuryakov.
1976
1977         Using TCP instead of FIFOs when communicating with devices allows the device being tested
1978         to be on a different machine then the one handling the management of the test run.
1979
1980         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
1981         * DumpRenderTree/mac/DumpRenderTree.mm:
1982         (dumpRenderTree): Call setUp/tearDownIOSLayoutTestCommunication() instead of using FIFOs.
1983         * Scripts/webkitpy/port/device.py:
1984         (Device.__init__): Initialize the listening_socket.
1985         (Device.listening_port): Return port of listening socket.
1986         (Device.prepare_for_testing): Open listening socket on an open port, prepare platform device
1987         fro testing.
1988         (Device.finished_testing): Close listening socket associated with this device, call the
1989         platform device's finished_testing function if it exists.
1990         * Scripts/webkitpy/port/ios.py:
1991         (IOSPort.setup_test_run): Prepare each device for testing.
1992         (IOSPort.clean_up_test_run): Notify each device that testing has completed.
1993         * Scripts/webkitpy/port/ios_simulator.py:
1994         (IOSSimulatorPort): Work around device persistence bug.
1995         (IOSSimulatorPort.__init__): Ditto.
1996         * Scripts/webkitpy/port/simulator_process.py:
1997         (SimulatorProcess):
1998         (SimulatorProcess.NonBlockingFileFromSocket): Add to work around shortcomings in
1999         Python 2’s makefile.
2000         (SimulatorProcess.NonBlockingFileFromSocket.__init__): Initialize file with socket.
2001         (SimulatorProcess.ReadFileSocket.close): Close file and then socket;
2002         (SimulatorProcess.__init__): Pass TCP port over environment, remove FIFO names.
2003         (SimulatorProcess.__getattr__): Expose all file attributes.
2004         (SimulatorProcess._accept_connection_create_file): Wait for connection from server and
2005         create and return a file-like object from the incoming connection.
2006         (SimulatorProcess._start): Use TCP connections instead of FIFOs.
2007         (SimulatorProcess._start.handler): Output server port in timeout exception.
2008         (SimulatorProcess._reset): Deleted.
2009         * TestRunnerShared/IOSLayoutTestCommunication.cpp: Added.
2010         (connectToServer): Return socket connected to the provided server address.
2011         (setupiOSLayoutTestCommunication): Connect stdin, stdout and stderr as socket to a
2012         TCP server running on localhost.
2013         (tearDownIOSLayoutTestCommunication): Close stdin, stdout and stderr TCP sockets.
2014         * TestRunnerShared/IOSLayoutTestCommunication.h: Added.
2015         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2016         * WebKitTestRunner/ios/TestControllerIOS.mm:
2017         (WTR::TestController::platformInitialize): Call setUpIOSLayoutTestCommunication()
2018         instead of using FIFOs.
2019         (WTR::TestController::platformDestroy): Call tearDownIOSLayoutTestCommunication().
2020
2021 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
2022
2023         webkitpy: Add IOSDevicePort and IOSPort tests
2024         https://bugs.webkit.org/show_bug.cgi?id=170206
2025         <rdar://problem/31308364>
2026
2027         Reviewed by Alexey Proskuryakov.
2028
2029         * Scripts/webkitpy/port/darwin_testcase.py: Removed unused import.
2030         * Scripts/webkitpy/port/ios_device_unittest.py: Added.
2031         (iosDeviceTest): Contains tests for the IOSDevicePort.
2032         (iosDeviceTest.make_port): Creates an IOSDevicePort with arguments.
2033         (iosDeviceTest.test_operating_system): Check for the correct operating system.
2034         * Scripts/webkitpy/port/ios_simulator_unittest.py: Moved from Tools/Scripts/webkitpy/port/ios_unittest.py.
2035         (iosSimulatorTest): Inherit from ios_testcase.
2036         (iosSimulatorTest.make_port): Ditto.
2037         (iosSimulatorTest.test_get_crash_log): Ditto.
2038         * Scripts/webkitpy/port/ios_testcase.py: Added.
2039         (iOSTest): Contains shared tests for the IOSDevicePort and IOSSimulatorPort.
2040         (iOSTest.test_driver_name): Tests for iOS app driver.
2041         (iOSTest.test_baseline_searchpath): Check that ios and ios-wk1 are in the baseline search path.
2042         * Scripts/webkitpy/port/ios_unittest.py: Moved to ios_simulator_unittest.py.
2043         * Scripts/webkitpy/port/port_testcase.py:
2044         (PortTestCase): Rename is_simulator to disable_setup to more accurately describe it's meaning.
2045         (PortTestCase.test_diff_image): Use disable_setup instead of is_simulator.
2046         (PortTestCase.test_diff_image_crashed): Ditto.
2047
2048 2017-03-28  Jason Marcell  <jmarcell@apple.com>
2049
2050         Fix `index-expected.txt` for dashboard test results.
2051         https://bugs.webkit.org/show_bug.cgi?id=170214
2052
2053         Reviewed by Alexey Proskuryakov.
2054
2055         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/index-expected.txt:
2056
2057 2017-03-28  Alexey Proskuryakov  <ap@apple.com>
2058
2059         Bot watcher's dashboard has separate settings for "mac" and "macos"
2060         https://bugs.webkit.org/show_bug.cgi?id=170164
2061
2062         Reviewed by Tim Horton.
2063
2064         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js:
2065         (Settings.prototype.parsePlatformFamily): Aded a special case for "macos".
2066
2067 2017-03-28  Alexey Proskuryakov  <ap@apple.com>
2068
2069         Fix dashboard test results on the dashboard
2070         https://bugs.webkit.org/show_bug.cgi?id=170158
2071
2072         Reviewed by Tim Horton.
2073
2074         Link to result diff instead of stdio. Looking at the diff, I wonder if it can be
2075         further improved, as it's not super readable, but stdio is entirely useless in this context.
2076
2077         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
2078         (Buildbot.prototype.dashboardTestResultsURLForIteration): Generate formatted diff link.
2079
2080         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
2081         Fixed a typo in step name, so that it's actually treated as productive.
2082
2083         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
2084         (BuildbotTesterQueueView.prototype.appendBuilderQueueStatus):
2085         (BuildbotTesterQueueView.prototype.update):
2086         (BuildbotTesterQueueView.prototype._presentPopoverForGenericTestFailures):
2087         Added special handling for dashboard test results.
2088
2089 2017-03-28  Aakash Jain  <aakash_jain@apple.com>
2090
2091         Fix Dashboard test _presentPopoverForJavaScriptCoreTestRegressions
2092         https://bugs.webkit.org/show_bug.cgi?id=170193
2093
2094         Reviewed by Alexey Proskuryakov.
2095
2096         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
2097         Fixed the order of arguments.
2098
2099 2017-03-28  Aakash Jain  <aakash_jain@apple.com>
2100
2101         Dashboard tests fails to fetch the revision from commits
2102         https://bugs.webkit.org/show_bug.cgi?id=170191
2103
2104         Reviewed by Alexey Proskuryakov.
2105
2106         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/MockTrac.js:
2107         Added recordedCommitIndicesByRevisionNumber.
2108         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
2109         (setup): Populated trac.recordedCommitIndicesByRevisionNumber since the dashboard code uses this variable.
2110
2111 2017-03-28  Timothy Horton  <timothy_horton@apple.com>
2112
2113         Safari crashes when attempting to close tab that is displaying PDF
2114         https://bugs.webkit.org/show_bug.cgi?id=170201
2115         <rdar://problem/31242019>
2116
2117         Reviewed by Wenson Hsieh.
2118
2119         * TestWebKitAPI/Tests/WebKit2Cocoa/DoAfterNextPresentationUpdateAfterCrash.mm:
2120         (TEST):
2121         Add a test for doAfterNextStablePresentationUpdate just like the existing
2122         non-stable one.
2123
2124 2017-03-28  Jonathan Bedard  <jbedard@apple.com>
2125
2126         webkitpy: Use host pattern for devices
2127         https://bugs.webkit.org/show_bug.cgi?id=170121
2128
2129         Reviewed by Daniel Bates.
2130
2131         Devices should be treated like hosts throughout webkitpy
2132         so that more code can be re-used.  Add the needed properties
2133         and use executive over custom implemented polling/killing
2134         functions.
2135
2136         * Scripts/webkitpy/port/device.py:
2137         (Device):
2138         (Device.executive): Add optional executive property.
2139         (Device.filesystem): Add optional filesystem property.
2140         (Device.user): Add optional user property.
2141         (Device.platform): Add optional platform property.
2142         (Device.workspace): Add optional workspace property.
2143         (Device.poll): Deleted.
2144         * Scripts/webkitpy/port/simulator_process.py:
2145         (SimulatorProcess.Popen.poll): Use the devices executive.
2146         (SimulatorProcess.stop): Ditto.
2147         (SimulatorProcess._kill): Ditto.
2148         * Scripts/webkitpy/xcode/simulated_device.py:
2149         (SimulatedDevice.__init__): Add executive, filesystem, user, platform
2150         and workspace to the platform device.
2151         (SimulatedDevice.poll): Deleted.
2152
2153 2017-03-28  Aakash Jain  <aakash_jain@apple.com>
2154
2155         Dashboard test fails with error: latestIterationGetter is not a function
2156         https://bugs.webkit.org/show_bug.cgi?id=170167
2157
2158         Reviewed by Alexey Proskuryakov.
2159
2160         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
2161         (this.view._latestProductiveIteration): Configure _latestProductiveIteration in setup.
2162
2163 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2164
2165         Another test v8.
2166
2167 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2168
2169         Another test v7.
2170
2171 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2172
2173         Another test v6.
2174
2175 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2176
2177         Another test v5.
2178
2179 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2180
2181         Another test v4.
2182
2183 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2184
2185         Another test v3.
2186
2187 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2188
2189         Another test v2.
2190
2191 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2192
2193         Another test.
2194
2195 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2196
2197         <rdar://problem/30949128>
2198         Update build.webkit.org to use port 16000 for PBChangeSource.
2199         
2200         Reviewed by Alexey Proskuryakov.
2201
2202         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2203
2204 2017-03-27  Jason Marcell  <jmarcell@apple.com>
2205
2206         Bots should run the dashboard tests
2207         https://bugs.webkit.org/show_bug.cgi?id=168994
2208
2209         Reviewed by Daniel Bates and David Kilzer.
2210
2211         We pull the `--results-directory` argument value out so that `RunDashboardTests` can override it so that we can separately run the dashboard layout tests.
2212
2213         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2214         (RunWebKitTests): Define a class variable called resultDirectory for the `--results-directory` argument so that subclasses can override this if needed.
2215         (RunWebKitTests.start): Set the `--results-directory` argument value to the value of self.resultDirectory.
2216         (RunDashboardTests): Subclass of RunWebKitTests in which we run the layout tests for the Bot Watcher's Dashboard.
2217         (RunDashboardTests.start): Override the `--layout-tests-directory` to point to the dashboard layout tests.
2218         (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.
2219         (TestFactory.__init__): Update unit tests to account for new RunDashboardTests step.
2220         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
2221         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
2222
2223 2017-03-27  Jonathan Bedard  <jbedard@apple.com>
2224
2225         webkitpy: Look for 'ios' test expectations for IOSPorts
2226         https://bugs.webkit.org/show_bug.cgi?id=169413
2227
2228         Reviewed by Alexey Proskuryakov.
2229
2230         Test expectations for iOS tests should include the 'ios' folder.  Modify
2231         default_baseline_search_path to include 'ios' folder and derivatives for
2232         IOSPort.
2233
2234         * Scripts/webkitpy/port/ios.py:
2235         (IOSPort._generate_all_test_configurations): Moved from IOSSimulatorPort.
2236         (IOSPort.default_baseline_search_path): Add ios expectations along with port specific expectations.
2237         (IOSPort.test_expectations_file_position): Added for testing.
2238         * Scripts/webkitpy/port/ios_simulator.py:
2239         (IOSSimulatorPort._generate_all_test_configurations): Moved to IOSPort.
2240         (IOSSimulatorPort.default_baseline_search_path): Moved to IOSPort.
2241
2242 2017-03-27  Jonathan Bedard  <jbedard@apple.com>
2243
2244         REGRESSION: Reseting _device_map on each child process
2245         <rdar://problem/31274476>
2246
2247         Unreviewed infrastructure fix.
2248
2249         * Scripts/webkitpy/port/ios_simulator.py:
2250         (IOSSimulatorPort): Add _DEVICE_MAP class variable.
2251         (IOSSimulatorPort.__init__): Use shared class variable
2252         (IOSSimulatorPort._device_for_worker_number_map): Use _DEVICE_MAP class variable
2253         (IOSSimulatorPort._create_devices): Ditto.
2254         (IOSSimulatorPort._quit_ios_simulator): Ditto.
2255         (IOSSimulatorPort.clean_up_test_run): Ditto.
2256
2257 2017-03-27  Jonathan Bedard  <jbedard@apple.com>
2258
2259         REGRESSION: Failing to iterate over Simulator.managed_devices map
2260         <rdar://problem/31274476>
2261
2262         Unreviewed infrastructure fix.
2263
2264         * Scripts/webkitpy/port/ios_simulator.py:
2265         (IOSSimulatorPort._create_devices): Iterate through managed_devices by worker number.
2266
2267 2017-03-27  Alex Christensen  <achristensen@webkit.org>
2268
2269         Make WebSockets work in network process
2270         https://bugs.webkit.org/show_bug.cgi?id=169930
2271
2272         Reviewed by Youenn Fablet.
2273
2274         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2275         Add terminateNetworkProcess for the new test
2276         http/tests/websocket/tests/hybi/network-process-crash-error.html
2277         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2278         (WTR::TestRunner::setAllowsAnySSLCertificate):
2279         (WTR::TestRunner::terminateNetworkProcess):
2280         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2281         * WebKitTestRunner/TestController.cpp:
2282         (WTR::TestController::setAllowsAnySSLCertificate):
2283         (WTR::TestController::terminateNetworkProcess):
2284         * WebKitTestRunner/TestController.h:
2285         * WebKitTestRunner/TestInvocation.cpp:
2286         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2287         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2288         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2289         (WTR::TestController::platformContext):
2290         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
2291         (WTR::TestController::platformContext):
2292         (WTR::TestController::platformLibraryPathForTesting):
2293         Add some infrastructure for http/tests/websocket/tests/hybi/simple-wss.html
2294         which calls testRunner.setAllowsAnySSLCertificate.  It used to only be effective
2295         for the WebProcess, but SocketStreamHandleImpl::createStreams is now in the NetworkProcess,
2296         and we need its call to Settings::allowsAnySSLCertificate to be loosened for this test,
2297         which tests that wss works, but our test certificate has an invalid certificate chain.
2298         We want production software to not have the ability to have its security weakened, so this
2299         is a test code path that is only implemented in WebKitTestRunner.
2300
2301 2017-03-25  Jonathan Bedard  <jbedard@apple.com>
2302
2303         webkitpy: Use generalized device instead of platform specific one
2304         https://bugs.webkit.org/show_bug.cgi?id=170078
2305
2306         Reviewed by Daniel Bates.
2307
2308         SimulatedDevice is re-created each time 'xcrun simctl list' is called.  Device
2309         should remain persistent.  Changing Device to a more explicit interface.
2310         SimulatedDevice no longer inherits from Device and IOSSimulator returns Devices
2311         wrapping SimulatedDevices.
2312
2313         * Scripts/webkitpy/port/device.py: Added.
2314         (Device):
2315         (Device.__init__): Construct with platform device.
2316         (Device.install_app): Install app at app path on platform device.
2317         (Device.launch_app): Launch app with bundle ID on platform device.
2318         (Device.poll): Poll platform device.
2319         (Device.udid): Access platform device UDID.
2320         (Device.__nonzero__): Check if instantiated with a valid platform device.
2321         (Device.__eq__): Compare by udid.
2322         (Device.__ne__): Ditto.
2323         (Device.__repr__): Print out platform_device representation.
2324         * Scripts/webkitpy/port/ios_simulator.py:
2325         (IOSSimulatorPort.__init__): Initialize the _device_map to an empty dictionary.
2326         (IOSSimulatorPort._device_for_worker_number_map):  Return self._device_map.
2327         (IOSSimulatorPort._create_simulators): Call Simulator.managed_devices directly.
2328         (IOSSimulatorPort._create_devices): Place Simulator.managed_devices into the
2329         device map.
2330         (IOSSimulatorPort._quit_ios_simulator): Reset self._device_map.
2331         * Scripts/webkitpy/xcode/device.py: Removed.
2332         * Scripts/webkitpy/xcode/simulated_device.py:
2333         (SimulatedDevice):
2334         (SimulatedDevice.__init__): Move host, name and did to SimulatedDevice.
2335         (SimulatedDevice.__eq__): Compare two simulated devices.
2336         (SimulatedDevice.__ne__): Ditto.
2337         (SimulatedDevice.__repr__): Print name and udid.
2338
2339 2017-03-25  Adrian Perez de Castro  <aperez@igalia.com>
2340
2341         [GTK] No value returned from PrintCustomWidgetTest::createWebKitPrintOperation() in TestPrinting.cpp
2342         https://bugs.webkit.org/show_bug.cgi?id=170059
2343
2344         Reviewed by Carlos Garcia Campos.
2345
2346         * TestWebKitAPI/Tests/WebKit2Gtk/TestPrinting.cpp: Use "void" as return type in the declaration,
2347         the only use of the method in this same file ignores the returned value anyway.
2348
2349 2017-03-24  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
2350
2351         webkitpy should be able to run API tests
2352         https://bugs.webkit.org/show_bug.cgi?id=170028
2353
2354         Reviewed by Alexey Proskuryakov.
2355
2356         * Scripts/webkitpy/common/config/ports.py:
2357         (DeprecatedPort.run_api_tests_command): Added.
2358         * Scripts/webkitpy/port/base.py:
2359         (Port.api_results_directory): Added.
2360         * Scripts/webkitpy/tool/steps/runtests.py:
2361         (RunTests.run): Check if we should be running API tests.
2362         (RunTests._run_api_tests): Generate script to run API tests with json output.
2363         * Scripts/webkitpy/tool/steps/steps_unittest.py: Unit tests.
2364
2365 2017-03-24  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
2366
2367         Add JSON results for API tests
2368         https://bugs.webkit.org/show_bug.cgi?id=170021
2369
2370         Reviewed by Alexey Proskuryakov.
2371
2372         * Scripts/run-api-tests:
2373         (runTestsBySuite): Appends failures and timeouts to JSON data.
2374         (writeJsonDataIfApplicable): Writes JSON data to a file.
2375
2376 2017-03-24  Lucas Forschler  <lforschler@apple.com>
2377
2378         update committer_auth.py to be python 2.7 compliant
2379         https://bugs.webkit.org/show_bug.cgi?id=170063
2380         
2381         Reviewed by Alexey Proskuryakov.
2382
2383         * BuildSlaveSupport/build.webkit.org-config/committer_auth.py:
2384         (CommitterAuth.authenticate):
2385             convert e.message to e.args[0]
2386
2387 2017-03-24  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
2388
2389         webkitpy: Parse JSON results from run-api-tests
2390         https://bugs.webkit.org/show_bug.cgi?id=170062
2391
2392         Reviewed by Alexey Proskuryakov.
2393
2394         * Scripts/webkitpy/common/net/apitestresults.py: Added.
2395         (APITestResults): Structure to represent API test results.
2396         (APITestResults.__init__):
2397         (APITestResults.intersection): Return the failures common to both sets of results.
2398         (APITestResults.results_from_string): Create an APITestResults object from a JSON results string.
2399         (APITestResults.equals): Return True if both results were the same.
2400         (APITestResults.is_subset): Return True if failing tests are a subset of the other failing tests.
2401         (APITestResults.all_passed): Return True if everything passed.
2402         (APITestResults.failing_tests): List of tests that didn't pass.
2403         (APITestResults.did_exceed_test_failure_limit): Always False.
2404         * Scripts/webkitpy/common/net/apitestresults_unittest.py: Added.
2405         (APITestResultsTest): Unit tests.
2406         * Scripts/webkitpy/tool/bot/apitestresultsreader.py: Added.
2407         (APITestResultsReader): Read contents of JSON results file.
2408
2409 2017-03-24  Alex Christensen  <achristensen@webkit.org>
2410
2411         REGRESSION: Content Blocker: Blocking "a[href*=randomString]" doesn't work
2412         https://bugs.webkit.org/show_bug.cgi?id=169167
2413
2414         Reviewed by Simon Fraser.
2415
2416         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
2417         (TestWebKitAPI::TEST_F):
2418         Test an example of a selector that was incorrectly determined to be invalid.
2419
2420 2017-03-24  Jonathan Bedard  <jbedard@apple.com>
2421
2422         Increase timeout for booting simulators.
2423         <rdar://problem/31080009>
2424
2425         Unreviewed infrastructure fix.
2426
2427         * Scripts/webkitpy/xcode/simulator.py:
2428         (Simulator.wait_until_device_is_booted): Increase timeout.
2429         (Simulator.wait_until_device_is_in_state): Increase timeout.
2430
2431 2017-03-24  Carlos Garcia Campos  <cgarcia@igalia.com>
2432
2433         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/javascript-dialogs after r214277.
2434
2435         Since r214277 beforeunload events are not fired unless there's some user interaction, so we need to simulate it
2436         in our unit tests to work.
2437
2438         * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
2439         (testWebViewJavaScriptDialogs):
2440
2441 2017-03-24  Carlos Garcia Campos  <cgarcia@igalia.com>
2442
2443         [GTK] Add MIMETypeRegistry implementation using xdgmime and remove the GTK+ one
2444         https://bugs.webkit.org/show_bug.cgi?id=170001
2445
2446         Reviewed by Michael Catanzaro.
2447
2448         Ignore style of xdgmime sources.
2449
2450         * Scripts/webkitpy/tool/steps/checkstyle.py:
2451
2452 2017-03-23  Wenson Hsieh  <wenson_hsieh@apple.com>
2453
2454         Dragging on a large image should not revert to a file icon if data interaction is enabled
2455         https://bugs.webkit.org/show_bug.cgi?id=170018
2456         <rdar://problem/31184508>
2457
2458         Reviewed by Tim Horton.
2459
2460         Add new tests for data interaction. LargeImageToTargetDiv verifies the change made in this patch, while
2461         AttachmentElementItemProviders was a test that was previously removed due to <rdar://problem/31038797>.
2462
2463         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2464         * TestWebKitAPI/Tests/WebKit2Cocoa/large-red-square.png: Added.
2465         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2466         (TestWebKitAPI::TEST):
2467
2468 2017-03-23  Fujii Hironori  <Hironori.Fujii@sony.com>
2469
2470         Update WinCairoRequirements.zip
2471         https://bugs.webkit.org/show_bug.cgi?id=169950
2472
2473         Reviewed by Alex Christensen.
2474
2475         * Scripts/update-webkit-wincairo-libs: Replace $winCairoLibsURL.
2476
2477 == Rolled over to ChangeLog-2017-03-23 ==