webkitpy: Refactor setup_test_run for IOSPort and IOSSimulator
[WebKit-https.git] / Tools / ChangeLog
1 2017-03-07  Jonathan Bedard  <jbedard@apple.com>
2
3         webkitpy: Refactor setup_test_run for IOSPort and IOSSimulator
4         https://bugs.webkit.org/show_bug.cgi?id=169220
5         <rdar://problem/30879645>
6
7         Reviewed by Daniel Bates.
8
9         Provide more specific port setup functions for iOS ports to allow more sharing of common code.
10
11         * Scripts/webkitpy/port/ios.py:
12         (IOSPort):
13         (IOSPort._create_devices): Added.
14         (IOSPort.setup_test_run): Shared iOS device setup code.
15         * Scripts/webkitpy/port/ios_simulator.py:
16         (IOSSimulatorPort._create_devices): Renamed from setup_test_run.
17         (IOSSimulatorPort.setup_test_run): Renamed as _create_devices.
18
19 2017-03-07  Anders Carlsson  <andersca@apple.com>
20
21         Rewrite the DRT Pasteboard implementation to use UTIs and WTF types
22         https://bugs.webkit.org/show_bug.cgi?id=169289
23
24         Reviewed by Tim Horton.
25
26         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
27         (-[LocalPasteboard initWithName:]):
28         (-[LocalPasteboard name]):
29         (-[LocalPasteboard declareTypes:owner:]):
30         (isUTI):
31         (toUTI):
32         (-[LocalPasteboard addTypes:owner:]):
33         (-[LocalPasteboard changeCount]):
34         (-[LocalPasteboard types]):
35         (-[LocalPasteboard availableTypeFromArray:]):
36         (-[LocalPasteboard setData:forType:]):
37         (-[LocalPasteboard dataForType:]):
38         (-[LocalPasteboard writeObjects:]):
39         (-[LocalPasteboard dealloc]): Deleted.
40
41 2017-03-07  Myles C. Maxfield  <mmaxfield@apple.com>
42
43         Add David Jonathan Ross to contributors.json
44         https://bugs.webkit.org/show_bug.cgi?id=169265
45
46         Unreviewed.
47
48         David Jonathan Ross very kindly offered to create and contribute his Boxis font in r211060,
49         which is used for testing font variations.
50
51         * Scripts/webkitpy/common/config/contributors.json:
52
53 2017-03-07  Youenn Fablet  <youennf@gmail.com>
54
55         W3C importer should be able to update the import expectations file
56         https://bugs.webkit.org/show_bug.cgi?id=168037
57
58         Reviewed by Ryosuke Niwa.
59
60         Changing import expectations from an array to a map.
61         Marking all test paths as import and updating import expectations file accordingly.
62
63         * Scripts/webkitpy/w3c/test_downloader.py:
64         (TestDownloader.__init__):
65         (TestDownloader._init_paths_from_expectations):
66         (TestDownloader):
67         (TestDownloader.update_import_expectations):
68         * Scripts/webkitpy/w3c/test_importer.py:
69         (TestImporter.do_import):
70         * Scripts/webkitpy/w3c/test_importer_unittest.py:
71
72 2017-03-07  Philip Rogers  <pdr@google.com>
73
74         Add pdr to the rendering watchlist
75         https://bugs.webkit.org/show_bug.cgi?id=167298
76
77         Reviewed by Andreas Kling.
78
79         * Scripts/webkitpy/common/config/contributors.json: Switch to pdr+autocc@chromium.org
80         * Scripts/webkitpy/common/config/watchlist: Add pdr to the rendering watchlist.
81
82 2017-03-07  Mario Sanchez Prada  <mario@webkit.org>
83
84         Unreviewed. Removed myself from the Accessibility watch list
85
86         * Scripts/webkitpy/common/config/watchlist: Removed myself.
87
88 2017-03-06  Fujii Hironori  <Hironori.Fujii@sony.com>
89
90         Add Fujii Hironori to contributor's list
91         https://bugs.webkit.org/show_bug.cgi?id=169261
92
93         Reviewed by Yusuke Suzuki.
94
95         Add myself to the contributor's lists so that my e-mail autocompletes for CC
96
97         * Scripts/webkitpy/common/config/contributors.json:
98
99 2017-03-06  Carlos Alberto Lopez Perez  <clopez@igalia.com>
100
101         [GTK] Mark WTF_Lock.ContendedLongSection and WTF_WordLock.ContendedLongSection as slow.
102
103         Unreviewed test gardening.
104
105         The ContendedShortSection version of this tests were already marked as slow.
106         And the ContendedLongSection version takes more or less the same time to run.
107         They cause time outs on the bot sometimes.
108
109         * Scripts/run-gtk-tests:
110         (TestRunner):
111
112 2017-03-06  Michael Saboff  <msaboff@apple.com>
113
114         Take advantage of fast permissions switching of JIT memory for devices that support it
115         https://bugs.webkit.org/show_bug.cgi?id=169155
116
117         Reviewed by Saam Barati.
118
119         Updated the Xcode config files to match what is in the JavaScriptCore ones.
120
121         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
122
123 2017-03-06  Lucas Forschler  <lforschler@apple.com>
124
125         https://bugs.webkit.org/show_bug.cgi?id=169234
126         torchmobile.com.cn is no longer a registered domain. These email addresses will bounce, so clean them up.
127
128         Reviewed by Alexey Proskuryakov.
129
130         * Scripts/webkitpy/common/config/contributors.json:
131
132 2017-03-03  Matt Rajca  <mrajca@apple.com>
133
134         Media: notify clients when the user never plays a media element that was prevented from auto-playing
135         https://bugs.webkit.org/show_bug.cgi?id=169150
136
137         Reviewed by Alex Christensen.
138
139         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
140         (TEST): Added.
141
142 2017-03-06  Alex Christensen  <achristensen@webkit.org>
143
144         Fix URLs relative to file URLs with paths beginning with Windows drive letters
145         https://bugs.webkit.org/show_bug.cgi?id=169178
146
147         Reviewed by Tim Horton.
148
149         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
150         (TestWebKitAPI::TEST_F):
151
152 2017-03-06  Myles C. Maxfield  <mmaxfield@apple.com>
153
154         Expand font-weight and font-stretch to take any number
155         https://bugs.webkit.org/show_bug.cgi?id=168889
156
157         Reviewed by Simon Fraser.
158
159         Migrate off old enum types.
160
161         * TestWebKitAPI/Tests/WebCore/FontCache.cpp:
162         (TestWebKitAPI::createPlatformFont):
163         (TestWebKitAPI::compareFonts):
164         (TestWebKitAPI::TEST_F):
165
166 2017-03-06  Yusuke Suzuki  <utatane.tea@gmail.com>
167
168         [GTK][JSCOnly] Enable WebAssembly on Linux environment
169         https://bugs.webkit.org/show_bug.cgi?id=164032
170
171         Reviewed by Michael Catanzaro.
172
173         * Scripts/run-jsc-stress-tests:
174         Enable WASM tests.
175
176         * Scripts/webkitperl/FeatureList.pm:
177         Enable WebAssembly.
178
179 2017-03-04  Lucas Forschler  <lforschler@apple.com>
180
181         Test commit against svn.webkit.org after SHA-1 cleanup.
182         
183         Unreviewed.
184
185 2017-03-03  Dean Jackson  <dino@apple.com>
186
187         Add WebGPU compile flag and experimental feature flag
188         https://bugs.webkit.org/show_bug.cgi?id=169161
189         <rdar://problem/30846689>
190
191         Reviewed by Tim Horton.
192
193         Add ENABLE_WEBGPU, an experimental feature flag, a RuntimeEnabledFeature,
194         and an InternalSetting.
195
196         * DumpRenderTree/mac/DumpRenderTree.mm:
197         (enableExperimentalFeatures):
198         (resetWebPreferencesToConsistentValues):
199         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
200         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
201         (WTR::InjectedBundle::beginTesting):
202         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
203         (WTR::TestRunner::setWebGL2Enabled):
204         (WTR::TestRunner::setWebGPUEnabled):
205         * WebKitTestRunner/InjectedBundle/TestRunner.h:
206
207 2017-03-03  Dean Jackson  <dino@apple.com>
208
209         Add a script to synchronize FeatureDefines.xcconfig files
210         https://bugs.webkit.org/show_bug.cgi?id=169151
211         <rdar://problem/30841856>
212
213         Reviewed by Simon Fraser.
214
215         I got sick of manually copying the FeatureDefines.xcconfig
216         files, so I added a script to do it. As long as you
217         run this after you've edited one, it will take the most
218         recently updated and copy it to all the others.
219
220         * Scripts/sync-feature-defines: Added.
221         * Scripts/webkitpy/style/checkers/featuredefines.py:
222         (FeatureDefinesChecker.check): Export the list of files,
223         and give a suggestion to use the sync script.
224
225 2017-03-03  Alex Christensen  <achristensen@webkit.org>
226
227         [URLParser] Fix file: as a relative file URL
228         https://bugs.webkit.org/show_bug.cgi?id=169122
229
230         Reviewed by Tim Horton.
231
232         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
233         (TestWebKitAPI::TEST_F):
234
235 2017-03-02  Myles C. Maxfield  <mmaxfield@apple.com>
236
237         Migrate font-stretch to use fixed-point values
238         https://bugs.webkit.org/show_bug.cgi?id=169107
239
240         Reviewed by Dean Jackson.
241
242         Update to new types.
243
244         * TestWebKitAPI/Tests/WebCore/FontCache.cpp:
245         (TestWebKitAPI::createPlatformFont):
246
247 2017-03-02  Brady Eidson  <beidson@apple.com>
248
249         Update WKWebsiteDatastoreConfiguration SPI.
250         https://bugs.webkit.org/show_bug.cgi?id=169102
251
252         Reviewed by Tim Horton.
253
254         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
255         (-[WebsiteDataStoreCustomPathsMessageHandler userContentController:didReceiveScriptMessage:]):
256         (TEST):
257
258 2017-03-02  Jer Noble  <jer.noble@apple.com>
259
260         Sufficently large timeValue and timeScale arguments to MediaTime will cause wrapping in toTimeScale().
261         https://bugs.webkit.org/show_bug.cgi?id=169098
262
263         Reviewed by Keith Miller.
264
265         * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
266         (TestWebKitAPI::TEST):
267
268 2017-03-02  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
269
270         Add ability to read bindings test results
271         https://bugs.webkit.org/show_bug.cgi?id=169063
272
273         Reviewed by Alexey Proskuryakov.
274
275         * Scripts/webkitpy/common/net/bindingstestresults.py: Added.
276         (BindingsTestResults): Conforms to the AbstractTestResults interface.
277         (BindingsTestResults.__init__): Constructor.
278         (BindingsTestResults.results_from_string): Generates BindingsTestResults object from JSON string.
279         (BindingsTestResults.is_subset): Compare failing tests in two BindingsTestResults objects.
280         (BindingsTestResults.equals): Checks if two BindingsTestResults objects contain the same failing test names.
281         (BindingsTestResults.all_passed): Return True if all bindings tests passed.
282         (BindingsTestResults.failing_tests): Returns a list of failing tests.
283         (BindingsTestResults.did_exceed_test_failure_limit): Always returns False, exists to conform to the interface.
284         * Scripts/webkitpy/common/net/bindingstestresults_unittest.py: Added.
285         (BindingsTestResultsTest): Class to test BindingsTestResults.
286         (BindingsTestResultsTest.test_results_from_string): Unit tests string -> BindingsTestResults conversion.
287         (BindingsTestResultsTest.test_results_from_string_success): Ditto, for success cases.
288         * Scripts/webkitpy/tool/bot/bindingstestresultsreader.py: Added.
289         (BindingsTestResultsReader): Conforms to the AbstractTestResultsReader interface.
290         (BindingsTestResultsReader.results): Reads the results file and returns a BindingsTestResults object.
291
292 2017-03-02  Aakash Jain  <aakash_jain@apple.com>
293
294         Move stringMatchesWildcardString from WebKit2 to WebCore
295         https://bugs.webkit.org/show_bug.cgi?id=169065
296
297         Reviewed by Alexey Proskuryakov.
298
299         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Moved StringUtilities.mm
300         * TestWebKitAPI/Tests/WebCore/StringUtilities.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit2/mac/StringUtilities.mm.
301         (TestWebKitAPI::TEST):
302         * TestWebKitAPI/Tests/WebKit2/mac/StringUtilities.mm: Removed.
303
304 2017-02-28  Matt Rajca  <mrajca@apple.com>
305
306         Media: send "did interfere with playback" events when the user pauses an autoplaying element
307         https://bugs.webkit.org/show_bug.cgi?id=169006
308
309         Reviewed by Alex Christensen.
310
311         * TestWebKitAPI/Tests/WebKit2/js-play-with-controls.html:
312         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
313         (TEST): Added.
314
315 2017-03-02  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
316
317         Refactor test results classes in webkitpy to enable faster EWS iteration
318         https://bugs.webkit.org/show_bug.cgi?id=169053
319
320         Reviewed by Alexey Proskuryakov.
321
322         * Scripts/webkitpy/common/net/abstracttestresults.py:
323         (AbstractTestResults): Import json for parse_json_string().
324         (AbstractTestResults.parse_json_string): Abstracted out from JSCTestResults.results_from_string().
325         * Scripts/webkitpy/common/net/abstracttestresults_unittest.py: Added.
326         (AbstractTestResultsTest): Class that tests AbstractTestResults.
327         (AbstractTestResultsTest.test_parse_json_string_invalid_inputs): Move unit tests from JSCTestResultsTest.
328         (AbstractTestResultsTest.test_parse_json_string_valid_input): Add a unit test for a success case.
329         * Scripts/webkitpy/common/net/jsctestresults.py:
330         (JSCTestResults.results_from_string): Call parse_json_string because it was abstracted out.
331         * Scripts/webkitpy/common/net/jsctestresults_unittest.py:
332         (JSCTestResultsTest.test_results_from_string): Remove JSON parsing unit tests, because they were moved.
333         * Scripts/webkitpy/tool/bot/abstracttestresultsreader.py: Added.
334         (AbstractTestResultsReader): Generic TestResultsReader with functions common to jsc, bindings etc.
335         (AbstractTestResultsReader.__init__): Moved from JSCTestResultsReader.__init__().
336         (AbstractTestResultsReader._read_file_contents): Moved from JSCTestResultsReader._read_file_contents().
337         (AbstractTestResultsReader.results): Stub.
338         * Scripts/webkitpy/tool/bot/jsctestresultsreader.py:
339         (JSCTestResultsReader): Now inherits from AbstractTestResultsReader.
340         (JSCTestResultsReader.__init__): Deleted.
341         (JSCTestResultsReader._read_file_contents): Deleted.
342         * Scripts/webkitpy/tool/bot/layouttestresultsreader.py:
343         (LayoutTestResultsReader): Now inherits from AbstractTestResultsReader.
344
345 2017-03-02  Alex Christensen  <achristensen@webkit.org>
346
347         Continue enabling WebRTC
348         https://bugs.webkit.org/show_bug.cgi?id=169056
349
350         Reviewed by Jon Lee.
351
352         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
353
354 2017-03-02  Ryan Haddad  <ryanhaddad@apple.com>
355
356         Unreviewed, rolling out r213281.
357
358         This change caused API test WebKit2.UserMediaBasic to time
359         out.
360
361         Reverted changeset:
362
363         "[MediaStream] UIClient may not be notified of capture state
364         change when leaving a page"
365         https://bugs.webkit.org/show_bug.cgi?id=169014
366         http://trac.webkit.org/changeset/213281
367
368 2017-03-02  Tomas Popela  <tpopela@redhat.com>
369
370         [WK2] Keyboard menu key should show context menu
371         https://bugs.webkit.org/show_bug.cgi?id=72099
372
373         Show the context menu when the GtkWidget::popup-menu signal is
374         emitted. This signal is triggered by pressing a key (usually
375         the Menu key or the Shift + F10 shortcut) or it could be emitted on
376         WebKitWebView.
377
378         Reviewed by Carlos Garcia Campos.
379
380         * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
381         (testContextMenuDefaultMenu):
382         * TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
383         (WebViewTest::emitPopupMenuSignal):
384         * TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h:
385
386 2017-03-01  Wenson Hsieh  <wenson_hsieh@apple.com>
387
388         Replace -[WKWebView adjustedDataInteractionItemProviders:] with a UI delegate method
389         https://bugs.webkit.org/show_bug.cgi?id=169013
390
391         Reviewed by Dan Bernstein.
392
393         Adjusts TestWebKitAPI for changes in WebKit2. See Source/WebKit2/ChangeLog for more details.
394
395         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
396         (TestWebKitAPI::TEST):
397         (-[CustomItemProviderWebView _adjustedDataInteractionItemProviders:]): Deleted.
398         * TestWebKitAPI/ios/DataInteractionSimulator.h:
399         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
400         (-[DataInteractionSimulator initWithWebView:]):
401         (-[DataInteractionSimulator dealloc]):
402         (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProviders:]):
403
404 2017-03-01  Per Arne Vollan  <pvollan@apple.com>
405
406         [Win] DRT should not dispatch messages after test is done.
407         https://bugs.webkit.org/show_bug.cgi?id=169026
408
409         Reviewed by Brent Fulgham.
410
411         Exiting the message loop with PostQuitMessage will leave room for
412         a few messages to be dispatched after the test is done.
413
414         * DumpRenderTree/win/DumpRenderTree.cpp:
415         (dump):
416         (runTest):
417
418 2017-03-01  Myles C. Maxfield  <mmaxfield@apple.com>
419
420         Implement font-stretch for installed fonts
421         https://bugs.webkit.org/show_bug.cgi?id=168888
422
423         Reviewed by Darin Adler and Dave Hyatt.
424
425         Update TestWebKitAPI tests to test font-stretch too.
426
427         * TestWebKitAPI/Tests/WebCore/FontCache.cpp:
428         (TestWebKitAPI::createPlatformFont):
429         (TestWebKitAPI::compareFonts):
430         (TestWebKitAPI::TEST_F):
431
432 2017-03-01  Alex Christensen  <achristensen@webkit.org>
433
434         Unreviewed, rolling out r213259.
435
436         Broke an internal build
437
438         Reverted changeset:
439
440         "Continue enabling WebRTC"
441         https://bugs.webkit.org/show_bug.cgi?id=169056
442         http://trac.webkit.org/changeset/213259
443
444 2017-03-01  Alex Christensen  <achristensen@webkit.org>
445
446         Continue enabling WebRTC
447         https://bugs.webkit.org/show_bug.cgi?id=169056
448
449         Reviewed by Jon Lee.
450
451         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
452
453 2017-02-28  Matt Rajca  <mrajca@apple.com>
454
455         Media: notify clients when autoplayed media is muted
456         https://bugs.webkit.org/show_bug.cgi?id=168987
457
458         Reviewed by Alex Christensen.
459
460         * TestWebKitAPI/Tests/WebKit2/js-play-with-controls.html:
461         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
462         (TEST): Added.
463
464 2017-03-01  Brady Eidson  <beidson@apple.com>
465
466         Add SPI to create WebsiteDataStore objects pointing to custom paths.
467         https://bugs.webkit.org/show_bug.cgi?id=169044
468
469         Reviewed by Tim Horton.
470
471         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
472         
473         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.html: Added.
474         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm: Added.
475         (-[WebsiteDataStoreCustomPathsMessageHandler userContentController:didReceiveScriptMessage:]):
476         (getNextMessage):
477         (TEST):
478
479 2017-03-01  Simon Fraser  <simon.fraser@apple.com>
480
481         Add a way to watch the CSSProperties.json file, and add me and Dan Bates to watch it.
482
483         * Scripts/webkitpy/common/config/watchlist:
484
485 2017-03-01  Jonathan Bedard  <jbedard@apple.com>
486
487         webkitpy: Move some device management from iOSSimulatorPort to iOSPort class
488         https://bugs.webkit.org/show_bug.cgi?id=168681
489
490         Reviewed by Daniel Bates.
491
492         This patch moves high-level device management into iOSPort and adds a new iOSDevicePort class
493         which inherits from iOSPort.  Additionally, this change renames device_id_for_worker_number to
494         device_for_worker_number and manages devices by object instead of by UDID.
495
496         * Scripts/webkitpy/port/factory.py:
497         (PortFactory): Correct import path for IOSSimulatorPort and IOSDevicePort.
498         * Scripts/webkitpy/port/ios.py:
499         (IOSPort.__init__): Define variables shared between iOS ports.
500         (IOSPort.driver_cmd_line_for_logging): From IOSSimulatorPort.
501         (IOSPort.driver_name): From IOSSimulatorPort.
502         (IOSPort.using_multiple_devices): Check if this port supports multiple devices.
503         (IOSPort._testing_device): Map worker number to device.
504         (IOSPort.device_for_worker_number): Return _testing_device() or _current_device based on using_multiple_devices. 
505         (IOSSimulatorPort): Moved to ios_simulator.py
506         * Scripts/webkitpy/port/ios_device.py: Added.
507         (IOSDevicePort): Moved functionality from IOSPort.
508         (IOSDevicePort.determine_full_port_name): Moved from IOSPort.
509         (IOSDevicePort._build_driver_flags): Ditto.
510         (IOSDevicePort.operating_system): Ditto.
511         * Scripts/webkitpy/port/ios_simulator.py: Added.
512         (IOSSimulatorPort): Moved from ios.py.
513         (IOSSimulatorPort.__init__): Init parent class, setup device map.
514         (IOSSimulatorPort._create_simulators): Use object over unbound methods.
515         (IOSSimulatorPort.setup_test_run): Ditto.
516         (IOSSimulatorPort.using_multiple_devices): True if we are managing the simulators.
517         (IOSSimulatorPort._create_device): Use object over unbound methods.
518         (IOSSimulatorPort._remove_device): Ditto.
519         (IOSSimulatorPort.driver_name): Moved to parent class.
520         (IOSSimulatorPort.driver_cmd_line_for_logging): Ditto.
521         (IOSSimulatorPort.child_processes): Ditto.
522         (IOSSimulatorPort._testing_device): Ditto.
523         (IOSSimulatorPort.device_id_for_worker_number): Renamed as device_for_worker_number.
524         (SimulatorProcess.__init__): Call find_device_by_udid, device_id_for_worker_number has been removed.
525         * Scripts/webkitpy/xcode/simulator.py:
526         (Simulator): Make _managed_devices public.
527         (Simulator.create_device): Ditto.
528         (Simulator.remove_device): Ditto.
529         (Simulator.device_number): Ditto.
530
531 2017-03-01  Alexey Proskuryakov  <ap@apple.com>
532
533         IndexedDB.IndexedDBMultiProcess is a flaky timeout
534         https://bugs.webkit.org/show_bug.cgi?id=160780
535
536         Reviewed by Brady Eidson.
537
538         * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBMultiProcess.mm: Releasing the object
539         once doesn't necessarily deallocate the object, there can be other references.
540         We can use -[WKWebView _close] or -[WKWebView _killWebContentProcessAndResetState].
541         The latter seems more appropriate, because "kill" is what the comment says.
542
543 2017-02-28  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
544
545         Add ability for webkitpy to run bindings tests
546         https://bugs.webkit.org/show_bug.cgi?id=168979
547
548         Reviewed by Alexey Proskuryakov.
549
550         This allows the below command to run bindings tests with json output, and is a required part
551         of adding an EWS for bindings tests. (Note: this won't build because --build is not passed).
552         webkit-patch build-and-test --no-clean --no-update  --test --non-interactive --group="bindings"
553
554         * Scripts/webkitpy/port/base.py:
555         (Port.bindings_results_directory): Return the directory to place JSON results for bindings tests.
556         * Scripts/webkitpy/tool/steps/runtests.py:
557         (RunTests.run): Checks if we should be running bindings tests.
558         (RunTests._run_bindings_tests): Generates the command for bindings tests, and executes it.
559         * Scripts/webkitpy/tool/steps/steps_unittest.py:
560         (test_runtests_bindings): Unit test for the generated run-bindings-tests command.
561
562 2017-02-28  Myles C. Maxfield  <mmaxfield@apple.com>
563
564         Test fix after r213163
565         https://bugs.webkit.org/show_bug.cgi?id=168678
566
567         Unreviewed.
568
569         Tests and builds are timing out because this file is gigantic.
570
571         * TestWebKitAPI/Tests/WebCore/FontCache.cpp:
572         (TestWebKitAPI::TEST_F):
573
574 2017-02-28  Wenson Hsieh  <wenson_hsieh@apple.com>
575
576         Data interaction should support attachment elements
577         https://bugs.webkit.org/show_bug.cgi?id=168916
578         <rdar://problem/30664519>
579
580         Reviewed by Ryosuke Niwa.
581
582         Adds a new unit test verifying that a client injected bundle is able to augment UIItemProvider data vended to
583         the UI process.
584
585         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
586         * TestWebKitAPI/Tests/WebKit2Cocoa/attachment-element.html: Added.
587         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
588         (-[CustomItemProviderWebView _adjustedDataInteractionItemProviders:]):
589         (TestWebKitAPI::TEST):
590
591 2017-02-28  Chris Dumez  <cdumez@apple.com>
592
593         [iOS] Throttle requestAnimationFrame to 30fps in low power mode
594         https://bugs.webkit.org/show_bug.cgi?id=168837
595         <rdar://problem/30700929>
596
597         Reviewed by Simon Fraser.
598
599         Add unit test for -= operator on WTF::OptionSet.
600
601         * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
602         (TestWebKitAPI::TEST):
603
604 2017-02-28  Jonathan Bedard  <jbedard@apple.com>
605
606         webkitpy: Regular expression for parsing simctl device information is wrong for iPad Pro
607         https://bugs.webkit.org/show_bug.cgi?id=168394
608
609         Reviewed by Daniel Bates.
610
611         * Scripts/webkitpy/xcode/simulator.py:
612         (Simulator): Allow for parenthesis in device name.
613         * Scripts/webkitpy/xcode/simulator_unittest.py: Add iPad Pro to test.
614
615 2017-02-28  Myles C. Maxfield  <mmaxfield@apple.com>
616
617         [macOS] Migrate off of CTFontCreateForCSS
618         https://bugs.webkit.org/show_bug.cgi?id=168678
619
620         Reviewed by David Hyatt.
621
622         Exhaustively test the font matching algorithm on Sierra.
623
624         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
625         * TestWebKitAPI/Tests/WebCore/FontCache.cpp: Added.
626         (TestWebKitAPI::FontCacheTest::SetUp):
627         (TestWebKitAPI::createPlatformFont):
628         (TestWebKitAPI::compareFonts):
629         (TestWebKitAPI::TEST_F):
630
631 2017-02-28  Basuke Suzuki  <Basuke.Suzuki@am.sony.com>
632
633         Windows build doesn't start build if the git branch is not master
634         https://bugs.webkit.org/show_bug.cgi?id=168843
635
636         Reviewed by Myles C. Maxfield.
637
638         Use correct value for product base dir.
639
640         * Scripts/build-webkit:
641
642 2017-02-24  Matt Rajca  <mrajca@apple.com>
643
644         Media: notify clients when autoplayed media ends without being paused
645         https://bugs.webkit.org/show_bug.cgi?id=168852
646
647         Reviewed by Alex Christensen.
648
649         * TestWebKitAPI/Tests/WebKit2/js-play-with-controls.html:
650         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
651         (TEST): Added.
652
653 2017-02-28  Jonathan Bedard  <jbedard@apple.com>
654
655         webkitpy: jsc-ews should run when Makefiles and build scripts are changed
656         https://bugs.webkit.org/show_bug.cgi?id=168950
657
658         Reviewed by Alexey Proskuryakov.
659
660         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
661         (CheckPatchRelevance): Add makefiles and build scripts to jsc_paths.
662
663 2017-02-27  Alex Christensen  <achristensen@webkit.org>
664
665         Begin enabling WebRTC on 64-bit
666         https://bugs.webkit.org/show_bug.cgi?id=168915
667
668         Reviewed by Eric Carlson.
669
670         * Scripts/build-webkit:
671         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
672
673 2017-02-27  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
674
675         Windows regression: webkitpy.tool.steps.steps_unittest.StepsTest.test_runtests_jsc[_debug]
676         https://bugs.webkit.org/show_bug.cgi?id=168628
677
678         Reviewed by Alexey Proskuryakov.
679
680         * Scripts/webkitpy/tool/steps/runtests.py:
681         (RunTests._run_javascriptcore_tests): Pass options to the Base instance.
682         * Scripts/webkitpy/tool/steps/steps_unittest.py:
683         (StepsTest._step_options): Add a new 'root' option that's passed through to the Base instance.
684         (test_runtests_jsc): Not running webkit-build-directory anymore, and changed json output directory.
685         (test_runtests_jsc_debug): Ditto
686
687 2017-02-27  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
688
689         Add machine-readable results for bindings tests
690         https://bugs.webkit.org/show_bug.cgi?id=168626
691
692         Reviewed by Alexey Proskuryakov.
693
694         * Scripts/run-bindings-tests:
695         (main): Add optional --json-output command-line parameter.
696         * Scripts/webkitpy/bindings/main.py:
697         (BindingsTests.__init__): Add variables to store machine-readable results.
698         (BindingsTests.detect_changes): Store results in machine-readable form if applicable.
699         (BindingsTests.main): Write data to JSON file if applicable.
700
701 2017-02-27  Wenson Hsieh  <wenson_hsieh@apple.com>
702
703         Unreviewed, roll out r213065.
704
705         We need these temporary fixes to keep the perf bots running.
706
707         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
708         * TestWebKitAPI/ios/DataInteractionSimulator.h:
709         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
710         (-[DataInteractionSimulator _advanceProgress]):
711
712 2017-02-27  Simon Fraser  <simon.fraser@apple.com>
713
714         Add specification and status metadata to CSSProperties.json, and validate it
715         https://bugs.webkit.org/show_bug.cgi?id=168901
716
717         Reviewed by Darin Adler.
718
719         Enhance check-webkit-style to validate the status and spec data in CSSProperties.json.
720         
721         Current validation is basic type validation and some cross-referencing, but could be
722         enhanced.
723
724         * Scripts/webkitpy/style/checkers/jsonchecker.py:
725         (JSONCSSPropertiesChecker.check):
726         (JSONCSSPropertiesChecker.check_category):
727         (JSONCSSPropertiesChecker):
728         (JSONCSSPropertiesChecker.check_categories):
729         (JSONCSSPropertiesChecker.validate_url):
730         (JSONCSSPropertiesChecker.validate_status_type):
731         (JSONCSSPropertiesChecker.validate_comment):
732         (JSONCSSPropertiesChecker.validate_status):
733         (JSONCSSPropertiesChecker.validate_property_category):
734         (JSONCSSPropertiesChecker.validate_property_specification):
735         (JSONCSSPropertiesChecker.check_property):
736
737 2017-02-27  Carlos Garcia Campos  <cgarcia@igalia.com>
738
739         Unreviewed. Fix two GTK+ unit tests failing after r213062.
740
741         We were building wrong Content-Disposition headers that libsoup doesn't parse correctly.
742
743         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
744         (addContentDispositionHTTPHeaderToResponse):
745         * TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
746         (serverCallback):
747
748 2017-02-24  Jer Noble  <jer.noble@apple.com>
749
750         Add public method to MediaTime for doing timeScale conversion.
751         https://bugs.webkit.org/show_bug.cgi?id=168860
752
753         Reviewed by Eric Carlson.
754
755         * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
756         (TestWebKitAPI::TEST):
757
758 2017-02-26  Wenson Hsieh  <wenson_hsieh@apple.com>
759
760         Unreviewed, revert all temporary build fixes for data interaction
761
762         Rolls out r212990, r212988 and r212984.
763
764         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
765         * TestWebKitAPI/ios/DataInteractionSimulator.h:
766         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
767         (-[DataInteractionSimulator _advanceProgress]):
768
769 2017-02-27  Alex Christensen  <achristensen@webkit.org>
770
771         [libwebrtc] Enable WebRTC in some Production Builds
772         https://bugs.webkit.org/show_bug.cgi?id=168858
773
774         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
775
776 2017-02-27  Andy Estes  <aestes@apple.com>
777
778         Add a way to test file input without relying on drag and drop
779         https://bugs.webkit.org/show_bug.cgi?id=168848
780         <rdar://problem/22258242>
781
782         Reviewed by Tim Horton.
783
784         Existing layout tests relied on drag and drop support in EventSender to configure a file
785         input element for testing. This had several problems:
786
787         1. WebKitTestRunner has no support for beginDragWithFiles(), and DumpRenderTree doesn't
788            support it on iOS.
789         2. We have no test coverage for selecting files via the runOpenPanel UI delegate, leading to
790            bugs like webkit.org/b/159686.
791
792         Even if we fixed (1), we'd still have a test coverage gap due to (2), so this patch
793         introduces a way for a test to specify the list of files that should be selected by the
794         runOpenPanel UI delegate: TestRunner.setOpenPanelFiles(). It also creates versions of a
795         number of existing file input tests using TestRunner.setOpenPanelFiles() instead of
796         EventSender.beginDragWithFiles().
797
798         * DumpRenderTree/ios/DumpRenderTreeBrowserView.mm:
799         (-[DumpRenderTreeBrowserView webView:runOpenPanelForFileButtonWithResultListener:configuration:]):
800         Overrode to call the corresponding method on UIDelegate.
801         * DumpRenderTree/TestRunner.cpp:
802         (setOpenPanelFilesCallback): Added to call TestRunner::setOpenPanelFiles().
803         (TestRunner::staticFunctions): Registered setOpenPanelFiles.
804         (TestRunner::setOpenPanelFiles): Added. Converts the JavaScript array of file paths to a
805         std::vector of std::strings.
806         * DumpRenderTree/TestRunner.h:
807         (TestRunner::openPanelFiles):
808         * DumpRenderTree/mac/UIDelegate.mm:
809         (-[UIDelegate webView:runOpenPanelForFileButtonWithResultListener:allowMultipleFiles:]):
810         Added. Converts the array of file paths to an NSArray of NSURLs, resolving the file paths
811         relative to the current test URL. Returns either the first item or all items depending on
812         the value of allowMultipleFiles.
813         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl: Defined setOpenPanelFiles.
814         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
815         (WTR::TestRunner::setOpenPanelFiles): Added. Converts the JavaScript array of file paths to
816         a WKArray of WKURLs, resolving the file paths relative to the current test URL, and sends
817         the WKArray to the UI process with the "SetOpenPanelFileURLs" message.
818         * WebKitTestRunner/InjectedBundle/TestRunner.h:
819         * WebKitTestRunner/TestController.cpp:
820         (WTR::runOpenPanel): Calls the WKOpenPanelResultListener with either the first item or all
821         items, depending on the value of WKOpenPanelParametersGetAllowsMultipleFiles().
822         (WTR::TestController::resetStateToConsistentValues): Clear m_openPanelFileURLs.
823         * WebKitTestRunner/TestController.h:
824         (WTR::TestController::openPanelFileURLs):
825         (WTR::TestController::setOpenPanelFileURLs):
826         * WebKitTestRunner/TestInvocation.cpp:
827         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle): Added code to handle the
828         "SetOpenPanelFileURLs" message.
829
830 2017-02-26  Wenson Hsieh  <wenson_hsieh@apple.com>
831
832         REGRESSION (r211312): Double-clicking a word selects it along with the space that follows it
833         https://bugs.webkit.org/show_bug.cgi?id=168821
834         <rdar://problem/30690431>
835
836         Reviewed by Tim Horton.
837
838         Adds the ability for TestWKWebView to send a sequence of clicks to its window, and uses this capability to
839         verify that double clicking to select a word in a WKWebView on Mac selects just the word, and not a trailing
840         space along with it.
841
842         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
843         * TestWebKitAPI/Tests/WebKit2Cocoa/double-click-does-not-select-trailing-space.html: Added.
844         * TestWebKitAPI/Tests/mac/WKWebViewSelectionTests.mm: Copied from Tools/TestWebKitAPI/cocoa/TestWKWebView.h.
845         (TEST):
846         * TestWebKitAPI/cocoa/TestWKWebView.h:
847         * TestWebKitAPI/cocoa/TestWKWebView.mm:
848         (-[TestWKWebViewHostWindow _mouseDownAtPoint:simulatePressure:clickCount:]):
849         (-[TestWKWebViewHostWindow _mouseUpAtPoint:clickCount:]):
850         (-[TestWKWebView mouseDownAtPoint:simulatePressure:]):
851         (-[TestWKWebView mouseUpAtPoint:]):
852         (-[TestWKWebView sendClicksAtPoint:numberOfClicks:]):
853         (-[TestWKWebViewHostWindow _mouseDownAtPoint:simulatePressure:]): Deleted.
854         (-[TestWKWebViewHostWindow _mouseUpAtPoint:]): Deleted.
855
856 2017-02-25  Simon Fraser  <simon.fraser@apple.com>
857
858         Make check-webkit-style do some basic validation for CSSProperties.json
859         https://bugs.webkit.org/show_bug.cgi?id=168874
860
861         Reviewed by Zalan Bujtas.
862
863         Do checking of the keys and the value types.
864         
865         Print exceptions if they occur; previously, coding errors caused silent failure.
866
867         * Scripts/webkitpy/style/checker.py:
868         (CheckerDispatcher._create_checker):
869         * Scripts/webkitpy/style/checkers/jsonchecker.py:
870         (JSONFeaturesChecker.check):
871         (JSONCSSPropertiesChecker):
872         (JSONCSSPropertiesChecker.check):
873         (JSONCSSPropertiesChecker.validate_comment):
874         (JSONCSSPropertiesChecker.validate_type):
875         (JSONCSSPropertiesChecker.validate_boolean):
876         (JSONCSSPropertiesChecker.validate_string):
877         (JSONCSSPropertiesChecker.validate_array):
878         (JSONCSSPropertiesChecker.validate_codegen_properties):
879         (JSONCSSPropertiesChecker.check_property):
880         (JSONCSSPropertiesChecker.check_codegen_properties):
881
882 2017-02-26  Chris Dumez  <cdumez@apple.com>
883
884         HitTestResult's linkSuggestedFilename should sanitize download attribute
885         https://bugs.webkit.org/show_bug.cgi?id=168856
886         <rdar://problem/30683109>
887
888         Reviewed by Antti Koivisto.
889
890         Add test coverage.
891
892         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
893         * TestWebKitAPI/Tests/WebKit2/link-with-download-attribute-with-slashes.html: Added.
894         * TestWebKitAPI/Tests/WebKit2/mac/ContextMenuDownload.mm:
895         (TestWebKitAPI::decideDestinationWithSuggestedFilenameContainingSlashes):
896         (TestWebKitAPI::TEST):
897
898 2017-02-24  Joseph Pecoraro  <pecoraro@apple.com>
899
900         [Resource Timing] Media elements initiated loads should set the initiatorType to their element name (video/audio)
901         https://bugs.webkit.org/show_bug.cgi?id=168680
902
903         Reviewed by Youenn Fablet.
904
905         * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
906         (TestWebKitAPI::WebCoreNSURLSessionTest::SetUp):
907         Include a dummy HTMLVideoElement.
908
909 2017-02-24  Wenson Hsieh  <wenson_hsieh@apple.com>
910
911         Unreviewed, temporarily disable all data interaction tests.
912
913         They will be reenabled once the bots are ready to build and run them.
914
915         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
916         * TestWebKitAPI/ios/DataInteractionSimulator.h:
917         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
918
919 2017-02-24  Wenson Hsieh  <wenson_hsieh@apple.com>
920
921         Unreviewed, fix the internal build.
922
923         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
924         (-[DataInteractionSimulator _advanceProgress]):
925
926 2017-02-24  Matt Rajca  <mrajca@apple.com>
927
928         Media: notify clients when autoplay is denied
929         https://bugs.webkit.org/show_bug.cgi?id=168840
930
931         Reviewed by Alex Christensen.
932
933         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
934         (handleAutoplayEvent):
935         (runUntilReceivesAutoplayEvent):
936         (TEST): Added.
937
938 2017-02-23  Matt Rajca  <mrajca@apple.com>
939
940         API test WebKit2.WebsitePoliciesPlayAfterPreventedAutoplay is timing out
941         https://bugs.webkit.org/show_bug.cgi?id=167466
942
943         Reviewed by Alex Christensen.
944
945         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
946         (TEST): Use the correct API version.
947
948 2017-02-20  Wenson Hsieh  <wenson_hsieh@apple.com>
949
950         Refactor data interaction to use new WKDataInteraction SPI
951         https://bugs.webkit.org/show_bug.cgi?id=168602
952         Work towards <rdar://problem/30313681>
953
954         Reviewed by Tim Horton.
955
956         Update DataInteractionSimulator to simulate data interaction using updated SPI. See changes in WebKit2 for more details.
957
958         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
959         (TestWebKitAPI::TEST):
960         * TestWebKitAPI/ios/DataInteractionSimulator.h:
961         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
962         (-[DataInteractionSimulator _resetSimulatedState]):
963         (-[DataInteractionSimulator runFrom:to:]):
964         (-[DataInteractionSimulator _advanceProgress]):
965         (-[DataInteractionSimulator _currentLocation]):
966         (-[DataInteractionSimulator _finishDataInteraction]): Deleted.
967         (-[DataInteractionSimulator webViewDidSendDataInteractionStartRequest:]): Deleted.
968         (-[DataInteractionSimulator webView:didReceiveDataInteractionStartResponse:]): Deleted.
969
970 2017-02-20  Wenson Hsieh  <wenson_hsieh@apple.com>
971
972         Remove the data interaction gesture recognizer
973         https://bugs.webkit.org/show_bug.cgi?id=168600
974         <rdar://problem/30313681>
975
976         Reviewed by Anders Carlsson.
977
978         Adjust TestWebKitAPI for changes in WebKit2.
979
980         * TestWebKitAPI/ios/DataInteractionSimulator.h:
981         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
982         (-[DataInteractionSimulator initWithWebView:]):
983         (-[DataInteractionSimulator runFrom:to:]):
984         (-[DataInteractionSimulator _advanceProgress]):
985         (-[DataInteractionSimulator _finishDataInteraction]):
986         (-[MockLongPressGestureRecognizer initWithWindow:]): Deleted.
987         (-[MockLongPressGestureRecognizer locationInView:]): Deleted.
988         (-[MockLongPressGestureRecognizer state]): Deleted.
989         (-[MockLongPressGestureRecognizer numberOfTouches]): Deleted.
990         (-[DataInteractionSimulator _recognizeGestureAtLocation:withState:]): Deleted.
991         (-[DataInteractionSimulator dataInteractionGestureRecognizer]): Deleted.
992         (-[DataInteractionSimulator webView:beginDataInteractionWithSourceIndex:gestureRecognizer:]): Deleted.
993
994 2017-02-24  John Wilander  <wilander@apple.com>
995
996         Resource Load Statistics: Add alternate classification method
997         https://bugs.webkit.org/show_bug.cgi?id=168347
998         <rdar://problem/30352793>
999         <rdar://problem/30646710>
1000         <rdar://problem/30660708>
1001
1002         Reviewed by Alex Christensen.
1003
1004         Added three testRunner functions to facilitate layout tests:
1005         - setStatisticsSubframeUnderTopFrameOrigin()
1006         - setStatisticsSubresourceUnderTopFrameOrigin()
1007         - setStatisticsSubresourceUniqueRedirectTo()
1008
1009         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1010         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1011         (WTR::TestRunner::setStatisticsSubframeUnderTopFrameOrigin):
1012         (WTR::TestRunner::setStatisticsSubresourceUnderTopFrameOrigin):
1013         (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectTo):
1014         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1015         * WebKitTestRunner/TestController.cpp:
1016         (WTR::TestController::setStatisticsSubframeUnderTopFrameOrigin):
1017         (WTR::TestController::setStatisticsSubresourceUnderTopFrameOrigin):
1018         (WTR::TestController::setStatisticsSubresourceUniqueRedirectTo):
1019         * WebKitTestRunner/TestController.h:
1020         * WebKitTestRunner/TestInvocation.cpp:
1021         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1022
1023 2017-02-23  Joseph Pecoraro  <pecoraro@apple.com>
1024
1025         [Resource Timing] Add Experimental Feature Flag
1026         https://bugs.webkit.org/show_bug.cgi?id=167147
1027
1028         Reviewed by Ryosuke Niwa.
1029
1030         * DumpRenderTree/mac/DumpRenderTree.mm:
1031         (enableExperimentalFeatures):
1032         (resetWebPreferencesToConsistentValues):
1033         * DumpRenderTree/win/DumpRenderTree.cpp:
1034         (enableExperimentalFeatures):
1035         (resetWebPreferencesToConsistentValues):
1036         Put experimental flags in the experimental section.
1037
1038 2017-02-23  Beth Dakin  <bdakin@apple.com> + Dan Saunders  <dasau@microsoft.com>
1039
1040         No reliable way to get a snapshot of WKWebView (macOS)
1041         https://bugs.webkit.org/show_bug.cgi?id=161450
1042         -and corresponding-
1043         <rdar://problem/23846039>
1044
1045         Reviewed by Tim Horton.
1046
1047         Test for WKWebView’s new API takeSnapshotWithConfiguration:completionHandler:
1048
1049         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1050         * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewSnapshot.mm: Added.
1051         (convertToCGImage):
1052         (getPixelIndex):
1053         (TEST):
1054
1055 2017-02-23  Saam Barati  <sbarati@apple.com>
1056
1057         Speculative fix for jsc timing out tests
1058         https://bugs.webkit.org/show_bug.cgi?id=168791
1059
1060         Rubber Stamped by Keith Miller.
1061
1062         Play musical chairs with IRC and Briggs options on
1063         ftl-eager and ftl-eager-no-cjit.
1064
1065         * Scripts/run-jsc-stress-tests:
1066
1067 2017-02-23  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1068
1069         Improve error message when the WPT server fails to start.
1070         https://bugs.webkit.org/show_bug.cgi?id=168759
1071
1072         Reviewed by Ryosuke Niwa.
1073
1074         Check if the WPT server is running after 1 second, and if is not
1075         print useful information for helping the user to debug the issue.
1076
1077         Using check_running_pid() to check if the process is still running
1078         doesn't work. A process started via subprocess popen that has ended
1079         will be in a zombie state until a call to wait/communicate/poll
1080         is done, or until the object is deleted or garbage collected.
1081
1082         This adds also support for testing the behaviour of subprocess
1083         poll() on the unit tests that use MockProcess.
1084
1085         A new test is added also for the battery of tests for the WPT
1086         server.
1087
1088         * Scripts/webkitpy/common/system/executive_mock.py:
1089         (MockProcess.__init__):
1090         (MockProcess.wait):
1091         (MockProcess.communicate):
1092         (MockProcess.poll):
1093         (MockExecutive.popen):
1094         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
1095         (WebPlatformTestServer.__init__):
1096         (WebPlatformTestServer._prepare_config):
1097         (WebPlatformTestServer._spawn_process):
1098         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server_unittest.py:
1099         (TestWebPlatformTestServer.test_corrupted_subserver_files):
1100         (TestWebPlatformTestServer):
1101         (TestWebPlatformTestServer.test_server_fails_to_start_throws_exception):
1102
1103 2017-02-23  Wenson Hsieh  <wenson_hsieh@apple.com>
1104
1105         Unreviewed, temporarily disable DataInteractionTests in TestWebKitAPI.
1106
1107         These will be reenabled in https://bugs.webkit.org/show_bug.cgi?id=168602.
1108
1109         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1110
1111 2017-02-22  Wenson Hsieh  <wenson_hsieh@apple.com>
1112
1113         Data interaction causes selection to fall out of sync between web/UI processes
1114         https://bugs.webkit.org/show_bug.cgi?id=168735
1115         <rdar://problem/30657817>
1116
1117         Reviewed by Tim Horton.
1118
1119         Adds a new method to TestWKWebView for querying selection view rects from the UI process and augments data
1120         interaction unit tests to check for selection rects using this new hook.
1121
1122         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1123         (makeCGRectValue):
1124         (TestWebKitAPI::TEST):
1125         * TestWebKitAPI/cocoa/TestWKWebView.h:
1126         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1127         (-[TestWKWebView selectionRectsAfterPresentationUpdate]):
1128         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1129         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1130         (-[DataInteractionSimulator _resetSimulatedState]):
1131         (-[DataInteractionSimulator runFrom:to:]):
1132         (-[DataInteractionSimulator finalSelectionRects]):
1133
1134 2017-02-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1135
1136         Better handle Thread and RunLoop initialization
1137         https://bugs.webkit.org/show_bug.cgi?id=167828
1138
1139         Reviewed by Yusuke Suzuki.
1140
1141         Remove unnecessary calls to WTF::initializeMainThread().
1142
1143         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
1144         (TestWebKitAPI::ComplexTextControllerTest::SetUp):
1145         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
1146         (TestWebKitAPI::ContentExtensionTest::SetUp):
1147         * WebKitTestRunner/TestController.cpp:
1148         (WTR::TestController::initialize):
1149
1150 2017-02-22  Myles C. Maxfield  <mmaxfield@apple.com>
1151
1152         [Cocoa] Remove Yosemite-specific font lookup code
1153         https://bugs.webkit.org/show_bug.cgi?id=168682
1154
1155         Reviewed by Zalan Bujtas.
1156
1157         * DumpRenderTree/mac/DumpRenderTree.mm:
1158         (fontWhitelist):
1159         (adjustFonts):
1160         (createWebViewAndOffscreenWindow):
1161         (drt_NSFontManager_availableFontFamilies): Deleted.
1162         (drt_NSFontManager_availableFonts): Deleted.
1163         (swizzleNSFontManagerMethods): Deleted.
1164         * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
1165         (WTR::activateFonts):
1166         (WTR::allowedFontFamilySet): Deleted.
1167         (WTR::systemHiddenFontFamilySet): Deleted.
1168         (WTR::wtr_NSFontManager_availableFontFamilies): Deleted.
1169         (WTR::wtr_NSFontManager_availableFonts): Deleted.
1170         (WTR::swizzleNSFontManagerMethods): Deleted.
1171         * WebKitTestRunner/mac/TestControllerMac.mm:
1172         (WTR::generateWhitelist):
1173         (WTR::TestController::platformInitializeContext):
1174
1175 2017-02-22  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1176
1177         AutoInstaller should not skip the install step if the package is downloaded but not installed
1178         https://bugs.webkit.org/show_bug.cgi?id=168737
1179
1180         Reviewed by Ryosuke Niwa.
1181
1182         Don't skip the install step if the package target path don't exists.
1183         Fix the description for "should_refresh" optional argument.
1184
1185         * Scripts/webkitpy/common/system/autoinstall.py:
1186         (AutoInstaller.install):
1187
1188 2017-02-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1189
1190         [GTK] Do not use g_return_if_fail in EventSenderProxy::continuousMouseScrollBy
1191         https://bugs.webkit.org/show_bug.cgi?id=168721
1192
1193         Reviewed by Michael Catanzaro.
1194
1195         Use WTFLogAlways instead. It's still shown in stderr, but it won't crash if we ever run tests with fatal
1196         criticals.
1197
1198         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
1199         (WTR::EventSenderProxy::continuousMouseScrollBy):
1200
1201 2017-02-21  Youenn Fablet  <youenn@apple.com>
1202
1203         [WebRTC][Mac] Activate libwebrtc
1204         https://bugs.webkit.org/show_bug.cgi?id=167293
1205         <rdar://problem/30401864>
1206
1207         Reviewed by Alex Christensen.
1208
1209         Fixing paths to allow loading libwebrtc.dylib successfully.
1210
1211         * Scripts/build-webkit:
1212         * Scripts/webkitdirs.pm:
1213         (setupMacWebKitEnvironment):
1214         (setupIOSWebKitEnvironment):
1215         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1216
1217 2017-02-21  Saam Barati  <sbarati@apple.com>
1218
1219         Add the Briggs optimistic allocator to run on ARM64
1220         https://bugs.webkit.org/show_bug.cgi?id=168454
1221
1222         Reviewed by Filip Pizlo.
1223
1224         * Scripts/run-jsc-stress-tests:
1225
1226 2017-02-20  Filip Pizlo  <fpizlo@apple.com>
1227
1228         The collector thread should only start when the mutator doesn't have heap access
1229         https://bugs.webkit.org/show_bug.cgi?id=167737
1230
1231         Reviewed by Keith Miller.
1232         
1233         Make more tests collect continuously.
1234
1235         * Scripts/run-jsc-stress-tests:
1236
1237 2017-02-20  Simon Fraser  <simon.fraser@apple.com>
1238
1239         Add support to PlatformCALayer/GraphicsLayerCA for subpixel-antialiased text, with a Setting and a MiniBrowser switch
1240         https://bugs.webkit.org/show_bug.cgi?id=168620
1241         <rdar://problem/30617772>
1242
1243         Reviewed by Tim Horton.
1244         
1245         Add a setting that allows one to toggle subpixel-antialiased layer text on and off.
1246
1247         * DumpRenderTree/mac/DumpRenderTree.mm:
1248         (resetWebPreferencesToConsistentValues):
1249         * MiniBrowser/mac/SettingsController.h:
1250         * MiniBrowser/mac/SettingsController.m:
1251         (-[SettingsController _populateMenu]):
1252         (-[SettingsController validateMenuItem:]):
1253         (-[SettingsController toggleSubpixelAntialiasedLayerTextEnabled:]):
1254         (-[SettingsController subpixelAntialiasedLayerTextEnabled]):
1255         * MiniBrowser/mac/WK1BrowserWindowController.m:
1256         (-[WK1BrowserWindowController didChangeSettings]):
1257         * MiniBrowser/mac/WK2BrowserWindowController.m:
1258         (-[WK2BrowserWindowController didChangeSettings]):
1259         * WebKitTestRunner/TestController.cpp:
1260         (WTR::TestController::resetPreferencesToConsistentValues):
1261
1262 2017-02-21  Jonathan Bedard  <jbedard@apple.com>
1263
1264         webkitpy: Refactor Device class
1265         https://bugs.webkit.org/show_bug.cgi?id=168332
1266
1267         Reviewed by Alexey Proskuryakov.
1268
1269         Separate the more specific SimulatedDevice from the abstract
1270         idea of a device.
1271
1272         * Scripts/webkitpy/xcode/device.py: Added.
1273         (Device):  Base device class.
1274         (Device.__init__): Initialize _host, name and udid.
1275         (Device.install_app): Function declaration.
1276         (Device.launch_app): Ditto.
1277         (Device.__eq__): Compare two devices by udid.
1278         (Device.__ne__): Ditto.
1279         (Device.__repr__): Return device name and udid in formatted string.
1280         * Scripts/webkitpy/xcode/simulated_device.py: Copied from Tools/Scripts/webkitpy/xcode/simulator.py.
1281         (SimulatedDevice):
1282         (SimulatedDevice.__init__): Call Device.__init__ first.
1283         (SimulatedDevice.delete): Device -> SimulatedDevice.
1284         (SimulatedDevice.reset): Ditto.
1285         (SimulatedDevice.__eq__): Moved to device.py.
1286         (SimulatedDevice.__ne__): Ditto.
1287         (SimulatedDevice.__repr__): Call Device __repr__ first.
1288         (DeviceType): Kept in Scripts/webkitpy/xcode/simulator.py.
1289         (Runtime): Kept in Scripts/webkitpy/xcode/simulator.py.
1290         (Device): Renamed SimulatedDevice.
1291         (Simulator): Kept in Scripts/webkitpy/xcode/simulator.py.
1292         * Scripts/webkitpy/xcode/simulator.py:
1293         (Simulator): Define Simulator.Device class as None.
1294         (Simulator.__init__): Import SimulatedDevice as Simulator.Device.
1295         (Simulator.delete_device): Use Simulator.Device.
1296         (Simulator.reset_device): Ditto.
1297         (Simulator._parse_devices): Ditto.
1298         (Simulator.lookup_or_create_device): Make 
1299         (Device): Moved to simulated_device as SimulatedDevice.
1300
1301 2017-02-21  JF Bastien  <jfbastien@apple.com>
1302
1303         Fix cmake build
1304         https://bugs.webkit.org/show_bug.cgi?id=168665
1305
1306         Reviewed by Mark Lam.
1307
1308         It was broken by r212555 and r212681.
1309
1310         * DumpRenderTree/PlatformMac.cmake:
1311
1312 2017-02-21  Alexey Proskuryakov  <ap@apple.com>
1313
1314         Improve bot watcher's dashboard performance
1315         https://bugs.webkit.org/show_bug.cgi?id=168624
1316         <rdar://problem/30190109>
1317
1318         Reviewed by Daniel Bates.
1319
1320         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
1321         There was an unnecessary linear complexity algorithm in indexOfRevision().
1322
1323 2017-02-21  Alex Christensen  <achristensen@webkit.org>
1324
1325         Unreviewed, rolling out r212699.
1326
1327         Internal build not ready
1328
1329         Reverted changeset:
1330
1331         "[WebRTC][Mac] Activate libwebrtc"
1332         https://bugs.webkit.org/show_bug.cgi?id=167293
1333         http://trac.webkit.org/changeset/212699
1334
1335 2017-02-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1336
1337         Remove ENABLE_THREADED_COMPOSITOR build option
1338         https://bugs.webkit.org/show_bug.cgi?id=168606
1339
1340         Reviewed by Michael Catanzaro.
1341
1342         * Scripts/webkitperl/FeatureList.pm:
1343
1344 2017-02-20  Youenn Fablet  <youenn@apple.com>
1345
1346         [WebRTC][Mac] Activate libwebrtc
1347         https://bugs.webkit.org/show_bug.cgi?id=167293
1348         <rdar://problem/30401864>
1349
1350         Reviewed by Alex Christensen.
1351
1352         Fixing paths to allow loading libwebrtc.dylib successfully.
1353
1354         * Scripts/build-webkit:
1355         * Scripts/webkitdirs.pm:
1356         (setupMacWebKitEnvironment):
1357         (setupIOSWebKitEnvironment):
1358
1359 2017-02-20  Ryan Haddad  <ryanhaddad@apple.com>
1360
1361         Unreviewed, rolling out r212685.
1362
1363         This change broke the 32-bit Sierra build.
1364
1365         Reverted changeset:
1366
1367         "Resource Load Statistics: Add alternate classification
1368         method"
1369         https://bugs.webkit.org/show_bug.cgi?id=168347
1370         http://trac.webkit.org/changeset/212685
1371
1372 2017-02-20  John Wilander  <wilander@apple.com>
1373
1374         Resource Load Statistics: Add alternate classification method
1375         https://bugs.webkit.org/show_bug.cgi?id=168347
1376         <rdar://problem/30352793>
1377
1378         Reviewed by Alex Christensen.
1379
1380         Added three testRunner functions to facilitate layout tests:
1381         - setStatisticsSubframeUnderTopFrameOrigin()
1382         - setStatisticsSubresourceUnderTopFrameOrigin()
1383         - setStatisticsSubresourceUniqueRedirectTo()
1384
1385         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1386         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1387         (WTR::TestRunner::setStatisticsSubframeUnderTopFrameOrigin):
1388         (WTR::TestRunner::setStatisticsSubresourceUnderTopFrameOrigin):
1389         (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectTo):
1390         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1391         * WebKitTestRunner/TestController.cpp:
1392         (WTR::TestController::setStatisticsSubframeUnderTopFrameOrigin):
1393         (WTR::TestController::setStatisticsSubresourceUnderTopFrameOrigin):
1394         (WTR::TestController::setStatisticsSubresourceUniqueRedirectTo):
1395         * WebKitTestRunner/TestController.h:
1396         * WebKitTestRunner/TestInvocation.cpp:
1397         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1398
1399 2017-02-20  Anders Carlsson  <andersca@apple.com>
1400
1401         Use the new drag code path when dragging links
1402         https://bugs.webkit.org/show_bug.cgi?id=168612
1403
1404         Reviewed by Tim Horton.
1405
1406         If a type is not dynamic, just use the static UTI.
1407
1408         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
1409         (-[LocalPasteboard writeObjects:]):
1410
1411 2017-02-17  Anders Carlsson  <andersca@apple.com>
1412
1413         Add a new drag code path and use it for dragging plain text
1414         https://bugs.webkit.org/show_bug.cgi?id=168534
1415
1416         Reviewed by Geoffrey Garen.
1417
1418         Update the testing infrastructure to handle NSDraggingSession.
1419
1420         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
1421         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm: Renamed from Tools/DumpRenderTree/mac/DumpRenderTreePasteboard.m.
1422         (-[LocalPasteboard writeObjects:]):
1423         Implement this in terms of the legacy pasteboard API.
1424
1425         * DumpRenderTree/mac/EventSendingController.mm:
1426         (drt_WebHTMLView_beginDraggingSessionWithItemsEventSource):
1427         (+[EventSendingController initialize]):
1428         Swizzle the drag method instead of adding a delegate method (like the old code does).
1429
1430 2017-02-20  Florian Bruhin  <git@the-compiler.org>
1431
1432         Handle EINTR during webkitpy server process select()
1433         https://bugs.webkit.org/show_bug.cgi?id=168361
1434
1435         Reviewed by Michael Catanzaro.
1436
1437         Otherwise, on my machine, resizing the terminal run-webkit-tests is running in
1438         makes it die.
1439
1440         * Scripts/webkitpy/port/server_process.py:
1441         (ServerProcess._wait_for_data_and_update_buffers_using_select):
1442
1443 2017-02-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1444
1445         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/default-menu.
1446
1447         It can happen that the window onload event is dispatched after the load finished is received in the UI
1448         process. Move the script to select the text to the body instead of using a window onload handler.
1449
1450         * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
1451         (testContextMenuDefaultMenu):
1452
1453 2017-02-20  Manuel Rego Casasnovas  <rego@igalia.com>
1454
1455         [css-grid] Remove compilation flag ENABLE_CSS_GRID_LAYOUT
1456         https://bugs.webkit.org/show_bug.cgi?id=167693
1457
1458         Reviewed by Sergio Villar Senin.
1459
1460         * Scripts/webkitperl/FeatureList.pm:
1461         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1462         * TestWebKitAPI/Tests/WebCore/CSSParser.cpp:
1463         (TestWebKitAPI::computeNumberOfTracks):
1464         (TestWebKitAPI::TEST):
1465         * TestWebKitAPI/Tests/WebCore/GridPosition.cpp:
1466         (TestWebKitAPI::TEST):
1467
1468 2017-02-19  Commit Queue  <commit-queue@webkit.org>
1469
1470         Unreviewed, rolling out r212466.
1471         https://bugs.webkit.org/show_bug.cgi?id=168577
1472
1473         causes crashes on AArch64 on linux, maybe it's causing crashes
1474         on iOS too (Requested by pizlo on #webkit).
1475
1476         Reverted changeset:
1477
1478         "The collector thread should only start when the mutator
1479         doesn't have heap access"
1480         https://bugs.webkit.org/show_bug.cgi?id=167737
1481         http://trac.webkit.org/changeset/212466
1482
1483 2017-02-17  Aakash Jain  <aakash_jain@apple.com>
1484
1485         Fix failure from r212579.
1486
1487         Unreviewed build-fix.
1488
1489         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
1490         (CheckPatchRelevance._changes_are_relevant): Return true for all groups others than jsc for now.
1491
1492 2017-02-17  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
1493
1494         EWS should run JavaScriptCore tests
1495         https://bugs.webkit.org/show_bug.cgi?id=162458
1496
1497         Reviewed by Alexey Proskuryakov.
1498
1499         * QueueStatusServer/config/queues.py: Add jsc-ews queue.
1500         * QueueStatusServer/model/queuestatus.py:
1501         (QueueStatus.did_skip): Returns whether patch was skipped, based on status.
1502         * QueueStatusServer/handlers/statusbubble.py:
1503         (StatusBubble._should_show_bubble_for): Add logic to hide jsc-ews bubble if the patch does not touch jsc.
1504         * Scripts/webkitpy/common/checkout/scm/scm_mock.py:
1505         (MockSCM.__init__): Add _mockChangedFiles variable.
1506         (MockSCM.changed_files): Change to use _mockChangedFiles variables.
1507         * Scripts/webkitpy/common/config/ews.json: Add config info for JSC EWS.
1508         * Scripts/webkitpy/common/config/ports.py: Add support for JSC EWS in Mac Port.
1509         (DeprecatedPort._append_build_style_flag): Helper function to append build_style to a command.
1510         (DeprecatedPort.build_jsc_command): Added - command to build JSC only (quicker than building all of WebKit).
1511         (DeprecatedPort.run_javascriptcore_tests_command): Allow JSC EWS to only run JSC tests.
1512         (MacPort.run_webkit_tests_command): Check for JSC.
1513         * Scripts/webkitpy/common/config/ports_mock.py:
1514         (MockPort.run_javascriptcore_tests_command): Add build_style argument.
1515         * Scripts/webkitpy/common/config/ports_unittest.py:
1516         (DeprecatedPortTest.test_mac_port): Add unit tests for build-jsc shell command.
1517         * Scripts/webkitpy/common/net/abstracttestresults.py: Added.
1518         (AbstractTestResults): Abstract superclass of JSCTestResults and JSCTestResults.
1519         (AbstractTestResults.test_results): Stub.
1520         (AbstractTestResults.failing_tests): Stub.
1521         (AbstractTestResults.did_exceed_test_failure_limit): Stub.
1522         * Scripts/webkitpy/common/net/jsctestresults.py: Added.
1523         (JSCTestResults): Added.
1524         (JSCTestResults.intersection): Return a JSCTestResults object with failures common to both input objects.
1525         (JSCTestResults.results_from_string): Use json library to parse results.
1526         (JSCTestResults.__init__): Initialize members.
1527         (JSCTestResults.equals): This enables unit testing.
1528         (JSCTestResults.is_subset): Checks if one set of failures is a subset of another.
1529         (JSCTestResults.all_passed): Getter.
1530         (JSCTestResults.failing_tests): Getter.
1531         (JSCTestResults.did_exceed_test_failure_limit): Getter.
1532         * Scripts/webkitpy/common/net/jsctestresults_unittest.py: Added.
1533         (JSCTestResultsTest): Class to test JSCTestResults.
1534         (JSCTestResultsTest.test_results_from_string): Tests parsing.
1535         (JSCTestResultsTest.test_intersection_api_tests): Unit test for intersection() class method.
1536         (JSCTestResultsTest.test_intersection_stress_tests): Unit test for intersection() class method.
1537         (JSCTestResultsTest.test_intersection_general_case): Unit test for intersection() class method.
1538         * Scripts/webkitpy/port/base.py:
1539         (Port.jsc_results_directory): Returns the directory for the JSC test results JSON file.
1540         * Scripts/webkitpy/tool/bot/earlywarningsystemtask.py:
1541         (EarlyWarningSystemTask.run): Add check_patch_relevance step.
1542         * Scripts/webkitpy/tool/bot/jscews_unittest.py: Added.
1543         (MockPatchAnalysisTask): Mocked-out version of PatchAnalysisTask that doesn't run commands.
1544         (MockPatchAnalysisTask.__init__): Sets attributes.
1545         (MockPatchAnalysisTask._test): Override to not run command.
1546         (MockPatchAnalysisTask._build_and_test_without_patch): Override to not run command.
1547         (MockPatchAnalysisTask.validate): Assume mocked patch is valid for purposes of testing retry logic.
1548         (MockPatchAnalysisTask.test_run_count): Specific to the mocked version, to test retry logic.
1549         (MockJSCEarlyWarningSystem): Mocked-out version of AbstarctEarlyWarningSystem so we can provide test results.
1550         (MockJSCEarlyWarningSystem.__init__): Sets attributes, also sets group to jsc.
1551         (MockJSCEarlyWarningSystem.test_results): Returns test results provided by us, instead of using a JSON reader.
1552         (JSCEarlyWarningSystemTest): Class to test retry logic in below situations.
1553         (JSCEarlyWarningSystemTest._create_task): Helper function to abstract out common code.
1554         (JSCEarlyWarningSystemTest._results_indicate_all_passed): False if input is None or has failures, else True.
1555         (JSCEarlyWarningSystemTest.test_success_case): Clean patch on clean tree.
1556         (JSCEarlyWarningSystemTest.test_test_failure): Failed patch on clean tree.
1557         (JSCEarlyWarningSystemTest.test_fix): Patch that fixes all tree redness.
1558         (JSCEarlyWarningSystemTest.test_ineffective_patch): Patch that has same failures as tree.
1559         (JSCEarlyWarningSystemTest.test_partially_effective_patch): Patch fixes some failures but adds no new failures.
1560         (JSCEarlyWarningSystemTest.test_different_test_failures_in_patch_and_tree): Patch has some failures not in tree.
1561         (JSCEarlyWarningSystemTest.test_first_results_could_not_be_read): Patch results not readable.
1562         (JSCEarlyWarningSystemTest.test_second_results_could_not_be_read): Patch results not readable on second run.
1563         (JSCEarlyWarningSystemTest.test_clean_results_could_not_be_read): Results from clean tree not readable.
1564         (JSCEarlyWarningSystemTest.test_flaky_results_on_clean_tree_pass): Patch has one flake and no failures.
1565         (JSCEarlyWarningSystemTest.test_flaky_results_on_clean_tree_pass_v2): Patch has one flake and no failures.
1566         (JSCEarlyWarningSystemTest.test_flaky_results_on_clean_tree_failure): Patch has flakes and failed tests.
1567         (JSCEarlyWarningSystemTest.test_flaky_results_on_red_tree_pass): Patch has same failures as tree, plus a flake.
1568         * Scripts/webkitpy/tool/bot/jsctestresultsreader.py: Added.
1569         (JSCTestResultsReader): Reads results file.
1570         (JSCTestResultsReader.__init__): Sets attributes.
1571         (JSCTestResultsReader._read_file_contents): Reads file.
1572         (JSCTestResultsReader.results): Reads the results file and returns a JSCTestResults object.
1573         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
1574         (PatchIsNotApplicable): Exception for when patch doesn't have relevant changes.
1575         (PatchAnalysisTask._check_patch_relevance): Added.
1576         (PatchAnalysisTask._build): Check for JSC.
1577         (PatchAnalysisTask._build_without_patch): Check for JSC.
1578         (PatchAnalysisTask._test): Check for JSC.
1579         (PatchAnalysisTask._build_and_test_without_patch): Check for JSC.
1580         (PatchAnalysisTask._retry_jsc_tests): Retry logic for JSC EWS.
1581         (PatchAnalysisTask._retry_layout_tests): Retry logic for layout tests EWS.
1582         (PatchAnalysisTask._test_patch): Add retry logic for JSC.
1583         * Scripts/webkitpy/tool/commands/download.py:
1584         (CheckPatchRelevance): Add check-patch-relevance command.
1585         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1586         (AbstractEarlyWarningSystem._create_task): Abstract out to enable mocking.
1587         (AbstractEarlyWarningSystem.begin_work_queue): Use JSCTestResultsReader not LayoutTestResultsReader in JSC EWS.
1588         (AbstractEarlyWarningSystem.review_patch): Handle PatchIsApplicable.
1589         (AbstractEarlyWarningSystem.test_results): _layout_test_results_reader -> _test_results_reader.
1590         (AbstractEarlyWarningSystem.archive_last_test_results): _layout_test_results_reader -> _test_results_reader.
1591         (AbstractEarlyWarningSystem.group): This attribute determines the type of EWS (eg. JSC).
1592         (AbstractEarlyWarningSystem.load_ews_classes): Add _group, and make classes of type cls to enable mocking.
1593         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1594         (TestEWS): Sample layout test EWS class used for unit testing.
1595         (TestJSCEWS): Sample JSC EWS class used for unit testing.
1596         (AbstractEarlyWarningSystemTest.test_failing_tests_message.TestEWS): Add _group.
1597         (AbstractEarlyWarningSystemTest.test_failing_jsc_tests_message.TestEWS): Added test for jsc failures message.
1598         (AbstractEarlyWarningSystemTest): Add _group variable.
1599         (EarlyWarningSystemTest._default_expected_logs): Add check-patch-relevance step, inconclusive logs, and group.
1600         (EarlyWarningSystemTest._test_ews): Add logs_are_conclusive option to pass through to default_expected_logs().
1601         (EarlyWarningSystemTest.test_inconclusive_test_results): Test not removing patch from queue if not conclusive.
1602         (MockAbstractEarlyWarningSystemForInconclusiveJSCResults): Added.
1603         (MockAbstractEarlyWarningSystemForInconclusiveJSCResults._test_patch): Simulates running tests but not getting a conclusive result.
1604         (MockEarlyWarningSystemTaskForInconclusiveJSCResults): Added.
1605         (MockEarlyWarningSystemTaskForInconclusiveJSCResults._create_task): Use MockEarlyWarningSystemTask (not EarlyWarningSystemTask).
1606         * Scripts/webkitpy/tool/steps/__init__.py: Add CheckPatchRelevance import.
1607         * Scripts/webkitpy/tool/steps/build.py:
1608         (Build.options): Check for JSC.
1609         (Build.build): Check for JSC.
1610         (Build.run): Check for JSC.
1611         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py: Added.
1612         (CheckPatchRelevance): Added.
1613         (CheckPatchRelevance._does_contain_change_in_paths): Abstract function to perform regex matching.
1614         (CheckPatchRelevance.run): Check if changed files in patch belong in certain folders.
1615         * Scripts/webkitpy/tool/steps/options.py:
1616         (Options): Add --group command line option.
1617         * Scripts/webkitpy/tool/steps/runtests.py:
1618         (RunTests.options): Add group.
1619         (RunTests.run): Check for JSC.
1620         (RunTests._run_webkit_tests): Check for JSC.
1621         (RunTests): Add _group attribute.
1622         (RunTests._run_javascriptcore_tests): New.
1623         * Scripts/webkitpy/tool/steps/steps_unittest.py: Unit tests.
1624
1625 2017-02-17  Aakash Jain  <aakash_jain@apple.com>
1626
1627         Fix tools that were broken by Efl removal
1628         https://bugs.webkit.org/show_bug.cgi?id=168496
1629
1630         Reviewed by Alexey Proskuryakov.
1631
1632         * QueueStatusServer/config/queues.py:
1633         * Scripts/webkitpy/common/config/ews.json:
1634         * TestResultServer/static-dashboards/builders.jsonp:
1635         * TestResultServer/static-dashboards/flakiness_dashboard.js:
1636         * TestResultServer/static-dashboards/loader_unittests.js:
1637
1638 2017-02-16  Lucas Forschler  <lforschler@apple.com>
1639
1640         https://bugs.webkit.org/show_bug.cgi?id=168442
1641         Move the SVN checkout from http -> https.
1642         Update unit tests.
1643
1644         Reviewed by Alexey Proskuryakov.
1645
1646         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1647         (CheckOutSource.__init__):
1648         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
1649         (SVNMirrorTest.get_SVNMirrorFromConfig):
1650         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout_unittests.js:
1651
1652 2017-02-16  Commit Queue  <commit-queue@webkit.org>
1653
1654         Unreviewed, rolling out r212514.
1655         https://bugs.webkit.org/show_bug.cgi?id=168489
1656
1657         broke test runner (Requested by alexchristensen on #webkit).
1658
1659         Reverted changeset:
1660
1661         "Remove EFL-specific files in Tools."
1662         http://trac.webkit.org/changeset/212514
1663
1664 2017-02-16  Alex Christensen  <achristensen@webkit.org>
1665
1666         Remove EFL-specific files in Tools.
1667
1668         Rubber-stamped by Anders Carlsson.
1669
1670         * ImageDiff/efl: Removed.
1671         * ImageDiff/efl/ImageDiff.cpp: Removed.
1672         * MiniBrowser/efl: Removed.
1673         * MiniBrowser/efl/CMakeLists.txt: Removed.
1674         * MiniBrowser/efl/main.c: Removed.
1675         * Scripts/run-efl-tests: Removed.
1676         * Scripts/update-webkitefl-libs: Removed.
1677         * Scripts/webkitpy/port/efl.py: Removed.
1678         * Scripts/webkitpy/port/efl_unittest.py: Removed.
1679         * TestWebKitAPI/Tests/WebKit2/efl: Removed.
1680         * TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks.cpp: Removed.
1681         * TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks_Bundle.cpp: Removed.
1682         * TestWebKitAPI/Tests/WebKit2/efl/WKViewScrollTo.cpp: Removed.
1683         * TestWebKitAPI/Tests/WebKit2/efl/scrollTo.html: Removed.
1684         * TestWebKitAPI/efl: Removed.
1685         * TestWebKitAPI/efl/InjectedBundleController.cpp: Removed.
1686         * TestWebKitAPI/efl/PlatformUtilities.cpp: Removed.
1687         * TestWebKitAPI/efl/PlatformWebView.cpp: Removed.
1688         * TestWebKitAPI/efl/main.cpp: Removed.
1689         * WebKitTestRunner/InjectedBundle/efl: Removed.
1690         * WebKitTestRunner/InjectedBundle/efl/ActivateFontsEfl.cpp: Removed.
1691         * WebKitTestRunner/InjectedBundle/efl/FontManagement.cpp: Removed.
1692         * WebKitTestRunner/InjectedBundle/efl/FontManagement.h: Removed.
1693         * WebKitTestRunner/InjectedBundle/efl/InjectedBundleEfl.cpp: Removed.
1694         * WebKitTestRunner/InjectedBundle/efl/TestRunnerEfl.cpp: Removed.
1695         * WebKitTestRunner/efl: Removed.
1696         * WebKitTestRunner/efl/EventSenderProxyEfl.cpp: Removed.
1697         * WebKitTestRunner/efl/PlatformWebViewEfl.cpp: Removed.
1698         * WebKitTestRunner/efl/TestControllerEfl.cpp: Removed.
1699         * WebKitTestRunner/efl/main.cpp: Removed.
1700         * efl: Removed.
1701         * efl/install-dependencies: Removed.
1702         * efl/jhbuild-optional.modules: Removed.
1703         * efl/jhbuild.modules: Removed.
1704         * efl/jhbuildrc: Removed.
1705         * efl/patches: Removed.
1706         * efl/patches/evas-fix-build-with-giflib5.patch: Removed.
1707         * efl/patches/fontconfig-C-11-requires-a-space-between-literal-and-identifier.patch: Removed.
1708         * efl/patches/gst-libav.patch: Removed.
1709         * efl/patches/gst-plugins-base-rtp-rtcpbuffer-fix-typo-in-enum.patch: Removed.
1710         * efl/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Removed.
1711         * efl/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Removed.
1712         * efl/patches/openwebrtc-gst-plugins-clang-warning-fix.patch: Removed.
1713
1714 2017-02-16  Myles C. Maxfield  <mmaxfield@apple.com>
1715
1716         font-weight in @font-face can cause a font to be downloaded even when it's not used
1717         https://bugs.webkit.org/show_bug.cgi?id=168114
1718         <rdar://problem/30301317>
1719
1720         Reviewed by Darin Adler.
1721
1722         LastResort needs to be usable in tests.
1723
1724         * DumpRenderTree/mac/DumpRenderTree.mm:
1725         (allowedFontFamilySet):
1726         * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
1727         (WTR::allowedFontFamilySet):
1728         * WebKitTestRunner/mac/TestControllerMac.mm:
1729         (WTR::allowedFontFamilySet):
1730
1731 2017-02-16  Alex Christensen  <achristensen@webkit.org>
1732
1733         Remove old URL parser
1734         https://bugs.webkit.org/show_bug.cgi?id=168483
1735
1736         Reviewed by Tim Horton.
1737
1738         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1739         (TestWebKitAPI::checkURL):
1740         (TestWebKitAPI::checkRelativeURL):
1741         (TestWebKitAPI::checkURLDifferences):
1742         (TestWebKitAPI::checkRelativeURLDifferences):
1743
1744 2017-02-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1745
1746         [WK2] Add additional test infrastructure and unit tests for data interaction
1747         https://bugs.webkit.org/show_bug.cgi?id=168439
1748         <rdar://problem/30557942>
1749
1750         Reviewed by Tim Horton.
1751
1752         Adds test support for additional data interaction scenarios that we currently cannot test, and also adds 7 new
1753         test cases to DataInteractionTests. Most of the changes here refactor and augment DataInteractionSimulator to
1754         support data interaction from  See per-method descriptions below for more details.
1755
1756         * Configurations/TestWebKitAPI.xcconfig:
1757
1758         Add MobileCoreServices to the list of additional frameworks to link against on iOS.
1759
1760         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1761
1762         Add a new build phase that copies additional resources from WebKitAdditions/Resources/TestWebKitAPI and dumps
1763         them into TestWebKitAPI.resources/ in the build directory, if the WebKitAdditions folder exists.
1764
1765         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1766         (-[TestWKWebView editorContainsImageElement]):
1767         (-[TestWKWebView editorValue]):
1768
1769         New helper methods for querying information from the "editor" element in a test page.
1770
1771         (TestWebKitAPI::TEST):
1772         (TestWebKitAPI::runTestsExpectingToObserveEvents): Deleted.
1773
1774         Moves logic for capturing events during a simulated data interaction run from the test file to
1775         DataInteractionSimulator. See -[DataInteractionSimulator observedEventNames].
1776
1777         * TestWebKitAPI/cocoa/TestWKWebView.h:
1778         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1779         (-[TestMessageHandler removeMessage:]):
1780         (-[TestWKWebView clearMessageHandlers:]):
1781
1782         Add the ability to clear message handlers from the TestWKWebView.
1783
1784         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1785         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1786         (dataInteractionEventNames):
1787         (-[DataInteractionSimulator initWithWebView:]):
1788         (-[DataInteractionSimulator _resetSimulatedState]):
1789
1790         Moves logic to clear test harness state from any previous runs into a helper. Called at the beginning when
1791         simulating data interaction.
1792
1793         (-[DataInteractionSimulator observedEventNames]):
1794
1795         Returns a list of the names of events relevant to data interaction that were observed over the course of the
1796         most recent run.
1797
1798         (-[DataInteractionSimulator runFrom:to:]):
1799
1800         Changes -run to -runFrom:to:, which takes window-relative start and end locations. This allows the test harness
1801         to run the same data interaction for multiple simulated gestures.
1802
1803         (-[DataInteractionSimulator _advanceProgress]):
1804         (-[DataInteractionSimulator _finishDataInteraction]):
1805         (-[DataInteractionSimulator externalItemProvider]):
1806         (-[DataInteractionSimulator setExternalItemProvider:]):
1807
1808         Adds the -externalItemProvider property to DataInteractionSimulator. Setting this skips the gesture recognition
1809         phase of a test run.
1810
1811         (-[DataInteractionSimulator webViewDidPerformDataInteractionControllerOperation:]):
1812         (-[DataInteractionSimulator webView:beginDataInteractionWithSourceIndex:gestureRecognizer:]):
1813         (-[DataInteractionSimulator webViewDidSendDataInteractionStartRequest:]):
1814         (-[DataInteractionSimulator webView:didReceiveDataInteractionStartResponse:]):
1815
1816         While a request to start data interaction is in flight, put the remainder of the test on hold until the web
1817         process returns. Then continue the test by scheduling a progress advance call. This addresses a race condition
1818         wherein the the web process might take longer than usual to process the request to start data interaction, and
1819         in the meantime, DataInteractionSimulator would end up completing the rest of the test before a response from
1820         the web process is received, which then causes no simulated delegate methods to be fired.
1821
1822         (-[DataInteractionSimulator initWithWebView:startLocation:endLocation:]): Deleted.
1823         (-[DataInteractionSimulator run]): Deleted.
1824
1825 2017-02-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1826
1827         Remove unused test pages in TestWebKitAPI
1828         https://bugs.webkit.org/show_bug.cgi?id=168462
1829
1830         Reviewed by Anders Carlsson.
1831
1832         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1833         * TestWebKitAPI/Tests/WebKit2Cocoa/autofocus-contenteditable.html: Removed.
1834         * TestWebKitAPI/Tests/WebKit2Cocoa/background-image-link-and-input.html: Removed.
1835         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-contenteditable.html: Removed.
1836         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-textarea.html: Removed.
1837         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-input.html: Removed.
1838
1839 2017-02-16  Alex Christensen  <achristensen@webkit.org>
1840
1841         Special URLs without a host are invalid
1842         https://bugs.webkit.org/show_bug.cgi?id=168461
1843
1844         Reviewed by Tim Horton.
1845
1846         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1847         (TestWebKitAPI::TEST_F):
1848
1849 2017-02-10  Filip Pizlo  <fpizlo@apple.com>
1850
1851         The collector thread should only start when the mutator doesn't have heap access
1852         https://bugs.webkit.org/show_bug.cgi?id=167737
1853
1854         Reviewed by Keith Miller.
1855         
1856         Make more tests collect continuously.
1857
1858         * Scripts/run-jsc-stress-tests:
1859
1860 2017-02-16  Tim Horton  <timothy_horton@apple.com>
1861
1862         WKWebView inside a UICollectionView flashes when items are inserted above it
1863         https://bugs.webkit.org/show_bug.cgi?id=168376
1864         <rdar://problem/29322051>
1865
1866         Reviewed by Simon Fraser.
1867
1868         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1869         (-[TestRunnerWKWebView _setStableStateOverride:]):
1870         Update the one external caller of this internal method...
1871
1872         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1873         (WTR::UIScriptController::doAfterVisibleContentRectUpdate):
1874         * DumpRenderTree/mac/UIScriptControllerMac.mm:
1875         (WTR::UIScriptController::doAfterVisibleContentRectUpdate):
1876         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1877         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1878         (WTR::UIScriptController::doAfterVisibleContentRectUpdate):
1879         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1880         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1881         (WTR::UIScriptController::doAfterVisibleContentRectUpdate):
1882         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
1883         (WTR::UIScriptController::doAfterVisibleContentRectUpdate):
1884         Expose doAfterVisibleContentRectUpdate to DRT and WKTR. It is called
1885         back after we dispatch a visible content rect update from the UI process
1886         to the Web Content process, so any messages sent from the block will arrive
1887         after the visible content rect update.
1888
1889 2017-02-16  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1890
1891         [GTK] Add two new buildbots that build-only test on Debian stable and Ubuntu LTS.
1892         https://bugs.webkit.org/show_bug.cgi?id=168321
1893
1894         This bots should be added to the trunk build scheduler.
1895         Unreviewed fix after r212429.
1896
1897         * BuildSlaveSupport/build.webkit.org-config/config.json:
1898
1899 2017-02-16  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1900
1901         [GTK] Add two new buildbots that build-only test on Debian stable and Ubuntu LTS
1902         https://bugs.webkit.org/show_bug.cgi?id=168321
1903
1904         Reviewed by Michael Catanzaro.
1905
1906         The additionalArgument --default-cmake-features is used both to
1907         skip the JHBuild (InstallGtkDependencies) build step and to build
1908         with the default features from the CMake config.
1909
1910         * BuildSlaveSupport/build.webkit.org-config/config.json:
1911         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1912         (Factory.__init__):
1913         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
1914
1915 2017-02-15  Lucas Forschler  <lforschler@apple.com>
1916
1917         https://bugs.webkit.org/show_bug.cgi?id=168386
1918         Remove EFL from build.webkit.org
1919
1920         Reviewed by Alex Christensen
1921
1922         * BuildSlaveSupport/build.webkit.org-config/config.json:
1923         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1924         (DeleteStaleBuildFiles.start):
1925         (appendCustomBuildFlags):
1926         (RunWebKitTests.start):
1927         (RunBuiltinsTests):
1928         (Factory.__init__):
1929         (TestFactory.__init__):
1930         (loadBuilderConfig):
1931         (InstallEflDependencies): Deleted.
1932         (RunEflAPITests): Deleted.
1933         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
1934         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
1935         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
1936         (BubbleQueueServer):
1937         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
1938         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsAnalyzer.js:
1939         (Analyzer.prototype._triggeringQueue):
1940         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1941         (WebKitBuildbot):
1942         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
1943         (table.queue-grid tr.platform.linux-efl img.logo): Deleted.
1944         * BuildSlaveSupport/build.webkit.org-config/templates/root.html:
1945         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
1946         (_should_file_trigger_build):
1947
1948 2017-02-15  Alex Christensen  <achristensen@webkit.org>
1949
1950         Unreviewed, rolling out r212169.
1951
1952         Broke iOS WebInspector
1953
1954         Reverted changeset:
1955
1956         "WebInspector: refactor RemoteInspector to move cocoa specific
1957         code to their own files"
1958         https://bugs.webkit.org/show_bug.cgi?id=166681
1959         http://trac.webkit.org/changeset/212169
1960
1961 2017-02-15  Jonathan Bedard  <jbedard@apple.com>
1962
1963         webkitpy: Fix DarwinPort._get_crash_log()
1964         https://bugs.webkit.org/show_bug.cgi?id=168372
1965         <rdar://problem/30535156>
1966
1967         Reviewed by Daniel Bates.
1968
1969         Callers of _get_crash_log expect a pair to be returned and do not check it's return value.  
1970         DarwinPort should return the expected return value for _get_crash_log.
1971
1972         * Scripts/webkitpy/port/darwin.py:
1973         (DarwinPort._get_crash_log): Call parent class's implementation of _get_crash_log.
1974
1975 2017-02-15  Chris Dumez  <cdumez@apple.com>
1976
1977         [iOS] Form Validation Bubble should be sensitive to Dynamic Type
1978         https://bugs.webkit.org/show_bug.cgi?id=168291
1979         <rdar://problem/30508593>
1980
1981         Reviewed by Tim Horton.
1982
1983         Drop overridePreference() implementation in iOS's UIScriptController
1984         as it was only used for the minimum font size setting and this setting
1985         is not exposed on iOS.
1986
1987         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1988         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1989         (WTR::UIScriptController::overridePreference):
1990         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1991
1992 2017-02-15  Jonathan Bedard  <jbedard@apple.com>
1993
1994         webkitpy: Memoize app_identifier_from_bundle for efficiency, call parent class for _get_crash_log
1995         https://bugs.webkit.org/show_bug.cgi?id=168329
1996         <rdar://problem/30518832>
1997
1998         Reviewed by Daniel Bates.
1999
2000         When testing on device, app_identifier_from_bundle is repeatedly called but the return value will
2001         never change given the same input arguments.  Memoize function for efficiency.
2002
2003         * Scripts/webkitpy/port/darwin.py: Add memoized import.
2004         (DarwinPort):
2005         (DarwinPort.app_identifier_from_bundle): Memoize to avoid extra executions of PlistBuddy.
2006         
2007
2008 2017-02-15  Jonathan Bedard  <jbedard@apple.com>
2009
2010         webkitpy: Remove unused import from darwin.py
2011         https://bugs.webkit.org/show_bug.cgi?id=168371
2012
2013         Reviewed by Alex Christensen.
2014
2015         * Scripts/webkitpy/port/darwin.py: Remove unused 'time' module.
2016
2017 2017-02-15  Carlos Garcia Campos  <cgarcia@igalia.com>
2018
2019         [SOUP] Credentials stored by libsoup are used even StoredCredentials policy is DoNotAllowStoredCredentials
2020         https://bugs.webkit.org/show_bug.cgi?id=168364
2021
2022         Reviewed by Michael Catanzaro.
2023
2024         This can happen if a previous load with allowed to use stored credentials authenticated successfully, saving the
2025         credentials in libsoup. It's actually a libsoup bug, but since it's causing layout test failures and we have
2026         patches for them, let's patch out jhbuild until we have a new libsoup version to depend on.
2027
2028         Fixes: http/tests/security/credentials-from-different-domains.html
2029                http/tests/xmlhttprequest/cross-origin-no-authorization.html
2030
2031         * gtk/jhbuild.modules:
2032         * gtk/patches/libsoup-auth-Fix-async-authentication-when-flag-SOUP_MESSAGE.patch: Added.
2033         * gtk/patches/libsoup-auth-do-not-use-cached-credentials-in-lookup-method-.patch: Added.
2034
2035 2017-02-14  Carlos Garcia Campos  <cgarcia@igalia.com>
2036
2037         [GTK] Update cookie manager API to properly work with ephemeral sessions
2038         https://bugs.webkit.org/show_bug.cgi?id=168230
2039
2040         Reviewed by Michael Catanzaro.
2041
2042         Update unit tests and add new cases for the new API.
2043
2044         * MiniBrowser/gtk/main.c:
2045         (gotWebsiteDataCallback):
2046         * TestWebKitAPI/Tests/WebKit2Gtk/TestCookieManager.cpp:
2047         (testCookieManagerEphemeral):
2048         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
2049         (testWebContextEphemeral):
2050         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
2051         (testWebViewEphemeral):
2052         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebsiteData.cpp:
2053         (serverCallback):
2054         (testWebsiteDataEphemeral):
2055         (testWebsiteDataCookies):
2056         (beforeAll):
2057
2058 2017-02-14  Wenson Hsieh  <wenson_hsieh@apple.com>
2059
2060         [WK2] Support data interaction on links
2061         https://bugs.webkit.org/show_bug.cgi?id=168331
2062         <rdar://problem/30200837>
2063
2064         Reviewed by Tim Horton.
2065
2066         Adds 2 unit tests checking that data interaction from a link (with or without a background image) into an
2067         editable area results in the link URL being inserted.
2068
2069         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2070         * TestWebKitAPI/Tests/WebKit2Cocoa/background-image-link-and-input.html: Added.
2071         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-input.html: Added.
2072         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2073         (TestWebKitAPI::TEST):
2074
2075 2017-02-14  Jason Rinn  <jrinn@apple.com>
2076
2077         Add a test for new WebKit Cocoa API, _getContentsAsString.
2078         https://bugs.webkit.org/show_bug.cgi?id=168147
2079         <rdar://problem/30502539>
2080
2081         Reviewed by Tim Horton.
2082
2083         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2084         * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewGetContents.mm: Added.
2085         (TEST):
2086
2087 2017-02-14  Matt Rajca  <mrajca@apple.com>
2088
2089         Website policies: iframes should respect the autoplay policy of the top-level document
2090         https://bugs.webkit.org/show_bug.cgi?id=168333
2091
2092         Reviewed by Alex Christensen.
2093
2094         * TestWebKitAPI/Tests/WebKit2/autoplay-check-frame.html: Added.
2095         * TestWebKitAPI/Tests/WebKit2/autoplay-check-in-iframe.html: Added.
2096         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
2097         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
2098         (TEST):
2099
2100 2017-02-14  Chris Dumez  <cdumez@apple.com>
2101
2102         HTML Form Validation bubble should take minimum font size setting into consideration
2103         https://bugs.webkit.org/show_bug.cgi?id=168271
2104         <rdar://problem/29869869>
2105
2106         Reviewed by Simon Fraser.
2107
2108         Extend UIScriptController's contentsOfUserInterfaceItem() to also return the
2109         font size of the validation bubble.
2110
2111         Add an overridePreference() method to UIScriptController. This is currently
2112         used to override the value of the minimumFontSize setting. testRunner's
2113         overridePreference() is not usable on WK2 because it does not update the
2114         value of the preference on the UIProcess side.
2115
2116         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2117         (WTR::UIScriptController::overridePreference):
2118         * DumpRenderTree/mac/UIScriptControllerMac.mm:
2119         (WTR::UIScriptController::overridePreference):
2120         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2121         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2122         * WebKitTestRunner/TestController.cpp:
2123         (WTR::TestController::resetPreferencesToConsistentValues):
2124         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2125         (WTR::UIScriptController::overridePreference):
2126         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
2127         (WTR::UIScriptController::contentsOfUserInterfaceItem):
2128         (WTR::UIScriptController::overridePreference):
2129
2130 2017-02-14  Florian Bruhin  <git@the-compiler.org>
2131
2132         Use a set instead of a list for tests when parsing expectations
2133         https://bugs.webkit.org/show_bug.cgi?id=168304
2134
2135         In _collect_matching_tests, a lot of membership tests are done on a giant list
2136         of strings. By making it a set instead, we can make those much faster, and
2137         there's no reason for it to be a list.
2138
2139         With ~45k tests and some 1000 expectations, this reduces the parse time from 34s
2140         to 3s on my machine.
2141
2142         Reviewed by Ryosuke Niwa.
2143
2144         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
2145         (TestExpectationParser.__init__):
2146         (TestExpectationParser._collect_matching_tests):
2147
2148 2017-02-14  Jonathan Bedard  <jbedard@apple.com>
2149
2150         Unreviewed build-fix after r212297.
2151
2152         * Scripts/webkitpy/port/simulator_process.py:
2153         (SimulatorProcess.stop): Should return value of the ServerProcess's stop.
2154
2155 2017-02-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2156
2157         [CMake] build-webkit should allow building with the default cmake configuration
2158         https://bugs.webkit.org/show_bug.cgi?id=168323
2159
2160         Reviewed by Michael Catanzaro.
2161
2162         Add a --default-cmake-features switch that makes the script pass
2163         no value for any of the features defined by build-webkit, that
2164         way the default values from the port cmake config will be used.
2165
2166         * Scripts/build-webkit:
2167         (cMakeArgsFromFeatures):
2168
2169 2017-02-14  Jonathan Bedard  <jbedard@apple.com>
2170
2171         Unreviewed build-fix after r212297.
2172
2173         * Scripts/webkitpy/port/simulator_process.py:
2174         (SimulatorProcess.stop): Handle case where there is no process to kill.
2175
2176 2017-02-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2177
2178         [CMake] build-webkit should print the cmake command executed
2179         https://bugs.webkit.org/show_bug.cgi?id=168318
2180
2181         Reviewed by Michael Catanzaro.
2182
2183         Run the cmake commands to configure or start the build through
2184         a wrapper that prints the command before executing it.
2185
2186         * Scripts/webkitdirs.pm:
2187         (systemVerbose):
2188         (generateBuildSystemFromCMakeProject):
2189         (buildCMakeGeneratedProject):
2190         (cleanCMakeGeneratedProject):
2191
2192 2017-02-14  Jonathan Bedard  <jbedard@apple.com>
2193
2194         run-webkit-tests for iOS Simulator always complains that stopping WebKitTestRunnerApp.app times out
2195         https://bugs.webkit.org/show_bug.cgi?id=168150
2196
2197         Reviewed by Alexey Proskuryakov.
2198
2199         * Scripts/webkitpy/port/simulator_process.py:
2200         (SimulatorProcess.stop): Close app before calling ServerProcess's stop.
2201         (SimulatorProcess._kill): Move closing of app into stop().
2202         * Scripts/webkitpy/xcode/simulator.py:
2203         (Device.launch_app):
2204         (Device.terminate_app): Deleted.
2205
2206 2017-02-14  Carlos Garcia Campos  <cgarcia@igalia.com>
2207
2208         REGRESSION(r212192): [GTK] Broke downloads API tests
2209         https://bugs.webkit.org/show_bug.cgi?id=168193
2210
2211         Unreviewed. Update test expectations after r212192.
2212
2213         The suggested filename now includes a file extensions if the MIME type is known.
2214
2215         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
2216         (testDownloadRemoteFile):
2217         (testDownloadMIMEType):
2218
2219 2017-02-14  Commit Queue  <commit-queue@webkit.org>
2220
2221         Unreviewed, rolling out r212237.
2222         https://bugs.webkit.org/show_bug.cgi?id=168298
2223
2224         This was a wrong fix (Requested by rniwa on #webkit).
2225
2226         Reverted changeset:
2227
2228         "Nwtr unexpectedly passes mismatch ref test if the hashes
2229         doesn't match but no diff"
2230         https://bugs.webkit.org/show_bug.cgi?id=168221
2231         http://trac.webkit.org/changeset/212237
2232
2233 2017-02-13  Alex Christensen  <achristensen@webkit.org>
2234
2235         URLs with an invalid IPv4 address should be invalid
2236         https://bugs.webkit.org/show_bug.cgi?id=168260
2237
2238         Reviewed by Tim Horton.
2239
2240         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
2241         (TestWebKitAPI::TEST_F):
2242         Update tests to reflect new correct behavior.
2243
2244 2017-02-13  Don Olmstead  <don.olmstead@am.sony.com>
2245
2246         [WinCairo] Add Build Slave
2247         https://bugs.webkit.org/show_bug.cgi?id=168263
2248
2249         Reviewed by Lucas Forschler.
2250
2251         * BuildSlaveSupport/build.webkit.org-config/config.json:
2252
2253 2017-02-13  Wenson Hsieh  <wenson_hsieh@apple.com>
2254
2255         Fix the build after r212254
2256
2257         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
2258         (-[DataInteractionSimulator _currentLocation]):
2259
2260 2017-02-13  Wenson Hsieh  <wenson_hsieh@apple.com>
2261
2262         [WK2] Add test infrastructure and unit tests for data interaction
2263         https://bugs.webkit.org/show_bug.cgi?id=168159
2264         <rdar://problem/30477634>
2265
2266         Reviewed by Tim Horton.
2267
2268         Uses the testing delegate introduced in WebKit2 to override the gesture recognizer used to initiate data
2269         interaction. Instead of being driven by UIKit, the DataInteractionSimulator drives this overridden gesture
2270         recognizer by making the WKContentView call its dataInteractionGestureRecognized method. To simulate an actual
2271         gesture being performed, we fire the gesture recognizer (or call the data interaction delegate methods, if the
2272         gesture has already been recognized) at regular intervals over the course of the test.
2273
2274         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2275         * TestWebKitAPI/Tests/WebKit2Cocoa/autofocus-contenteditable.html: Added.
2276         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-contenteditable.html: Added.
2277         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-textarea.html: Added.
2278
2279         New test pages for data interaction.
2280
2281         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm: Added.
2282         (TestWebKitAPI::runTestsExpectingToObserveEvents):
2283         (TestWebKitAPI::TEST):
2284         * TestWebKitAPI/cocoa/TestWKWebView.mm:
2285         (-[TestWKWebView stringByEvaluatingJavaScript:]):
2286         * TestWebKitAPI/ios/DataInteractionSimulator.h: Added.
2287         * TestWebKitAPI/ios/DataInteractionSimulator.mm: Added.
2288         (-[MockLongPressGestureRecognizer initWithWindow:]):
2289         (-[MockLongPressGestureRecognizer locationInView:]):
2290         (-[MockLongPressGestureRecognizer state]):
2291         (-[MockLongPressGestureRecognizer numberOfTouches]):
2292         (-[DataInteractionSimulator initWithWebView:startLocation:endLocation:]):
2293         (-[DataInteractionSimulator dealloc]):
2294         (-[DataInteractionSimulator run]):
2295
2296         Performs a data interaction gesture from the start location to the end location with linear interpolation. For
2297         now, the timestep and progress per tick are 30ms and 3.33%, respectively, which means that tests should complete
2298         in a little under 1 second, though this can be easily changed to be configurable in the future if needed.
2299
2300         (-[DataInteractionSimulator _advanceProgress]):
2301
2302         Fired periodically to drive the data interaction gesture. Schedules a call of itself until the test is
2303         completed, and calls _finishDataInteraction when progress is at 1.
2304
2305         (-[DataInteractionSimulator _finishDataInteraction]):
2306         (-[DataInteractionSimulator _currentLocation]):
2307         (-[DataInteractionSimulator _scheduleAdvanceProgress]):
2308         (-[DataInteractionSimulator _recognizeGestureAtLocation:withState:]):
2309         (-[DataInteractionSimulator dataInteractionGestureRecognizer]):
2310         (-[DataInteractionSimulator webViewDidPerformDataInteractionControllerOperation:]):
2311         (-[DataInteractionSimulator webView:beginDataInteractionWithSourceIndex:gestureRecognizer:]):
2312
2313 2017-02-13  Alex Christensen  <achristensen@webkit.org>
2314
2315         Percent should be allowed in non-special URL hosts
2316         https://bugs.webkit.org/show_bug.cgi?id=168255
2317
2318         Reviewed by Tim Horton.
2319
2320         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
2321         (TestWebKitAPI::TEST_F):
2322
2323 2017-02-13  Fujii Hironori  <Hironori.Fujii@sony.com>
2324
2325         Nwtr unexpectedly passes mismatch ref test if the hashes doesn't match but no diff
2326         https://bugs.webkit.org/show_bug.cgi?id=168221
2327
2328         Reviewed by Ryosuke Niwa.
2329
2330         There is a logic error in comparing mismatch ref test images. In
2331         mismatch ref tests, it should be failed if two images has no diff.
2332         But, if the hashes are different, nwtr unexpectedly pass the
2333         mismatch ref test.
2334
2335         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
2336         (SingleTestRunner._compare_output_with_reference): Fail the
2337         mismatch ref test if hashes of two images are equal. Invoke
2338         ImageDiff if the hashes don't match.
2339
2340 2017-02-13  Myles C. Maxfield  <mmaxfield@apple.com>
2341
2342         Update custom line breaking iterators to the latest version of Unicode
2343         https://bugs.webkit.org/show_bug.cgi?id=168182
2344
2345         Reviewed by Zalan Bujtas.
2346
2347         Treat the system's ICU as the source of truth to compare breaking positions against.
2348
2349         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2350         * TestWebKitAPI/Tests/WebCore/LineBreaking.mm: Added.
2351         (generateJavaScriptForTest):
2352         (breakingLocationsFromICU):
2353         (testAFewStrings):
2354         (TEST):
2355         * TestWebKitAPI/Tests/WebKit2Cocoa/AllAhem.svg: Renamed from LayoutTests/css3/line-break/resources/AllAhem.svg.
2356         * TestWebKitAPI/Tests/WebKit2Cocoa/LineBreaking.html: Added.
2357
2358 2017-02-12  Michael Catanzaro  <mcatanzaro@igalia.com>
2359
2360         [GTK] Several failing WebViewEditor API tests
2361         https://bugs.webkit.org/show_bug.cgi?id=161608
2362
2363         Reviewed by Carlos Garcia Campos.
2364
2365         Selection.collapse() requires arguments; passing no arguments means the JS that selects the
2366         text range here never gets evaluated. Perhaps there was a DOM API change? Changing it to use
2367         Selection.removeAllRanges(), which seems like a better function anyway, fixes all the tests
2368         except the first one, which is still broken due to unrelated bug #151654.
2369
2370         * Scripts/run-gtk-tests:
2371         (TestRunner):
2372         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebViewEditor.cpp:
2373
2374 2017-02-12  Michael Catanzaro  <mcatanzaro@igalia.com>
2375
2376         Unreviewed, skip flaky WebKitPrintOperation/custom-widget test
2377
2378         * Scripts/run-gtk-tests:
2379         (TestRunner):
2380
2381 2017-02-12  Michael Catanzaro  <mcatanzaro@igalia.com>
2382
2383         Unreviewed, skip flaky form-controls-associated-signal test
2384
2385         * Scripts/run-gtk-tests:
2386         (TestRunner):
2387
2388 2017-02-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2389
2390         [GTK] Handle caps lock indicator in event modifiers
2391         https://bugs.webkit.org/show_bug.cgi?id=168186
2392
2393         Reviewed by Michael Catanzaro.
2394
2395         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
2396         (WTR::webkitModifiersToGDKModifiers): Handle kWKEventModifiersCapsLockKey.
2397
2398 2017-02-11  Simon Fraser  <simon.fraser@apple.com>
2399
2400         MiniBrowser WK1 fails to update URL for within-page navigations
2401         https://bugs.webkit.org/show_bug.cgi?id=168173
2402
2403         Reviewed by Tim Horton.
2404         
2405         Implement -webView:didChangeLocationWithinPageForFrame: so that clicking on named
2406         anchors updates the URL field.
2407
2408         * MiniBrowser/mac/WK1BrowserWindowController.m:
2409         (-[WK1BrowserWindowController webView:didChangeLocationWithinPageForFrame:]):
2410
2411 2017-02-10  John Wilander  <wilander@apple.com>
2412
2413         Updates to Resource Load Statistics: Get the right website data store and introduce timeout for user interaction
2414         https://bugs.webkit.org/show_bug.cgi?id=167474
2415         <rdar://problem/24681808>
2416         <rdar://problem/24703286>
2417         <rdar://problem/30290270>
2418
2419         This patch adds test infrastructure to allow testing 
2420         of the various rules in place for data records removal.
2421
2422         Reviewed by Andy Estes.
2423
2424         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2425         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2426         (WTR::InjectedBundle::didReceiveMessageToPage):
2427             Callback mechanism to tell pages that a website data store
2428             scan has happened.
2429         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2430         (WTR::TestRunner::setStatisticsPrevalentResource):
2431         (WTR::TestRunner::isStatisticsPrevalentResource):
2432         (WTR::TestRunner::setStatisticsHasHadUserInteraction):
2433         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
2434         (WTR::TestRunner::setStatisticsTimeToLiveUserInteraction):
2435         (WTR::TestRunner::installStatisticsDidModifyDataRecordsCallback):
2436         (WTR::TestRunner::statisticsDidModifyDataRecordsCallback):
2437         (WTR::TestRunner::statisticsFireDataModificationHandler):
2438         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
2439         (WTR::TestRunner::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
2440         (WTR::TestRunner::setStatisticsMinimumTimeBetweeenDataRecordsRemoval):
2441         (WTR::TestRunner::statisticsResetToConsistentState):
2442         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2443         * WebKitTestRunner/TestController.cpp:
2444         (WTR::TestController::setStatisticsPrevalentResource):
2445         (WTR::TestController::isStatisticsPrevalentResource):
2446         (WTR::TestController::setStatisticsHasHadUserInteraction):
2447         (WTR::TestController::isStatisticsHasHadUserInteraction):
2448         (WTR::TestController::setStatisticsTimeToLiveUserInteraction):
2449         (WTR::TestController::statisticsFireDataModificationHandler):
2450         (WTR::TestController::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
2451         (WTR::TestController::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
2452         (WTR::TestController::setStatisticsMinimumTimeBetweeenDataRecordsRemoval):
2453         (WTR::TestController::statisticsResetToConsistentState):
2454         * WebKitTestRunner/TestController.h:
2455             These are all configuration and test functions.
2456         * WebKitTestRunner/TestInvocation.cpp:
2457         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2458
2459 2017-02-10  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2460
2461         REGRESSION(r182916) run-perf-tests never timeouts
2462         https://bugs.webkit.org/show_bug.cgi?id=167626
2463
2464         Reviewed by Ryosuke Niwa.
2465
2466         The --time-out-ms value (defaults to 600 seconds) of run-perf-tests
2467         was beeing ignored because the driver was created with no_timeout=True
2468         unconditionally.
2469         This adds a new parameter --no-timeout (disabled by default), that
2470         allows to use the driver with the expected timeout values.
2471         It also passes --no-timeout to DRT/WTR to ensure that timeouts
2472         are always controlled by the Python Driver.
2473
2474         * Scripts/webkitpy/performance_tests/perftest.py:
2475         (PerfTest._create_driver): Only disable timeout if --no-timeout is passed.
2476         (PerfTest.run): Disabling timeout should be done when the Driver is created.
2477         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
2478         (PerfTestsRunner.__init__): Ensure --no-timeout is passed to DRT/WTR
2479         (PerfTestsRunner._parse_args): Add a --no-timeout parameter.
2480         (_run_tests_set): Pass the no-timeout parameter.
2481         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
2482         (MainTest.test_drt_notimeout): Test --no-timeout is passed to DRT/WTR
2483         (MainTest.test_default_args): Test default values for additional_drt_flag and no_timeout.
2484         (MainTest.test_parse_args): Test that the argument no-timeout.
2485
2486 2017-02-10  Daniel Bates  <dabates@apple.com>
2487
2488         Detach frame from document when entering page cache
2489         https://bugs.webkit.org/show_bug.cgi?id=166774
2490         <rdar://problem/29904368>
2491
2492         Reviewed by Chris Dumez.
2493
2494         * DumpRenderTree/mac/DumpRenderTree.mm:
2495         (resetWebPreferencesToConsistentValues):
2496         * DumpRenderTree/win/DumpRenderTree.cpp:
2497         (resetWebPreferencesToConsistentValues):
2498         * WebKitTestRunner/TestController.cpp:
2499         (WTR::TestController::resetPreferencesToConsistentValues):
2500
2501 2017-02-10  Tim Horton  <timothy_horton@apple.com>
2502
2503         Infinite UI process hang under ensurePositionInformationIsUpToDate
2504         https://bugs.webkit.org/show_bug.cgi?id=168154
2505         <rdar://problem/30428673>
2506
2507         Reviewed by Simon Fraser.
2508
2509         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2510         * TestWebKitAPI/Tests/WebKit2Cocoa/InteractionDeadlockAfterCrash.mm: Added.
2511         (recursiveFindHighlightLongPressRecognizer):
2512         (TEST):
2513         Add a somewhat nasty test that does an async interaction information update, but
2514         kills the Web process before it arrives, and then does a sync interaction
2515         information update, which will wait for the oustanding async interaction
2516         information update if we still think it's coming. Before the patch, this
2517         test times out with the UI process stuck under ensurePositionInformationIsUpToDate.
2518
2519 2017-02-10  Simon Fraser  <simon.fraser@apple.com>
2520
2521         Make sure the "inwindow" flag propagates to TiledBackings for masks and reflections
2522         https://bugs.webkit.org/show_bug.cgi?id=168127
2523         rdar://problem/30467120
2524
2525         Reviewed by Tim Horton.
2526
2527         Reparent the web view before we try to fetch it via:
2528             [[[window contentView] subviews] objectAtIndex:0];
2529         which would throw an exception if the test unparented it.
2530
2531         * DumpRenderTree/mac/DumpRenderTree.mm:
2532         (resetWebViewToConsistentStateBeforeTesting):
2533         (runTest):
2534
2535 2017-02-10  Joseph Pecoraro  <pecoraro@apple.com>
2536
2537         [Resource Timing] Enable Resource Timing by default in Tests
2538         https://bugs.webkit.org/show_bug.cgi?id=168145
2539
2540         Reviewed by Ryosuke Niwa.
2541
2542         * DumpRenderTree/mac/DumpRenderTree.mm:
2543         (resetWebPreferencesToConsistentValues):
2544         * DumpRenderTree/win/DumpRenderTree.cpp:
2545         (resetWebPreferencesToConsistentValues):
2546         * WebKitTestRunner/TestController.cpp:
2547         (WTR::TestController::resetPreferencesToConsistentValues):
2548
2549 2017-02-10  Jonathan Bedard  <jbedard@apple.com>
2550
2551         Removing LayoutTestRelay
2552         https://bugs.webkit.org/show_bug.cgi?id=165927
2553
2554         Reviewed by Daniel Bates.
2555         Part 2
2556
2557         LayoutTestRelay uses SPI, since recent versions of the iOS SDK allow for installing apps on
2558         simulators through simctl (iOS 10 and later), use this functionality instead.
2559
2560         * BuildSlaveSupport/built-product-archive:
2561         (archiveBuiltProduct): Remove archiving of LayoutTestRelay as it is no longer being built.
2562         Added a FIXME that we will need to implement similar archiving machinery once we build
2563         ImageDiff for Mac when building WebKit for iOS. Currently ImageDiff is built with the iOS SDK.
2564         * BuildSlaveSupport/kill-old-processes:
2565         (main): Remove LayoutTestRelay from list of processes.
2566         * LayoutTestRelay: Removed LayoutTestRelay.
2567         * Makefile:
2568         * Scripts/build-layouttestrelay: Removed.
2569         * Scripts/build-webkit: Removed LayoutTestRelay references.
2570
2571 2017-02-10  Jiewen Tan  <jiewen_tan@apple.com>
2572
2573         [WebCrypto] Add WebCryptoAPI to watchlist
2574         https://bugs.webkit.org/show_bug.cgi?id=168138
2575
2576         Reviewed by Youenn Fablet.
2577
2578         * Scripts/webkitpy/common/config/watchlist:
2579
2580 2017-02-10  Brady Eidson  <beidson@apple.com>
2581
2582         Replace all WebKit Library Version checks in WK2 with SDK version checks.
2583         https://bugs.webkit.org/show_bug.cgi?id=168124
2584
2585         Reviewed by Geoffrey Garen.
2586
2587         For each of our tools that use WebKit2, opt them in to the new linkedOnOrAfter(Everything) setting.
2588         
2589         * MiniBrowser/mac/main.m:
2590         (main):
2591         * MobileMiniBrowser/MobileMiniBrowser/main.m:
2592         (main):
2593         * TestWebKitAPI/ios/mainIOS.mm:
2594         (main):
2595         * TestWebKitAPI/mac/mainMac.mm:
2596         (main):
2597         * WebKitTestRunner/ios/mainIOS.mm:
2598         (main):
2599         * WebKitTestRunner/mac/main.mm:
2600         (setDefaultsToConsistentValuesForTesting):
2601
2602 2017-02-10  Alex Christensen  <achristensen@webkit.org>
2603
2604         Fix El Capitan build.
2605
2606         * Scripts/build-webkit:
2607         Don't build libwebrtc anywhere for now.
2608
2609 2017-02-10  Andy Estes  <aestes@apple.com>
2610
2611         Move two MiniBrowserBundle settings out of the .pbxproj
2612         https://bugs.webkit.org/show_bug.cgi?id=168106
2613
2614         Reviewed by Tim Horton.
2615
2616         INFOPLIST_FILE was specified in MiniBrowserBundle.xcconfig but overridden to "" in
2617         the project file. This removes the project file override.
2618
2619         WRAPPER_EXTENSION was moved from the project file to MiniBrowserBundle.xcconfig.
2620
2621         * MiniBrowser/Configurations/MiniBrowserBundle.xcconfig:
2622         * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
2623
2624 2017-02-10  Alex Christensen  <achristensen@webkit.org>
2625
2626         Fix 32-and-64-bit build on El Capitan.
2627
2628         * Scripts/build-webkit:
2629         Somebody's building with something like this:
2630         build-webkit ARCHS="i386 x86_64"
2631         We want this to also not build libwebrtc for now.
2632
2633 2017-02-10  Alex Christensen  <achristensen@webkit.org>
2634
2635         Fix 32-bit build on El Capitan.
2636
2637         * Scripts/build-webkit:
2638         The bot uses ARCHS=i386 instead of --32-bit.
2639         This is a hack, but it should fix the bot until I can do a better fix in the morning.
2640
2641 2017-02-10  Alex Christensen  <achristensen@webkit.org>
2642
2643         Fix 32-bit build on El Capitan.
2644
2645         * Scripts/build-webkit:
2646         Don't build i386 libwebrtc.
2647
2648 2017-02-09  Alex Christensen  <achristensen@webkit.org>
2649
2650         Unreviewed, rolling out r212040.
2651
2652         Broke build.  I'm not surprised
2653
2654         Reverted changeset:
2655
2656         "[WebRTC][Mac] Activate libwebrtc"
2657         https://bugs.webkit.org/show_bug.cgi?id=167293
2658         http://trac.webkit.org/changeset/212040
2659
2660 2017-02-09  Alex Christensen  <achristensen@webkit.org>
2661
2662         Build libwebrtc on bots without using it yet
2663         https://bugs.webkit.org/show_bug.cgi?id=168062
2664
2665         Reviewed by Brent Fulgham.
2666
2667         * Scripts/build-webkit:
2668
2669 2017-02-09  Alex Christensen  <achristensen@webkit.org>
2670
2671         Don't build libwebrtc.
2672
2673         * Scripts/build-webkit:
2674         Not ready yet.  It broke El Capitan and iOS.
2675
2676 2017-02-09  Alex Christensen  <achristensen@webkit.org>
2677
2678         Build libwebrtc on bots without using it yet
2679         https://bugs.webkit.org/show_bug.cgi?id=168062
2680
2681         Reviewed by Brent Fulgham.
2682
2683         * Scripts/build-webkit:
2684
2685 2017-02-09  Alex Christensen  <achristensen@webkit.org>
2686
2687         Rename isAppleMacWebKit to isAppleCocoaWebKit
2688         https://bugs.webkit.org/show_bug.cgi?id=168075
2689
2690         Reviewed by Geoffrey Garen.
2691
2692         It returns true for Mac and iOS.  "isAppleMacWebKit" is confusing and wrong.
2693
2694         * Scripts/build-api-tests:
2695         * Scripts/build-dumprendertree:
2696         * Scripts/build-jsc:
2697         (buildMyProject):
2698         * Scripts/build-layouttestrelay:
2699         * Scripts/build-webkit:
2700         * Scripts/build-webkittestrunner:
2701         * Scripts/run-api-tests:
2702         (isSupportedPlatform):
2703         (runTest):
2704         (listAllTests):
2705         (prepareEnvironmentForRunningTestTool):
2706         * Scripts/run-content-extension-tester:
2707         * Scripts/run-javascriptcore-tests:
2708         * Scripts/run-minibrowser:
2709         * Scripts/show-pretty-diff:
2710         * Scripts/webkitdirs.pm:
2711         (determineBaseProductDir):
2712         (determineArchitecture):
2713         (determinePassedArchitecture):
2714         (safariPath):
2715         (builtDylibPathForName):
2716         (checkFrameworks):
2717         (isAppleWebKit):
2718         (isAppleCocoaWebKit):
2719         (determineNmPath):
2720         (launcherName):
2721         (wrapperPrefixIfNeeded):
2722         (isCMakeBuild):
2723         (mobileSafariBundle):
2724         (debugSafari):
2725         (runSafari):
2726         (runMiniBrowser):
2727         (debugMiniBrowser):
2728         (runWebKitTestRunner):
2729         (debugWebKitTestRunner):
2730         (isAppleMacWebKit): Deleted.
2731         * Scripts/webkitperl/FeatureList.pm:
2732
2733 2017-02-09  Alex Christensen  <achristensen@webkit.org>
2734
2735         Revert r211991
2736         https://bugs.webkit.org/show_bug.cgi?id=168062
2737
2738         * Scripts/build-webkit:
2739         Not quite ready yet.
2740
2741 2017-02-09  Alex Christensen  <achristensen@webkit.org>
2742
2743         Build libwebrtc on bots without using it yet
2744         https://bugs.webkit.org/show_bug.cgi?id=168062
2745
2746         Reviewed by Brent Fulgham.
2747
2748         * Scripts/build-webkit:
2749         Build libwebrtc on Mac when we build ANGLE.
2750
2751 2017-02-09  Youenn Fablet  <youenn@apple.com>
2752
2753         Improve W3C importer command line options
2754         https://bugs.webkit.org/show_bug.cgi?id=167448
2755
2756         Reviewed by Ryosuke Niwa.
2757
2758         Making the list of test paths to import the main arguments of the script.
2759         Allow passing the source directory to import as a -s option.
2760         Adding a warning when given test paths are skipped by default in ImportExpectations.
2761
2762         Making link conversion off by default when importing from a specific directory since this script is mostly used with web-platform-tests.
2763         Link conversion rules do not change when imported tests are downloaded by the script.
2764
2765         * Scripts/webkitpy/w3c/test_importer.py:
2766         (main):
2767         (parse_args):
2768         (TestImporter.__init__):
2769         (TestImporter.do_import):
2770         (TestImporter):
2771         (TestImporter.check_imported_expectations):
2772
2773 2017-02-08  Chris Dumez  <cdumez@apple.com>
2774
2775         Update web-platform-tests resources
2776         https://bugs.webkit.org/show_bug.cgi?id=168026
2777
2778         Reviewed by Youenn Fablet.
2779
2780         Stop copying testharness.js from resources/ to web-platform-tests/resources.
2781
2782         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
2783         (WebPlatformTestServer._copy_webkit_test_files):
2784
2785 2017-02-08  Andy Estes  <aestes@apple.com>
2786
2787         Custom protocols should not continue loading after a network process crash
2788         https://bugs.webkit.org/show_bug.cgi?id=168028
2789         <rdar://problem/27607520>
2790
2791         Reviewed by Brady Eidson.
2792
2793         * TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsTest.mm:
2794         (processGroup):
2795         (-[CloseWhileStartingProtocol startLoading]):
2796         (-[CloseWhileStartingProtocol stopLoading]):
2797         (TestWebKitAPI::runTest):
2798         (TestWebKitAPI::TEST):
2799
2800 2017-02-08  Dan Bernstein  <mitz@apple.com>
2801
2802         [Cocoa] WKRemoteObjectCoder doesn’t handle CGSize
2803         https://bugs.webkit.org/show_bug.cgi?id=168031
2804
2805         Reviewed by Tim Horton.
2806
2807         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.h:
2808         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.mm:
2809         (TEST):
2810         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistryPlugIn.mm:
2811         (-[RemoteObjectRegistryPlugIn takeSize:completionHandler:]):
2812
2813 2017-02-08  Chris Dumez  <cdumez@apple.com>
2814
2815         Use smaller tiles in windows that are not active to facilitate App Napping
2816         https://bugs.webkit.org/show_bug.cgi?id=167997
2817         <rdar://problem/30358835>
2818
2819         Reviewed by Simon Fraser.
2820
2821         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2822         (WTR::PlatformWebView::setWindowIsKey):
2823         Actually update windowIsKey state of NSWindow so the WebView
2824         properly updates its activity state.
2825
2826 2017-02-08  Wenson Hsieh  <wenson_hsieh@apple.com>
2827
2828         Add kUTTypeUTF8PlainText and kUTTypeJPEG to the list of compatible content types in DragData
2829         https://bugs.webkit.org/show_bug.cgi?id=167942
2830         <rdar://problem/30315079>
2831
2832         Reviewed by Tim Horton.
2833
2834         Adds a new test case that simulates dragging from a source that only vends JPEG images or UTF8 plaintext into a
2835         contenteditable area. An image element and the plain text content, respectively, should be inserted into the
2836         contenteditable in these cases.
2837
2838         The DragSource and DragInfo are used to mock dragging into the WebView. There is no reliance on using mouse
2839         events in this test, since we call the dragging delegate methods (draggingEntered:, draggingUpdated:, and
2840         performDragOperation:) directly.
2841
2842         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2843         * TestWebKitAPI/Tests/mac/DragAndDropPasteboardTests.mm: Added.
2844         (+[FrameLoadCompletionListener listenerWithCompletionBlock:]):
2845         (-[FrameLoadCompletionListener initWithCompletionBlock:]):
2846         (-[FrameLoadCompletionListener webView:didFinishLoadForFrame:]):
2847         (-[DragSource draggingSourceOperationMaskForLocal:]):
2848         (-[DragInfo initWithImage:offset:pasteboard:source:destinationWindow:]):
2849         (-[DragInfo lastMousePosition]):
2850         (-[DragInfo setLastMousePosition:]):
2851         (-[DragInfo draggingDestinationWindow]):
2852         (-[DragInfo draggingSourceOperationMask]):
2853         (-[DragInfo draggingLocation]):
2854         (-[DragInfo draggedImageLocation]):
2855         (-[DragInfo draggedImage]):
2856         (-[DragInfo draggingPasteboard]):
2857         (-[DragInfo draggingSource]):
2858         (-[DragInfo draggingSequenceNumber]):
2859         (-[DragInfo slideDraggedImageTo:]):
2860         (-[DragInfo namesOfPromisedFilesDroppedAtDestination:]):
2861         (-[DragInfo draggingFormation]):
2862         (-[DragInfo setDraggingFormation:]):
2863         (-[DragInfo animatesToDestination]):
2864         (-[DragInfo setAnimatesToDestination:]):
2865         (-[DragInfo numberOfValidItemsForDrop]):
2866         (-[DragInfo setNumberOfValidItemsForDrop:]):
2867         (-[DragInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
2868         (-[DragInfo springLoadingHighlight]):
2869         (-[DragInfo resetSpringLoading]):
2870         (TestWebKitAPI::getTestImage):
2871         (TestWebKitAPI::webViewAfterPerformingDragOperation):
2872         (TestWebKitAPI::TEST):
2873         * TestWebKitAPI/Tests/mac/full-page-contenteditable.html: Added.
2874
2875 2017-02-08  Jer Noble  <jer.noble@apple.com>
2876
2877         Move FullscreenClient creation into WebViewImpl, for use in (deprecated) WKView.
2878         https://bugs.webkit.org/show_bug.cgi?id=168007
2879
2880         Reviewed by Alex Christensen.
2881
2882         * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenDelegate.mm:
2883         (didFinishLoadForFrame):
2884         (TestWebKitAPI::TEST):
2885
2886 2017-02-08  Commit Queue  <commit-queue@webkit.org>
2887
2888         Unreviewed, rolling out r211873.
2889         https://bugs.webkit.org/show_bug.cgi?id=168001
2890
2891         It's in jhbuild for consistent layout tests (Requested by
2892         mcatanzaro on #webkit).
2893
2894         Reverted changeset:
2895
2896         "[GTK] Add icu packages to Tools/gtk/install-dependencies"
2897         https://bugs.webkit.org/show_bug.cgi?id=167993
2898         http://trac.webkit.org/changeset/211873
2899
2900 2017-02-08  Adrian Perez de Castro  <aperez@igalia.com>
2901
2902         [GTK] Add icu packages to Tools/gtk/install-dependencies
2903         https://bugs.webkit.org/show_bug.cgi?id=167993
2904
2905         Reviewed by Michael Catanzaro.
2906
2907         * gtk/install-dependencies: Add "icu" to the list of required packages (or "icu-dev", or "icu-devel"
2908         depending in the GNU/Linux distribution)
2909
2910 2017-02-07  Ryan Haddad  <ryanhaddad@apple.com>
2911
2912         Update flakiness dashboard configuration.
2913         https://bugs.webkit.org/show_bug.cgi?id=167957
2914
2915         Reviewed by Alexey Proskuryakov.
2916
2917         * TestResultServer/static-dashboards/builders.jsonp:
2918
2919 2017-02-07  Ryan Haddad  <ryanhaddad@apple.com>
2920
2921         Replace a bot that has an incorrect configuration.
2922         https://bugs.webkit.org/show_bug.cgi?id=167747
2923
2924         Rubber-stamped by Alexey Proskuryakov.
2925
2926         * BuildSlaveSupport/build.webkit.org-config/config.json:
2927
2928 2017-02-07  Myles C. Maxfield  <mmaxfield@apple.com>
2929
2930         [Win] [GTK] [EFL] Compile (but don't use, yet) the platform-independent piece of ComplexTextController
2931         https://bugs.webkit.org/show_bug.cgi?id=167927
2932
2933         Reviewed by Brent Fulgham.
2934
2935         Enable ComplexTextController API tests on the Win and GTK ports.
2936
2937         * TestWebKitAPI/PlatformGTK.cmake:
2938         * TestWebKitAPI/PlatformWin.cmake:
2939
2940 2017-02-07  Jonathan Bedard  <jbedard@apple.com>
2941
2942         File index appended to previous file in svn-create-patch with SVN 1.9
2943         https://bugs.webkit.org/show_bug.cgi?id=167903
2944         <rdar://problem/30387395>
2945
2946         Reviewed by Daniel Bates.
2947
2948         * Scripts/VCSUtils.pm:
2949         (fixSVNPatchForAdditionWithHistory): Append a trailing newline character.
2950         * Scripts/webkitperl/VCSUtils_unittest/fixSVNPatchForAdditionWithHistory.pl: Do not remove
2951         trailing newline character from the expected result before comparing it to the actual result.
2952
2953 2017-02-07  Olivier Blin  <olivier.blin@softathome.com>
2954
2955         [webkitdirs] remove unused host_processor variable in determineArchitecture()
2956         https://bugs.webkit.org/show_bug.cgi?id=167936
2957
2958         Reviewed by Michael Catanzaro.
2959
2960         * Scripts/webkitdirs.pm:
2961         (determineArchitecture):
2962         The host_processor variable in webkitdirs.pm's determineArchitecture() is not used anymore,
2963         since r195083.
2964
2965 2017-02-07  Youenn Fablet  <youenn@apple.com>
2966
2967         Use a JSON file to define which WPT files/folders to import
2968         https://bugs.webkit.org/show_bug.cgi?id=167923
2969
2970         Reviewed by Alex Christensen.
2971
2972         * Scripts/webkitpy/w3c/test_downloader.py:
2973         (TestDownloader.__init__):
2974         (TestDownloader._init_paths_from_expectations):
2975         * Scripts/webkitpy/w3c/test_importer.py:
2976         (parse_args):
2977         * Scripts/webkitpy/w3c/test_importer_unittest.py:
2978
2979 2017-02-06  Fujii Hironori  <Hironori.Fujii@sony.com>
2980
2981         [GTK] jhbuild fails: mesa-11.0.6.tar.xz: 404 Not Found
2982         https://bugs.webkit.org/show_bug.cgi?id=167916
2983
2984         Reviewed by Carlos Garcia Campos.
2985
2986         URL of mesa-11.0.6.tar.xz has been moved.
2987
2988         * gtk/jhbuild.modules: Fix the module path.
2989
2990 2017-02-06  Joseph Pecoraro  <pecoraro@apple.com>
2991
2992         Static Analyzer: Address some leaks in MiniBrowser
2993         https://bugs.webkit.org/show_bug.cgi?id=167897
2994
2995         Reviewed by Alexey Proskuryakov.
2996
2997         * MiniBrowser/mac/BrowserWindowController.m:
2998         (-[BrowserWindowController sharingService:transitionImageForShareItem:contentRect:]):
2999         * MiniBrowser/mac/ExtensionManagerWindowController.m:
3000         (-[ExtensionManagerWindowController add:]):
3001         (-[ExtensionManagerWindowController remove:]):
3002         * MiniBrowser/mac/SettingsController.m:
3003         (-[SettingsController _populateMenu]):
3004         (-[SettingsController togglePerWindowWebProcessesDisabled:]):
3005         Address obvious leaks caught by the static analyzer.
3006
3007 2017-02-06  Myles C. Maxfield  <mmaxfield@apple.com>
3008
3009         Migrate ComplexTextController to use platform-independent types
3010         https://bugs.webkit.org/show_bug.cgi?id=167833
3011
3012         Reviewed by Brent Fulgham.
3013
3014         Migrate tests away from platform-dependent types.
3015
3016         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
3017         (TestWebKitAPI::TEST_F):
3018
3019 2017-02-06  Brent Fulgham  <bfulgham@apple.com>
3020
3021         Correct File Path Handling in SecurityOrigin and FileSystem
3022         https://bugs.webkit.org/show_bug.cgi?id=167894
3023         <rdar://problem/30380080>
3024
3025         Reviewed by Alexey Proskuryakov.
3026
3027         * TestWebKitAPI/Tests/WebCore/FileSystem.cpp: Don't encode the temporary files,
3028         and perform same-volume checks using filesystem-compatible paths.        
3029         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp: Create SecurityOrigins from
3030         filesystem paths, and perform validation of same-volume checks.
3031         (TestWebKitAPI::SecurityOriginTest::tempFilePath): Added.
3032         (TestWebKitAPI::SecurityOriginTest::spaceContainingFilePath): Added.
3033         (TestWebKitAPI::SecurityOriginTest::bangContainingFilePath): Added.
3034         (TestWebKitAPI::SecurityOriginTest::quoteContainingFilePath): Added.
3035
3036 2017-02-06  Jer Noble  <jer.noble@apple.com>
3037
3038         Playback stalls when a SourceBuffer append causes frame eviction
3039         https://bugs.webkit.org/show_bug.cgi?id=167834
3040
3041         Reviewed by Eric Carlson.
3042
3043         Add new correctness tests for the Webcore::SampleMap class. Add additional subtests
3044         for the WTF::MediaTime class.
3045
3046         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3047         * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
3048         (TestWebKitAPI::TEST):
3049         * TestWebKitAPI/Tests/WebCore/SampleMap.cpp: Added.
3050         (WTF::operator<<):
3051         (TestWebKitAPI::TestSample::create):
3052         (TestWebKitAPI::TestSample::TestSample):
3053         (TestWebKitAPI::TEST_F):
3054
3055 2017-02-06  Ryan Haddad  <ryanhaddad@apple.com>
3056
3057         Change capitalization in platform name after r211735.
3058
3059         Unreviewed dashboard fix.
3060
3061         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
3062         (WebKitBuildbot):
3063
3064 2017-02-06  Alexey Proskuryakov  <ap@apple.com>
3065
3066         Move the Leaks bot to Sierra
3067         https://bugs.webkit.org/show_bug.cgi?id=167886
3068
3069         Reviewed by Daniel Bates.
3070
3071         * BuildSlaveSupport/build.webkit.org-config/config.json:
3072         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
3073         * BuildSlaveSupport/build.webkit.org-config/public_html/LeaksViewer/LeaksViewer.js:
3074         (LeaksViewer._displayURLPrompt):
3075         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
3076         (WebKitBuildbot):
3077
3078 2017-02-06  Jonathan Bedard  <jbedard@apple.com>
3079
3080         Prevent app crash on launch during simctl install workaround
3081         https://bugs.webkit.org/show_bug.cgi?id=167685
3082
3083         Reviewed by Daniel Bates.
3084
3085         * Scripts/webkitpy/port/simulator_process.py:
3086         (SimulatorProcess.__init__): Pass environment to install.
3087         * Scripts/webkitpy/xcode/simulator.py:
3088         (Device.install_app): Accept environment, pass environment to launch.
3089
3090 2017-02-06  Alex Christensen  <achristensen@webkit.org>
3091
3092         Rebase API tests after r211638
3093         https://bugs.webkit.org/show_bug.cgi?id=167779
3094
3095         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3096         (TestWebKitAPI::TEST_F):
3097         URLs with non-special schemes and characters like % in the host now fail to parse,
3098         more like their special counterparts and according to spec.
3099
3100 2017-02-06  Csaba Osztrogonác  <ossy@webkit.org>
3101
3102         Unreviewed trivial fix after r211697.
3103         https://bugs.webkit.org/show_bug.cgi?id=167863
3104
3105         * Scripts/run-javascriptcore-tests:
3106         (runJSCStressTests): Renamed ES6SampleBench to ARES-6.
3107
3108 2017-02-04  Simon Fraser  <simon.fraser@apple.com>
3109
3110         Clean up how GraphicsLayer's "inWindow" state is set, and fix some issues with Page Overlays
3111         https://bugs.webkit.org/show_bug.cgi?id=167850
3112
3113         Reviewed by Tim Horton.
3114
3115         * DumpRenderTree/TestRunner.cpp:
3116         (TestRunner::uiScriptDidComplete): Fix an assertion that fires for non-16-bit strings.
3117
3118 2017-02-04  Andreas Kling  <akling@apple.com>
3119
3120         Plug some leaks in TestController and UIScriptContext.
3121         <https://webkit.org/b/167839>
3122
3123         Reviewed by Alexey Proskuryakov.
3124
3125         Fix a couple of the leaks seen on the leaks bot.
3126
3127         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
3128         (UIScriptContext::runUIScript):
3129         * WebKitTestRunner/TestController.cpp:
3130         (WTR::TestController::handleCheckOfUserMediaPermissionForOrigin):
3131         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible):
3132
3133 2017-02-03  Jeremy Jones  <jeremyj@apple.com>
3134
3135         WK1 mouse events are missing movementX and movementY for pointerlock.
3136         https://bugs.webkit.org/show_bug.cgi?id=167775
3137         rdar://problem/30343810
3138
3139         Reviewed by Alexey Proskuryakov.
3140
3141         Set kCGMouseEventDeltaX and kCGMouseEventDeltaY when synthesizing mouse move events.
3142
3143         * DumpRenderTree/mac/EventSendingController.mm:
3144         (-[EventSendingController mouseMoveToX:Y:]):
3145         * WebKitTestRunner/mac/EventSenderProxy.mm:
3146         (WTR::EventSenderProxy::mouseMoveTo):
3147
3148 2017-02-03  Simon Fraser  <simon.fraser@apple.com>
3149
3150         Correctly set the "inWindow" flag for TileControllers that aren't the page tiles, and clarify "usingTiledBacking" logic
3151         https://bugs.webkit.org/show_bug.cgi?id=167774
3152
3153         Reviewed by Tim Horton.
3154
3155         Implement UIScriptController removeViewFromWindow() and addViewToWindow(), and hook
3156         up for Mac WK1 and WK2, and iOS WK2. It takes a callback because view state updates to the
3157         web process are async, so the callback fires after the web process gets the new state.
3158
3159         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3160         (WTR::UIScriptController::removeViewFromWindow):
3161         (WTR::UIScriptController::addViewToWindow):
3162         * DumpRenderTree/mac/DumpRenderTree.mm:
3163         (createWebViewAndOffscreenWindow):
3164         (resetWebViewToConsistentStateBeforeTesting):
3165         * DumpRenderTree/mac/DumpRenderTreeMac.h:
3166         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3167         (WTR::UIScriptController::removeViewFromWindow):
3168         (WTR::UIScriptController::addViewToWindow):
3169         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3170         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3171         (WTR::UIScriptController::removeViewFromWindow):
3172         (WTR::UIScriptController::addViewToWindow):
3173         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3174         * WebKitTestRunner/PlatformWebView.h:
3175         * WebKitTestRunner/TestController.cpp:
3176         (WTR::TestController::resetStateToConsistentValues):
3177         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3178         (WTR::PlatformWebView::removeFromWindow):
3179         (WTR::PlatformWebView::addToWindow):
3180         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3181         (WTR::UIScriptController::removeViewFromWindow):
3182         (WTR::UIScriptController::addViewToWindow):
3183         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
3184         (WTR::PlatformWebView::removeFromWindow):
3185         (WTR::PlatformWebView::addToWindow):
3186         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3187         (WTR::UIScriptController::removeViewFromWindow):
3188         (WTR::UIScriptController::addViewToWindow):
3189
3190 2017-02-03  Alexey Proskuryakov  <ap@apple.com>
3191
3192         Remove check for SkipSafariExecutableEntitlementChecks
3193         https://bugs.webkit.org/show_bug.cgi?id=167762
3194
3195         Reviewed by Dan Bernstein.
3196
3197         Follow-up fix: don't break internal behavior.
3198
3199         * Scripts/webkitdirs.pm:
3200         (safariPath):
3201         (executableHasEntitlements): Deleted.
3202         (safariPathFromSafariBundle): Deleted.
3203         (installedSafariPath): Deleted.
3204
3205 2017-02-03  Daniel Bates  <dabates@apple.com>
3206
3207         [Mac][WK2] Add SPI to override the Content Security Policy of a page
3208         https://bugs.webkit.org/show_bug.cgi?id=167810
3209         <rdar://problem/30102568>
3210
3211         Reviewed by Anders Carlsson.
3212
3213         Add tests to ensure that we do not regress -[WKWebView _setOverrideContentSecurityPolicy:].
3214
3215         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3216         * TestWebKitAPI/Tests/WebKit2Cocoa/OverrideContentSecurityPolicy.mm: Added.
3217         (TEST):
3218         * TestWebKitAPI/Tests/WebKit2Cocoa/page-with-csp-iframe.html: Added.
3219         * TestWebKitAPI/Tests/WebKit2Cocoa/page-with-csp.html: Added.
3220         * TestWebKitAPI/Tests/WebKit2Cocoa/page-without-csp-iframe.html: Added.
3221         * TestWebKitAPI/Tests/WebKit2Cocoa/page-without-csp.html: Added.
3222
3223 2017-02-02  Alex Christensen  <achristensen@webkit.org>
3224
3225         URLParser: Fix parsing invalid IPv4 addresses with non-ASCII characters
3226         https://bugs.webkit.org/show_bug.cgi?id=167773
3227         <rdar://problem/30221102>
3228
3229         Reviewed by Ryosuke Niwa.
3230
3231         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3232         (TestWebKitAPI::TEST_F):
3233
3234 2017-02-02  Alexey Proskuryakov  <ap@apple.com>
3235
3236         Remove check for SkipSafariExecutableEntitlementChecks
3237         https://bugs.webkit.org/show_bug.cgi?id=167762
3238         rdar://problem/22480673
3239
3240         Reviewed by Dan Bernstein.
3241
3242         * Scripts/webkitdirs.pm:
3243         (safariPathFromSafariBundle):
3244         (skipSafariExecutableEntitlementChecks): Deleted.
3245
3246 2017-02-02  Jonathan Bedard  <jbedard@apple.com>
3247
3248         Undefined subroutine in svn-create-patch
3249         https://bugs.webkit.org/show_bug.cgi?id=167742
3250
3251         Unreviewed build-fix after r211543.
3252
3253         * Scripts/VCSUtils.pm: fixSVNPatchForAdditionWithHistory was not exported.
3254
3255 2017-02-02  Xabier Rodriguez Calvar  <calvaris@igalia.com>
3256
3257         Unreviewed. Fix jhbuild dependencies build.
3258
3259         * gtk/patches/gst-plugins-good-0004-qtdemux-add-context-for-a-preferred-protection.patch:
3260         Patch updated.
3261
3262 2017-02-02  Xabier Rodriguez Calvar  <calvaris@igalia.com>
3263
3264         [EME][GStreamer] Fixed decryptor selection
3265         https://bugs.webkit.org/show_bug.cgi?id=167588
3266
3267         Reviewed by Žan Doberšek.
3268
3269         This patches are pending at https://bugzilla.gnome.org/show_bug.cgi?id=770107
3270
3271         * gtk/jhbuild.modules: Added patches to gstreamer and
3272         gst-plugins-good packages.
3273         * gtk/patches/gst-plugins-good-0004-qtdemux-add-context-for-a-preferred-protection.patch: Added.
3274         * gtk/patches/gstreamer-0001-protection-added-function-to-filter-system-ids.patch: Added.
3275
3276 2017-02-01  Dewei Zhu  <dewei_zhu@apple.com>
3277
3278         Make run-benchmark script supports 'config' key in test plan.
3279         https://bugs.webkit.org/show_bug.cgi?id=167715
3280
3281         Reviewed by Ryosuke Niwa.
3282
3283         Add support for 'config' key in test paln.
3284         'config' key is a dictionary that specifies environment configurations while test is running.
3285         Specifies orientation to be portrait in MotionMark benchmark.
3286
3287         * Scripts/webkitpy/benchmark_runner/README.md:
3288         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
3289         (BenchmarkRunner.__init__):
3290         (BenchmarkRunner._run_benchmark):
3291         * Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver.py:
3292         (BrowserDriver.prepare_env):
3293         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_browser_driver.py:
3294         (LinuxBrowserDriver.prepare_env):
3295         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
3296         (OSXBrowserDriver.prepare_env):
3297         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
3298         (OSXSafariDriver.prepare_env):
3299         * Scripts/webkitpy/benchmark_runner/data/plans/motionmark.plan:
3300
3301 2017-02-01  Daniel Bates  <dabates@apple.com>
3302
3303         REGRESSION (r210820): svn-create-patch does not emit property change only diff
3304         https://bugs.webkit.org/show_bug.cgi?id=167169
3305
3306         Reviewed by David Kilzer.
3307
3308         More directly handle the SVN 1.9 or newer syntax change for a diff of a copied or moved file
3309         - a SVN diff header and an empty body. In particular, remove a duplicate leading SVN diff
3310         header from the output of "svn diff" on a file that was copied or moved.
3311
3312         Following r210820 svn-create-patch emits to standard output a diff only if it has at least one
3313         chunk range line (e.g. @@ -0,0 +1,7 @@) as a means to workaround a syntax change in the diff
3314         output of a copied or moved file in SVN version 1.9 or newer. In SVN 1.9 or newer "svn diff"
3315         of a copied or moved file always emits to standard output a leading SVN diff header (an "Index:"
3316         line followed by a separator line) with an empty body; => no chunk range lines. However a diff
3317         of a file with only a property change also does not contain any chunk range lines. Therefore
3318         svn-create-patch no longer emitted to standard output such a diff. Instead of indirectly detecting
3319         a SVN diff header with an empty body by counting the number of chunk range lines in the diff
3320         we should directly test for the presence of a leading SVN diff header with an empty body and
3321         remove such lines from the diff.
3322
3323         * Scripts/VCSUtils.pm:
3324         (fixSVNPatchForAdditionWithHistory): Added.
3325         * Scripts/svn-create-patch:
3326         (generateDiff): Pass the output from "svn diff" to fixSVNPatchForAdditionWithHistory() when
3327         we have a non empty patch for an added file with history (i.e. a copied or moved file).
3328         * Scripts/webkitperl/VCSUtils_unittest/fixSVNPatchForAdditionWithHistory.pl: Added.
3329
3330 2017-02-01  Eric Carlson  <eric.carlson@apple.com>
3331
3332         [Mac] Update CARingBuffer class
3333         https://bugs.webkit.org/show_bug.cgi?id=167656
3334
3335         Reviewed by Jer Noble.
3336
3337         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3338         * TestWebKitAPI/Tests/WebCore/CARingBuffer.cpp: Added.
3339         (TestWebKitAPI::CARingBufferTest::SetUp):
3340         (TestWebKitAPI::CARingBufferTest::setup):
3341         (TestWebKitAPI::CARingBufferTest::setListDataBuffer):
3342         (TestWebKitAPI::CARingBufferTest::description):
3343         (TestWebKitAPI::CARingBufferTest::bufferList):
3344         (TestWebKitAPI::CARingBufferTest::ringBuffer):
3345         (TestWebKitAPI::CARingBufferTest::capacity):
3346         (TestWebKitAPI::CARingBufferTest::audioBufferListSizeForStream):
3347         (TestWebKitAPI::CARingBufferTest::configureBufferListForStream):
3348         (TestWebKitAPI::TEST_F):
3349         (TestWebKitAPI::MixingTest::run):
3350
3351 2017-02-01  Alexey Proskuryakov  <ap@apple.com>
3352
3353         [Mac] TestWebKitAPI includes system frameworks incorrectly
3354         https://bugs.webkit.org/show_bug.cgi?id=167703
3355         rdar://problem/30301498
3356
3357         Reviewed by Ryosuke Niwa.
3358
3359         FRAMEWORK_SEARCH_PATH results in frameworks being treated as user ones, not system.
3360         Make TestWebKitAPI use -iframework instead, like the rest of WebKit does.
3361
3362         Also, reduced the number of subframework search paths, looks like we only need one now.
3363
3364         * TestWebKitAPI/Configurations/Base.xcconfig:
3365
3366 2017-02-01  Brent Fulgham  <bfulgham@apple.com>
3367
3368         Correct "filesHaveSameVolume" predicate
3369         https://bugs.webkit.org/show_bug.cgi?id=167696
3370         <rdar://problem/30298722>
3371
3372         Reviewed by David Kilzer.
3373
3374         Add new tests that confirm that the 'filesHaveSamePath' predicate properly handles
3375         percent-escaped path inputs.
3376
3377         * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
3378         (TestWebKitAPI::FileSystemTest::spaceContainingFilePath):
3379         (TestWebKitAPI::FileSystemTest::bangContainingFilePath):
3380         (TestWebKitAPI::FileSystemTest::quoteContainingFilePath):
3381         (TestWebKitAPI::TEST_F):
3382
3383 2017-02-01  Tomas Popela  <tpopela@redhat.com>
3384
3385         Unreviewed. Fix coding style in MiniBrowser
3386
3387         * MiniBrowser/gtk/BrowserWindow.c:
3388         (editingCommandCallback):
3389         (insertImageCommandCallback):
3390         (insertLinkCommandCallback):
3391
3392 2017-02-01  Tomas Popela  <tpopela@redhat.com>
3393
3394         [GTK] Add an API to add a custom tab into the print dialog
3395         https://bugs.webkit.org/show_bug.cgi?id=151998
3396
3397         Reviewed by Carlos Garcia Campos.
3398
3399         Add a new WebKitPrintOperation/custom-widget test in TestPrinting
3400         that is testing a newly added API.
3401
3402         * TestWebKitAPI/Tests/WebKit2Gtk/TestPrinting.cpp:
3403         (testPrintCustomWidget):
3404         (beforeAll):
3405
3406 2017-02-01  Enrique Ocaña González  <eocanha@igalia.com>
3407
3408         [GStreamer][MSE] qtdemux: Update the tfdt patch to the version finally accepted upstream
3409         https://bugs.webkit.org/show_bug.cgi?id=166529
3410
3411         Reviewed by Xabier Rodriguez-Calvar.
3412
3413         * gtk/patches/gst-plugins-good-use-the-tfdt-decode-time.patch:
3414         New patch version accepted in GStreamer upstream.
3415
3416 2017-02-01  Xabier Rodriguez Calvar  <calvaris@igalia.com>
3417
3418         [GTK] Install either libxfont1-dev or libxfont-dev as dependency
3419         https://bugs.webkit.org/show_bug.cgi?id=167498
3420
3421         Reviewed by Carlos Garcia Campos.
3422
3423         Depending on the distro version you can need either libxfont1-dev
3424         or libfont-dev to build with jhbuild.
3425
3426         * gtk/install-dependencies:
3427
3428 2017-01-31  Ryan Haddad  <ryanhaddad@apple.com>
3429
3430         Disable API test WebKit2.WKWebProcessPlugInRangeHandle
3431         https://bugs.webkit.org/show_bug.cgi?id=167594
3432
3433         Unreviewed test gardening.
3434
3435         Disabling this test while we investigate the cause of a timeout on ios-simulator.
3436
3437         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
3438         (TEST):
3439
3440 2017-01-31  Filip Pizlo  <fpizlo@apple.com>
3441
3442         Move slow-running microbenchmarks out of JSTests/microbenchmarks
3443         https://bugs.webkit.org/show_bug.cgi?id=167676
3444
3445         Reviewed by Saam Barati.
3446
3447         * Scripts/run-javascriptcore-tests:
3448         (runJSCStressTests): Add slowMicrobenchmarks.yaml.
3449
3450 2017-01-31  Megan Gardner  <megan_gardner@apple.com>
3451
3452         Make Dump Render Tree not crash
3453         https://bugs.webkit.org/show_bug.cgi?id=167667
3454
3455         DumpRenderTree is crashing when running WK2 tests that it's not supposed to be running. 
3456         DumpRenderTree uses RunLoop::main.dispatch(), but that crashes because it's not set up on iOS.
3457         So we're making use of RunWebThread, which is the correct thing to do on iOS, and it doesn't crash.
3458         This does not fix any tests, it just fixes the crash.
3459         
3460         Reviewed by Simon Fraser.
3461
3462         * DumpRenderTree/TestRunner.cpp:
3463         (TestRunner::callUIScriptCallback):
3464
3465 2017-01-31  Jonathan Bedard  <jbedard@apple.com>
3466
3467         Workaround for simctl install failing to report install failure
3468         https://bugs.webkit.org/show_bug.cgi?id=167654
3469
3470         Reviewed by Daniel Bates.
3471
3472         simctl install will sometimes report success even though install has failed.
3473         To workaround this bug, we attempt an app launch after install to ensure
3474         install has succeeded.
3475
3476         * Scripts/webkitpy/xcode/simulator.py:
3477         (Device.install_app): Attempt app launch after install, retry install if launch fails.
3478         (Device.launch_app): Correct comment.
3479
3480 2017-01-31  Jonathan Bedard  <jbedard@apple.com>
3481
3482         Unreviewed webkitpy fix after r211405.
3483
3484         * Scripts/webkitpy/xcode/simulator.py:
3485         (Device.launch_app): Remove @staticmethod on _log_debug_error.
3486
3487 2017-01-31  Carlos Garcia Campos  <cgarcia@igalia.com>
3488
3489         Unreviewed. Do not include libwebrtc and qunit in GTK+ tarballs.
3490
3491         * gtk/manifest.txt.in:
3492
3493 2017-01-31  Chris Fleizach  <cfleizach@apple.com>
3494
3495         AX: enable search predication for iOS
3496         https://bugs.webkit.org/show_bug.cgi?id=167558
3497         <rdar://problem/30251367>
3498
3499         Reviewed by Joanmarie Diggs.
3500
3501         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
3502         (AccessibilityUIElement::uiElementForSearchPredicate):
3503         * DumpRenderTree/mac/AccessibilityCommonMac.h:
3504         * DumpRenderTree/mac/AccessibilityCommonMac.mm:
3505         (searchPredicateParameterizedAttributeForSearchCriteria):
3506         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
3507         (searchPredicateParameterizedAttributeForSearchCriteria): Deleted.
3508         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
3509         (WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
3510         (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
3511         * WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.h:
3512         * WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.mm:
3513         (WTR::searchPredicateParameterizedAttributeForSearchCriteria):
3514         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
3515         (WTR::searchPredicateParameterizedAttributeForSearchCriteria): Deleted.
3516         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3517
3518 2017-01-30  Jonathan Bedard  <jbedard@apple.com>
3519
3520         Workaround for simctl launch bug
3521         https://bugs.webkit.org/show_bug.cgi?id=167613
3522
3523         Reviewed by Daniel Bates.
3524
3525         simctl launch will sometimes fail because of a race condition when many
3526         simulators are being run simultaneously. These failures will always have
3527         an exit code of 1. This change attempts to launch an app multiple times
3528         before reporting a failure to workaround this bug.
3529
3530         * Scripts/webkitpy/xcode/simulator.py:
3531         (Device.launch_app): Execute multiple launch attempts, better logging of failures.
3532
3533 2017-01-30  Alexey Proskuryakov  <ap@apple.com>
3534
3535         Commit queue fails to look at real name aliases for the reviewer
3536         https://bugs.webkit.org/show_bug.cgi?id=167422
3537
3538         Reviewed by Joseph Pecoraro.
3539
3540         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
3541         (test_has_valid_reviewer): Added tests.
3542
3543         * Scripts/webkitpy/common/config/committers.py:
3544         (CommitterList._name_to_contributor_map):
3545         Made _name_to_contributor_map include alias names.
3546
3547         * Scripts/webkitpy/common/config/committers_unittest.py:
3548         (CommittersTest.test_contributors_by_fuzzy_match):
3549         Removed subtests that are now obsolete, as these matches are strict. It is not
3550         obvious if distance based fuzzy matching for names is useful at all, but we can
3551         look into that some other time.
3552
3553 2017-01-30  Aakash Jain  <aakash_jain@apple.com>
3554
3555         QueueStatusServer should have an explicit timeout for _fetch_url
3556         https://bugs.webkit.org/show_bug.cgi?id=167467
3557
3558         Reviewed by Alexey Proskuryakov.
3559
3560         * Scripts/webkitpy/common/net/statusserver.py:
3561         (StatusServer._fetch_url): Add an explicit timeout of 300s.
3562
3563 2017-01-30  Kocsen Chung  <kocsen_chung@apple.com>
3564
3565         Add support for Trac instances that host multiple projects.
3566         https://bugs.webkit.org/show_bug.cgi?id=167524
3567
3568         Reviewed by Alexey Proskuryakov.
3569
3570         When multiple projects are hosted on a single Trac instance, the current
3571         behavior will retrieve changesets from all tracked projects.
3572         This patch teaches Trac.js to get project-specific changesets from Trac.
3573         We do this by replacing the parameter `changeset=on` to `repo-projectname=on`
3574         when querying the Trac timeline.
3575
3576         To tell Trac to be aware of multi-project instances we leverage the 
3577         `options` parameter when creating a new instance: 
3578
3579             new Trac("https://mytrac.com/", { projectIdentifier: "tracProjectName" });
3580
3581         If this option is not provided, the original behaviour will prevail.
3582         Additionally, add corresponding tests.
3583
3584         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
3585         (Trac): Reason about new optional parameter 'projectIdentifier'.
3586         (Trac.prototype.revisionURL): Given a projectIdentifier, append it to the end of the URL.
3587         (Trac.prototype._xmlTimelineURL): Given a projectIdentifier,
3588         replace default parameter `changeset=on` with `repo-projectname=on`.
3589         (Trac.prototype._convertCommitInfoElementToObject): Fix missing ';'.
3590         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/MockTrac.js:
3591         (MockTrac): Add support for instantiating Trac with a projectIdentifier.
3592         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
3593         (setup): Provide a multiple-project MockTrac instance to all test cases for testing.
3594         Add the following tests:
3595             test("revisionURL")
3596             test("revisionURL with Trac Identifier")
3597             test("_xmlTimelineURL")
3598             test("_xmlTimelineURL with Trac Identifier")
3599         (this.view._latestProductiveIteration): Fix missing ';'.
3600
3601 2017-01-30  Myles C. Maxfield  <mmaxfield@apple.com>
3602
3603         Correct spacing regression on inter-element complex path shaping on some fonts
3604         https://bugs.webkit.org/show_bug.cgi?id=166013
3605
3606         Reviewed by Simon Fraser.
3607
3608         Unskip existing tests and make some new tests:
3609         - Testing complex text with no origins
3610         - Testing initial expansions
3611         - Testing the sign of vertical advances
3612
3613         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
3614         (TestWebKitAPI::TEST_F):
3615
3616 2017-01-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3617
3618         [GTK][EFL] Avoid using a thin directory to create the built product on the archive-built-product step.
3619         https://bugs.webkit.org/show_bug.cgi?id=167596
3620
3621         Reviewed by Daniel Bates.
3622
3623         We avoid needing a thin directory by invoking the zip program with
3624         the list of directories from the build directory to be zipped,
3625         and by using the zip feature to exclude files matching a pattern.
3626
3627         * BuildSlaveSupport/built-product-archive:
3628         (copyBuildFiles):
3629         (createZipFromList):
3630  &n