Add a testing target to make that is release + assertions
[WebKit-https.git] / Tools / ChangeLog
1 2020-01-07  Keith Miller  <keith_miller@apple.com>
2
3         Add a testing target to make that is release + assertions
4         https://bugs.webkit.org/show_bug.cgi?id=205895
5
6         Reviewed by Mark Lam.
7
8         * Makefile:
9
10 2020-01-07  Kate Cheney  <katherine_cheney@apple.com>
11
12         Create a mechanism for 'safe by default' web views
13         https://bugs.webkit.org/show_bug.cgi?id=205407
14         <rdar://problem/58053071>
15
16         Reviewed by Alex Christensen.
17
18         Test the default WebView category is correct and that the setter works
19         properly.
20
21         * TestWebKitAPI/Tests/WebKitCocoa/Configuration.mm:
22         (TEST):
23
24 2020-01-07  Truitt Savell  <tsavell@apple.com>
25
26         Unreviewed, rolling out r254165.
27
28         Caused 500+ missing results on Mac
29
30         Reverted changeset:
31
32         "run-webkit-tests: clobber-old-results should remove the
33         entire results folder"
34         https://bugs.webkit.org/show_bug.cgi?id=205875
35         https://trac.webkit.org/changeset/254165
36
37 2020-01-07  Jonathan Bedard  <jbedard@apple.com>
38
39         run-webkit-tests: clobber-old-results should remove the entire results folder
40         https://bugs.webkit.org/show_bug.cgi?id=205875
41         <rdar://problem/58236117>
42
43         Reviewed by Alexey Proskuryakov.
44
45         * Scripts/webkitpy/layout_tests/controllers/manager.py:
46         (Manager._clobber_old_results): Remove entire results folder.
47         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
48         (RunTest.test_retrying_and_flaky_tests): clobber-old-results now removes the
49         entire results directory.
50
51 2020-01-07  Aakash Jain  <aakash_jain@apple.com>
52
53         [EWS] Limit pre-existing JSC tests failures to display in buildbot summary
54         https://bugs.webkit.org/show_bug.cgi?id=205878
55
56         Reviewed by Jonathan Bedard.
57
58         * BuildSlaveSupport/ews-build/steps.py:
59         (AnalyzeJSCTestsResults.start): Limit the number of failures to display.
60
61 2020-01-07  Daniel Bates  <dabates@apple.com>
62
63         First character in each word-wrapped line has incorrect character rect when requested range spans multiple lines
64         https://bugs.webkit.org/show_bug.cgi?id=205842
65         <rdar://problem/56884325>
66
67         Reviewed by Zalan Bujtas.
68
69         Add a new test.
70
71         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
72         (TEST):
73
74 2020-01-07  Ryan Haddad  <ryanhaddad@apple.com>
75
76         Unreviewed, rolling out r254144.
77
78         Broke the iOS build.
79
80         Reverted changeset:
81
82         "First character in each word-wrapped line has incorrect
83         character rect when requested range spans multiple lines"
84         https://bugs.webkit.org/show_bug.cgi?id=205842
85         https://trac.webkit.org/changeset/254144
86
87 2020-01-07  Jonathan Bedard  <jbedard@apple.com>
88
89         results.webkit.org: Handle case where processing data is undefined
90         https://bugs.webkit.org/show_bug.cgi?id=205870
91
92         Rubber-stamped by Aakash Jain.
93
94         * resultsdbpy/resultsdbpy/model/upload_context.py:
95         (UploadContext._do_job_for_key): If the job content is undefined, mark the job as
96         finished.
97
98 2020-01-07  Daniel Bates  <dabates@apple.com>
99
100         First character in each word-wrapped line has incorrect character rect when requested range spans multiple lines
101         https://bugs.webkit.org/show_bug.cgi?id=205842
102         <rdar://problem/56884325>
103
104         Reviewed by Zalan Bujtas.
105
106         Add a new test.
107
108         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
109         (TEST):
110
111 2020-01-07  Basuke Suzuki  <basuke.suzuki@sony.com>
112
113         check-webkit-style: bmalloc doesn't use config.h
114         https://bugs.webkit.org/show_bug.cgi?id=205840
115
116         Reviewed by Jonathan Bedard.
117
118         * Scripts/webkitpy/style/checkers/cpp.py:
119         (_IncludeState.check_next_include_order):
120         (check_include_line):
121         (check_has_config_header):
122
123 2020-01-07  youenn fablet  <youenn@apple.com>
124
125         Add an option to make video capture in GPUProcess
126         https://bugs.webkit.org/show_bug.cgi?id=205853
127
128         Reviewed by Eric Carlson.
129
130         * WebKitTestRunner/TestController.cpp:
131         (WTR::TestController::resetPreferencesToConsistentValues):
132         (WTR::updateTestOptionsFromTestHeader):
133         * WebKitTestRunner/TestOptions.h:
134         (WTR::TestOptions::hasSameInitializationOptions const):
135
136 2020-01-07  Carlos Garcia Campos  <cgarcia@igalia.com>
137
138         [GTK][WPE] Add API to retrieve and delete surrounding text for input methods
139         https://bugs.webkit.org/show_bug.cgi?id=205716
140
141         Reviewed by Žan Doberšek.
142
143         Add new test case for the new API.
144
145         * TestWebKitAPI/Tests/WebKitGLib/TestInputMethodContext.cpp:
146         (webkitInputMethodContextMockFinalize):
147         (webkitInputMethodContextMockNotifySurrounding):
148         (webkitInputMethodContextMockReset):
149         (webkit_input_method_context_mock_class_init):
150         (testWebKitInputMethodContextSurrounding):
151         (beforeAll):
152
153 2020-01-07  Carlos Garcia Campos  <cgarcia@igalia.com>
154
155         [GTK][WPE] Add API to set purpose and hints of active editable element to input methods
156         https://bugs.webkit.org/show_bug.cgi?id=205605
157
158         Reviewed by Žan Doberšek.
159
160         Add new test case to check the purpose and hints API.
161
162         * TestWebKitAPI/Tests/WebKitGLib/TestInputMethodContext.cpp:
163         (testWebKitInputMethodContextContentType):
164         (beforeAll):
165
166 2020-01-06  Jonathan Bedard  <jbedard@apple.com>
167
168         results.webkit.org: Tweak processing constants
169         https://bugs.webkit.org/show_bug.cgi?id=205828
170         <rdar://problem/58146698>
171
172         Rubber-stamped by Aakash Jain.
173
174         * resultsdbpy/resultsdbpy/model/upload_context.py:
175         (UploadContext):
176         Increase process timeout to 1 week.
177         Allow 5 retries instead of 3.
178         Retry stuck tasks after 10 minutes instead of 5.
179         Include more tasks so that a scan is always greater than the number of workers.
180
181 2020-01-06  Jonathan Bedard  <jbedard@apple.com>
182
183         test-lldb-webkit: Use logging module
184         https://bugs.webkit.org/show_bug.cgi?id=205832
185
186         Reviewed by Stephanie Lewis.
187
188         * Scripts/test-lldb-webkit:
189         (LldbTester.run): Configure logger.
190
191 2020-01-06  Daniel Bates  <dabates@apple.com>
192
193         Precision of getClientRects(), getBoundingClientRect() differs depending whether simple line layout or line box layout is used
194         https://bugs.webkit.org/show_bug.cgi?id=205563
195         <rdar://problem/58165528>
196
197         Reviewed by Zalan Bujtas.
198
199         Update test results.
200
201         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
202         (TEST):
203         * TestWebKitAPI/Tests/ios/AccessibilityTestsIOS.mm:
204         (TestWebKitAPI::TEST):
205         * TestWebKitAPI/Tests/ios/AutocorrectionTestsIOS.mm:
206         (TEST):
207
208 2020-01-06  youenn fablet  <youenn@apple.com>
209
210         XMLHTTPRequest POSTs blob data to a custom WKURLSchemeHandler protocol crash
211         https://bugs.webkit.org/show_bug.cgi?id=205685
212
213         Reviewed by Alex Christensen.
214
215         * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
216
217 2020-01-06  Alex Christensen  <achristensen@webkit.org>
218
219         Remove WebsiteDataStore::setServiceWorkerRegistrationDirectory
220         https://bugs.webkit.org/show_bug.cgi?id=205754
221
222         Reviewed by Youenn Fablet.
223
224         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
225         * WebKitTestRunner/TestController.cpp:
226         (WTR::TestController::websiteDataStore):
227         (WTR::TestController::platformAdjustContext):
228         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
229         (WTR::initializeWebViewConfiguration):
230
231 2020-01-06  Alex Christensen  <achristensen@webkit.org>
232
233         Allow wildcard scheme in UserContentURLPattern
234         https://bugs.webkit.org/show_bug.cgi?id=205695
235
236         Reviewed by Darin Adler.
237
238         * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
239
240 2020-01-06  Antoine Quint  <graouts@apple.com>
241
242         REGRESSION: [ iOS ] imported/w3c/web-platform-tests/dom/events/Event-dispatch-on-disabled-elements.html is failing
243         https://bugs.webkit.org/show_bug.cgi?id=205458
244         <rdar://problem/58081704>
245
246         Reviewed by Wenson Hsieh.
247
248         The last sub-test in imported/w3c/web-platform-tests/dom/events/Event-dispatch-on-disabled-elements.html checks on the
249         ability to activate various form controls after disabling and re-enabling them. Two of those form controls, <select>
250         and <textarea>, would trigger animations of the web view's UIScrollView causing touches to be consumed by UIKit and
251         never seen by the WKContentView, and as such the expected "click" events would not be received. It would have been
252         possible to modify the test to wait on any potential page scroll to complete before dispatching taps, but since this
253         is a WPT test, we cannot modify it. Instead, we make a change to the function called by uiScriptController.singleTapAtPoint()
254         to interrupt any pending UIScrollView animation when a tap is being triggered on the web view. Credit to Wenson Hsieh
255         for suggesting this simple and effective approach.
256
257         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
258         (WTR::UIScriptControllerIOS::singleTapAtPointWithModifiers):
259
260 2020-01-06  Mark Lam  <mark.lam@apple.com>
261
262         Convert ASSERT_DISABLED to ASSERT_ENABLED, and fix some tests of NDEBUG that should actually test for ASSERT_ENABLED.
263         https://bugs.webkit.org/show_bug.cgi?id=205776
264
265         Reviewed by Saam Barati.
266
267         * DumpRenderTree/mac/ObjCController.m:
268         (-[ObjCController accessStoredWebScriptObject]):
269
270 2020-01-06  Mark Lam  <mark.lam@apple.com>
271
272         Add --force-optimization-level option to Tools/Scripts/set-webkit-configuration.
273         https://bugs.webkit.org/show_bug.cgi?id=205787
274
275         Reviewed by Saam Barati.
276
277         Usage:
278             --force-optimization-level=<opt> Force optimization: O3, O2, O1, O0, Os, Ofast, Og, or none
279
280         This can be used to force debug builds to be built with a higher level optimization
281         so that tests can run to completion faster.
282
283         It can also be useful as a simple way to force release builds to be built with
284         different optimization levels for performance comparison.
285
286         Setting --force-optimization-level=none restores the default optimization levels.
287         Of course, the build targets need to be rebuilt for this to take effect.
288
289         * Scripts/set-webkit-configuration:
290         * Scripts/webkitdirs.pm:
291         (determineForceOptimizationLevel):
292         (forceOptimizationLevel):
293         (XcodeOptions):
294
295 2020-01-05  Dean Jackson  <dino@apple.com>
296
297         Rename GraphicsContext3D to GraphicsContextGL
298         https://bugs.webkit.org/show_bug.cgi?id=205778
299         <rdar://problem/58327597>
300
301         Reviewed by Sam Weinig.
302
303         Rename all the GraphicsContext3D things to GraphicsContextGL
304         (includes Extensions3D and GRAPHICS_CONTEXT_3D).
305
306         GraphicsContext3DBase now becomes GraphicsContextGL.
307         GraphicsContext3D is now GraphicsContextGLOpenGL (since it represents
308         the OpenGL implementation of the API).
309
310         * Scripts/webkitpy/common/config/watchlist:
311
312 2020-01-06  Paulo Matos  <pmatos@igalia.com>
313
314         Remove unused variable jsDriverArgs from script
315         https://bugs.webkit.org/show_bug.cgi?id=205797
316
317         Reviewed by Žan Doberšek.
318
319         * Scripts/run-javascriptcore-tests:
320
321 2020-01-06  Paulo Matos  <pmatos@igalia.com>
322
323         Add support for passing test arguments in envvar TEST_JSC_ARGS
324         https://bugs.webkit.org/show_bug.cgi?id=205800
325
326         Reviewed by Žan Doberšek.
327
328         Similarly to what is done in build-jsc, we add support to pass
329         extra command line arguments in environment variable TEST_JSC_ARGS.
330
331         * Scripts/run-javascriptcore-tests:
332
333 2020-01-06  Per Arne Vollan  <pvollan@apple.com>
334
335         [iOS] Issue mach lookup extension to launch services daemon for Mail
336         https://bugs.webkit.org/show_bug.cgi?id=205316
337
338         Reviewed by Brent Fulgham.
339
340         Add test option to set bundle identifier. Using this, WebKitTestRunner can pretend to be any client, e.g. Mail.
341
342         Test: fast/sandbox/ios/sandbox-mach-lookup-mail.html
343
344         * WebKitTestRunner/TestController.cpp:
345         (WTR::TestController::createWebViewWithOptions):
346         (WTR::updateTestOptionsFromTestHeader):
347         * WebKitTestRunner/TestController.h:
348         * WebKitTestRunner/TestOptions.h:
349         (WTR::TestOptions::hasSameInitializationOptions const):
350         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
351         (WTR::TestController::setApplicationBundleIdentifier):
352
353 2020-01-06  Philippe Normand  <pnormand@igalia.com>
354
355         [WPE][Qt] TestRunJavaScript failure
356         https://bugs.webkit.org/show_bug.cgi?id=205766
357
358         Reviewed by Carlos Garcia Campos.
359
360         * TestWebKitAPI/Tests/WPEQt/TestRunJavaScript.cpp:
361         (TestRunJavaScript::main): Surround JS function with parentheses
362         to comply with the ECMAScript specification.
363
364 2020-01-05  Sam Weinig  <weinig@apple.com>
365
366         Further simplify StringBuilder usage by standardizing hex formating to a single hex() function
367         https://bugs.webkit.org/show_bug.cgi?id=205759
368
369         Reviewed by Dean Jackson.
370
371         * TestWebKitAPI/CMakeLists.txt:
372         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
373         * TestWebKitAPI/Tests/WTF/HexNumber.cpp: Added.
374         Add testing for hex formatting of integers.
375
376 2020-01-05  Simon Fraser  <simon.fraser@apple.com>
377
378         DumpRenderTree doesn't always call updateRendering() when a test completes
379         https://bugs.webkit.org/show_bug.cgi?id=205761
380
381         Reviewed by Darin Adler.
382         
383         Some animation tests (and possibly many others) are flakey or broken in WK1 because
384         there was no code to guarantee that Page::updateRendering() was called at notifyDone()
385         time.
386
387         WK2 calls DrawingArea::forceRepaint(), which does updateRendering(), flushes layers,
388         and flushes a CATransaction.
389
390         In WK1, we historically relied in AppKit to call -viewWillDraw on WebView and/or WebHTMLView,
391         and just called [webView display] to make this happen. However, with layer backing, AppKit behavior
392         changes, and WebCore changes that make more things happen with HTML event loop timing, this
393         approach no longer works. The fix is to add WebView SPI, _forceRepaintForTesting, which emulates what
394         WK2 is doing.
395
396         * DumpRenderTree/mac/DumpRenderTree.mm:
397         (updateDisplay):
398         * DumpRenderTree/mac/PixelDumpSupportMac.mm:
399
400 2020-01-03  Tim Horton  <timothy_horton@apple.com>
401
402         REGRESSION: 150+ flaky failures on some bots (color mismatches)
403         https://bugs.webkit.org/show_bug.cgi?id=205755
404         <rdar://problem/58248136>
405
406         Reviewed by Simon Fraser.
407
408         * DumpRenderTree/mac/LayoutTestHelper.m:
409         (colorProfileURLForDisplay):
410         (displayUUIDStrings):
411         Use CGGetOnlineDisplayList instead of CGGetActiveDisplayList; we want
412         all attached displays, even if they are sleeping.
413
414 2020-01-03  Keith Miller  <keith_miller@apple.com>
415
416         Update test262 tests to commit 157b18d
417         https://bugs.webkit.org/show_bug.cgi?id=205741
418
419         Reviewed by Yusuke Suzuki.
420
421         Using --save and --latest-import should update expectations rather than overwrite.
422
423         * Scripts/test262/Runner.pm:
424         (main):
425
426 2020-01-03  Simon Fraser  <simon.fraser@apple.com>
427
428         Add some shared schemes to the WebKit.xcworkspace
429         https://bugs.webkit.org/show_bug.cgi?id=205698
430
431         Reviewed by Tim Horton.
432         
433         Make WebKit.xcworkspace show the following schemes by default:
434             All Source
435             All Tools
436             WTF
437             JavaScriptCore
438             WebCore
439             WebKit
440             WebKitLegacy
441             DumpRenderTree
442             WebKitTestRunner
443             TestWebKitAPI
444             MiniBrowser
445             MobileMiniBrowser.
446             
447         Also remove the MobileMiniBrowserUITests scheme.
448
449         * DumpRenderTree/DumpRenderTree.xcodeproj/xcshareddata/xcschemes/DumpRenderTree.xcscheme: Copied from Tools/MobileMiniBrowser/MobileMiniBrowser.xcodeproj/xcshareddata/xcschemes/MobileMiniBrowserUITests.xcscheme.
450         * MiniBrowser/MiniBrowser.xcodeproj/xcshareddata/xcschemes/MiniBrowser.xcscheme: Copied from Tools/MobileMiniBrowser/MobileMiniBrowser.xcodeproj/xcshareddata/xcschemes/MobileMiniBrowserUITests.xcscheme.
451         * MobileMiniBrowser/MobileMiniBrowser.xcodeproj/xcshareddata/xcschemes/MobileMiniBrowser.xcscheme: Copied from Tools/MobileMiniBrowser/MobileMiniBrowser.xcodeproj/xcshareddata/xcschemes/MobileMiniBrowserUITests.xcscheme.
452         * TestWebKitAPI/TestWebKitAPI.xcodeproj/xcshareddata/xcschemes/TestWebKitAPI.xcscheme: Copied from Tools/MobileMiniBrowser/MobileMiniBrowser.xcodeproj/xcshareddata/xcschemes/MobileMiniBrowserUITests.xcscheme.
453         * WebKitTestRunner/WebKitTestRunner.xcodeproj/xcshareddata/xcschemes/WebKitTestRunner.xcscheme: Renamed from Tools/MobileMiniBrowser/MobileMiniBrowser.xcodeproj/xcshareddata/xcschemes/MobileMiniBrowserUITests.xcscheme.
454
455 2020-01-03  youenn fablet  <youenn@apple.com>
456
457         Provide pid to crashing service worker process and GPU process
458         https://bugs.webkit.org/show_bug.cgi?id=205564
459
460         Reviewed by Alex Christensen.
461
462         Exposing the pid allows WebKitTestRunner to provide better information.
463
464         * WebKitTestRunner/TestController.cpp:
465         (WTR::TestController::serviceWorkerProcessDidCrash):
466         (WTR::TestController::gpuProcessDidCrash):
467         * WebKitTestRunner/TestController.h:
468
469 2020-01-03  Alex Christensen  <achristensen@webkit.org>
470
471         Deprecate _WKWebsitePolicies
472         https://bugs.webkit.org/show_bug.cgi?id=205539
473
474         Reviewed by Wenson Hsieh.
475
476         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
477         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
478         (-[SWCustomUserAgentDelegate _webView:decidePolicyForNavigationAction:preferences:userInfo:decisionHandler:]):
479         (-[SWCustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]): Deleted.
480         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
481         (-[ContentBlockingWebsitePoliciesDelegate webView:decidePolicyForNavigationAction:preferences:decisionHandler:]):
482         (TEST):
483         (-[AutoplayPoliciesDelegate webView:decidePolicyForNavigationAction:preferences:decisionHandler:]):
484         (-[AsyncAutoplayPoliciesDelegate webView:decidePolicyForNavigationAction:preferences:decisionHandler:]):
485         (-[WebsitePoliciesNavigationDelegate _webView:decidePolicyForNavigationAction:preferences:userInfo:decisionHandler:]):
486         (-[CustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
487         (-[CustomJavaScriptUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
488         (-[CustomNavigatorPlatformDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
489         (-[WebsitePoliciesDeviceOrientationDelegate _webView:decidePolicyForNavigationAction:preferences:userInfo:decisionHandler:]):
490         (-[PopUpPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
491         (-[WebsitePoliciesWebsiteDataStoreDelegate webView:decidePolicyForNavigationAction:preferences:decisionHandler:]):
492         (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
493         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
494         (-[AsyncAutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
495         (-[WebsitePoliciesNavigationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]): Deleted.
496         (-[WebsitePoliciesDeviceOrientationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]): Deleted.
497         (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
498
499 2020-01-03  Alicia Boya García  <aboya@igalia.com>
500
501         [GStreamer][MSE] Player stalling too soon
502         https://bugs.webkit.org/show_bug.cgi?id=205117
503
504         Reviewed by Xabier Rodriguez-Calvar.
505
506         Backported patch to jhbuild.
507
508         Small modifications were necessary to make it apply on 1.16.1.
509
510         * gstreamer/jhbuild.modules:
511         * gstreamer/patches/libav-0001-gstavviddec-Limit-default-number-of-decoder-threads.patch: Added.
512
513 2020-01-02  Alex Christensen  <achristensen@webkit.org>
514
515         Add SPI to disable CORS on requests to URLs matching a pattern
516         https://bugs.webkit.org/show_bug.cgi?id=205534
517         <rdar://problem/58011337>
518
519         Reviewed by Chris Dumez.
520
521         * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
522
523 2020-01-02  Sam Weinig  <weinig@apple.com>
524
525         Simplify StringBuilder API/align with makeString by removing appendFixed* functions and using FormatNumber struct instead
526         https://bugs.webkit.org/show_bug.cgi?id=205671
527
528         Reviewed by Alex Christensen.
529
530         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
531         Replace all uses of builder.appendFixedPrecisionNumber(...) with builder.append(FormattedNumber::fixedPrecision(...)).
532
533 2019-12-31  Carlos Alberto Lopez Perez  <clopez@igalia.com>
534
535         [WPE] OpenJPEG missing in install dependencies script.
536         https://bugs.webkit.org/show_bug.cgi?id=205647
537
538         Unreviewed follow-up fix.
539
540         Add also the OpenJPEG-2 package to the WPE install list.
541
542         * wpe/install-dependencies:
543
544 2019-12-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
545
546         [GTK][WPE] OpenJPEG missing in install dependencies script
547         https://bugs.webkit.org/show_bug.cgi?id=205647
548
549         Reviewed by Adrian Perez de Castro.
550
551         * gtk/install-dependencies: Add OpenJPEG-2 package to the list.
552
553 2019-12-30  Brady Eidson  <beidson@apple.com>
554
555         Add WKWebView SPI to evaluate a function with arguments
556         https://bugs.webkit.org/show_bug.cgi?id=205239
557
558         Reviewed by Alex Christensen.
559
560         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
561         * TestWebKitAPI/Tests/WebKitCocoa/AsyncFunction.mm: Added.
562         (TestWebKitAPI::TEST):
563         * TestWebKitAPI/cocoa/TestWKWebView.h:
564         * TestWebKitAPI/cocoa/TestWKWebView.mm:
565         (-[WKWebView objectByCallingAsyncFunction:withArguments:error:]):
566
567 2019-12-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
568
569         [GTK][WPE] Report number of total tests run and failed in API test runner like run-api-tests does
570         https://bugs.webkit.org/show_bug.cgi?id=205608
571
572         Reviewed by Carlos Garcia Campos.
573
574         Calculate the total number of tests (including subtests) executed
575         and report it at the end of the step in the same format than run-api-tests does.
576
577         * glib/api_test_runner.py:
578         (TestRunner._run_test_glib): Pass the list of skipped tests instead of calculating it here to avoid calculating it twice.
579         (TestRunner._get_tests_from_google_test_suite): Ditto.
580         (TestRunner._run_google_test_suite): Ditto.
581         (TestRunner._run_test): Ditto.
582         (TestRunner.run_tests):
583         (TestRunner.run_tests.number_of_tests):
584         (TestRunner.run_tests.report):
585
586 2019-12-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
587
588         [GTK][WPE] support output of results in json format in API test runner.
589         https://bugs.webkit.org/show_bug.cgi?id=205579
590
591         Reviewed by Carlos Garcia Campos.
592
593         Write the results of the tests in json format when the option --json-output
594         is passed to run-gtk-tests or run-wpe-tests. Use the same format than mac's
595         run-api-tests.
596
597         * glib/api_test_runner.py:
598         (TestRunner.run_tests):
599         (TestRunner.run_tests.generate_test_list_for_json_output):
600         (TestRunner):
601         (add_options):
602
603 2019-12-28  Commit Queue  <commit-queue@webkit.org>
604
605         Unreviewed, rolling out r253804.
606         https://bugs.webkit.org/show_bug.cgi?id=205622
607
608         Seeing strange test results after this change (Requested by ap
609         on #webkit).
610
611         Reverted changeset:
612
613         "Python 3: Add support to run-webkit-tests"
614         https://bugs.webkit.org/show_bug.cgi?id=205291
615         https://trac.webkit.org/changeset/253804
616
617 2019-12-28  Wenson Hsieh  <wenson_hsieh@apple.com>
618
619         [iOS] Layout tests sometimes throw an exception under checkForOutstandingCallbacks
620         https://bugs.webkit.org/show_bug.cgi?id=205612
621         <rdar://problem/57789693>
622
623         Reviewed by Tim Horton.
624
625         On iOS, layout tests that synthesize HID events but end before WebKitTestRunnerApp finishes dequeueing and
626         handling those events occasionally cause the next test to crash with an Objective-C exception under
627         UIScriptControllerIOS::checkForOutstandingCallbacks. This happens when UIScriptContext is destroyed after a HID
628         marker event is dispatched, but before that HID marker event has been handled. (For clarity, the HID marker
629         event is a special vendor-defined event used by HIDEventGenerator to signify the end of a series of synthesized
630         HID events that were previously dispatched to the application).
631
632         This is typically fixed by ensuring that all iOS layout tests always wait for synthesized HID events to finish
633         before ending the test (i.e. by calling `testRunner.notifyDone()`). However, some tests that fall into this
634         category are imported: e.g. dom/events/document-level-touchmove-event-listener-passive-by-default.html in
635         web-platform-tests/, which does not wait for the swipe gesture to finish before completing. This current causes
636         us to dispatch the end of the gesture while the following test (dom/events/event-disabled-dynamic.html) begins.
637
638         While I wasn't able to trivially reproduce the exception locally, it was consistently reproducible by forcing a
639         50 ms `sleep` in -[HIDEventGenerator sendMarkerHIDEventWithCompletionBlock:], right before queueing the marker
640         event. This suggests that the crash is timing-dependent, and just seems to occasionally reproduce more
641         frequently in internal automation.
642
643         This test seems to be passing reliably in other engines (e.g. Chrome and Edge), so instead of trying to fix the
644         test to always wait for events to finish dispatching, we can address the issue by teaching WebKitTestRunner to
645         simply wait for outgoing marker events to finish dispatching before proceeding with the next test, rather than
646         crashing. This should not only fix the crash, but also address sporadic flakiness that may result from tests
647         that handle synthetic HID events that were dispatched by the previous test.
648
649         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
650         (UIScriptContext::~UIScriptContext):
651         * TestRunnerShared/UIScriptContext/UIScriptController.h:
652         (WTR::UIScriptController::waitForOutstandingCallbacks):
653         (WTR::UIScriptController::checkForOutstandingCallbacks): Deleted.
654
655         Rename checkForOutstandingCallbacks to waitForOutstandingCallbacks, and make it wait up to a second for the
656         application to finish handling any outgoing marker HID event. In the event that the timeout is hit, we still
657         throw an Objective-C exception to avoid beginning the next test in an unpredictable state.
658
659         * WebKitTestRunner/ios/HIDEventGenerator.h:
660         * WebKitTestRunner/ios/HIDEventGenerator.mm:
661         (-[HIDEventGenerator init]):
662
663         Perform some minor cleanup here, by removing excess private category properties in HIDEventGenerator (including
664         -debugTouchViews, which was unused); also, change _eventCallbacks into a `RetainPtr`, so that we don't need to
665         worry about manually releasing it.
666
667         (-[HIDEventGenerator dealloc]): Deleted.
668         (-[HIDEventGenerator hasOutstandingCallbacks]):
669         (-[HIDEventGenerator checkForOutstandingCallbacks]): Deleted.
670
671         Rename -checkForOutstandingCallbacks to -hasOutstandingCallbacks, and flip the return result.
672
673         * WebKitTestRunner/ios/UIScriptControllerIOS.h:
674         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
675         (WTR::UIScriptControllerIOS::waitForOutstandingCallbacks):
676         (WTR::UIScriptControllerIOS::checkForOutstandingCallbacks): Deleted.
677
678 2019-12-28  Antti Koivisto  <antti@apple.com>
679
680         Allow disabling internal and experimental features in run-webkit-tests
681         https://bugs.webkit.org/show_bug.cgi?id=205614
682
683         Reviewed by Tim Horton.
684
685         Add an optional true/false parameter to --internal-feature/--experimental-feature options.
686         This can be useful for isolating problems in features that are enabled by default. Example:
687
688         --internal-feature LayoutFormattingContextIntegrationEnabled=false
689
690         The [=true|false] syntax is the same as used in test headers.
691
692         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
693         (parse_args):
694         * WebKitTestRunner/Options.cpp:
695         (WTR::parseFeature):
696         (WTR::handleOptionExperimentalFeature):
697         (WTR::handleOptionInternalFeature):
698         * WebKitTestRunner/Options.h:
699         * WebKitTestRunner/TestController.cpp:
700         (WTR::TestController::testOptionsForTest const):
701         * WebKitTestRunner/TestController.h:
702
703 2019-12-25  Dean Jackson  <dino@apple.com>
704
705         WKTR/DRT always trigger the Discrete GPU on dual GPU systems
706         https://bugs.webkit.org/show_bug.cgi?id=205546
707         <rdar://problem/58139610>
708
709         Reviewed by Alexey Proskuryakov.
710
711         Add an option "--prefer-integrated-gpu" to run-webkit-test
712         that causes the LayoutTestHelper to NOT lock the
713         machine to a discrete GPU on a dual-GPU system.
714         The default is false.
715
716         * DumpRenderTree/mac/LayoutTestHelper.m:
717         (main):
718         * Scripts/webkitpy/layout_tests/controllers/manager.py:
719         (Manager._set_up_run):
720         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
721         (parse_args):
722         * Scripts/webkitpy/port/base.py:
723         (Port.start_helper):
724         * Scripts/webkitpy/port/mac.py:
725         (MacPort.start_helper):
726         * Scripts/webkitpy/port/mock_drt.py:
727         (MockDRTPort.start_helper):
728
729 2019-12-25  Wenson Hsieh  <wenson_hsieh@apple.com>
730
731         REGRESSION (r253282): Tests that use applyAutocorrection assert in UIScriptContext::requestUIScriptCompletion
732         https://bugs.webkit.org/show_bug.cgi?id=205588
733         <rdar://problem/58109942>
734
735         Reviewed by Tim Horton.
736
737         The change made in r253282 intended to defer completing the async task prepared in
738         UIScriptController::applyAutocorrection until after the current runloop; however, it ended up keeping the
739         synchronous call to asyncTaskComplete. Fix this by removing this code, so that we instead wait for the
740         dispatch_async block to invoke asyncTaskComplete.
741
742         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
743         (WTR::UIScriptControllerIOS::applyAutocorrection):
744
745 2019-12-24  Youenn Fablet  <youenn@apple.com>
746
747         Deny Notification API access for non secure contexts
748         https://bugs.webkit.org/show_bug.cgi?id=205496
749         <rdar://problem/58074660>
750
751         Reviewed by Chris Dumez.
752
753         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
754         (TEST):
755
756 2019-12-24  youenn fablet  <youenn@apple.com>
757
758         Service Worker doesn't terminate after a period of time when thread blocking
759         https://bugs.webkit.org/show_bug.cgi?id=202992
760         <rdar://problem/56298596>
761
762         Reviewed by Chris Dumez.
763
764         * WebKitTestRunner/TestController.cpp:
765         (WTR::TestController::resetPreferencesToConsistentValues):
766         Enable small timeout values.
767
768 2019-12-23  Keith Miller  <keith_miller@apple.com>
769
770         DFG/FTL should be able to exit to the middle of a bytecode
771         https://bugs.webkit.org/show_bug.cgi?id=205232
772
773         Reviewed by Saam Barati.
774
775         * Scripts/run-jsc-stress-tests:
776
777 2019-12-23  Carlos Garcia Campos  <cgarcia@igalia.com>
778
779         [GTK] InputMethod API unit tests don't work under X11
780         https://bugs.webkit.org/show_bug.cgi?id=205497
781
782         Reviewed by Žan Doberšek.
783
784         Use a toplevel window instead of a popup for the input method tests, since that's required in X11 to get the web
785         view focused.
786
787         * TestWebKitAPI/Tests/WebKitGLib/TestInputMethodContext.cpp:
788         (testWebKitInputMethodContextSimple):
789         (testWebKitInputMethodContextSequence):
790         (testWebKitInputMethodContextInvalidSequence):
791         (testWebKitInputMethodContextCancelSequence):
792         (testWebKitInputMethodContextReset):
793
794 2019-12-23  Carlos Garcia Campos  <cgarcia@igalia.com>
795
796         [GTK][WPE] Special combination characters doesn't respect the keystroke order when high CPU load
797         https://bugs.webkit.org/show_bug.cgi?id=185248
798
799         Reviewed by Žan Doberšek.
800
801         Remove the waits() that were added to work around this bug.
802
803         * TestWebKitAPI/Tests/WebKitGLib/TestInputMethodContext.cpp:
804         (testWebKitInputMethodContextSequence):
805         (testWebKitInputMethodContextInvalidSequence):
806         (testWebKitInputMethodContextCancelSequence):
807         (testWebKitInputMethodContextReset):
808
809 2019-12-21  Yusuke Suzuki  <ysuzuki@apple.com>
810
811         [JSC] Improve our bound function implementation
812         https://bugs.webkit.org/show_bug.cgi?id=205327
813
814         Reviewed by Keith Miller.
815
816         Support running slow-microbenchmarks.
817
818         * Scripts/run-jsc-benchmarks:
819
820 2019-12-21  Kate Cheney  <katherine_cheney@apple.com>
821
822         Add timeStamp to ITP database
823         https://bugs.webkit.org/show_bug.cgi?id=205121
824         <rdar://problem/57633021>
825
826         Reviewed by John Wilander.
827
828         Added checks to test that the timestamp is properly exposed via API
829         in the ITP database backend. This also adds an API test case using the
830         ITP database store. It was previously only testing the ITP memory store.
831
832         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
833         (TEST):
834
835 2019-12-20  Ryosuke Niwa  <rniwa@webkit.org>
836
837         TextManipulationController should respect new token orders
838         https://bugs.webkit.org/show_bug.cgi?id=205378
839
840         Reviewed by Wenson Hsieh.
841
842         Added a bunch of tests for WKTextManipulation.
843
844         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
845         (TextManipulation.CompleteTextManipulationReplaceSimpleSingleParagraph):
846         (TextManipulation.CompleteTextManipulationDisgardsTokens):
847         (TextManipulation.CompleteTextManipulationReordersContent):
848         (TextManipulation.CompleteTextManipulationCanSplitContent):
849         (TextManipulation.CompleteTextManipulationCanMergeContent):
850         (TextManipulation.CompleteTextManipulationFailWhenContentIsRemoved):
851         (TextManipulation.CompleteTextManipulationFailWhenExcludedContentAppearsMoreThanOnce):
852         (TextManipulation.CompleteTextManipulationPreservesExcludedContent):
853
854 2019-12-20  Megan Gardner  <megan_gardner@apple.com>
855
856         Paint highlights specified in CSS Highlight API
857         https://bugs.webkit.org/show_bug.cgi?id=205318
858
859         Reviewed by Ryosuke Niwa.
860
861         Expand MarkedText to take a style name.
862
863         * TestWebKitAPI/Tests/WebCore/MarkedText.cpp:
864         (WebCore::operator<<):
865
866 2019-12-20  Jonathan Bedard  <jbedard@apple.com>
867
868         lldbwebkittester: Strip CLANG_DEBUG_INFORMATION_LEVEL option while building
869         https://bugs.webkit.org/show_bug.cgi?id=205513
870
871         Reviewed by Alexey Proskuryakov.
872
873         * Scripts/webkitdirs.pm:
874         (buildXCodeProject): Strip CLANG_DEBUG_INFORMATION_LEVEL from lldbWebKitTester.
875
876 2019-12-20  Simon Fraser  <simon.fraser@apple.com>
877
878         Add a Custom User Agent menu to MiniBrowser, and related cleanup
879         https://bugs.webkit.org/show_bug.cgi?id=205507
880
881         Reviewed by Wenson Hsieh.
882         
883         Add a User Agent" submenu to the Settings menu, and construct it with some built-in
884         UA strings. When changed, it sets the customUserAgent on the WKWebView/WebView and
885         triggers a reload.
886         
887         I also rearranged the menus so that "Settings" and "Debug" are no longer to the right
888         of the "Help" menu, which means getting the Settings menu from the xib. It was then
889         easier if SettingsController was no longer a singleton, but owned by AppDelegate.
890         Added a category on NSApplication to make it easier to get to BrowserAppDelegate
891         and thence to the SettingsController.
892
893         * MiniBrowser/mac/AppDelegate.h:
894         * MiniBrowser/mac/AppDelegate.m:
895         (-[NSApplication browserAppDelegate]):
896         (-[BrowserAppDelegate awakeFromNib]):
897         (-[BrowserAppDelegate defaultConfiguration]):
898         (-[BrowserAppDelegate defaultPreferences]):
899         (-[BrowserAppDelegate createBrowserWindowController:]):
900         (-[BrowserAppDelegate newWindow:]):
901         (-[BrowserAppDelegate newPrivateWindow:]):
902         (-[BrowserAppDelegate applicationDidFinishLaunching:]):
903         (-[BrowserAppDelegate _updateNewWindowKeyEquivalents]):
904         (-[BrowserAppDelegate userContentContoller]):
905         (defaultConfiguration): Deleted.
906         (defaultPreferences): Deleted.
907         * MiniBrowser/mac/ExtensionManagerWindowController.m:
908         (-[ExtensionManagerWindowController init]):
909         (-[ExtensionManagerWindowController add:]):
910         (-[ExtensionManagerWindowController remove:]):
911         * MiniBrowser/mac/MainMenu.xib:
912         * MiniBrowser/mac/SettingsController.h:
913         * MiniBrowser/mac/SettingsController.m:
914         (-[SettingsController initWithMenu:]):
915         (-[SettingsController dealloc]):
916         (-[SettingsController _populateMenu]):
917         (+[SettingsController userAgentData]):
918         (-[SettingsController buildUserAgentsMenu:]):
919         (-[SettingsController validateMenuItem:]):
920         (-[SettingsController _toggleBooleanDefault:]):
921         (-[SettingsController toggleExperimentalFeature:]):
922         (-[SettingsController toggleInternalDebugFeature:]):
923         (-[SettingsController customUserAgent]):
924         (-[SettingsController changeCutomUserAgent:]):
925         (+[SettingsController shared]): Deleted.
926         (-[SettingsController init]): Deleted.
927         (-[SettingsController menu]): Deleted.
928         * MiniBrowser/mac/WK1BrowserWindowController.m:
929         (-[WK1BrowserWindowController awakeFromNib]):
930         (-[WK1BrowserWindowController userAgentDidChange:]):
931         (-[WK1BrowserWindowController windowWillClose:]):
932         (-[WK1BrowserWindowController didChangeSettings]):
933         * MiniBrowser/mac/WK2BrowserWindowController.m:
934         (-[WK2BrowserWindowController awakeFromNib]):
935         (-[WK2BrowserWindowController initWithConfiguration:]):
936         (-[WK2BrowserWindowController userAgentDidChange:]):
937         (-[WK2BrowserWindowController windowWillClose:]):
938         (-[WK2BrowserWindowController didChangeSettings]):
939
940 2019-12-20  Jiewen Tan  <jiewen_tan@apple.com>
941
942         [WebAuthn] Implement coders for CTAP ClientPIN requests and responses
943         https://bugs.webkit.org/show_bug.cgi?id=205376
944         <rdar://problem/58034395>
945
946         Reviewed by Brent Fulgham.
947
948         Adds API tests.
949
950         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
951         * TestWebKitAPI/Tests/WebCore/CtapPinTest.cpp: Added.
952         (TestWebKitAPI::TEST):
953         * TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
954         (TestWebKitAPI::TEST):
955         * TestWebKitAPI/Tests/WebCore/FidoTestData.h:
956
957 2019-12-19  Jonathan Bedard  <jbedard@apple.com>
958
959         Python 3: Add support to run-webkit-tests
960         https://bugs.webkit.org/show_bug.cgi?id=205291
961
962         Reviewed by Stephanie Lewis.
963
964         * Scripts/test-webkitpy-python3: Add webkitpy.layout_tests.
965         * Scripts/webkitpy/common/message_pool.py:
966         (_MessagePool._loop): Move exception inside of loop.
967         (_Message.__repr__): Use .format strings.
968         (_Worker.__init__): Ditto.
969         * Scripts/webkitpy/common/wavediff.py:
970         (WaveDiff.__init__): Use Python 3 compatible BytesIO and StringIO.
971         * Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:
972         (LayoutTestFinder._read_test_names_from_file): Use .format string.
973         (LayoutTestFinder.split_into_chunks): Explicitly use integer division.
974         * Scripts/webkitpy/layout_tests/controllers/manager.py:
975         (Manager._get_test_inputs): Use range over xrange.
976         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
977         (SingleTestRunner._handle_error): Use .format strings.
978         * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
979         (JSONLayoutResultsGenerator._insert_failure_summaries): Use Python 3 compatible itervalues.
980         * Scripts/webkitpy/layout_tests/models/test_results.py:
981         (TestResult.__init__): Sort type list.
982         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
983         (RunTest.setUp): Multiple processes are buggy in test-webkitpy.
984         (RunTest.test_basic): replace buflist with getvalue().
985         (RunTest.test_child_processes_2): Ditto.
986         (RunTest.test_child_processes_min): Ditto.
987         (RunTest.test_keyboard_interrupt): Ditto.
988         (RunTest.test_missing_and_unexpected_results): Compare dictionaries instead of json strings.
989         (RunTest.test_crash_with_stderr): Ditto.
990         (RunTest.test_reftest_should_not_use_naming_convention_if_not_listed_in_reftestlist): Ditto.
991         (EndToEndTest.test_reftest_with_two_notrefs): Ditto.
992         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
993         (MeteredStream.write): Flush stream after writing.
994         (MeteredStream._erase_last_partial_line): Ditto.
995         * Scripts/webkitpy/layout_tests/views/printing.py:
996         (Printer._print_directory_timings): Can't compare string to integer.
997         (Printer._print_statistics_for_test_timings): Use integer division.
998         * Scripts/webkitpy/port/darwin.py:
999         (DarwinPort._merge_crash_logs): Use items over iteritems.
1000         * Scripts/webkitpy/port/device.py:
1001         (Device.__hash__): Allow hashing of devices.
1002         * Scripts/webkitpy/port/device_port.py:
1003         (DevicePort._install): Use range over xrange.
1004         (DevicePort.setup_test_run): Ditto.
1005         (DevicePort.clean_up_test_run): Ditto.
1006         * Scripts/webkitpy/port/driver.py:
1007         (DriverOutput.__init__): Text should be decoded, audio encoded.
1008         (Driver.__init__):
1009         (Driver.run_test):
1010         (Driver._parse_child_processes_output): Output is byte array.
1011         (Driver._check_for_driver_timeout): Ditto.
1012         (Driver._check_for_address_sanitizer_violation): Error lines are byte arrays.
1013         (Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
1014         (Driver._read_optional_image_block): If a block is base64 encoded, we want the decoded
1015         content, otherwise, we want the encoded content.
1016         (Driver._read_header): Lines are byte arrays, decode them before processing.
1017         (Driver._process_stdout_line): Blocks are byte arrays.
1018         (Driver._strip_eof): Lines should be byte arrays, not strings.
1019         (Driver._read_block): Standardize encoding in blocks.
1020         (ContentBlock.__init__): Content should be a byte array.
1021         (ContentBlock.decode_content): Attempt to decode content.
1022         * Scripts/webkitpy/port/driver_unittest.py:
1023         (DriverTest.test_read_binary_block): Content should be encoded.
1024         (DriverTest.test_read_base64_block): Ditto.
1025         (DriverTest.test_check_for_driver_crash): ServerProcess output should be a byte array.
1026         * Scripts/webkitpy/port/image_diff.py:
1027         (ImageDiffer.diff_image): ImageDiff output is in byte arrays.
1028         (ImageDiffer._read): Ditto.
1029         * Scripts/webkitpy/port/server_process.py:
1030         (ServerProcess.write): Encode data before writing it.
1031         * Scripts/webkitpy/port/server_process_mock.py:
1032         (MockServerProcess.__init__): Convert string mock output to bytes.
1033         (MockServerProcess.read_stdout_line): Stdout lines are byte arrays.
1034         (MockServerProcess.read_stdout): Ditto.
1035         * Scripts/webkitpy/port/simulator_process.py:
1036         (SimulatorProcess.NonBlockingFileFromSocket.close): Don't double close socket in Python 3.
1037         (SimulatorProcess._start): Stdin should be a binary stream.
1038         * Scripts/webkitpy/port/test.py:
1039         (unit_test_list): Convert audio streams to byte arrays.
1040         * Scripts/webkitpy/xcode/simulated_device.py:
1041         (SimulatedDevice.is_usable): Decode xcrun output.
1042         (SimulatedDevice.install_app): Use xrange over range.
1043
1044 2019-12-19  Matt Lewis  <jlewis3@apple.com>
1045
1046         Fixing Host name of gpu process bot
1047         https://bugs.webkit.org/show_bug.cgi?id=205469
1048         
1049         Reviewed by Jonathan Bedard.
1050
1051         * BuildSlaveSupport/build.webkit.org-config/config.json:
1052
1053 2019-12-19  Antti Koivisto  <antti@apple.com>
1054
1055         Allow Vectors as hash keys
1056         https://bugs.webkit.org/show_bug.cgi?id=205449
1057
1058         Reviewed by Geoff Garen.
1059
1060         * TestWebKitAPI/Tests/WTF/Vector.cpp:
1061         (TestWebKitAPI::TEST):
1062
1063 2019-12-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1064
1065         [GTK][WPE] Add initial API for input method
1066         https://bugs.webkit.org/show_bug.cgi?id=204679
1067
1068         Reviewed by Žan Doberšek.
1069
1070         Remove the old unit tests for InputMethodFilter and add new tests using the new API.
1071
1072         * TestWebKitAPI/PlatformGTK.cmake:
1073         * TestWebKitAPI/Tests/WebKit/gtk/InputMethodFilter.cpp: Removed.
1074         * TestWebKitAPI/Tests/WebKitGLib/TestInputMethodContext.cpp: Added.
1075         (webkitInputMethodContextMockFinalize):
1076         (webkitInputMethodContextMockGetPreedit):
1077         (webkitInputMethodContextMockFilterKeyEvent):
1078         (webkitInputMethodContextMockNotifyFocusIn):
1079         (webkitInputMethodContextMockNotifyFocusOut):
1080         (webkitInputMethodContextMockReset):
1081         (webkit_input_method_context_mock_class_init):
1082         (webkit_input_method_context_mock_init):
1083         (testWebKitInputMethodContextSimple):
1084         (testWebKitInputMethodContextSequence):
1085         (testWebKitInputMethodContextInvalidSequence):
1086         (testWebKitInputMethodContextCancelSequence):
1087         (testWebKitInputMethodContextReset):
1088         (beforeAll):
1089         (afterAll):
1090         * TestWebKitAPI/glib/CMakeLists.txt:
1091         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
1092         * TestWebKitAPI/glib/WebKitGLib/wpe/WebViewTestWPE.cpp:
1093         (WebViewTest::clickMouseButton):
1094         (WebViewTest::keyStroke):
1095
1096 2019-12-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1097
1098         [WPE] Missing UIScriptController implementation
1099         https://bugs.webkit.org/show_bug.cgi?id=200295
1100
1101         Reviewed by Žan Doberšek.
1102
1103         Add initial implementation of UIScriptController for WPE.
1104
1105         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1106         * WebKitTestRunner/PlatformWPE.cmake:
1107         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
1108         (WTR::PlatformWebView::addToWindow):
1109         (WTR::PlatformWebView::removeFromWindow):
1110         * WebKitTestRunner/wpe/UIScriptControllerWPE.cpp: Added.
1111         (WTR::UIScriptController::create):
1112         (WTR::UIScriptControllerWPE::doAsyncTask):
1113         (WTR::UIScriptControllerWPE::setContinuousSpellCheckingEnabled):
1114         (WTR::UIScriptControllerWPE::copyText):
1115         (WTR::UIScriptControllerWPE::dismissMenu):
1116         (WTR::UIScriptControllerWPE::isShowingMenu const):
1117         (WTR::UIScriptControllerWPE::activateAtPoint):
1118         (WTR::UIScriptControllerWPE::simulateAccessibilitySettingsChangeNotification):
1119         (WTR::UIScriptControllerWPE::removeViewFromWindow):
1120         (WTR::UIScriptControllerWPE::addViewToWindow):
1121         * WebKitTestRunner/wpe/UIScriptControllerWPE.h: Added.
1122         * wpe/backends/ViewBackend.h:
1123
1124 2019-12-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1125
1126         Unreviewed GTK gardening. Mark /webkit/WebKitWebsiteData/configuration as flaky
1127
1128         * TestWebKitAPI/glib/TestExpectations.json:
1129
1130 2019-12-18  Commit Queue  <commit-queue@webkit.org>
1131
1132         Unreviewed, rolling out r253646.
1133         https://bugs.webkit.org/show_bug.cgi?id=205433
1134
1135         "We think this may have caused a membuster regression, so
1136         rolling it out." (Requested by nham on #webkit).
1137
1138         Reverted changeset:
1139
1140         "Navigation from empty page doesn't use cached web process"
1141         https://bugs.webkit.org/show_bug.cgi?id=205015
1142         https://trac.webkit.org/changeset/253646
1143
1144 2019-12-18  Alex Christensen  <achristensen@webkit.org>
1145
1146         Add SPI WKWebView._updateWebpagePreferences to replace _updateWebsitePolicies
1147         https://bugs.webkit.org/show_bug.cgi?id=205427
1148
1149         Reviewed by Wenson Hsieh.
1150
1151         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1152         (TEST):
1153
1154 2019-12-18  Jonathan Bedard  <jbedard@apple.com>
1155
1156         test-lldb-webkit: Run in CI (Follow-up fix)
1157         https://bugs.webkit.org/show_bug.cgi?id=205315
1158
1159         Unreviewed follow-up fix.
1160
1161         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1162         (RunWebKitPyTests.start): Call method of parent class to avoid infinite recursion.
1163
1164 2019-12-18  Alex Christensen  <achristensen@webkit.org>
1165
1166         Add ObjC version of WKBundleFrameIsMainFrame
1167         https://bugs.webkit.org/show_bug.cgi?id=205415
1168
1169         Reviewed by Brian Weinstein.
1170
1171         * TestWebKitAPI/Tests/WebKitCocoa/UserContentWorld.mm:
1172         (-[UserContentWorldRemoteObject didObserveMainFrame]):
1173         (-[UserContentWorldRemoteObject didObserveSubframe]):
1174         (TEST):
1175         * TestWebKitAPI/Tests/WebKitCocoa/UserContentWorldPlugIn.mm:
1176         (-[UserContentWorldPlugIn webProcessPlugInBrowserContextController:globalObjectIsAvailableForFrame:inScriptWorld:]):
1177         * TestWebKitAPI/Tests/WebKitCocoa/UserContentWorldProtocol.h:
1178
1179 2019-12-18  Jonathan Bedard  <jbedard@apple.com>
1180
1181         results.webkit.org: Serve files in uploaded archive
1182         https://bugs.webkit.org/show_bug.cgi?id=201654
1183
1184         Reviewed by Stephanie Lewis.
1185
1186         * resultsdbpy/resultsdbpy/controller/configuration.py:
1187         (Configuration.to_query): Conver a configuration object to a query string.
1188         * resultsdbpy/resultsdbpy/controller/configuration_unittest.py:
1189         (ConfigurationUnittest):
1190         (ConfigurationUnittest.test_to_query):
1191         * resultsdbpy/resultsdbpy/flask_support/util.py:
1192         (query_as_string): Convert the current query to a string.
1193         * resultsdbpy/resultsdbpy/model/archive_context.py:
1194         (ArchiveContext._files_for_archive): Python's shutil creates archives which
1195         don't have have a root directory.
1196         (ArchiveContext.file): We need to add query parameters to relative links
1197         In the returned file.
1198         * resultsdbpy/resultsdbpy/view/archive_view.py: Added.
1199         (ArchiveView):
1200         (ArchiveView.__init__):
1201         (ArchiveView.list): Return html which lists and links to the provided paths.
1202         (ArchiveView.extract): Endpoint which extracts a file from an archive matching
1203         the provided arguments.
1204         * resultsdbpy/resultsdbpy/view/archive_view_unittest.py: Added.
1205         (ArchiveViewUnittest):
1206         (ArchiveViewUnittest.register_archive):
1207         (ArchiveViewUnittest.test_directory):
1208         (ArchiveViewUnittest.test_file):
1209         * resultsdbpy/resultsdbpy/view/templates/archive_list.html: Added.
1210         * resultsdbpy/resultsdbpy/view/view_routes.py:
1211         (ViewRoutes.__init__): Add archive endpoints.
1212
1213 2019-12-18  Matt Lewis  <jlewis3@apple.com>
1214
1215         Update WebGL bot hostname
1216         https://bugs.webkit.org/show_bug.cgi?id=205349
1217
1218         Reviewed by Jonathan Bedard.
1219
1220         * BuildSlaveSupport/build.webkit.org-config/config.json: Changed hostname 
1221         to bring it in line with non standard testers.
1222
1223 2019-12-18  Jonathan Bedard  <jbedard@apple.com>
1224
1225         GPU-Process: Bring up automated tester 
1226         https://bugs.webkit.org/show_bug.cgi?id=205229
1227
1228         Reviewed by Stephanie Lewis.
1229
1230         * BuildSlaveSupport/build.webkit.org-config/config.json: Add GPU Process tester,
1231         derived from debug testing queue.
1232
1233 2019-12-18  Kate Cheney  <katherine_cheney@apple.com>
1234
1235         Only report prevalent domains in the ResourceLoadStatistics data summary API
1236         https://bugs.webkit.org/show_bug.cgi?id=205281
1237         <rdar://problem/57975017>
1238
1239         Reviewed by Brent Fulgham.
1240
1241         Update the GetResourceLoadStatisticsDataSummary to set third parties
1242         as prevalent to maintain test functionality.
1243
1244         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
1245         (TEST):
1246
1247 2019-12-18  Carlos Garcia Campos  <cgarcia@igalia.com>
1248
1249         Unreviewed GTK gardening. Update expectations of unit tests
1250
1251         Add two flaky failures and mark /jsc/vm as slow alos in release builds.
1252
1253         * TestWebKitAPI/glib/TestExpectations.json:
1254
1255 2019-12-17  Jonathan Bedard  <jbedard@apple.com>
1256
1257         run-javascriptcore-tests: Fix upload details
1258         https://bugs.webkit.org/show_bug.cgi?id=205347
1259
1260         Rubber-stamped by Alexey Proskuryakov.
1261
1262         * Scripts/run-javascriptcore-tests:
1263         (uploadResults): Make upload details compliant with results database.
1264
1265 2019-12-17  Ben Nham  <nham@apple.com>
1266
1267         Navigation from empty page doesn't use cached web process
1268         https://bugs.webkit.org/show_bug.cgi?id=205015
1269         <rdar://problem/57703742>
1270
1271         Reviewed by Chris Dumez.
1272
1273         When navigating from an empty page to another domain foo.com, we always use the source
1274         WebProcess (which is basically uninitialized) rather than using an already-initialized
1275         cached WebProcess that has navigated to foo.com. The cached WebProcess should probably be
1276         preferred since it has more relevant cached resources available to it (e.g. memory cache, JS
1277         bytecode cache, prewarmed fonts, ...).
1278
1279         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1280         Verify that a load from an empty document uses the process cache. To actually force the
1281         WebProcess to launch with an empty document loaded, we use the private API
1282         _ensureRunningProcessForTesting.
1283
1284 2019-12-17  Megan Gardner  <megan_gardner@apple.com>
1285
1286         Update Check webkit style to allow for auto with pairs in c++
1287         https://bugs.webkit.org/show_bug.cgi?id=205320
1288
1289         Reviewed by Jonathan Bedard.
1290
1291         Allow for spaces between auto and brakets when using auto with pairs.
1292
1293         * Scripts/webkitpy/style/checkers/cpp.py:
1294         (check_spacing):
1295         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
1296         (CppStyleTest):
1297
1298 2019-12-17  youenn fablet  <youenn@apple.com>
1299
1300         WebKitTestRunner should report GPU process crashes
1301         https://bugs.webkit.org/show_bug.cgi?id=205338
1302
1303         Reviewed by Tim Horton.
1304
1305         Report GPU process crashes.
1306
1307         * WebKitTestRunner/TestController.cpp:
1308         (WTR::TestController::generatePageConfiguration):
1309         (WTR::TestController::gpuProcessDidCrash):
1310         * WebKitTestRunner/TestController.h:
1311
1312 2019-12-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1313
1314         Unreviewed GTK gardening. Mark WebKit.FocusedFrameAfterCrash as timeout
1315
1316         * TestWebKitAPI/glib/TestExpectations.json:
1317
1318 2019-12-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1319
1320         Unreviewed GTK gardening. Mark several tests that usually time out in the bots as slow
1321
1322         It seems it depends on the load of the bots. Some of them still time out sometimes even after being marked as
1323         slow, so also mark them all as flaky.
1324
1325         * TestWebKitAPI/glib/TestExpectations.json:
1326
1327 2019-12-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1328
1329         Unreviewed GTK gardening. Mark /webkit/WebKitWebExtension/form-submission-steps as timeout
1330
1331         * TestWebKitAPI/glib/TestExpectations.json:
1332
1333 2019-12-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1334
1335         Unreviewed GTK gardening. Fix test /webkit/WebKitPrintOperation/close-after-print
1336
1337         Use webkit_web_view_new_with_related_view() instead of webkit_web_view_new_with_context() since it's expected
1338         that web views created in WebKitWebView::create signal callback are related. Also use g_object_unref() instead
1339         of gtk_widget_destroy() to release the created web view since it's never added to a window.
1340
1341         * TestWebKitAPI/Tests/WebKitGtk/TestPrinting.cpp:
1342
1343 2019-12-17  youenn fablet  <youenn@apple.com>
1344
1345         WebKitTestRunner should report service worker process crashes
1346         https://bugs.webkit.org/show_bug.cgi?id=205267
1347
1348         Reviewed by Chris Dumez.
1349
1350         * WebKitTestRunner/TestController.cpp:
1351         (WTR::TestController::generatePageConfiguration):
1352         (WTR::TestController::serviceWorkerProcessDidCrash):
1353         * WebKitTestRunner/TestController.h:
1354
1355 2019-12-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1356
1357         Unreviewed. WebDriver: set doc_root in WebDriverW3CExecutor server config
1358
1359         It's expected by test imported/w3c/webdriver/tests/navigate_to/navigate.py::test_file_protocol
1360
1361         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
1362         (WebDriverW3CExecutor.__init__):
1363
1364 2019-12-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1365
1366         check-webkit-style: allow underscores for public symbols in JSC GLIB API
1367         https://bugs.webkit.org/show_bug.cgi?id=205265
1368
1369         Reviewed by Jonathan Bedard.
1370
1371         Add an exception for symbols starting with jsc_ in glib directories.
1372
1373         * Scripts/webkitpy/style/checkers/cpp.py:
1374         (check_identifier_name_in_declaration):
1375         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
1376         (WebKitStyleTest.test_names):
1377
1378 2019-12-16  Jonathan Bedard  <jbedard@apple.com>
1379
1380         test-lldb-webkit: Run in CI
1381         https://bugs.webkit.org/show_bug.cgi?id=205315
1382
1383         Reviewed by Alexey Proskuryakov.
1384
1385         * BuildSlaveSupport/build.webkit.org-config/factories.py:
1386         (TestFactory.__init__): Add RunLLDBWebKitTests to Mac test runs.
1387         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
1388         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1389         (RunPythonTests): Generalized step for all Python tests.
1390         (RunPythonTests.start):
1391         (RunWebKitPyTests): Step for running test-webkitpy.
1392         (RunWebKitPyTests.__init__):
1393         (RunWebKitPyTests.start):
1394         (RunLLDBWebKitTests): Step for running test-lldb-webkit.
1395         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
1396
1397 2019-12-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1398
1399         -[UIWKDocumentContext markedTextRange] is wrong when the caret is not at the start of marked text
1400         https://bugs.webkit.org/show_bug.cgi?id=205302
1401
1402         Reviewed by Tim Horton.
1403
1404         Add an API test to exercise the case where the options `UIWKDocumentRequestMarkedTextRects` and
1405         `UIWKDocumentRequestText` are used to grab marked text rects.
1406
1407         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
1408         (-[UIWKDocumentContext contextBeforeLength]):
1409         (-[UIWKDocumentContext markedTextLength]):
1410         (-[UIWKDocumentContext markedTextRange]):
1411
1412         Work around a bug that should be fixed by <rdar://problem/57338528>, so that the new API test can pass on
1413         shipping builds of iOS.
1414
1415 2019-12-16  Keith Rollin  <krollin@apple.com>
1416
1417         Unreviewed follow-up fix.
1418         <rdar://problem/57989146> jsc-ta-payload fails consistently on YukonE Device Builds
1419
1420         Bug caused by <rdar://problem/57453545> [safari-root] CrashTracer: [USER] jsc at jsc: jscmain
1421
1422         run-jsc-stress-tests still looked for jsc in
1423         JavaScriptCore.framework/Resources. Change this to also look in
1424         JavaScriptCore.framework/Helpers.
1425
1426         * Scripts/run-jsc-stress-tests:
1427
1428 2019-12-16  Jonathan Bedard  <jbedard@apple.com>
1429
1430         results.webkit.org: Make default limit 1000
1431         https://bugs.webkit.org/show_bug.cgi?id=205305
1432
1433         Reviewed by Stephanie Lewis.
1434
1435         We have ~200 commits a week in WebKit, since we don't quite report
1436         results for every commit, a limit of 1000 translates to about a 1.5 months
1437         of data. Any more than this and the network request for results becomes
1438         noticeably slow.
1439
1440         * resultsdbpy/resultsdbpy/controller/failure_controller.py:
1441         (FailureController): Change default limit from 5000 to 1000.
1442         * resultsdbpy/resultsdbpy/controller/suite_controller.py:
1443         (SuiteController): Change default limit from 5000 to 1000.
1444         * resultsdbpy/resultsdbpy/controller/test_controller.py:
1445         (TestController): Change default limit from 5000 to 1000.
1446
1447 2019-12-16  Jonathan Bedard  <jbedard@apple.com>
1448
1449         python3: wpt exporter should parse a patch as bytes
1450         https://bugs.webkit.org/show_bug.cgi?id=205243
1451
1452         Reviewed by Stephanie Lewis.
1453
1454         * Scripts/webkitpy/common/checkout/scm/scm_mock.py:
1455         (MockSCM.create_patch): Patches are byte arrays.
1456         * Scripts/webkitpy/w3c/test_exporter.py:
1457         (WebPlatformTestExporter._wpt_patch): Diff should be byte array.
1458         (WebPlatformTestExporter._find_filename): Ditto.
1459         (WebPlatformTestExporter._is_ignored_file): Filenames will be encoded bytes.
1460         (WebPlatformTestExporter._strip_ignored_files_from_diff): Diff should be byte array.
1461         (WebPlatformTestExporter.write_git_patch_file): Ditto.
1462         * Scripts/webkitpy/w3c/test_exporter_unittest.py:
1463         (TestExporterTest.MockGit): Diff should be byte array.
1464         (TestExporterTest.test_ignore_changes_to_expected_file): Ditto.
1465
1466 2019-12-16  Ryosuke Niwa  <rniwa@webkit.org>
1467
1468         TextManipulationController should observe newly inserted or displayed contents
1469         https://bugs.webkit.org/show_bug.cgi?id=205203
1470         <rdar://problem/56567020>
1471
1472         Reviewed by Wenson Hsieh.
1473
1474         Added tests for detecting newly inserted or displayed contents in WKTextManipulation SPI.
1475
1476         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
1477         (-[TextManipulationDelegate initWithItemCallback]):
1478         (-[TextManipulationDelegate _webView:didFindTextManipulationItem:]):
1479         (TestWebKitAPI::TEST):
1480
1481 2019-12-16  Daniel Bates  <dabates@apple.com>
1482
1483         Organize DocumentEditingContext.mm under a more descriptive suite
1484         https://bugs.webkit.org/show_bug.cgi?id=205284
1485
1486         Reviewed by Tim Horton.
1487
1488         Register with the runtime all of the DocumentEditingContext.mm tests under the suite
1489         DocumentEditingContext as opposed to the suite WebKit (as they are now). This makes
1490         it easy to run all of these tests using:
1491
1492                 run-api-tests DocumentEditingContext
1493
1494         This is more useful than letting them stay categorized under the WebKit suite. If it
1495         turns out this change interferes with the workflow of others then we can revert this
1496         change and look to expose Google Test's regex filtering in run-api-tests to achieve
1497         a similiar result given that these tests have the same prefix.
1498
1499         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
1500         (TEST):
1501
1502 2019-12-16  Daniel Bates  <dabates@apple.com>
1503
1504         Use Ahem font to ensure consistent test results
1505         https://bugs.webkit.org/show_bug.cgi?id=205283
1506
1507         Reviewed by Wenson Hsieh.
1508
1509         To avoid test failures due to future font metrics changes make use of the Ahem font
1510         for the tests in DocumentEditingContext.m. Ahem is a font with well-defined properties
1511         that when used correclty ensures consistent font rendering results.
1512
1513         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
1514         (TEST):
1515
1516 2019-12-16  Daniel Bates  <dabates@apple.com>
1517
1518         Reproducible case of backwards nextParagraph returning a position ahead of the input position
1519         https://bugs.webkit.org/show_bug.cgi?id=196127
1520         <rdar://problem/49135890>
1521
1522         Reviewed by Wenson Hsieh.
1523
1524         Add a test to ensure that requesting two paragraphs around the insertion point that is
1525         not in a paragraph still works.
1526
1527         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
1528         (TEST):
1529
1530 2019-12-16  Jonathan Bedard  <jbedard@apple.com>
1531
1532         lldbwebkittester: Conform with testing binary format
1533         https://bugs.webkit.org/show_bug.cgi?id=205271
1534
1535         Reviewed by Alexey Proskuryakov.
1536
1537         lldbwebkittester should be built the same way ImageDiff, TestWebKitAPI and WebKitTestRunner are.
1538         This also paves the way for adding lldb tests against WebCore and WebKit, since lldbwebkittestrunner
1539         is now packaged with the rest of WebKit's testing binaries.
1540
1541         * Scripts/build-lldbwebkittester:
1542         * Scripts/build-webkit:
1543
1544 2019-12-16  Yusuke Suzuki  <ysuzuki@apple.com>
1545
1546         [JSC] Remove ArrayBufferNeuteringWatchpointSet
1547         https://bugs.webkit.org/show_bug.cgi?id=205194
1548
1549         Reviewed by Saam Barati.
1550
1551         Add tests for PackedRef and PackedRefPtr.
1552
1553         * TestWebKitAPI/CMakeLists.txt:
1554         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1555         * TestWebKitAPI/Tests/WTF/PackedRef.cpp: Added.
1556         (TestWebKitAPI::TEST):
1557         (TestWebKitAPI::passWithRef):
1558         (TestWebKitAPI::PackedRefCheckingRefLogger::PackedRefCheckingRefLogger):
1559         (TestWebKitAPI::PackedRefCheckingRefLogger::ref):
1560         (TestWebKitAPI::PackedRefCheckingRefLogger::deref):
1561         (TestWebKitAPI::DerivedPackedRefCheckingRefLogger::DerivedPackedRefCheckingRefLogger):
1562         * TestWebKitAPI/Tests/WTF/PackedRefPtr.cpp: Copied from Tools/TestWebKitAPI/Tests/WTF/RefPtr.cpp.
1563         (TestWebKitAPI::TEST):
1564         (TestWebKitAPI::f1):
1565         (TestWebKitAPI::ConstRefCounted::create):
1566         (TestWebKitAPI::returnConstRefCountedRef):
1567         (TestWebKitAPI::returnRefCountedRef):
1568         (TestWebKitAPI::PackedRefPtrCheckingRefLogger::PackedRefPtrCheckingRefLogger):
1569         (TestWebKitAPI::loggerName):
1570         (TestWebKitAPI::PackedRefPtrCheckingRefLogger::ref):
1571         (TestWebKitAPI::PackedRefPtrCheckingRefLogger::deref):
1572         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
1573         (TestWebKitAPI::f1):
1574         (TestWebKitAPI::returnConstRefCountedRef):
1575         (TestWebKitAPI::returnRefCountedRef):
1576
1577 2019-12-16  Keith Miller  <keith_miller@apple.com>
1578
1579         Fix btjs on current lldb
1580         https://bugs.webkit.org/show_bug.cgi?id=205293
1581
1582         Reviewed by Mark Lam.
1583
1584         * lldb/lldb_webkit.py:
1585         (btjs):
1586
1587 2019-12-16  Andres Gonzalez  <andresg_22@apple.com>
1588
1589         Isolated object implementation of parameterized attribute SelectTextWithCriteria.
1590         https://bugs.webkit.org/show_bug.cgi?id=205210
1591
1592         Reviewed by Chris Fleizach.
1593
1594         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
1595         (WTR::AccessibilityController::rootElement): Always run in my thread.
1596         (WTR::AccessibilityController::execute): Dispatches to the secondary thread. Spins the main loop to allow parameterized attributes methods to execute in main thread.
1597         * WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
1598         (WTR::findAccessibleObjectById):
1599         (WTR::AccessibilityController::accessibleElementById):
1600         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1601         (WTR::AccessibilityUIElement::selectTextWithCriteria):
1602
1603 2019-12-16  Per Arne Vollan  <pvollan@apple.com>
1604
1605         Unreviewed build fix for tvOS after r253440.
1606
1607         * TestWebKitAPI/Tests/WebKitCocoa/ContentFiltering.mm:
1608
1609 2019-12-16  youenn fablet  <youenn@apple.com>
1610
1611         Consider top-level context whose origin is unique as insecure
1612         https://bugs.webkit.org/show_bug.cgi?id=205111
1613         <rdar://problem/57834967>
1614
1615         Reviewed by Brent Fulgham.
1616
1617         * TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm:
1618         (TEST):
1619         Disable secure context checks so that loading directly about:blank from the API test
1620         can call DeviceOrientationEvent.requestPermission() successfully.
1621
1622 2019-12-16  Daniel Bates  <dabates@apple.com>
1623
1624         -requestDocumentContext always returns 1 text unit more granularity than requested
1625         https://bugs.webkit.org/show_bug.cgi?id=205142
1626         <rdar://problem/57858236>
1627
1628         Reviewed by Darin Adler and Wenson Hsieh.
1629
1630         Add tests for requesting text by character, sentence, paragraph, and line granularities.
1631         Also organized tests, demarcating sections of related tests, and renaming the existing
1632         word granularity tests for consistency.
1633
1634         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
1635         (TEST):
1636
1637 2019-12-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1638
1639         Unreviewed GTK gardening. Mark /webkit/WebKitWebView/pointer-lock-permission-request as timeout
1640
1641         * TestWebKitAPI/glib/TestExpectations.json:
1642
1643 2019-12-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1644
1645         Unreviewed. Fix GLib test /webkit/WebKitWebView/geolocation-permission-requests after r249207
1646
1647         PERMISSION_DENIED is returned for non-secure contexts instead of POSITION_UNAVAILABLE since r249207.
1648
1649         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
1650         (testWebViewGeolocationPermissionRequests):
1651
1652 2019-12-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1653
1654         Unreviewed. Fix GLib test /jsc/options after r253244.
1655
1656         The default value of smallHeapRAMFraction option changed in r253244. The test just wants to check a float jsc
1657         option, so use criticalGCMemoryThreshold instead that has a fixed default value.
1658
1659         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
1660         (testsJSCOptions):
1661
1662 2019-12-16  youenn fablet  <youenn@apple.com>
1663
1664         Reset cached getUserMedia queries when calling stopMediaCapture
1665         https://bugs.webkit.org/show_bug.cgi?id=205064
1666
1667         Reviewed by Eric Carlson.
1668
1669         * TestWebKitAPI/Tests/WebKit/GetUserMedia.mm:
1670         (-[GetUserMediaCaptureUIDelegate _webView:requestMediaCaptureAuthorization:decisionHandler:]):
1671         (TestWebKitAPI::TEST):
1672
1673 2019-12-15  Wenson Hsieh  <wenson_hsieh@apple.com>
1674
1675         -[WKWebView _detectDataWithTypes:completionHandler:] crashes when there is no running process
1676         https://bugs.webkit.org/show_bug.cgi?id=205254
1677
1678         Reviewed by Tim Horton.
1679
1680         Add a test to verify that we don't crash when calling data detection API's immediately after crashing the web
1681         content process.
1682
1683         * TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
1684
1685 2019-12-15  Emilio Cobos Álvarez  <emilio@crisal.io>
1686
1687         [GTK] jhbuild fails to configure if gettext 0.20 is installed
1688         https://bugs.webkit.org/show_bug.cgi?id=205249
1689
1690         Reviewed by Michael Catanzaro.
1691
1692         Update jhbuild.
1693
1694         * jhbuild/jhbuild-wrapper:
1695
1696 2019-12-13  Wenson Hsieh  <wenson_hsieh@apple.com>
1697
1698         Unreviewed, fix the macCatalyst build after r253486
1699
1700         Replace the #elif with an #else, so that the codepath is compiled on non-iOS (but iOS-family) platforms such as
1701         watchOS and macCatalyst.
1702
1703         * TestWebKitAPI/Tests/WebKitCocoa/ClipboardTests.mm:
1704         (readMarkupFromPasteboard):
1705
1706 2019-12-13  Peng Liu  <peng.liu6@apple.com>
1707
1708         Add an option to run_webkit_tests.py to enable all GPU process related features and choose the additional expectations
1709         https://bugs.webkit.org/show_bug.cgi?id=205214
1710
1711         The option also specifies the result-report-flavor.
1712
1713         Reviewed by Tim Horton.
1714
1715         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1716         (parse_args):
1717
1718 2019-12-13  Alexey Shvayka  <shvaikalesh@gmail.com>
1719
1720         Unreviewed. Add myself as a committer.
1721
1722         * Scripts/webkitpy/common/config/contributors.json:
1723
1724 2019-12-13  Alex Christensen  <achristensen@webkit.org>
1725
1726         Allow cross-origin requests to WKURLSchemeHandlers
1727         https://bugs.webkit.org/show_bug.cgi?id=205198
1728         <rdar://problem/57897836>
1729
1730         Reviewed by Brady Eidson.
1731
1732         * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
1733         Verify that a cross origin request is received by the WKURLSchemeHandler.  It was not before.
1734         Verify that loading will fail unless there are CORS headers in the response.
1735
1736 2019-12-13  Devin Rousso  <drousso@apple.com>
1737
1738         Teach prepare-ChangeLog about JavaScript async functions
1739         https://bugs.webkit.org/show_bug.cgi?id=205195
1740
1741         Reviewed by Jonathan Bedard.
1742
1743         * Scripts/prepare-ChangeLog:
1744         (get_function_line_ranges_for_javascript):
1745
1746         * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/javascript_unittests.js:
1747         (AsyncFuncClass): Added.
1748         (AsyncFuncClass.async staticAsync): Added.
1749         (AsyncFuncClass.prototype.async methodAsync): Added.
1750         (AsyncFuncClass.prototype.async get getAsync): Added.
1751         (AsyncFuncClass.prototype.async set setAsync): Added.
1752         (async asyncFunc1): Added.
1753         * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/javascript_unittests-expected.txt:
1754
1755 2019-12-13  John Wilander  <wilander@apple.com>
1756
1757         IsLoggedIn: Abstract data type for IsLoggedIn state
1758         https://bugs.webkit.org/show_bug.cgi?id=205041
1759         <rdar://problem/56723904>
1760
1761         Reviewed by Chris Dumez.
1762
1763         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1764         * TestWebKitAPI/Tests/WebCore/LoggedInStatus.cpp: Added.
1765         (TestWebKitAPI::TEST):
1766
1767 2019-12-13  Wenson Hsieh  <wenson_hsieh@apple.com>
1768
1769         [Clipboard API] Sanitize HTML and image data written using clipboard.write
1770         https://bugs.webkit.org/show_bug.cgi?id=205188
1771         <rdar://problem/57612968>
1772
1773         Reviewed by Darin Adler.
1774
1775         Adds an API test to verify that the markup written to the platform pasteboard on macOS and iOS is sanitized, and
1776         does not contain hidden content, such as script elements.
1777
1778         * TestWebKitAPI/Tests/WebKitCocoa/ClipboardTests.mm:
1779         (-[TestWKWebView writeString:toClipboardWithType:]):
1780         (readMarkupFromPasteboard):
1781         * TestWebKitAPI/Tests/WebKitCocoa/clipboard.html:
1782
1783 2019-12-13  Kate Cheney  <katherine_cheney@apple.com>
1784
1785         Create WebKit API calls for ITP Data
1786         https://bugs.webkit.org/show_bug.cgi?id=204932
1787         <rdar://problem/57632753>
1788
1789         Reviewed by Alex Christensen. 
1790
1791         Added a test to check that the ITP data summary was being properly
1792         aggregated and sent to the UIProcess, and to make sure the API works
1793         as expected. Added interface declarations to the file to allow for
1794         use of the _WKResourceLoadStatisticsFirstParty and
1795         _WKResourceLoadStatisticsThirdParty classes without having
1796         to import the header files.
1797
1798         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
1799         (TEST):
1800
1801 2019-12-13  Devin Rousso  <drousso@apple.com>
1802
1803         Prefix CSS selectors with all applicable CSS groupings when generating a ChangeLog
1804         https://bugs.webkit.org/show_bug.cgi?id=205196
1805
1806         Reviewed by Jonathan Bedard.
1807
1808         * Scripts/prepare-ChangeLog:
1809         (get_selector_line_ranges_for_css):
1810         * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/css_unittests-expected.txt:
1811
1812 2019-12-13  Carlos Garcia Campos  <cgarcia@igalia.com>
1813
1814         [GTK] Several tests crashing after r247898 "Reorganize UIScriptController into platform-specific subclasses"
1815         https://bugs.webkit.org/show_bug.cgi?id=200534
1816
1817         Reviewed by Alejandro G. Castro.
1818
1819         Add implementation of several UIScriptController virtual methods to avoid crashes.
1820
1821         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
1822         (WTR::PlatformWebView::~PlatformWebView):
1823         (WTR::PlatformWebView::addToWindow):
1824         (WTR::PlatformWebView::removeFromWindow):
1825         * WebKitTestRunner/gtk/UIScriptControllerGtk.cpp:
1826         (WTR::UIScriptControllerGtk::doAsyncTask):
1827         (WTR::UIScriptControllerGtk::setContinuousSpellCheckingEnabled):
1828         (WTR::UIScriptControllerGtk::copyText):
1829         (WTR::UIScriptControllerGtk::dismissMenu):
1830         (WTR::UIScriptControllerGtk::isShowingMenu const):
1831         (WTR::UIScriptControllerGtk::activateAtPoint):
1832         (WTR::UIScriptControllerGtk::activateDataListSuggestion):
1833         (WTR::UIScriptControllerGtk::simulateAccessibilitySettingsChangeNotification):
1834         (WTR::UIScriptControllerGtk::removeViewFromWindow):
1835         (WTR::UIScriptControllerGtk::addViewToWindow):
1836         * WebKitTestRunner/gtk/UIScriptControllerGtk.h:
1837
1838 2019-12-12  Simon Fraser  <simon.fraser@apple.com>
1839
1840         Move WKWebView code related to testing to new files, with new private "for testing" headers.
1841         https://bugs.webkit.org/show_bug.cgi?id=205021
1842
1843         Reviewed by Tim Horton.
1844         
1845         Move testing-only SPI to new private headers to discourage first parties from using
1846         them by mistake. Move test-only code to new files to reduce the size of WKWebView.mm.
1847
1848         * MiniBrowser/mac/WK2BrowserWindowController.m:
1849         * TestWebKitAPI/EditingTestHarness.mm:
1850         * TestWebKitAPI/Tests/WebKit/ResponsivenessTimerCrash.mm:
1851         * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
1852         * TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm:
1853         * TestWebKitAPI/Tests/WebKitCocoa/DoubleDefersLoading.mm:
1854         * TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm:
1855         * TestWebKitAPI/Tests/WebKitCocoa/MediaBufferingPolicy.mm:
1856         * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
1857         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
1858         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSuspendMediaBuffering.mm:
1859         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1860         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1861         * TestWebKitAPI/Tests/WebKitCocoa/SnapshotStore.mm:
1862         * TestWebKitAPI/Tests/WebKitCocoa/SystemPreview.mm:
1863         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
1864         * TestWebKitAPI/Tests/WebKitCocoa/UserMediaSimulateFailedSandbox.mm:
1865         * TestWebKitAPI/Tests/WebKitCocoa/VideoControlsManager.mm:
1866         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1867         * TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
1868         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewCandidateTests.mm:
1869         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
1870         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFirstResponderTests.mm:
1871         * TestWebKitAPI/Tests/ios/AccessibilityTestsIOS.mm:
1872         * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
1873         * TestWebKitAPI/Tests/ios/AutocorrectionTestsIOS.mm:
1874         * TestWebKitAPI/Tests/ios/FocusPreservationTests.mm:
1875         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
1876         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
1877         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
1878         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1879         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1880         * WebKitTestRunner/cocoa/UIScriptControllerCocoa.mm:
1881         * WebKitTestRunner/ios/TestControllerIOS.mm:
1882         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1883         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
1884
1885 2019-12-12  Jonathan Bedard  <jbedard@apple.com>
1886
1887         Python 3: Support serial webkitpy.common tests
1888         https://bugs.webkit.org/show_bug.cgi?id=205162
1889
1890         Reviewed by Stephanie Lewis.
1891
1892         * Scripts/webkitpy/common/system/executive.py:
1893         (Executive.running_pids): Processess are encoded as bytes.
1894         * Scripts/webkitpy/common/system/executive_unittest.py:
1895         (ExecutiveTest.serial_test_run_in_parallel): Use Python 3 compatible print statements.
1896
1897 2019-12-12  Fujii Hironori  <Hironori.Fujii@sony.com>
1898
1899         webkit-patch print-expectations fails to format TestExpectationLine with DumpJSConsoleLogInStdErr
1900         https://bugs.webkit.org/show_bug.cgi?id=194283
1901
1902         Reviewed by Youenn Fablet.
1903
1904         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
1905         (TestExpectationParser): Add DumpJSConsoleLogInStdErr to TestExpectationParser._expectation_tokens.
1906         * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
1907         Added a tokenize test and round tip test for DumpJSConsoleLogInStdErr.
1908
1909 2019-12-12  Alex Christensen  <achristensen@webkit.org>
1910
1911         Don't assert in HTTPServer::respondToRequests when connections fail
1912         https://bugs.webkit.org/show_bug.cgi?id=205072
1913         <rdar://problem/57718266>
1914
1915         Reviewed by Alexey Proskuryakov.
1916
1917         We have records that this assertion is being hit, but it's probably when things are being torn down after the test passes.
1918         If someone actually has a connection failure that breaks a test, we'll notice elsewhere.
1919
1920         * TestWebKitAPI/cocoa/HTTPServer.mm:
1921         (TestWebKitAPI::HTTPServer::respondToRequests):
1922
1923 2019-12-12  Per Arne Vollan  <pvollan@apple.com>
1924
1925         [iOS] Deny mach lookup access to content filter service in the WebContent sandbox
1926         https://bugs.webkit.org/show_bug.cgi?id=205077
1927
1928         Reviewed by Brent Fulgham.
1929
1930         With this patch, the WebContentAnalysis framework will not be loaded in the WebContent process unless
1931         [WebFilterEvaluator isManagedSession] returns YES. Swizzle this method to return YES in the UI process.
1932
1933         * TestWebKitAPI/Tests/WebKitCocoa/ContentFiltering.mm:
1934         (isManagedSession):
1935         (TEST):
1936
1937 2019-12-12  Patrick Griffis  <pgriffis@igalia.com>
1938
1939         [SOUP] Use new API for strict secure cookies
1940         https://bugs.webkit.org/show_bug.cgi?id=169356
1941
1942         Reviewed by Michael Catanzaro.
1943
1944         Update libsoup to fix a secure cookie test
1945
1946         * gtk/jhbuild.modules:
1947         * wpe/jhbuild.modules:
1948
1949 2019-12-11  Jonathan Bedard  <jbedard@apple.com>
1950
1951         Python 3: Support serial ServerProcess tests
1952         https://bugs.webkit.org/show_bug.cgi?id=205146
1953
1954         Reviewed by Stephanie Lewis.
1955
1956         * Scripts/webkitpy/port/server_process.py:
1957         (ServerProcess.write): Flush stdin after writing to it.
1958         * Scripts/webkitpy/port/server_process_unittest.py:
1959         (TestServerProcess): print to stderr in Python 2/3 compatible way.
1960         (TestServerProcess.serial_test_basic): ServerProcess speaks in bytes.
1961         (TestServerProcess.serial_test_read_after_process_exits): Ditto.
1962         (TestServerProcess.serial_test_process_crashing): Ditto.
1963         (TestServerProcess.serial_test_process_crashing_no_data): Ditto.
1964
1965 2019-12-11  Daniel Bates  <dabates@apple.com>
1966
1967         UIWKDocumentContext returns 0 character rects when caret is at beginning or end of text
1968         https://bugs.webkit.org/show_bug.cgi?id=205135
1969         <rdar://problem/56887914>
1970
1971         Reviewed by Wenson Hsieh.
1972
1973         Add tests that request rects when the insertion point is at the beginning or end of the text.
1974
1975         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
1976         (TEST):
1977
1978 2019-12-11  Jiewen Tan  <jiewen_tan@apple.com>
1979
1980         [WebAuthn] Combine AuthenticatorResponse and PublicKeyCredentialData
1981         https://bugs.webkit.org/show_bug.cgi?id=190783
1982         <rdar://problem/57781183>
1983
1984         Reviewed by Brent Fulgham.
1985
1986         * TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
1987         (TestWebKitAPI::TEST):
1988         Updates tests accordingly.
1989
1990 2019-12-11  Truitt Savell  <tsavell@apple.com>
1991
1992         Unreviewed, rolling out r253376.
1993
1994         Broke internal builds
1995
1996         Reverted changeset:
1997
1998         "Move WKWebView code related to testing to new files, with
1999         their own headers, and stop exposing test-only functions as
2000         SPI."
2001         https://bugs.webkit.org/show_bug.cgi?id=205021
2002         https://trac.webkit.org/changeset/253376
2003
2004 2019-12-11  Jonathan Bedard  <jbedard@apple.com>
2005
2006         Python 3: Add support in webkitpy.performance_tests
2007         https://bugs.webkit.org/show_bug.cgi?id=205122
2008
2009         Reviewed by Stephanie Lewis.
2010
2011         * Scripts/test-webkitpy-python3: Add webkitpy.performance_tests.
2012         * Scripts/webkitpy/performance_tests/perftest.py:
2013         (PerfTest.run): Use range over xrange.
2014         (PerfTest.log_statistics): Python 3 may use more precision than Python 2.
2015         (PerfTest._run_with_driver): Convert list to map.
2016         * Scripts/webkitpy/performance_tests/perftest_unittest.py:
2017         (TestPerfTest._assert_results_are_correct): Convert map to list.
2018         * Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
2019         (MainTest._test_run_with_json_output): Use range over xrange, convert keys to list.
2020         (MainTest.test_run_with_upload_json_should_generate_perf_webkit_json):
2021         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
2022         (MainTest.test_collect_tests_with_multile_files): Use assertEqual over assertItemsEqual.
2023         (MainTest.test_collect_tests_with_skipped_list): Ditto.
2024         (MainTest.test_collect_tests_with_skipped_list_and_files): Ditto.
2025         (MainTest.test_collect_tests_with_ignored_skipped_list): Ditto.
2026
2027 2019-12-11  Jonathan Bedard  <jbedard@apple.com>
2028
2029         Python 3: Add support in webkitpy.w3c
2030         https://bugs.webkit.org/show_bug.cgi?id=205118
2031
2032         Reviewed by Stephanie Lewis.
2033
2034         * Scripts/test-webkitpy-python3: Add webkitpy.w3c.
2035         * Scripts/webkitpy/common/system/filesystem_mock.py:
2036         (MockFileSystem.open_binary_file_for_reading): Missing file should cause Filesystem exception.
2037         (MockFileSystem.read_binary_file): Ditto.
2038         (MockFileSystem.open_text_file_for_reading): Ditto.
2039         (MockFileSystem.remove): Ditto.
2040         * Scripts/webkitpy/w3c/test_converter.py:
2041         (convert_for_webkit): Convert binary file to text file.
2042         (_W3CTestConverter.read_webkit_prefixed_css_property_list): Use items over iteritems.
2043         * Scripts/webkitpy/w3c/test_converter_unittest.py:
2044         (verify_test_harness_paths): Use Python 3 compatible type check.
2045         * Scripts/webkitpy/w3c/test_downloader.py:
2046         (TestDownloader._init_paths_from_expectations): Use items over iteritems.
2047         * Scripts/webkitpy/w3c/test_importer.py:
2048         (TestImporter.readEnvironmentsForTemplateTest): Convert filter to list.
2049         * Scripts/webkitpy/w3c/wpt_github.py:
2050         (WPTGitHub.auth_token): Encode base64 input and decode base64 output.
2051         * Scripts/webkitpy/w3c/wpt_github_unittest.py:
2052         (WPTGitHubTest.test_auth_token):
2053
2054 2019-12-10  Simon Fraser  <simon.fraser@apple.com>
2055
2056         Move WKWebView code related to testing to new files, with their own headers, and stop exposing test-only functions as SPI.
2057         https://bugs.webkit.org/show_bug.cgi?id=205021
2058
2059         Reviewed by Tim Horton.
2060
2061         Stop exposing WKWebView (WKTesting) as SPI, because everyone added SPI here by mistake, and
2062         internal clients kept using testing SPI.
2063         
2064         Instead, move testing-only functions to internal headers that are not present in the built framework,
2065         and move to WKWebView (WKPrivate) properties and functions that webkit clients rely on.
2066         
2067         Add WKWebViewTesting/WKWebViewTestingMac/WKWebViewTestingIOS for test-only code.
2068         
2069         WKWebViewTesting* headers are copied to a "WebKitTestSupport" directory in the Products directory, and WTR/DRT and TestWebKitAPI
2070         get header search paths to find the headers there.
2071
2072         * MiniBrowser/Configurations/Base.xcconfig:
2073         * MiniBrowser/mac/WK2BrowserWindowController.m:
2074         * TestWebKitAPI/Configurations/Base.xcconfig:
2075         * TestWebKitAPI/EditingTestHarness.mm:
2076         * TestWebKitAPI/Tests/WebKit/ResponsivenessTimerCrash.mm:
2077         * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
2078         * TestWebKitAPI/Tests/WebKitCocoa/DoubleDefersLoading.mm:
2079         * TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm:
2080         * TestWebKitAPI/Tests/WebKitCocoa/MediaBufferingPolicy.mm:
2081         * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
2082         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
2083         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSuspendMediaBuffering.mm:
2084         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2085         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2086         * TestWebKitAPI/Tests/WebKitCocoa/SnapshotStore.mm:
2087         * TestWebKitAPI/Tests/WebKitCocoa/SystemPreview.mm:
2088         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
2089         * TestWebKitAPI/Tests/WebKitCocoa/UserMediaSimulateFailedSandbox.mm:
2090         * TestWebKitAPI/Tests/WebKitCocoa/VideoControlsManager.mm:
2091         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2092         * TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
2093         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewCandidateTests.mm:
2094         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
2095         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFirstResponderTests.mm:
2096         * TestWebKitAPI/Tests/ios/AccessibilityTestsIOS.mm:
2097         * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
2098         * TestWebKitAPI/Tests/ios/AutocorrectionTestsIOS.mm:
2099         * TestWebKitAPI/Tests/ios/FocusPreservationTests.mm:
2100         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
2101         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
2102         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
2103         * WebKitTestRunner/Configurations/Base.xcconfig:
2104         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2105         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
2106         * WebKitTestRunner/cocoa/UIScriptControllerCocoa.mm:
2107         * WebKitTestRunner/ios/TestControllerIOS.mm:
2108         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2109         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
2110
2111 2019-12-11  Jonathan Bedard  <jbedard@apple.com>
2112
2113         Add test-lldb-webkit
2114         https://bugs.webkit.org/show_bug.cgi?id=187916
2115
2116         Reviewed by Stephanie Lewis.
2117
2118         * Scripts/test-lldb-webkit: Added.
2119         (NoAction): Argparse action which support --<variable> and --no-<variable>.
2120         (LldbTester): Wrapper around webkitpy's Tester class.
2121         (LldbTester.parse_args): Specialized argparse for lldb tests.
2122         (LldbTester.run): Setup environment and build lldb test runner.
2123         (main):
2124         * Scripts/webkitpy/test/main.py:
2125         (main): Remove lldb testing code.
2126         (Tester._parse_args): Ditto.
2127         (Tester.run): Ditto.
2128         (Tester._run_tests): Ditto.
2129         (Tester._test_names): Ditto.
2130         (_supports_building_and_running_lldb_tests): Deleted.
2131
2132 2019-12-10  Per Arne Vollan  <pvollan@apple.com>
2133
2134         Fix API test failure after r253351
2135         https://bugs.webkit.org/show_bug.cgi?id=205089
2136
2137         Reviewed by Brent Fulgham.
2138
2139         With the patch landed in r253351, the NetworkExtension framework will not be loaded in the WebContent process unless
2140         [NEFilterSource filterRequired] returns YES. Swizzle this method to return YES in the UI process.
2141
2142         * TestWebKitAPI/Tests/WebKitCocoa/ContentFiltering.mm:
2143         (filterRequired):
2144         (TEST):
2145
2146 2019-12-10  Chris Dumez  <cdumez@apple.com>
2147
2148         Gyroscope (DeviceMotion related) permission cannot be requested in WKWebView unless the client app sets a WKUIDelegate
2149         https://bugs.webkit.org/show_bug.cgi?id=203287
2150
2151         Reviewed by Alex Christensen.
2152
2153         Add layout test coverage.
2154
2155         * TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm:
2156         (runDeviceOrientationTest):
2157         (TEST):
2158
2159 2019-12-10  youenn fablet  <youenn@apple.com>
2160
2161         Mark some WPT test folders as DumpJSConsoleLogInStdErr
2162         https://bugs.webkit.org/show_bug.cgi?id=204793
2163
2164         Reviewed by Eric Carlson.
2165
2166         Make DTR and WTR set the default DumpJSConsoleLogInStdErr to true for some WPT sub-folders.
2167         This is easier done there instead of TestExpectations as TestExpectations can be overriden in more specific expectations. 
2168
2169         * DumpRenderTree/TestOptions.cpp:
2170         (pathContains):
2171         (shouldDumpJSConsoleLogInStdErr):
2172         (TestOptions::TestOptions):
2173         * WebKitTestRunner/TestController.cpp:
2174         (WTR::updateTestOptionsFromTestHeader):
2175         * WebKitTestRunner/TestOptions.cpp:
2176         (WTR::shouldDumpJSConsoleLogInStdErr):
2177         (WTR::TestOptions::TestOptions):
2178
2179 2019-12-10  youenn fablet  <youenn@apple.com>
2180
2181         Disable video capture in UIProcess for WebKitTestRunner
2182         https://bugs.webkit.org/show_bug.cgi?id=205054
2183
2184         Reviewed by Eric Carlson.
2185
2186         * WebKitTestRunner/TestOptions.h:
2187         Some tests are still flaky as noted in bug 205053 and this option is still experimental.
2188
2189 2019-12-09  Jonathan Bedard  <jbedard@apple.com>
2190
2191         test-webkitpy: Remove --<configuration> flags from CI
2192         https://bugs.webkit.org/show_bug.cgi?id=205016
2193
2194         Reviewed by Stephanie Lewis.
2195
2196         * BuildSlaveSupport/build.webkit.org-config/steps.py:
2197         (RunPythonTests): Remove --debug/--release flags to test-webkitpy.
2198
2199 2019-12-09  Alex Christensen  <achristensen@webkit.org>
2200
2201         Re-disable TLS1.0 and TLS1.1 by default
2202         https://bugs.webkit.org/show_bug.cgi?id=204922
2203         <rdar://problem/57677752>
2204
2205         Reviewed by Youenn Fablet.
2206
2207         * TestWebKitAPI/TCPServer.cpp:
2208         (TestWebKitAPI::TCPServer::respondWithOK):
2209         * TestWebKitAPI/Tests/WebKitCocoa/TLSDeprecation.mm:
2210         (TestWebKitAPI::TEST):
2211         (TestWebKitAPI::getWebSocketEventWebKitLegacy):
2212
2213 2019-12-09  youenn fablet  <youenn@apple.com>
2214
2215         Add an option to capture audio in GPU process
2216         https://bugs.webkit.org/show_bug.cgi?id=205007
2217
2218         Reviewed by Eric Carlson.
2219
2220         * WebKitTestRunner/TestController.cpp:
2221         (WTR::TestController::resetPreferencesToConsistentValues):
2222         (WTR::updateTestOptionsFromTestHeader):
2223         * WebKitTestRunner/TestOptions.h:
2224         (WTR::TestOptions::hasSameInitializationOptions const):
2225
2226 2019-12-08  Tim Horton  <timothy_horton@apple.com>
2227
2228         REGRESSION: Crash under UIScriptControllerIOS::simulateAccessibilitySettingsChangeNotification
2229         https://bugs.webkit.org/show_bug.cgi?id=205002
2230
2231         Reviewed by Wenson Hsieh.
2232
2233         Keep a strong reference to the UIScriptController while running async tasks.
2234         UIScriptContext will be nulled out if the view was torn down, but this way
2235         we keep the UIScriptController itself and can find the null UIScriptContext
2236         reliably.
2237
2238         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2239         (WTR::UIScriptControllerIOS::doAsyncTask):
2240         (WTR::UIScriptControllerIOS::zoomToScale):
2241         * DumpRenderTree/mac/UIScriptControllerMac.mm:
2242         (WTR::UIScriptControllerMac::doAsyncTask):
2243         (WTR::UIScriptControllerMac::activateDataListSuggestion):
2244         (WTR::UIScriptControllerMac::removeViewFromWindow):
2245         (WTR::UIScriptControllerMac::addViewToWindow):
2246         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2247         (WTR::UIScriptControllerIOS::doAfterPresentationUpdate):
2248         (WTR::UIScriptControllerIOS::doAfterNextStablePresentationUpdate):
2249         (WTR::UIScriptControllerIOS::ensurePositionInformationIsUpToDateAt):
2250         (WTR::UIScriptControllerIOS::doAfterVisibleContentRectUpdate):
2251         (WTR::UIScriptControllerIOS::zoomToScale):
2252         (WTR::UIScriptControllerIOS::retrieveSpeakSelectionContent):
2253         (WTR::UIScriptControllerIOS::simulateAccessibilitySettingsChangeNotification):
2254         (WTR::UIScriptControllerIOS::touchDownAtPoint):
2255         (WTR::UIScriptControllerIOS::liftUpAtPoint):
2256         (WTR::UIScriptControllerIOS::twoFingerSingleTapAtPoint):
2257         (WTR::UIScriptControllerIOS::doubleTapAtPoint):
2258         (WTR::UIScriptControllerIOS::stylusDownAtPoint):
2259         (WTR::UIScriptControllerIOS::stylusMoveToPoint):
2260         (WTR::UIScriptControllerIOS::stylusUpAtPoint):
2261         (WTR::UIScriptControllerIOS::stylusTapAtPointWithModifiers):
2262         (WTR::UIScriptControllerIOS::dragFromPointToPoint):
2263         (WTR::UIScriptControllerIOS::longPressAtPoint):
2264         (WTR::UIScriptControllerIOS::typeCharacterUsingHardwareKeyboard):
2265         (WTR::UIScriptControllerIOS::dismissFilePicker):
2266         (WTR::UIScriptControllerIOS::applyAutocorrection):
2267         (WTR::UIScriptControllerIOS::simulateRotation):
2268         (WTR::UIScriptControllerIOS::simulateRotationLikeSafari):
2269         (WTR::UIScriptControllerIOS::setDidStartFormControlInteractionCallback):
2270         (WTR::UIScriptControllerIOS::setDidEndFormControlInteractionCallback):
2271         (WTR::UIScriptControllerIOS::setDidShowContextMenuCallback):
2272         (WTR::UIScriptControllerIOS::setDidDismissContextMenuCallback):
2273         (WTR::UIScriptControllerIOS::setWillBeginZoomingCallback):
2274         (WTR::UIScriptControllerIOS::setDidEndZoomingCallback):
2275         (WTR::UIScriptControllerIOS::setDidShowKeyboardCallback):
2276         (WTR::UIScriptControllerIOS::setDidHideKeyboardCallback):
2277         (WTR::UIScriptControllerIOS::setWillPresentPopoverCallback):
2278         (WTR::UIScriptControllerIOS::setDidDismissPopoverCallback):
2279         (WTR::UIScriptControllerIOS::setDidEndScrollingCallback):
2280         (WTR::UIScriptControllerIOS::activateDataListSuggestion):
2281         (WTR::UIScriptControllerIOS::doAfterDoubleTapDelay):
2282         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
2283         (WTR::UIScriptControllerMac::zoomToScale):
2284         (WTR::UIScriptControllerMac::simulateAccessibilitySettingsChangeNotification):
2285         (WTR::UIScriptControllerMac::chooseMenuAction):
2286         (WTR::UIScriptControllerMac::activateAtPoint):
2287
2288 2019-12-07  Said Abou-Hallawa  <sabouhallawa@apple.com>
2289
2290         Make ColorSpace an enum class
2291         https://bugs.webkit.org/show_bug.cgi?id=204970
2292
2293         Reviewed by Sam Weinig.
2294
2295         * TestWebKitAPI/Tests/WebCore/ExtendedColor.cpp:
2296         (TestWebKitAPI::TEST):
2297         (TestWebKitAPI::makeColor):
2298
2299 2019-12-06  Jonathan Bedard  <jbedard@apple.com>
2300
2301         Python 3: Add support in webkitpy.tool (Follow-up, part 2)
2302         https://bugs.webkit.org/show_bug.cgi?id=204838
2303
2304         Unreviewed follow-up fix.
2305
2306         * Scripts/webkitpy/common/net/bugzilla/bugzilla_unittest.py:
2307
2308 2019-12-06  Jonathan Bedard  <jbedard@apple.com>
2309
2310         Python 3: Add support in webkitpy.tool (Follow-up, part 1)
2311         https://bugs.webkit.org/show_bug.cgi?id=204838
2312
2313         Reviewed by Stephanie Lewis.
2314
2315         As I've been using webkit-patch with Python 3, I've encountered a handful of other
2316         compatibility bugs.
2317
2318         * Scripts/webkit-patch:
2319         (ForgivingUTF8Writer): Only apple the ForgivingUTF8Writer when our string type isn't unicode.
2320         (ForgivingUTF8Writer.write): Use standardized decoding functions.
2321         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
2322         (Bugzilla.authenticate): Use byte regex.
2323         * Scripts/webkitpy/tool/steps/editchangelog.py:
2324         (EditChangeLog.run): Convert map to list.
2325
2326 2019-12-06  Jonathan Bedard  <jbedard@apple.com>
2327
2328         Python 3: Add support in webkitpy.test
2329         https://bugs.webkit.org/show_bug.cgi?id=204952
2330
2331         Reviewed by Stephanie Lewis.
2332
2333         * Scripts/test-webkitpy-python3: Add webkitpy.tool.
2334         * Scripts/webkitpy/layout_tests/lint_test_expectations_unittest.py: Use Python 2/3
2335         compatible StringIO objects.
2336         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py: Ditto.
2337         * Scripts/webkitpy/performance_tests/perftest_unittest.py: Ditto.
2338         * Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py: Ditto.
2339         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py: Ditto.
2340         * Scripts/webkitpy/test/finder.py:
2341         (Finder._exclude): Convert filter to list.
2342         * Scripts/webkitpy/test/main.py:
2343         (Tester._log_exception): Use Python 2/3 compatible StringIO object.
2344         (_Loader.getTestCaseNames): Convert filter to list.
2345         * Scripts/webkitpy/test/main_unittest.py:
2346         (TesterTest.test_no_tests_found): Use Python 2/3 compatible StringIO.
2347         (TesterTest.test_integration_tests_are_found): Sort serial tests before comparing.
2348         * Scripts/webkitpy/test/printer.py: Use Python 2/3 compatible StringIO.
2349         * Scripts/webkitpy/test/runner_unittest.py: Ditto.
2350         * Scripts/webkitpy/test/skip.py:
2351         (_skipped_method._skip): Fix class inspection on instance method.
2352         * Scripts/webkitpy/test/skip_unittest.py: Use Python 2/3 compatible StringIO.
2353         * Scripts/webkitpy/w3c/test_converter.py: Use Python 2/3 compatible HTMLParser.
2354         * Scripts/webkitpy/w3c/wpt_runner.py:
2355         (main): Fix Python 3 syntax errors.
2356         * lldb/dump_class_layout_unittest.py:
2357         (TestDumpClassLayout.setUpClass): Fix Python 3 syntax errors.
2358
2359 2019-12-05  Jonathan Bedard  <jbedard@apple.com>
2360
2361         Python 3: Add support to webkitpy.browserperfdash
2362         https://bugs.webkit.org/show_bug.cgi?id=204887
2363
2364         Reviewed by Stephanie Lewis.
2365
2366         * Scripts/test-webkitpy-python3: Add webkitpy.browserperfdash.
2367         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py: Remove urlparse dependency.
2368         * Scripts/webkitpy/benchmark_runner/webdriver_benchmark_runner.py: Use explicit import.
2369         * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py:
2370         (WebServerBenchmarkRunner._run_one_test): Use Python 2/3 compatible urljoin.
2371
2372 2019-12-05  Sihui Liu  <sihui_liu@apple.com>
2373
2374         Fix a Typo in IndexedDBInPageCache.html
2375         https://bugs.webkit.org/show_bug.cgi?id=204897
2376
2377         Reviewed by Chris Dumez.
2378
2379         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBInPageCache.html:
2380
2381 2019-12-05  youenn fablet  <youenn@apple.com>
2382
2383         inspector/page/overrideSetting-MockCaptureDevicesEnabled.html is failing after removal of internals.setMockMediaCaptureDevicesEnabled API
2384         https://bugs.webkit.org/show_bug.cgi?id=204849
2385
2386         Reviewed by Eric Carlson.
2387
2388         Add test runner API to check which center (mock or not) is used in UIProcess side.
2389
2390         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2391         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2392         (WTR::TestRunner::isMockRealtimeMediaSourceCenterEnabled):
2393         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2394         * WebKitTestRunner/TestController.cpp:
2395         (WTR::TestController::isMockRealtimeMediaSourceCenterEnabled const):
2396         * WebKitTestRunner/TestController.h:
2397         * WebKitTestRunner/TestInvocation.cpp:
2398         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2399
2400 2019-12-05  Zalan Bujtas  <zalan@apple.com>
2401
2402         [LFC][IFC] Move trailing trimming logic to LineBuilder::TrimmableContent
2403         https://bugs.webkit.org/show_bug.cgi?id=204872
2404         <rdar://problem/57652365>
2405
2406         Reviewed by Antti Koivisto.
2407
2408         * LayoutReloaded/misc/LFC-passing-tests.txt:
2409
2410 2019-12-04  Fujii Hironori  <Hironori.Fujii@sony.com>
2411
2412         run-javascriptcore-tests is failing to run testmasm of 64bit AppleWin on Buildbot
2413         https://bugs.webkit.org/show_bug.cgi?id=204869
2414
2415         Reviewed by Per Arne Vollan.
2416
2417         testmasm is compiled only when DEVELOPER_MODE.
2418         Enable DEVELOPER_MODE for all 64bit Windows builds.
2419
2420         * Scripts/webkitdirs.pm:
2421         (generateBuildSystemFromCMakeProject): Replaced "isFTW() || isWinCairo()" with isWin64()
2422         in the condition of enabling DEVELOPER_MODE.
2423
2424 2019-12-04  Jonathan Bedard  <jbedard@apple.com>
2425
2426         results.webkit.org: Decrease ttl for archives
2427         https://bugs.webkit.org/show_bug.cgi?id=204806
2428         <rdar://problem/57527644>
2429
2430         Unreviewed infrastructure fix.
2431
2432         * resultsdbpy/resultsdbpy/controller/archive_controller_unittest.py:
2433         (ArchiveControllerUnittest.setup_webserver): Disable time-to-live.
2434         * resultsdbpy/resultsdbpy/model/mock_model_factory.py:
2435         (MockModelFactory.create): Ensure time-to-live is longer than the oldest commit.
2436
2437 2019-12-04  Jonathan Bedard  <jbedard@apple.com>
2438
2439         results.webkit.org: Handle duplicate archives
2440         https://bugs.webkit.org/show_bug.cgi?id=204860
2441
2442         Reviewed by Stephanie Lewis.
2443
2444         * resultsdbpy/resultsdbpy/controller/archive_controller.py:
2445         (ArchiveController): Pass test time to ArchiveContext, de-duplicate any
2446         identical archives.
2447         * resultsdbpy/resultsdbpy/model/archive_context.py:
2448         (ArchiveContext): Only upack identical archives once, pass digest to caller.
2449
2450 2019-12-04  Jonathan Bedard  <jbedard@apple.com>
2451
2452         Python 3: Add support in webkitpy.benchmark_runner
2453         https://bugs.webkit.org/show_bug.cgi?id=204784
2454
2455         Reviewed by Stephanie Lewis.
2456
2457         * Scripts/test-webkitpy-python3: Add webkitpy.benchmark_runner.
2458         * Scripts/webkitpy/benchmark_runner/benchmark_results.py:
2459         (BenchmarkResults): Arithmetic aggregator should use integer division.
2460         (BenchmarkResults._format_values): Convert map to list.
2461         (BenchmarkResults._aggregate_results): Ditto.
2462         (BenchmarkResults._aggregate_results_for_test): Use Python 2/3 compatible iteritems.
2463         (BenchmarkResults._subtest_values_by_config_iteration): Ditto.
2464         (BenchmarkResults._lint_subtest_results): Ditto.
2465         (BenchmarkResults._lint_configuration): Ditto.
2466         * Scripts/webkitpy/benchmark_runner/benchmark_results_unittest.py: Use explicit imports.
2467         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py: Ditto.
2468         * Scripts/webkitpy/benchmark_runner/browser_driver/__init__.py: Ditto.
2469         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_browser_driver.py: Ditto.
2470         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_chrome_driver.py: Ditto.
2471         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_cog_driver.py: Ditto.
2472         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_epiphany_driver.py: Ditto.
2473         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_firefox_driver.py: Ditto.
2474         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_minibrowsergtk_driver.py: Ditto.
2475         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_minibrowserwpe_driver.py: Ditto.
2476         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py: Ditto.
2477         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py: Ditto.
2478         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py: Ditto.
2479         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py: Ditto.
2480         * Scripts/webkitpy/benchmark_runner/http_server_driver/__init__.py: Ditto.
2481         * Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py: Ditto.
2482         * Scripts/webkitpy/benchmark_runner/run_benchmark.py: Ditto.
2483         * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py: Ditto.
2484
2485 2019-12-04  Jonathan Bedard  <jbedard@apple.com>
2486
2487         Python 3: Add support in webkitpy.tool
2488         https://bugs.webkit.org/show_bug.cgi?id=204838
2489
2490         Reviewed by Stephanie Lewis.
2491
2492         * Scripts/test-webkitpy-python3: Add webkitpy.tool.
2493         * Scripts/webkit-patch: Remove version check.
2494         * Scripts/webkitpy/common/net/bugzilla/bug.py:
2495         (Bug.reviewed_patches): Convert filter to list.
2496         (Bug.commit_queued_patches): Ditto.
2497         * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
2498         (MockBugzillaQueries.fetch_bug_ids_from_commit_queue): Convert map to list.
2499         (MockBugzillaQueries.fetch_attachment_ids_from_review_queue): Ditto.
2500         (MockBugzillaQueries.fetch_bug_ids_from_pending_commit_list): Ditto.
2501         (MockBugzilla.post_comment_to_bug): Sort cc list before printing.
2502         * Scripts/webkitpy/common/net/statusserver.py:
2503         (StatusServer.set_api_key): Convert filter to list.
2504         * Scripts/webkitpy/common/net/web.py:
2505         (Web.get_binary): Use Python 2/3 compatible urlopen.
2506         (Web.request): Use Python 2/3 compatible Request.
2507         * Scripts/webkitpy/common/prettypatch.py:
2508         (PrettyPatch.pretty_diff_file): Encode diff before printing.
2509         * Scripts/webkitpy/common/system/executive_mock.py:
2510         (MockExecutive.run_and_throw_if_fail): Sort environment before printing.
2511         (MockExecutive.run_command): Convert input to string before printing.
2512         * Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
2513         (FailingTestCommitQueue.test_results): Convert map to list.
2514         (MockSimpleTestPlanCommitQueue.test_results): Ditto.
2515         * Scripts/webkitpy/tool/bot/feeders.py:
2516         (CommitQueueFeeder.feed): Use Python 2/3 compatible sort.
2517         (CommitQueueFeeder._patch_cmp): Deleted.
2518         * Scripts/webkitpy/tool/bot/flakytestreporter.py:
2519         (FlakyTestReporter._lookup_bug_for_flaky_test): Convert filter to list.
2520         * Scripts/webkitpy/tool/bot/irc_command.py:
2521         (Whois.execute): Convert map to list.
2522         * Scripts/webkitpy/tool/bot/retrylogic_unittest.py:
2523         (JSCEarlyWarningSystemTest._create_task): Convert map to list.
2524         * Scripts/webkitpy/tool/bot/sheriff.py:
2525         * Scripts/webkitpy/tool/commands/applywatchlistlocal_unittest.py: Use sorted lists
2526         Instead of sets.
2527         * Scripts/webkitpy/tool/commands/download.py:
2528         (AbstractPatchSequencingCommand.__init__): Use Python 2/3 compatible sort.
2529         * Scripts/webkitpy/tool/commands/download_unittest.py: Sort environment.
2530         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
2531         (AbstractEarlyWarningSystem.load_ews_classes): str.translate differs between Python 2
2532         and Python 3.
2533         * Scripts/webkitpy/tool/commands/newcommitbot.py:
2534         (NewCommitBot._summarize_commit_log): Convert filter to list.
2535         * Scripts/webkitpy/tool/commands/queues.py:
2536         (AbstractQueue.should_continue_work_queue): Handle case where iterations is a MagicMock.
2537         (AbstractQueue._log_from_script_error_for_upload): Explicitly use BytesIO
2538         * Scripts/webkitpy/tool/commands/queues_unittest.py: Use explicit import paths.
2539         * Scripts/webkitpy/tool/commands/rebaseline_unittest.py: Sort lists before comparing them.
2540         * Scripts/webkitpy/tool/commands/stepsequence.py:
2541         (StepSequence.options): Use Python 2/3 compatible sort.
2542         * Scripts/webkitpy/tool/commands/suggestnominations.py:
2543         (AbstractCommitLogCommand.__init__): Use Python 2/3 compatible sort.
2544         (SuggestNominations._print_nominations): Ditto.
2545         (SuggestNominations._print_counts): Ditto.
2546         (SuggestNominations._print_nominations.nomination_cmp): Deleted.
2547         (SuggestNominations._print_counts.counter_cmp): Deleted.
2548         * Scripts/webkitpy/tool/mocktool_unittest.py: Use explicit import paths.
2549         * Scripts/webkitpy/tool/multicommandtool.py:
2550         (HelpCommand._help_epilog): Convert filter to list, use Python 2/3 compatible sort.
2551         (MultiCommandTool._find_all_commands): Use Python 2/3 compatible sort.
2552         * Scripts/webkitpy/tool/servers/gardeningserver.py:
2553         (GardeningHTTPServer): Use Python 2/3 compatible HTTPServers.
2554         * Scripts/webkitpy/tool/servers/rebaselineserver.py:
2555         (get_test_baselines.AllPlatformsPort.baseline_search_path): Use list instead of utterable keys.
2556         (RebaselineHTTPServer): Use Python 2/3 compatible HTTPServers.
2557         (RebaselineHTTPServer.__init__): Ditto.
2558         * Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py:
2559         (GetActualResultFilesTest.test): Use assertEqual instead of assertItemsEqual.
2560         * Scripts/webkitpy/tool/servers/reflectionhandler.py:
2561         (ReflectionHandler): Use Python 2/3 compatible HTTPServers.
2562         * Scripts/webkitpy/tool/steps/applywatchlist.py:
2563         (ApplyWatchList.run): Sort cc_emails before printing.
2564         * Scripts/webkitpy/tool/steps/applywatchlist_unittest.py: Print sorted list instead
2565         of set.
2566         * Scripts/webkitpy/tool/steps/confirmdiff.py:
2567         (ConfirmDiff._show_pretty_diff): Use Python 2/3 compatible pathname2url.
2568         * Scripts/webkitpy/tool/steps/haslanded.py:
2569         (HasLanded.convert_to_svn): Use Python 2/3 compatible StringIO.
2570         (HasLanded.strip_change_log): Ditto.
2571         * Scripts/webkitpy/tool/steps/preparechangelog.py:
2572         (PrepareChangeLog._resolve_existing_entry): Convert zip object to list.
2573         * Scripts/webkitpy/tool/steps/promptforbugortitle.py: Use Python 2/3 compatible urlparse.
2574         * Scripts/webkitpy/tool/steps/steps_unittest.py: Sort environment.
2575         * Scripts/webkitpy/w3c/test_exporter.py: Use Python 2/3 compatible HTTPError.
2576         * Scripts/webkitpy/w3c/wpt_github.py:
2577         (WPTGitHub.remove_label): Use Python 2/3 compatible urllib.quote.
2578         (WPTGitHub.is_pr_merged): Use Python 2/3 compatible HTTPError.
2579         (WPTGitHub.merge_pr): Ditto.
2580         (JSONResponse.__init__):
2581
2582 2019-12-04  Jonathan Bedard  <jbedard@apple.com>
2583
2584         Unreviewed, rolling out r253069.
2585
2586         requests not handling certificate chain correctly in Catalina
2587
2588         Reverted changeset:
2589
2590         "results.webkit.org: Sort out certificates on Catalina"
2591         https://bugs.webkit.org/show_bug.cgi?id=202837
2592         https://trac.webkit.org/changeset/253069
2593
2594 2019-12-04  Louie Livon-Bemel  <llivonbemel@apple.com>
2595
2596         Add exclusion rule for text manipulation SPI to exclude based on element class
2597         https://bugs.webkit.org/show_bug.cgi?id=204754
2598         <rdar://problem/57398802>
2599
2600         Reviewed by Ryosuke Niwa.
2601
2602         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2603         (TestWebKitAPI::TEST):
2604             - When matching a class, it should work even with other class names on the element.
2605             - All children elements should get the same exclusion rule, unless overridden by another rule.
2606
2607 2019-12-04  youenn fablet  <youenn@apple.com>
2608
2609         WebProcessPool::terminateServiceWorkerProcess should be renamed terminateServiceWorkers
2610         https://bugs.webkit.org/show_bug.cgi?id=204792
2611
2612         Reviewed by Chris Dumez.
2613
2614         Renaming testRunner API from terminateServiceWorkerProcess to terminateServiceWorkers.
2615
2616         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2617         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2618         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2619         (WTR::TestRunner::terminateServiceWorkers):
2620         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2621         * WebKitTestRunner/TestController.cpp:
2622         (WTR::TestController::terminateServiceWorkers):
2623         * WebKitTestRunner/TestController.h:
2624         * WebKitTestRunner/TestInvocation.cpp:
2625         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2626
2627 2019-12-04  Patrick Griffis  <pgriffis@igalia.com>
2628
2629         [GTK][WPE] Add libuuid to install-dependencies
2630         https://bugs.webkit.org/show_bug.cgi?id=204705
2631
2632         Reviewed by Adrian Perez de Castro.
2633
2634         * gtk/install-dependencies:
2635         * wpe/install-dependencies:
2636
2637 2019-12-04  Tim Horton  <timothy_horton@apple.com>
2638
2639         Introduce a GPU process
2640         https://bugs.webkit.org/show_bug.cgi?id=204343
2641
2642         Reviewed by Simon Fraser.
2643
2644         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2645
2646 2019-12-03  Megan Gardner  <megan_gardner@apple.com>
2647
2648         Add disabled highlight API skeleton
2649         https://bugs.webkit.org/show_bug.cgi?id=204809
2650
2651         Reviewed by Ryosuke Niwa.
2652
2653         * DumpRenderTree/mac/DumpRenderTree.mm:
2654         (enableExperimentalFeatures):
2655         * WebKitTestRunner/TestController.cpp:
2656         (WTR::TestController::resetPreferencesToConsistentValues):
2657
2658 2019-12-03  Ryosuke Niwa  <rniwa@webkit.org>
2659
2660         Replace customJavaScriptUserAgentAsSiteSpecificQuirks with customUserAgentAsSiteSpecificQuirks
2661         https://bugs.webkit.org/show_bug.cgi?id=204824
2662
2663         Reviewed by Brent Fulgham.
2664
2665         Replaced WebKit.WebsitePoliciesCustomJavaScriptUserAgent and WebKit.WebsitePoliciesCustomUserAgents
2666         with WebKit.WebsitePoliciesCustomUserAgentAsSiteSpecificQuirksDisabled, which tests that the UA string
2667         specified by customUserAgentAsSiteSpecificQuirks is not used when site specific quirks is disabled,
2668         and WebKit.WebsitePoliciesCustomUserAgentAsSiteSpecificQuirks, which tests that new property sets
2669         UA string for both network requests and JS API.
2670
2671         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2672         (-[CustomJavaScriptUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
2673
2674 2019-12-03  Andres Gonzalez  <andresg_22@apple.com>
2675
2676         Focus tracking support in the accessibility isolatedtree.
2677         https://bugs.webkit.org/show_bug.cgi?id=204535
2678
2679         Reviewed by Chris Fleizach.
2680
2681         FocusElement can run on the secondary AXThread.
2682
2683         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
2684         (WTR::AccessibilityController::focusedElement):
2685
2686 2019-12-03  John Wilander  <wilander@apple.com>
2687
2688         Resource Load Statistics (experimental): Delete non-cookie website data after 7 days of no user interaction
2689         https://bugs.webkit.org/show_bug.cgi?id=204779
2690         <rdar://problem/57578989>
2691
2692         Reviewed by Alex Christensen.
2693
2694         These changes are test infrastructure so that TestRunner can
2695         control the new setting.
2696
2697         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2698         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2699         (WTR::InjectedBundle::didReceiveMessageToPage):
2700         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2701         (WTR::TestRunner::setStatisticsFirstPartyWebsiteDataRemovalMode):
2702         (WTR::TestRunner::statisticsCallDidSetFirstPartyWebsiteDataRemovalModeCallback):
2703         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2704         * WebKitTestRunner/TestController.cpp:
2705         (WTR::TestController::setStatisticsFirstPartyWebsiteDataRemovalMode):
2706         * WebKitTestRunner/TestController.h:
2707         * WebKitTestRunner/TestInvocation.cpp:
2708         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2709         (WTR::TestInvocation::didSetFirstPartyWebsiteDataRemovalMode):
2710         * WebKitTestRunner/TestInvocation.h:
2711
2712 2019-12-03  Jonathan Bedard  <jbedard@apple.com>
2713
2714         Python 3: Add support in webkitpy.bindings
2715         https://bugs.webkit.org/show_bug.cgi?id=204783
2716
2717         Reviewed by Stephanie Lewis.
2718
2719         Allow Tools/Scripts/run-bindings-tests to support Python 3.
2720
2721         * Scripts/webkitpy/bindings/main.py:
2722         (BindingsTests.generate_supplemental_dependency): Encode unicode strings before
2723         writing to file as bytes.
2724
2725 2019-12-03  Jonathan Bedard  <jbedard@apple.com>
2726
2727         results.webkit.org: Sort out certificates on Catalina
2728         https://bugs.webkit.org/show_bug.cgi?id=202837
2729
2730         Unreviewed infrastructure repair.
2731
2732         Reverting the active parts of r250997 now that the certificates are sorted out.
2733
2734         * Scripts/webkitpy/results/upload.py:
2735         (Upload.upload):
2736         (Upload.upload_archive):
2737
2738 2019-12-03  Jonathan Bedard  <jbedard@apple.com>
2739
2740         results.webkit.org: Decrease ttl for archives
2741         https://bugs.webkit.org/show_bug.cgi?id=204806
2742         <rdar://problem/57527644>
2743
2744         Reviewed by Aakash Jain.
2745
2746         Make the ttl on the archive tables shorter, drop the existing table and create new ones
2747         with a shorter ttl.
2748
2749         * resultsdbpy/resultsdbpy/model/archive_context.py:
2750         (ArchiveContext.ArchiveMetaDataByCommit): Define new ArchiveMetaDataByCommit table.
2751         (ArchiveContext.ArchiveChunks): Ditto.
2752         * resultsdbpy/resultsdbpy/model/model.py:
2753         (Model.__init__): Add archive ttl, 8 weeks by default.
2754
2755 2019-12-03  Christopher Reid  <chris.reid@sony.com>
2756
2757         Regular expression hangs in Safari only
2758         https://bugs.webkit.org/show_bug.cgi?id=202882
2759         <rdar://problem/56236654>
2760
2761         Reviewed by Yusuke Suzuki.
2762
2763         * TestWebKitAPI/CMakeLists.txt:
2764         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2765         * TestWebKitAPI/Tests/WTF/BumpPointerAllocator.cpp: Added.
2766
2767 2019-12-03  Jonathan Bedard  <jbedard@apple.com>
2768
2769         https://bugs.webkit.org/show_bug.cgi?id=204804
2770         <rdar://problem/57595666>
2771
2772         Reviewed by Tim Horton.
2773
2774         * Scripts/webkitpy/port/mac.py:
2775         (MacCatalystPort):
2776         (MacCatalystPort._build_driver_flags): Add SDKVARIANT=iosmac to build flags.
2777
2778 2019-12-03  Antoine Quint  <graouts@apple.com>
2779
2780         [Web Animations] Add a runtime flag for Web Animations composite operations
2781         https://bugs.webkit.org/show_bug.cgi?id=204718
2782
2783         Reviewed by Dean Jackson.
2784
2785         * DumpRenderTree/mac/DumpRenderTree.mm:
2786         (enableExperimentalFeatures):
2787         * DumpRenderTree/win/DumpRenderTree.cpp:
2788         (enableExperimentalFeatures):
2789
2790 2019-12-03  Aakash Jain  <aakash_jain@apple.com>
2791
2792         Do not retry the EWS build due to flaky failures in layout-test
2793         https://bugs.webkit.org/show_bug.cgi?id=204769
2794
2795         Reviewed by Jonathan Bedard.
2796
2797         * BuildSlaveSupport/ews-build/steps.py:
2798         (AnalyzeLayoutTestsResults.start): Do not retry the build due to flaky tests failures.
2799         * BuildSlaveSupport/ews-build/steps_unittest.py:
2800         (test_flaky_and_inconsistent_failures_without_clean_tree_failures): expected outcome changed from RETRY to SUCCESS.
2801         (test_flaky_and_inconsistent_failures_with_clean_tree_failures): Ditto.
2802         (test_flaky_and_consistent_failures_with_clean_tree_failures): Ditto.
2803         (test_mildly_flaky_patch_with_some_tree_redness_and_flakiness): Ditto.
2804
2805 2019-12-03  youenn fablet  <youenn@apple.com>
2806
2807         Add support for camera rotation when capturing in UIProcess
2808         https://bugs.webkit.org/show_bug.cgi?id=204750
2809
2810         Reviewed by Eric Carlson.
2811
2812         Add test runner API to set the device rotation specifically for mock camera devices.
2813
2814         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2815         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2816         (WTR::TestRunner::setMockCameraOrientation):
2817         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2818         * WebKitTestRunner/TestController.cpp:
2819         (WTR::TestController::setMockCameraOrientation):
2820         * WebKitTestRunner/TestController.h:
2821         * WebKitTestRunner/TestInvocation.cpp:
2822         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2823
2824 2019-12-03  youenn fablet  <youenn@apple.com>
2825
2826         Expose WKWebView API to stop ongoing capture
2827         https://bugs.webkit.org/show_bug.cgi?id=204787
2828
2829         Reviewed by Eric Carlson.
2830
2831         * TestWebKitAPI/Tests/WebKit/GetUserMedia.mm:
2832         (TestWebKitAPI::TEST):
2833         * TestWebKitAPI/Tests/WebKit/getUserMedia.html:
2834
2835 2019-12-03  youenn fablet  <youenn@apple.com>
2836
2837         [Cocoa] Run camera capture in UIProcess by default in layout tests
2838         https://bugs.webkit.org/show_bug.cgi?id=204512
2839
2840         Reviewed by Eric Carlson.
2841
2842         By defaut, enable capture in UIProcess on Cocoa side.
2843
2844         * WebKitTestRunner/TestController.cpp:
2845         (WTR::TestController::resetPreferencesToConsistentValues):
2846         (WTR::updateTestOptionsFromTestHeader):
2847         * WebKitTestRunner/TestOptions.h:
2848         (WTR::TestOptions::hasSameInitializationOptions const):
2849
2850 2019-12-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2851
2852         Unreviewed. Focus the location bar on CTRL+l in GTK MiniBrowser
2853
2854         * MiniBrowser/gtk/BrowserWindow.c:
2855         (focusLocationBar):
2856         (browser_window_init):
2857
2858 2019-12-02  Sihui Liu  <sihui_liu@apple.com>
2859
2860         Cross-thread version StorageQuotaManager
2861         https://bugs.webkit.org/show_bug.cgi?id=203971
2862         <rdar://problem/57290349>
2863
2864         Reviewed by Chris Dumez.
2865
2866         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2867         * TestWebKitAPI/Tests/WebCore/StorageQuotaManager.cpp: Removed as we have a different StorageQuotaManager 
2868         implementation now.
2869         * WebKitTestRunner/TestController.cpp: reset StorageQuotaManager's quota between tests.
2870         (WTR::TestController::resetStateToConsistentValues):
2871         (WTR::TestController::resetQuota):
2872         * WebKitTestRunner/TestController.h:
2873
2874 2019-12-02  Saam Barati  <sbarati@apple.com>
2875
2876         run-jsc should exit with the same signal or exit status that the `jsc` shell does
2877         https://bugs.webkit.org/show_bug.cgi?id=204778
2878
2879         Reviewed by Keith Miller.
2880
2881         * Scripts/run-jsc:
2882
2883 2019-12-02  Aakash Jain  <aakash_jain@apple.com>
2884
2885         Revert - [EWS] Do not retry layout-tests build if the flaky test failures are also present in clean tree run
2886         https://bugs.webkit.org/show_bug.cgi?id=204704
2887
2888         Reverting this, a more generic fix for handling flakiness would be made in Bug 204769.
2889
2890 2019-12-02  Louie Livon-Bemel  <llivonbemel@apple.com>
2891
2892         Add helper methods for description and equality to text manipulation SPI
2893         https://bugs.webkit.org/show_bug.cgi?id=204758
2894         <rdar://problem/57438200>
2895
2896         Reviewed by Wenson Hsieh.
2897
2898         Add tests for the new methods. Most are equality tests for various situations, and are moved over from the
2899         Safari unit tests I had for the category methods that had the same purpose.
2900
2901         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2902         (TestWebKitAPI::TEST):
2903             - Add test to make sure the content isn't included in the regular -description, but the identifier is. And
2904               That -debugDescription does include the contents.
2905             - Add many tests equality for various situations, testing both with and without content equality.
2906         (TestWebKitAPI::createTextManipulationToken):
2907             Add a helper for creating a token in one line.
2908
2909 2019-12-02  Daniel Bates  <dabates@apple.com>
2910
2911         REGRESSION (r195080): prepare-ChangeLog does not emit function list for file paths that contain a space
2912         https://bugs.webkit.org/show_bug.cgi?id=204236
2913
2914         Reviewed by Brian Burg.
2915
2916         Revert the filename escape logic added in <http://trac.webkit.org/changeset/195080> as it broke
2917         function list generation in file paths that contain space characters. Function list generation
2918         broke because the escaping was performed after line range dictionaries were built up keyed off
2919         the unescaped file path. Subsequent code would try to query these dictionaries to build up the
2920         changed function list using the escaped file path and never a match. The escaping logic was not
2921         necessary to fix the originally reported bug. All that was needed was to use the three-argument
2922         open() call that took a mode. So, remove the escape logic.
2923
2924         * Scripts/prepare-ChangeLog:
2925         (actuallyGenerateFunctionLists):
2926
2927 2019-11-30  Ross Kirsling  <ross.kirsling@sony.com>
2928
2929         test262-runner should dump YAML with correct encoding
2930         https://bugs.webkit.org/show_bug.cgi?id=204493
2931
2932         Reviewed by Saam Barati.
2933
2934         Even though we spit out correctly-encoded output to the terminal, Perl's YAML module insists upon *re*-encoding
2935         to UTF-8 when dumping to file. This works out in the end because an analogous double-decode occurs when loading
2936         from file. Still, it's really annoying that expectations.yaml has garbled (i.e. double-encoded) text.
2937
2938         We shouldn't modify libraries directly, but we can copy-paste DumpFile/LoadFile into Runner.pm and tweak!
2939
2940         * Scripts/test262/Runner.pm:
2941         (DumpFile):
2942         (LoadFile):
2943         Add custom versions of DumpFile/LoadFile which do not execute `binmode $OUT, ':utf8';`.
2944
2945 2019-11-30  Zalan Bujtas  <zalan@apple.com>
2946
2947         [LFC] Expand tests coverage (2648 new tests -> 3980).
2948
2949         * LayoutReloaded/misc/LFC-passing-tests.txt:
2950
2951 2019-11-30  Zalan Bujtas  <zalan@apple.com>
2952
2953         [LFC][IFC] Add support for hyphenate-limit-lines
2954         https://bugs.webkit.org/show_bug.cgi?id=204712
2955         <rdar://problem/57536727>
2956
2957         Reviewed by Antti Koivisto.
2958
2959         * LayoutReloaded/misc/LFC-passing-tests.txt:
2960
2961 2019-11-30  Aakash Jain  <aakash_jain@apple.com>
2962
2963         [EWS] Do not retry layout-tests build if the flaky test failures are also present in clean tree run
2964         https://bugs.webkit.org/show_bug.cgi?id=204704
2965
2966         Reviewed by Alexey Proskuryakov.
2967
2968         * BuildSlaveSupport/ews-build/steps.py:
2969         (AnalyzeLayoutTestsResults.start):
2970         * BuildSlaveSupport/ews-build/steps_unittest.py:
2971         (TestAnalyzeLayoutTestsResults.test_flaky_and_inconsistent_failures_with_clean_tree_failures): Changed expected outcome to SUCCESS.
2972         (TestAnalyzeLayoutTestsResults.test_flaky_and_consistent_failures_with_clean_tree_failures): Ditto.
2973
2974 2019-11-29  Zalan Bujtas  <zalan@apple.com>
2975
2976         [LFC][IFC] Add support for hyphenate-limit-before and hyphenate-limit-after
2977         https://bugs.webkit.org/show_bug.cgi?id=204710
2978         <rdar://problem/57535210>
2979
2980         Reviewed by Antti Koivisto.
2981
2982         * LayoutReloaded/misc/LFC-passing-tests.txt:
2983
2984 2019-11-29  Antti Koivisto  <antti@apple.com>
2985
2986         Add mechanism for enabling internal and experimental features from run-webkit-test command line
2987         https://bugs.webkit.org/show_bug.cgi?id=204702
2988
2989         Reviewed by Antoine Quint.
2990
2991         Add --internal-feature and --experimental-feature flags to TestRunner and run-webkit-tests.
2992         This is useful for running existing tests with different feature enabled without modifying
2993         anything else. For example:
2994
2995         run-webkit-tests --internal-feature LayoutFormattingContextRenderTreeIntegrationEnabled
2996
2997         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2998         (parse_args):
2999         * Scripts/webkitpy/port/base.py:
3000         (Port.internal_feature):
3001         (Port):
3002         (Port.experimental_feature):
3003         * Scripts/webkitpy/port/driver.py:
3004         (Driver.cmd_line):
3005         * WebKitTestRunner/Options.cpp:
3006         (WTR::handleOptionExperimentalFeature):
3007         (WTR::handleOptionInternalFeature):
3008         (WTR::OptionsHandler::OptionsHandler):
3009         * WebKitTestRunner/Options.h:
3010         * WebKitTestRunner/TestController.cpp:
3011         (WTR::TestController::initialize):
3012         (WTR::TestController::testOptionsForTest const):
3013         * WebKitTestRunner/TestController.h:
3014
3015 2019-11-29  Aakash Jain  <aakash_jain@apple.com>
3016
3017         Add a unit-test to new EWS for scenario when there is flakiness with patch and also on clean tree
3018         https://bugs.webkit.org/show_bug.cgi?id=204707
3019         <rdar://problem/57533998>
3020
3021         Unreviewed unit-test.
3022
3023         * BuildSlaveSupport/ews-build/steps_unittest.py:
3024         (TestAnalyzeLayoutTestsResults.test_mildly_flaky_patch_with_some_tree_redness_and_flakiness):
3025
3026 2019-11-29  Aakash Jain  <aakash_jain@apple.com>
3027
3028         Add a unit-test to old EWS for scenario when there is flakiness with patch and also on clean tree
3029         https://bugs.webkit.org/show_bug.cgi?id=204707
3030
3031         Unreviewed unit-test.
3032
3033         * Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
3034
3035 2019-11-29  Paulo Matos  <pmatos@igalia.com>
3036
3037         Move jsc-i386 from old to new EWS
3038         https://bugs.webkit.org/show_bug.cgi?id=204667
3039
3040         Reviewed by Aakash Jain.
3041
3042         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3043         (StatusBubble):
3044         * QueueStatusServer/config/queues.py:
3045
3046 2019-11-28  Fujii Hironori  <Hironori.Fujii@sony.com>
3047
3048         Remove ENABLE_KEYBOARD_CODE_ATTRIBUTE and ENABLE_KEYBOARD_KEY_ATTRIBUTE macros
3049         https://bugs.webkit.org/show_bug.cgi?id=204666
3050
3051         Reviewed by Ross Kirsling and Don Olmstead.
3052
3053         * Scripts/webkitperl/FeatureList.pm:
3054         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3055
3056 2019-11-28  Aakash Jain  <aakash_jain@apple.com>
3057
3058         Rename 'submit to new EWS' to 'Submit for EWS analysis'
3059         https://bugs.webkit.org/show_bug.cgi?id=204692
3060
3061         Unreviewed minor fix.
3062
3063         * BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
3064
3065 2019-11-28  Aakash Jain  <aakash_jain@apple.com>
3066
3067         Old EWS is showing 'Submit to old EWS' button on every patch
3068         https://bugs.webkit.org/show_bug.cgi?id=204691
3069
3070         Unreviewed minor fix.
3071
3072         * QueueStatusServer/handlers/statusbubble.py:
3073         (StatusBubble.get): Disabled Submit to old EWS button since almost all the queues
3074         have been removed from old EWS.
3075
3076 2019-11-28  Diego Pino Garcia  <dpino@igalia.com>
3077
3078         test262-runner ends with SIGPIPE signal
3079         https://bugs.webkit.org/show_bug.cgi?id=194816
3080
3081         Reviewed by Carlos Alberto Lopez Perez.
3082
3083         * Scripts/test262/Runner.pm:
3084         (main):
3085
3086 2019-11-28  Aakash Jain  <aakash_jain@apple.com>
3087
3088         Removed ENABLED_QUEUES logic from ews-app
3089         https://bugs.webkit.org/show_bug.cgi?id=204683
3090
3091         Unreviewed minor fix.
3092
3093         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3094         (StatusBubble): Removed ENABLED_QUEUES.
3095         (StatusBubble._build_bubbles_for_patch):
3096         (StatusBubble._should_show_bubble_for_queue): Deleted.
3097
3098 2019-11-28  Aakash Jain  <aakash_jain@apple.com>
3099
3100         [ews] Enable Windows queue on new EWS
3101         https://bugs.webkit.org/show_bug.cgi?id=204243
3102
3103         Reviewed by Jonathan Bedard.
3104
3105         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py: Enabled windows queue bubble on new EWS.
3106         * BuildSlaveSupport/ews-build/config.json: Enabled the scheduler for windows queue. Removed the disabled Try_Userpass scheduler.
3107         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
3108         (BubbleQueueServer): Removed windows ews queue from bot-watcher's dashboard.
3109         * QueueStatusServer/config/queues.py: Removed windows queue from old EWS.
3110
3111 2019-11-28  Philippe Normand  <pnormand@igalia.com>
3112
3113         [GStreamer] Move GL video sink to its own GstBin sub-class
3114         https://bugs.webkit.org/show_bug.cgi?id=204624
3115
3116         Reviewed by Xabier Rodriguez-Calvar.
3117
3118         * Scripts/webkitpy/style/checker.py: White-list the new GLVideoSinkGStreamer GObject implementation.
3119
3120 2019-11-27  Zalan Bujtas  <zalan@apple.com>
3121
3122         [LFC] Unreviewed test gardening.
3123
3124         * LayoutReloaded/misc/LFC-passing-tests.txt: These tests were passing accidentally.
3125
3126 2019-11-26  Fujii Hironori  <Hironori.Fujii@sony.com>
3127
3128         [AppleWin] run-webkit-tests is failing to find bin32/DumpRenderTree since r252834
3129         https://bugs.webkit.org/show_bug.cgi?id=204571
3130
3131         Reviewed by Ross Kirsling.
3132
3133         * BuildSlaveSupport/build.webkit.org-config/steps.py:
3134         (RunWebKitTests.start): Replaced 'bin32' with 'bin64'.
3135
3136 2019-11-25  Kent Tamura  <tkent@chromium.org>
3137
3138         Remove tkent@ from watchlist
3139         https://bugs.webkit.org/show_bug.cgi?id=204599
3140
3141         Reviewed by Chris Dumez.
3142
3143         * Scripts/webkitpy/common/config/watchlist: Remove tkent@
3144
3145 2019-11-25  Wenson Hsieh  <wenson_hsieh@apple.com>
3146
3147         [macOS] Dragged images are only available as .tiff when dropping onto macCatalyst apps
3148         https://bugs.webkit.org/show_bug.cgi?id=204598
3149         <rdar://problem/57093920>
3150
3151         Reviewed by Tim Horton.
3152
3153         Verify that WKWebView is able to provide data in non-TIFF formats when dragging several types of images using a
3154         new API test.
3155
3156         * TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm:
3157
3158 2019-11-25  Ross Kirsling  <ross.kirsling@sony.com>
3159
3160         [Win] Ensure MiniBrowser can be built with !ENABLE(WEBKIT_LEGACY)
3161         https://bugs.webkit.org/show_bug.cgi?id=204592
3162
3163         Reviewed by Don Olmstead.
3164
3165         * MiniBrowser/win/CMakeLists.txt:
3166         * MiniBrowser/win/Common.cpp:
3167         (parseCommandLine):
3168         * MiniBrowser/win/Common.h:
3169         * MiniBrowser/win/MainWindow.cpp:
3170         (MainWindow::init):
3171         (MainWindow::WndProc):
3172         * MiniBrowser/win/WinMain.cpp:
3173         (wWinMain):
3174         * PlatformWin.cmake:
3175
3176 2019-11-25  Fujii Hironori  <Hironori.Fujii@sony.com>
3177
3178         Add DefaultHash<OptionSet<T>> and HashTrait<OptionSet<T>> specializations
3179         https://bugs.webkit.org/show_bug.cgi?id=204562
3180
3181         Reviewed by Daniel Bates.
3182
3183         * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
3184         Added a new test WTF_OptionSet.HashSet.
3185
3186 2019-11-25  Philippe Normand  <pnormand@igalia.com>
3187
3188         [JHBuild] xserver build fails
3189         https://bugs.webkit.org/show_bug.cgi?id=204577
3190
3191         Reviewed by Žan Doberšek.
3192
3193         * gtk/jhbuild.modules: Bump libdrm and add implicit dependency to
3194         it via mesa for the xserver recipe.
3195
3196 2019-11-25  Charlie Turner  <cturner@igalia.com>
3197
3198         [GStreamer] Flatten MediaPlayerPrivateGStreamer into MediaPlayerPrivateGStreamerBase
3199         https://bugs.webkit.org/show_bug.cgi?id=204352
3200
3201         Reviewed by Philippe Normand.
3202
3203         * Scripts/webkitpy/style/checker.py: The base class no longer
3204         exists, perform the check on the player private.
3205
3206 2019-11-25  Zan Dobersek  <zdobersek@igalia.com>
3207
3208         [GTK][WPE] libgpg-error fails to build with gawk 5
3209         https://bugs.webkit.org/show_bug.cgi?id=204568
3210
3211         Reviewed by Frédéric Wang.
3212
3213         Gawk 5 throws errors when compiling libgpg-error. To avoid those, we
3214         have to bump libgpg-error to the latest 1.36 version and have the
3215         upstream fix applied on top of that.
3216
3217         Autoreconf has to be invoked to regenerate automake files. Because
3218         autogen.sh script (which is present in the release tarballs) falters
3219         under jhbuild, we invoke autoreconf directly for libgpg-error builds.
3220
3221         * gtk/jhbuild.modules:
3222         * gtk/patches/libgpg-error-prepare-for-gawk-5-0.patch: Added.
3223         * wpe/jhbuild.modules:
3224         * wpe/patches/libgpg-error-prepare-for-gawk-5-0.patch: Added.
3225
3226 2019-11-23  John Wilander  <wilander@apple.com>
3227
3228         Resource Load Statistics: Allow multiple third-party cookie blocking settings
3229         https://bugs.webkit.org/show_bug.cgi?id=204389
3230         <rdar://problem/57344054>
3231
3232         Reviewed by Brent Fulgham.
3233
3234         This change allows the existing TestRunner function
3235         setStatisticsShouldBlockThirdPartyCookies() to set an optional boolean
3236         parameter onlyOnSitesWithoutUserInteraction to opt in to that behavior.
3237
3238         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3239         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3240         (WTR::TestRunner::setStatisticsShouldBlockThirdPartyCookies):
3241         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3242         * WebKitTestRunner/TestController.cpp:
3243         (WTR::TestController::setStatisticsShouldBlockThirdPartyCookies):
3244         * WebKitTestRunner/TestController.h:
3245         * WebKitTestRunner/TestInvocation.cpp:
3246         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3247
3248 2019-11-23  Commit Queue  <commit-queue@webkit.org>
3249
3250         Unreviewed, rolling out r252805.
3251         https://bugs.webkit.org/show_bug.cgi?id=204553
3252
3253         Caused test failures and ASan crashes (Requested by ap on
3254         #webkit).
3255
3256         Reverted changeset:
3257
3258         "Cross-thread version StorageQuotaManager"
3259         https://bugs.webkit.org/show_bug.cgi?id=203971
3260         https://trac.webkit.org/changeset/252805
3261
3262 2019-11-23  Per Arne Vollan  <pvollan@apple.com>
3263
3264         Archive step is failing after r252827
3265         https://bugs.webkit.org/show_bug.cgi?id=204548
3266
3267         Reviewed by Alexey Proskuryakov.
3268
3269         After https://trac.webkit.org/changeset/252827/webkit, the archive step is failing.
3270
3271         * BuildSlaveSupport/built-product-archive:
3272         (createZip):
3273
3274 2019-11-23  Andres Gonzalez  <andresg_22@apple.com>
3275
3276         Run LayoutTests/accessibility/mac/primary-screen-height.html on secondary accessibility thread.
3277         https://bugs.webkit.org/show_bug.cgi?id=204391
3278
3279         Reviewed by Chris Fleizach.
3280
3281         Added AccessibilityController::execute to execute any
3282         AccessibilityUIElement call into AccessibilityObjectWrapper on the
3283         secondary accessibility thread.
3284
3285         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
3286         (WTR::AccessibilityController::rootElement): leftover from previous review.
3287         (WTR::AccessibilityController::execute): added this to execute any AccessibilityUIElement method on the appropriate thread.
3288         * WebKitTestRunner/InjectedBundle/AccessibilityController.h:
3289         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
3290         (WTR::AccessibilityUIElement::getChildrenWithRange): Runs on secondary thread.
3291         (WTR::AccessibilityUIElement::numberAttributeValue): Runs on secondary thread.
3292
3293 2019-11-22  Per Arne Vollan  <pvollan@apple.com>
3294
3295         Set 64-bit as default architecture on Windows
3296         https://bugs.webkit.org/show_bug.cgi?id=204477
3297
3298         Reviewed by Ross Kirsling.
3299
3300         This will make 64-bit building and testing the default.
3301
3302         * Scripts/webkitdirs.pm:
3303         (determineIsWin64):
3304         * Scripts/webkitpy/port/win.py:
3305         (WinPort):
3306
3307 2019-11-22  Jonathan Bedard  <jbedard@apple.com>
3308
3309         run-javascriptcore-tests: Failure to determine configuration for reporting is fatal
3310         https://bugs.webkit.org/show_bug.cgi?id=204526
3311
3312         Reviewed by Aakash Jain.
3313
3314         * Scripts/run-javascriptcore-tests:
3315         (configurationForUpload): Use uname as the default upload configuration 
3316
3317 2019-11-22  Jonathan Bedard  <jbedard@apple.com>
3318
3319         results.webkit.org/api/failures should return an error when no test-run is found for specified criteria
3320         https://bugs.webkit.org/show_bug.cgi?id=204385
3321         <rdar://problem/57334389>
3322
3323         Rubber-stamped by Aakash Jain.
3324
3325         * resultsdbpy/resultsdbpy/controller/failure_controller.py:
3326         (FailureController.failures): Return a 404 error if no test runs are found.
3327         * resultsdbpy/resultsdbpy/controller/failure_controller_unittest.py:
3328         (FailureControllerTest):
3329         (FailureControllerTest.test_no_runs):
3330         * resultsdbpy/resultsdbpy/model/failure_context.py:
3331         (FailureContext._failures): Return 'None' if no test runs are found.
3332         * resultsdbpy/resultsdbpy/model/failure_context_unittest.py:
3333         (FailureContextTest):
3334         (FailureContextTest.test_no_test_runs):
3335
3336 2019-11-22  Chris Dumez  <cdumez@apple.com>
3337
3338         HTTPHeaderMap's operator== is not fully correct
3339         https://bugs.webkit.org/show_bug.cgi?id=204361
3340
3341         Reviewed by Alex Christensen.
3342
3343         Add API test coverage.
3344
3345         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3346         * TestWebKitAPI/Tests/WebCore/HTTPHeaderMap.cpp: Added.
3347         (TestWebKitAPI::TEST):
3348
3349 2019-11-22  Sihui Liu  <sihui_liu@apple.com>
3350
3351         Cross-thread version StorageQuotaManager
3352         https://bugs.webkit.org/show_bug.cgi?id=203971
3353         <rdar://problem/57290349>
3354
3355         Reviewed by Chris Dumez.
3356
3357         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3358         * TestWebKitAPI/Tests/WebCore/StorageQuotaManager.cpp: Removed as we have a different StorageQuotaManager 
3359         implementation now.
3360         * WebKitTestRunner/TestController.cpp: reset StorageQuotaManager's quota between tests.
3361         (WTR::TestController::resetStateToConsistentValues):
3362         (WTR::TestController::resetQuota):
3363         * WebKitTestRunner/TestController.h:
3364
3365 2019-11-22  Jonathan Bedard  <jbedard@apple.com>
3366
3367         Unreviewed, rolling out r252791.
3368
3369         Cannot use key on scalar in some perl versions
3370
3371         Reverted changeset:
3372
3373         "run-javascriptcore-tests: Failure to determine configuration
3374         for reporting is fatal"
3375         https://bugs.webkit.org/show_bug.cgi?id=204526
3376         https://trac.webkit.org/changeset/252791
3377
3378 2019-11-22  Jonathan Bedard  <jbedard@apple.com>
3379
3380         run-javascriptcore-tests: Failure to determine configuration for reporting is fatal
3381         https://bugs.webkit.org/show_bug.cgi?id=204526
3382
3383         Reviewed by Aakash Jain.
3384
3385         * Scripts/run-javascriptcore-tests:
3386         (configurationForUpload): Return empty hash if no configuration is available.
3387         (uploadResults): Soft-fail upload if configuration is empty.
3388
3389 2019-11-22  Aakash Jain  <aakash_jain@apple.com>
3390
3391         Setup EWS queue for JSConly i386
3392         https://bugs.webkit.org/show_bug.cgi?id=204523
3393
3394         Reviewed by Jonathan Bedard.
3395
3396         * BuildSlaveSupport/ews-build/config.json:
3397
3398 2019-11-22  Aakash Jain  <aakash_jain@apple.com>
3399
3400         [ews] Add KillOldProcesses step before running JSC tests
3401         https://bugs.webkit.org/show_bug.cgi?id=204525
3402
3403         Reviewed by Jonathan Bedard.
3404
3405         * BuildSlaveSupport/ews-build/factories.py:
3406
3407 2019-11-22  Jonathan Bedard  <jbedard@apple.com>
3408
3409         run-javascriptcore-tests: Hide the output of binaries behind --verbose
3410         https://bugs.webkit.org/show_bug.cgi?id=204386
3411
3412         Reviewed by Aakash Jain.
3413
3414         * Scripts/run-javascriptcore-tests:
3415         (runTest): Do not log binary output by default, always log test failures.
3416
3417 2019-11-22  Aakash Jain  <aakash_jain@apple.com>
3418
3419         [ews] Add basic commit-queue support in new EWS
3420         https://bugs.webkit.org/show_bug.cgi?id=204517
3421
3422         Reviewed by Jonathan Bedard.
3423
3424         * BuildSlaveSupport/ews-build/config.json:
3425         * BuildSlaveSupport/ews-build/factories.py:
3426         * BuildSlaveSupport/ews-build/loadConfig.py:
3427
3428 2019-11-22  Jonathan Bedard  <jbedard@apple.com>
3429
3430         run-webkit-tests: Failing to run spindump shouldn't be fatal
3431         https://bugs.webkit.org/show_bug.cgi?id=204518
3432         <rdar://problem/57397417>
3433
3434         Reviewed by Aakash Jain.
3435
3436         * Scripts/webkitpy/port/darwin.py:
3437         (DarwinPort.sample_process): Catch script error.
3438
3439 2019-11-22  Paulo Matos  <pmatos@igalia.com>
3440
3441         Remove JSC 32bit ARMv7 and MipsEl old EWS queues
3442         https://bugs.webkit.org/show_bug.cgi?id=204344
3443
3444         Reviewed by Aakash Jain.
3445
3446         Remove JSC armv7 and mips from old EWS queue and fix bubbles
3447         by removing them from old ews and adding them to new ews.
3448
3449         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
3450         (BubbleQueueServer):
3451         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3452         (StatusBubble):
3453         * QueueStatusServer/config/queues.py:
3454
3455 2019-11-22  Paulo Matos  <pmatos@igalia.com>
3456
3457         Support JSCOnly platform in test reporting
3458         https://bugs.webkit.org/show_bug.cgi?id=204495
3459
3460         Reviewed by Carlos Garcia Campos.
3461
3462         Add JSCOnly to possible platforms.
3463
3464         * Scripts/run-javascriptcore-tests:
3465         (configurationForUpload):
3466
3467 2019-11-22  Carlos Garcia Campos  <cgarcia@igalia.com>
3468
3469         [GTK][WPE] RemoteInspector: use sockets instead of DBus
3470         https://bugs.webkit.org/show_bug.cgi?id=204503
3471
3472         Reviewed by Žan Doberšek.
3473
3474         Update the unit tests to not use DBus.
3475
3476         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
3477
3478 2019-11-21  Wenson Hsieh  <wenson_hsieh@apple.com>
3479
3480         [iOS] Web process crashes when attempting to request document context in a textarea
3481         https://bugs.webkit.org/show_bug.cgi?id=204455
3482         <rdar://problem/57383975>
3483
3484         Reviewed by Tim Horton.
3485
3486         Add a test to verify that we don't crash (and are still able to retrieve character rects).
3487
3488         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
3489         (-[UIWKDocumentContext markedTextRects]):
3490         (-[UIWKDocumentContext textRects]):
3491         * TestWebKitAPI/ios/UIKitSPI.h:
3492
3493 2019-11-21  Matt Lewis  <jlewis3@apple.com>
3494
3495         Fix triggers for catalina debug and webgl testers.
3496         https://bugs.webkit.org/show_bug.cgi?id=204456
3497
3498         Reviewed by Jonathan Bedard.
3499
3500         * BuildSlaveSupport/build.webkit.org-config/config.json:
3501
3502 2019-11-21  Jonathan Bedard  <jbedard@apple.com>
3503
3504         build.webkit.org: Forward results database credentials to jsc test runs
3505         https://bugs.webkit.org/show_bug.cgi?id=204453
3506
3507         Reviewed by Aakash Jain.
3508
3509         * BuildSlaveSupport/build.webkit.org-config/steps.py:
3510         (RunJavaScriptCoreTests.__init__): Do not log environment with credentials in it.
3511         (RunJavaScriptCoreTests.start): Add results database API key to environment.
3512         (RunLLINTCLoopTests.__init__): Do not log environment with credentials in it.
3513         (RunLLINTCLoopTests.start): Add results database API key to environment.
3514         (Run32bitJSCTests.__init__): Do not log environment with credentials in it.
3515         (Run32bitJSCTests.start): Add results database API key to environment.
3516
3517 2019-11-21  Jonathan Bedard  <jbedard@apple.com>
3518
3519         run-webkit-tests: Clean-up simulator processes after tearing down simulators
3520         https://bugs.webkit.org/show_bug.cgi?id=204416
3521
3522         Reviewed by Simon Fraser.
3523
3524         * Scripts/webkitpy/common/system/executive_mock.py:
3525         (MockExecutive.running_pids): Make function Python 3 compatible.
3526         * Scripts/webkitpy/xcode/simulated_device.py:
3527         (SimulatedDeviceManager.tear_down): Kill any CoreSimulator processes.
3528
3529 2019-11-21  Pablo Saavedra  <psaavedra@igalia.com>
3530
3531         Fix Tools/Scripts/run-javascriptcore-tests after r252490
3532         https://bugs.webkit.org/show_bug.cgi?id=204452
3533
3534         Rubber-stamped by Philippe Normand
3535
3536         Regression introduced in:
3537
3538           results.webkit.org: Report JSC tests to the results database
3539           https://bugs.webkit.org/show_bug.cgi?id=204091
3540           <rdar://problem/49778900>
3541
3542         WebKitGTK and WPE build environment is defined by the dependencies
3543         policy document [1] as a Debian Stable. For Debian the `uname` binary
3544         is installed in the `/bin/` directory and this directory is included
3545         in the `$PATH` for any regular or system user. This fix removes the
3546         path for the `uname` command in the run-javascriptcore-tests script.
3547         
3548         [1] https://trac.webkit.org/wiki/WebKitGTK/DependenciesPolicy
3549
3550         * Scripts/run-javascriptcore-tests:
3551         (configurationForUpload):
3552
3553 2019-11-20  Jonathan Bedard  <jbedard@apple.com>
3554
3555         run-webkit-tests: Make usability test on booting simulators more robust
3556         https://bugs.webkit.org/show_bug.cgi?id=204423
3557         <rdar://problem/57364735>
3558
3559         Reviewed by Alexey Proskuryakov.
3560
3561         * Scripts/webkitpy/xcode/simulated_device.py:
3562         (SimulatedDevice.is_usable): Use regular expressions to find home-screen service.
3563
3564 2019-11-20  Jonathan Bedard  <jbedard@apple.com>
3565
3566         run-webkit-tests: Do not create global SystemHost objects
3567         https://bugs.webkit.org/show_bug.cgi?id=204426
3568
3569         Reviewed by Aakash Jain.
3570
3571         If created, SystemHost objects should be created on-demand, not globally
3572         shared between all instances of a function.
3573
3574         * Scripts/webkitpy/xcode/simulated_device.py:
3575         (SimulatedDeviceManager.populate_available_devices):
3576         (SimulatedDeviceManager.available_devices):
3577         (SimulatedDeviceManager.device_by_filter):
3578         (SimulatedDeviceManager._create_or_find_device_for_request):
3579         (SimulatedDeviceManager._boot_device):
3580         (SimulatedDeviceManager.device_count_for_type):
3581         (SimulatedDeviceManager.initialize_devices):
3582         (SimulatedDeviceManager.max_supported_simulators):
3583         (SimulatedDeviceManager.swap):
3584         (SimulatedDeviceManager.tear_down):
3585
3586 2019-11-20  Wenson Hsieh  <wenson_hsieh@apple.com>
3587
3588         Correct argument types in UIScriptController::activateDataListSuggestion after r252062
3589         https://bugs.webkit.org/show_bug.cgi?id=203116
3590
3591         Reviewed by Tim Horton.
3592
3593         Use `unsigned` to represent `unsigned long` arguments declared in the IDL.
3594
3595         * DumpRenderTree/mac/UIScriptControllerMac.h:
3596         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3597         (WTR::UIScriptControllerMac::activateDataListSuggestion):
3598         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3599         (WTR::UIScriptController::activateDataListSuggestion):
3600         * WebKitTestRunner/ios/UIScriptControllerIOS.h:
3601         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3602         (WTR::UIScriptControllerIOS::activateDataListSuggestion):
3603         * WebKitTestRunner/mac/UIScriptControllerMac.h:
3604         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3605         (WTR::UIScriptControllerMac::activateDataListSuggestion):
3606
3607 2019-11-20  Fujii Hironori  <Hironori.Fujii@sony.com>
3608
3609         run-api-tests reports AssertionError os.pathsep not in value in _append_value_colon_separated in Cygwin Python
3610         https://bugs.webkit.org/show_bug.cgi?id=204400
3611
3612         Reviewed by Jonathan Bedard.
3613
3614         r249500 changed Port.environment_for_api_tests to use
3615         Port._append_value_colon_separated to append a build path to some
3616         enviroment variables. _append_value_colon_separated has a
3617         assertion to ensure the given value doesn't iclude ':'. However,
3618         Port._build_path contains ':' on Cygwin Python.
3619
3620         Those enviroment variables are only for macOS and iOS. Move the code to darwin.py.
3621
3622         * Scripts/webkitpy/port/base.py:
3623         (Port.environment_for_api_tests):
3624         * Scripts/webkitpy/port/darwin.py:
3625         (DarwinPort.environment_for_api_tests):
3626
3627 2019-11-20  Jonathan Bedard  <jbedard@apple.com>
3628
3629         [WebGL] Add `--webgl-test-suite` flag for run-webkit-tests
3630         https://bugs.webkit.org/show_bug.cgi?id=204327
3631
3632         Rubber-stamped by Aakash Jain.
3633
3634         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3635         (parse_args): Add the --webgl macro command, which is the equivalent of:
3636         'Run-webkit-tests --additional-expectations=LayoutTests/webgl/TestExpectations webgl'