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