21dd8f99bf696f0bde81b37b8f46e746648ab0d8
[WebKit-https.git] / Tools / ChangeLog
1 2018-05-18  Eric Carlson  <eric.carlson@apple.com>
2
3         Handle failure to extend sandbox gracefully
4         https://bugs.webkit.org/show_bug.cgi?id=185779
5         <rdar://problem/40316349>
6
7         Reviewed by Brent Fulgham.
8
9         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
10         * TestWebKitAPI/Tests/WebKitCocoa/UserMediaSimulateFailedSandbox.mm: Added.
11         (-[SimulateFailedSandboxMessageHandler userContentController:didReceiveScriptMessage:]):
12         (-[SimulateFailedSandboxUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
13         (-[SimulateFailedSandboxUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
14         (MediaCaptureSimulateFailedSandbox::SetUp):
15         (MediaCaptureSimulateFailedSandbox::loadTestAndWaitForMessage):
16         (TEST_F):
17         * TestWebKitAPI/Tests/WebKitCocoa/disableGetUserMedia.html:
18
19 2018-05-18  Daniel Bates  <dabates@apple.com>
20
21         "debug-safari --ios-simulator" creates lldb target to launch Mac Safari
22         https://bugs.webkit.org/show_bug.cgi?id=185774
23
24         Reviewed by Andy Estes.
25
26         For now, the script debug-safari is not supported for WebKit for iOS. To
27         fix this we differentiate between the Apple Mac port and Apple embedded
28         ports.
29
30         * Scripts/webkitdirs.pm:
31         (safariPath): Substitute isAppleMacWebKit() for isAppleCocoaWebKit().
32         (isAppleMacWebKit): Added.
33         (isAppleCocoaWebKit): Write in terms of isAppleMacWebKit() and isEmbeddedWebKit().
34         (launcherName): Substitute isAppleMacWebKit() for isAppleCocoaWebKit().
35         (mobileSafariBundle): Substitute isIOSWebKit() for isAppleCocoaWebKit().
36         (debugSafari): Substitute isAppleMacWebKit() for isAppleCocoaWebKit().
37         (runSafari): Ditto.
38         (runMiniBrowser): Ditto.
39         (debugMiniBrowser): Ditto.
40         (runWebKitTestRunner): Ditto.
41         (debugWebKitTestRunner): Ditto.
42
43 2018-05-18  Antoine Quint  <graouts@apple.com>
44
45         [Web Animations] Turn Web Animations with CSS integration on for test runners
46         https://bugs.webkit.org/show_bug.cgi?id=184819
47         <rdar://problem/39597337>
48
49         Unreviewed. Rolling out the patch for this bug, it caused some flaky timeouts for animation suspension tests.
50
51         * DumpRenderTree/TestOptions.cpp:
52         (TestOptions::TestOptions):
53         * DumpRenderTree/TestOptions.h:
54         * DumpRenderTree/mac/DumpRenderTree.mm:
55         (runTest):
56         (shouldOverrideAndDisableWebAnimationsCSSIntegrationPreference): Deleted.
57         * WebKitTestRunner/TestController.cpp:
58         (WTR::TestController::resetPreferencesToConsistentValues):
59         (WTR::updateTestOptionsFromTestHeader):
60         * WebKitTestRunner/TestOptions.cpp:
61         (WTR::TestOptions::TestOptions):
62         (WTR::isLegacyAnimationEngineTestPath): Deleted.
63         * WebKitTestRunner/TestOptions.h:
64
65 2018-05-18  Fujii Hironori  <Hironori.Fujii@sony.com>
66
67         [Win][MiniBrowser] Create MainWindow even in transparent mode
68         https://bugs.webkit.org/show_bug.cgi?id=185597
69
70         Reviewed by Per Arne Vollan.
71
72         The current implementations doesn't create the MainWindow in
73         transparent mode. The screenshot is in Bug 58300.
74
75         There were three problems:
76         - Can't control the WebView. ie. going backward and forward.
77         - Can't quit the program.
78         - It makes implementation complicated.
79
80         * MiniBrowser/win/Common.cpp (resizeSubViews): Resize sub views
81         even in the transparent mode.
82         * MiniBrowser/win/WinMain.cpp:
83         (wWinMain): Create the main window even in the transparent mode.
84
85 2018-05-18  Antoine Quint  <graouts@apple.com>
86
87         [Web Animations] Turn Web Animations with CSS integration on for test runners
88         https://bugs.webkit.org/show_bug.cgi?id=184819
89         <rdar://problem/39597337>
90
91         Reviewed by Jon Lee.
92
93         Make the test runners turn both the main Web Animations flag and the Web Animations CSS
94         integration flag on.
95
96         We also remove the ability to toggle the Web Animations CSS integration flag using an HTML
97         comment directly at the top of the file since test runners now set the flag on by default
98         and a dedicated directory exists for tests that need to run with this flag off.
99
100         * DumpRenderTree/TestOptions.cpp:
101         (TestOptions::TestOptions):
102         * DumpRenderTree/TestOptions.h:
103         * DumpRenderTree/mac/DumpRenderTree.mm:
104         (shouldOverrideAndDisableWebAnimationsCSSIntegrationPreference):
105         (runTest):
106         * WebKitTestRunner/TestController.cpp:
107         (WTR::TestController::resetPreferencesToConsistentValues):
108         (WTR::updateTestOptionsFromTestHeader):
109         * WebKitTestRunner/TestOptions.cpp:
110         (WTR::isLegacyAnimationEngineTestPath):
111         (WTR::TestOptions::TestOptions):
112         * WebKitTestRunner/TestOptions.h:
113
114 2018-05-17  Nan Wang  <n_wang@apple.com>
115
116         AX: [macOS] Expose the primary screen height through AX API
117         https://bugs.webkit.org/show_bug.cgi?id=185742
118
119         Reviewed by Chris Fleizach.
120
121         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
122         (attributesOfElement):
123         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
124         (WTR::attributesOfElement):
125
126 2018-05-17  Commit Queue  <commit-queue@webkit.org>
127
128         Unreviewed, rolling out r231912.
129         https://bugs.webkit.org/show_bug.cgi?id=185750
130
131         It is prompting the user when there is no WPT changes
132         (Requested by bmac on #webkit).
133
134         Reverted changeset:
135
136         "Export changes to web-platform-test as part of the webkit-
137         patch upload workflow"
138         https://bugs.webkit.org/show_bug.cgi?id=184914
139         https://trac.webkit.org/changeset/231912
140
141 2018-05-17  Valerie R Young  <valerie@bocoup.com>
142
143         test262/Runner.pm: expand $INC to find webkitdirs.pm
144         https://bugs.webkit.org/show_bug.cgi?id=185739
145
146         Reviewed by Michael Saboff.
147
148         * Scripts/test262/Runner.pm:
149         (getBuildPath):
150
151 2018-05-17  Carlos Alberto Lopez Perez  <clopez@igalia.com>
152
153         [WPE] Implement and enable FULLSCREEN_API
154         https://bugs.webkit.org/show_bug.cgi?id=185676
155
156         Reviewed by Žan Doberšek.
157
158         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
159         (testWebViewFullScreen):
160
161 2018-05-17  Brendan McLoughlin  <brendan@bocoup.com>
162
163         Export changes to web-platform-test as part of the webkit-patch upload workflow
164         https://bugs.webkit.org/show_bug.cgi?id=184914
165
166         Reviewed by Youenn Fablet.
167
168         * Scripts/webkitpy/tool/commands/upload.py:
169         (Upload):
170         (CreateBug.execute):
171         (WPTChangeExport):
172         * Scripts/webkitpy/tool/steps/__init__.py:
173         * Scripts/webkitpy/tool/steps/wptchangeexport.py: Added.
174         (WPTChangeExport):
175         (WPTChangeExport.options):
176         (WPTChangeExport.run):
177         * Scripts/webkitpy/w3c/common.py:
178         * Scripts/webkitpy/w3c/test_exporter.py:
179         (WebPlatformTestExporter):
180         (WebPlatformTestExporter.__init__):
181         (WebPlatformTestExporter.username):
182         (WebPlatformTestExporter.token):
183         (WebPlatformTestExporter._github):
184         (WebPlatformTestExporter._wpt_fork_branch_github_url):
185         (WebPlatformTestExporter._wpt_fork_remote):
186         (WebPlatformTestExporter._wpt_fork_push_url):
187         (WebPlatformTestExporter._git):
188         (WebPlatformTestExporter._branch_name):
189         (WebPlatformTestExporter._public_branch_name):
190         (WebPlatformTestExporter.has_wpt_changes):
191         (WebPlatformTestExporter._create_patch):
192         (WebPlatformTestExporter.create_git_patch):
193         (WebPlatformTestExporter._prompt_for_token):
194         (WebPlatformTestExporter._prompt_for_username):
195         (WebPlatformTestExporter._ensure_username_and_token):
196         (WebPlatformTestExporter._validate_and_save_token):
197         (WebPlatformTestExporter.push_to_wpt_fork):
198         (WebPlatformTestExporter.make_pull_request):
199         (WebPlatformTestExporter.delete_local_branch):
200         (parse_args):
201         (TestExporter): Deleted.
202         (TestExporter.__init__): Deleted.
203         (TestExporter._ensure_wpt_repository): Deleted.
204         (TestExporter._fetch_wpt_repository): Deleted.
205         (TestExporter._ensure_new_branch_name): Deleted.
206         (TestExporter.download_and_commit_patch): Deleted.
207         (TestExporter.clean): Deleted.
208         (TestExporter.create_branch_with_patch): Deleted.
209         (TestExporter.push_to_wpt_fork): Deleted.
210         (TestExporter.make_pull_request): Deleted.
211         (TestExporter.create_wpt_pull_request): Deleted.
212         (TestExporter.delete_local_branch): Deleted.
213         (TestExporter.create_git_patch): Deleted.
214         (TestExporter.create_upload_remote_if_needed): Deleted.
215         (TestExporter.do_export): Deleted.
216         * Scripts/webkitpy/w3c/test_exporter_unittest.py:
217         (TestExporterTest.test_export):
218         (TestExporterTest.test_export_with_specific_branch):
219         (TestExporterTest):
220         (TestExporterTest.test_export_interactive_mode):
221         (TestExporterTest.test_export_invalid_token):
222         (TestExporterTest.test_export_wrong_token):
223
224 2018-05-17  Valerie R Young  <valerie@bocoup.com>
225
226         test262/Runner.pm: look for jsc in path if cannot call webkit-build-directory
227         https://bugs.webkit.org/show_bug.cgi?id=185650
228
229         Reviewed by Michael Saboff.
230
231         First, use jsc from CLI arg, then try to use webkit-build-directory,
232         if that doesn't work, look for jsc in the $PATH
233
234         * Scripts/test262/Runner.pm:
235         (processCLI):
236         (getBuildPath):
237         (runTest):
238
239 2018-05-16  Leo Balter  <leonardo.balter@gmail.com>
240
241         Test262-Runner: Adds a --timeout option
242         https://bugs.webkit.org/show_bug.cgi?id=185696
243
244         Reviewed by Michael Saboff.
245
246         The timeout option is used to set a timeout execution in ms for each test run in JSC.
247         The passed value - if defined - will be used as the value for the JSC --watchdog arg.
248         * Scripts/test262/Runner.pm:
249         (processCLI):
250         (runTest):
251
252 2018-05-16  Leo Balter  <leonardo.balter@gmail.com>
253
254         Test262-Runner: Set timer for each test run
255         https://bugs.webkit.org/show_bug.cgi?id=185692
256
257         Reviewed by Michael Saboff.
258
259         Sets a high resolution timer for each execution call of JSC, reporting
260         the time in the results report to allow identifying slow tests.
261         * Scripts/test262/Runner.pm:
262         (main):
263         (processFile):
264         (runTest):
265         (processResult):
266
267 2018-05-16  Andy VanWagoner  <andy@vanwagoner.family>
268
269         Add support for Intl NumberFormat formatToParts
270         https://bugs.webkit.org/show_bug.cgi?id=185375
271
272         Reviewed by Yusuke Suzuki.
273
274         Add flag for NumberFormat formatToParts.
275
276         * Scripts/webkitperl/FeatureList.pm:
277         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
278
279 2018-05-14  Yusuke Suzuki  <utatane.tea@gmail.com>
280
281         [Win] Use C++17 in MSVC
282         https://bugs.webkit.org/show_bug.cgi?id=185232
283
284         Reviewed by Alex Christensen.
285
286         Do not use `using namespace std;`. In C++17, we have std::byte. This "byte"
287         conflicts with ::byte defined in Windows' header.
288
289         * DumpRenderTree/TestNetscapePlugIn/win/WindowedPluginTest.cpp:
290         (WindowedPluginTest::WindowedPluginTest):
291         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
292         (logEventProc):
293         (stringEvent):
294         (AccessibilityController::winNotificationReceived):
295         * DumpRenderTree/win/TextInputController.cpp:
296         (markedRangeCallback):
297         (firstRectForCharacterRangeCallback):
298         (selectedRangeCallback):
299         * DumpRenderTree/win/TextInputController.h:
300         * DumpRenderTree/win/TextInputControllerWin.cpp:
301         (TextInputController::markedRange):
302         (TextInputController::firstRectForCharacterRange):
303         (TextInputController::selectedRange):
304
305 2018-05-16  Sihui Liu  <sihui_liu@apple.com>
306
307         Session cookies aren't reliably set when using default WKWebSiteDataStore
308         https://bugs.webkit.org/show_bug.cgi?id=185624
309         <rdar://problem/39111626>
310
311         Reviewed by Geoffrey Garen.
312
313         Modified and enabled WebKit.WKHTTPCookieStoreWithoutProcessPool.
314
315         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
316         (-[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
317         (TEST):
318
319 2018-05-16  Valerie R Young  <valerie@bocoup.com>
320
321         test262/Runner.pm: save to supplied expectation file if supplied
322         https://bugs.webkit.org/show_bug.cgi?id=185660
323
324         Reviewed by Michael Saboff.
325
326         * Scripts/test262/Runner.pm:
327         (processCLI):
328         (main):
329
330 2018-05-15  Ryan Haddad  <ryanhaddad@apple.com>
331
332         Unreviewed, rolling out r231763.
333
334         The test added with this change is failing an assertion.
335
336         Reverted changeset:
337
338         "NSEvent event trackers don't work from WebKitTestRunner"
339         https://bugs.webkit.org/show_bug.cgi?id=185383
340         https://trac.webkit.org/changeset/231763
341
342 2018-05-15  David Kilzer  <ddkilzer@apple.com>
343
344         TestWebKitAPI: Fix warnings found by new clang compiler
345         <https://webkit.org/b/185631>
346
347         Reviewed by Michael Catanzaro.
348
349         * TestWebKitAPI/Tests/WTF/NakedPtr.cpp:
350         (TestWebKitAPI::TEST):
351         * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
352         (TestWebKitAPI::TEST):
353         * TestWebKitAPI/Tests/WTF/PoisonedRefPtr.cpp:
354         (TestWebKitAPI::TEST):
355         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
356         (TestWebKitAPI::TEST):
357         - Add #pragma statements to ignore the new
358           -Wself-assign-overloaded warning and to ignore
359           this as an unknown warning on older clang versions.  We want
360           to keep these self assigments as this code is designed to test
361           that use case.
362
363         * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
364         (TestWebKitAPI::didFindStringMatches):
365         - Replace the "rect = rect;" statement that was used to avoid an
366           unused variable warning with two expectations.
367
368         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
369         (-[PinnedStateObserver observeValueForKeyPath:ofObject:change:context:]):
370         - Switch from -integerValue to -unsignedIntegerValue when
371           comparing against _WKRectEdgeAll since it's an enum declared
372           as an NSUInteger.
373
374 2018-05-15  Michael Catanzaro  <mcatanzaro@igalia.com>
375
376         Unreviewed, rolling out r230749
377
378         This did not work as desired.
379
380         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
381         (TestWebKitAPI::TEST):
382
383 2018-05-15  Antoine Quint  <graouts@apple.com>
384
385         [Web Animations] Expose Web Animations CSS integration as an experimental feature
386         https://bugs.webkit.org/show_bug.cgi?id=185647
387
388         Reviewed by Dean Jackson.
389
390         Rename the Web Animations CSS integration flag.
391
392         * DumpRenderTree/TestOptions.cpp:
393         (TestOptions::TestOptions):
394         * DumpRenderTree/TestOptions.h:
395         * DumpRenderTree/mac/DumpRenderTree.mm:
396         (setWebPreferencesForTestOptions):
397         * WebKitTestRunner/TestController.cpp:
398         (WTR::TestController::resetPreferencesToConsistentValues):
399         (WTR::updateTestOptionsFromTestHeader):
400         * WebKitTestRunner/TestOptions.h:
401         (WTR::TestOptions::hasSameInitializationOptions const):
402
403 2018-05-14  Brady Eidson  <beidson@apple.com>
404
405         Add an API test to guard against regressions while re-entering setDefersLoading:.
406         <rdar://problem/37033737> and https://bugs.webkit.org/show_bug.cgi?id=185630
407
408         Reviewed by Chris Dumez.
409
410         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
411         * TestWebKitAPI/Tests/WebKitCocoa/DoubleDefersLoading.mm: Added.
412         (-[DoubleDefersNavigationDelegate _webView:navigation:didSameDocumentNavigation:]):
413         (-[DoubleDefersNavigationDelegate webView:didFinishNavigation:]):
414         (-[DefersScheme initWithBytes:]):
415         (-[DefersScheme webView:startURLSchemeTask:]):
416         (-[DefersScheme webView:stopURLSchemeTask:]):
417         * TestWebKitAPI/Tests/WebKitCocoa/DoubleDefersLoadingPlugin.mm: Added.
418         (-[DoubleDefersLoadingPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
419         (-[DoubleDefersLoadingPlugIn webProcessPlugInBrowserContextController:didSameDocumentNavigation:forFrame:]):
420         (-[DoubleDefersLoadingPlugIn dealloc]):
421
422 2018-05-14  Daniel Bates  <dabates@apple.com>
423
424         [iOS] Add a test to ensure that setTimeout() does not fire more than expected when using UIWebView
425         https://bugs.webkit.org/show_bug.cgi?id=185599
426         <rdar://problem/22493890>
427
428         Reviewed by Simon Fraser.
429
430         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
431         * TestWebKitAPI/Tests/ios/SetTimeoutFunction.mm: Added.
432         (-[SetTimeoutFunctionWebViewDelegate webViewDidFinishLoad:]):
433         (-[SetTimeoutFunctionWebViewDelegate webView:didFailLoadWithError:]):
434         (-[SetTimeoutFunctionWebViewDelegate webView:shouldStartLoadWithRequest:navigationType:]):
435         (TestWebKitAPI::TEST):
436         * TestWebKitAPI/ios/set-timeout-function.html: Added.
437
438 2018-05-14  Valerie R Young  <valerie@bocoup.com>
439
440         test262/Runner.pm: small bugs in CLI and error codes
441         https://bugs.webkit.org/show_bug.cgi?id=185629
442
443         Reviewed by Michael Saboff.
444
445         Fix two commandline args with use '-f', correct
446         error code of failures.
447
448         * Scripts/test262/Runner.pm:
449         (processCLI):
450         (main):
451
452 2018-05-14  Ryan Haddad  <ryanhaddad@apple.com>
453
454         Disable API tests that time out after pointer poisioning was disabled.
455         https://bugs.webkit.org/show_bug.cgi?id=185586
456
457         Unreviewed test gardening.
458
459         * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
460         (TestWebKitAPI::TEST):
461         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtr.cpp:
462         (TestWebKitAPI::TEST):
463         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForNonTriviallyDestructibleArrays.cpp:
464         (TestWebKitAPI::TEST):
465         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForTriviallyDestructibleArrays.cpp:
466         (TestWebKitAPI::TEST):
467
468 2018-05-14  Leo Balter  <leonardo.balter@gmail.com>
469
470         Test262-Runner: Fix RegExp for capturing tests metadata"
471         https://bugs.webkit.org/show_bug.cgi?id=185622
472
473         Reviewed by Michael Saboff.
474
475         This patch fixes the RegExp used to capture each test metadata regarding their EOL characters for
476         both LF and CRLF forms.
477
478         The fix also allows the runner to capture the proper results from two specific files using CR and
479         CRLF line terminators. They are updated in the expectations file.
480         * Scripts/test262/Runner.pm:
481         (parseData):
482
483 2018-05-14  Jeremy Jones  <jeremyj@apple.com>
484
485         NSEvent event trackers don't work from WebKitTestRunner
486         https://bugs.webkit.org/show_bug.cgi?id=185383
487         rdar://problem/40025045
488
489         Reviewed by Simon Fraser.
490
491         Post simulated wheel events to _sendEventToObservers: so they can be handled by NSEvent observers.
492         NSEvent swipe tracking is used for webkit swipe navigation.
493
494         * WebKitTestRunner/mac/EventSenderProxy.mm:
495         (WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
496
497 2018-05-11  Leo Balter  <leonardo.balter@gmail.com>
498
499         Test262 Runner should search for the Debug JSC by default
500         https://bugs.webkit.org/show_bug.cgi?id=185562
501
502         Reviewed by Michael Saboff.
503
504         The Test262 Runner is now searching for the Debug build of JSC by
505         default, not the Release build.
506
507         This fix allows a similar call from the previous runner, making
508         it compatible with the current build bot configuration parameters.
509
510         This patch also adds some minor improvements the verbose mode output.
511
512         * Scripts/test262/Runner.pm:
513         (processCLI):
514         (main):
515         (getBuildPath):
516         (processResult):
517
518 2018-05-11  Charles Vazac  <cvazac@gmail.com>
519
520         Runtime feature flag for Server-Timing
521         https://bugs.webkit.org/show_bug.cgi?id=184758
522
523         Reviewed by Youenn Fablet.
524
525         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: added ENABLE_SERVER_TIMING.
526         * DumpRenderTree/win/DumpRenderTree.cpp: enable Server Timing
527
528 2018-05-11  Fujii Hironori  <Hironori.Fujii@sony.com>
529
530         [Win][MiniBrowser] Move WK1 related code into MiniBrowser
531         https://bugs.webkit.org/show_bug.cgi?id=185418
532
533         Reviewed by Alex Christensen.
534
535         All WK1 related code should be moved into MiniBrowser for the preparation
536         of Bug 184770.
537
538         This change moves the initilization code of MiniBrowse into MiniBrowser::init().
539
540         * MiniBrowser/win/Common.cpp:
541         (getAppDataFolder): Removed `static` keyword to be called from MiniBrowser.cpp.
542         (setCacheFolder): This is only for WK1. Moved into MiniBrowser.cpp.
543         * MiniBrowser/win/Common.h: Added.
544         * MiniBrowser/win/MiniBrowser.cpp:
545         (MiniBrowser::init): Moved the initilization code from wWinMain.
546         (MiniBrowser::setCacheFolder): Moved from Common.cpp and made it a method.
547         * MiniBrowser/win/MiniBrowser.h:
548         (MiniBrowser::setCacheFolder): Changed to a private method.
549         (MiniBrowser::subclassForLayeredWindow): Changed to a private method.
550         * MiniBrowser/win/WinMain.cpp:
551         (wWinMain): Moved MiniBrowse initilization code into MiniBrowser.cpp.
552
553 2018-05-11  Brady Eidson  <beidson@apple.com>
554
555         Make sure history navigations reuse the existing process when necessary.
556         <rdar://problem/39746516> and https://bugs.webkit.org/show_bug.cgi?id=185532
557
558         Reviewed by Ryosuke Niwa.
559
560         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
561
562 2018-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
563
564         [JSC][GLIB] Add introspectable alternatives to functions using vargars
565         https://bugs.webkit.org/show_bug.cgi?id=185508
566
567         Reviewed by Michael Catanzaro.
568
569         Add test cases for the new API.
570
571         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
572         (testJSCFunction):
573         (testJSCObject):
574
575 2018-05-10  Leo Balter  <leonardo.balter@gmail.com>
576
577         [Build Bot] Restore configuration options to the Test262 Runner
578
579         During the switch from the previous Test262 runner to the new one,
580         a call for an extra configurations options got removed.
581
582         This call is important to inform the script to find the debug or
583         release build of JSC. It's being restored in this patch.
584
585         https://bugs.webkit.org/show_bug.cgi?id=185513
586
587         Reviewed by Yusuke Suzuki.
588
589         * BuildSlaveSupport/build.webkit.org-config/steps.py:
590         (RunTest262Tests):
591
592 2018-05-10  Jonathan Bedard  <jbedard@apple.com>
593
594         REGRESSION (r230998): Cannot stream API test output
595         https://bugs.webkit.org/show_bug.cgi?id=185090
596
597         Reviewed by Ryosuke Niwa.
598
599         Change run-api-tests so that the stdout and stderr of a test will be printed
600         before it's result. If -v is passed, the output of single test runs will be
601         streamed. 
602
603         * Scripts/webkitpy/api_tests/run_api_tests.py:
604         (run): Use print_timestamps flag.
605         (parse_args): Add timestamps option to print timestamps in the log.
606         * Scripts/webkitpy/api_tests/runner.py:
607         (Runner): Add running status.
608         (Runner.__init__): Add number of workers and a flag to detect if a newline
609         is needed at the beginning of a log line.
610         (Runner.run): Turn off most logging coming from server process since it is
611         not constructive for API tests.
612         (Runner.handle): Add new log message to stream stdout and stderr instead of
613         caching values until the test run finished.
614         (_Worker._run_single_test): Log stdout and stderr in real time.
615         (_Worker._run_shard_with_binary): Log stderr and stdout buffer before ending
616         the test.
617         (_Worker.post): Provide a post with explicitly enumerated argument names.
618         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
619         (MeteredStream.__init__): Differentiate verbose logging and logging with timestamps.
620         (MeteredStream.write): Allow for verbose logging without timestamps.
621         * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
622         (RegularTest): Add print_timestamps flag.
623         (RegularTest.setUp):
624         (RegularTest.test_logging_not_included):
625         (VerboseTest.test_log_args):
626         (VerboseWithOutTimestamp):
627         (VerboseWithOutTimestamp.test_basic): Add test for verbose logging without timestamps.
628
629 2018-05-10  Ryosuke Niwa  <rniwa@webkit.org>
630
631         build-webkit can erroneously warn about Xcode being too old
632         https://bugs.webkit.org/show_bug.cgi?id=185533
633
634         Reviewed by Dan Bernstein.
635
636         Don't assume the version number is always a single digit.
637
638         * Scripts/webkitdirs.pm:
639         (determineXcodeVersion):
640
641 2018-05-10  Ross Kirsling  <ross.kirsling@sony.com>
642
643         [WinCairo][Buildbot] Test bots need to acquire WinCairoRequirements.
644         https://bugs.webkit.org/show_bug.cgi?id=185528
645
646         Reviewed by Lucas Forschler.
647
648         * BuildSlaveSupport/build.webkit.org-config/factories.py:
649         (TestFactory.__init__):
650         * BuildSlaveSupport/build.webkit.org-config/steps.py:
651         (InstallWinCairoDependencies):
652
653 2018-05-10  Michael Catanzaro  <mcatanzaro@igalia.com>
654
655         Fix some -Wstring-op-truncation warnings
656         https://bugs.webkit.org/show_bug.cgi?id=185496
657
658         Reviewed by Alex Christensen.
659
660         We have an off-by-one in the use of strncpy. The strings would not be null-terminated if
661         the input was too long. Ensure the buffers are zero-initialized so we don't need to manually
662         set the last bucket to NUL.
663
664         * TestWebKitAPI/Tests/WTF/AtomicString.cpp:
665         (TestWebKitAPI::testAtomicStringNumber):
666         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
667         (TestWebKitAPI::testStringNumberFixedPrecision):
668         (TestWebKitAPI::testStringNumberFixedWidth):
669         (TestWebKitAPI::testStringNumber):
670
671 2018-05-10  Fujii Hironori  <Hironori.Fujii@sony.com>
672
673         [Win][MiniBrowser] Add a separate WndProc for the layered window
674         https://bugs.webkit.org/show_bug.cgi?id=185460
675
676         Reviewed by Brent Fulgham.
677
678         All WK1 related code should be moved into MiniBrowser for the
679         preparation of Bug 184770.
680
681         The layered window was using WndProc of the main window. The
682         layered window is specific only for WK1. the main window will be
683         shared among WK1 and WK2.
684
685         This change add a new WndProc for the layer window.
686
687         * MiniBrowser/win/Common.cpp:
688         (WndProc): Removed code for the layered windows.
689         (subclassForLayeredWindow): Moved into MiniBrowser.cpp.
690         * MiniBrowser/win/MiniBrowser.cpp:
691         (MiniBrowser::prepareViews): Removed the fourth argument `viewHwnd`.
692         (viewWndProc): New WndProc for the layered windows.
693         (MiniBrowser::subclassForLayeredWindow): Moved from Common.cpp.
694         * MiniBrowser/win/MiniBrowser.h:
695         (MiniBrowser::hwnd):
696         * MiniBrowser/win/WinMain.cpp:
697         (wWinMain): Added m_viewWnd.
698
699 2018-05-10  Stephan Szabo  <stephan.szabo@sony.com>
700
701         Support --verbose in run-javascriptcore-tests
702         https://bugs.webkit.org/show_bug.cgi?id=185492
703
704         Reviewed by Daniel Bates.
705
706         * Scripts/run-javascriptcore-tests:
707         (runJSCStressTests):
708
709 2018-05-10  Valerie R Young  <valerie@bocoup.com>
710
711         test262/Runner.pm: --failing-files uses results file not expectations
712         https://bugs.webkit.org/show_bug.cgi?id=185395
713
714         Reviewed by Michael Saboff.
715
716         --failing-files arg now uses results file to find failing tests
717         to rerun. It will look in the test262-results directory from whereever
718         the script is run, or a results.yaml file can be supplied via command
719         line argument.
720         --expectations arg added for suppling expectation file.
721
722         * Scripts/test262/Runner.pm:
723         (processCLI):
724         (main):
725         (loadImportFile):
726         (findAllFailing):
727
728 2018-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
729
730         [GTK] Add support for settings cookies policy and storage type in MiniBrowser
731         https://bugs.webkit.org/show_bug.cgi?id=185506
732
733         Reviewed by Philippe Normand.
734
735         Useful for testing and debugging.
736
737         * MiniBrowser/gtk/main.c:
738         (main):
739
740 2018-05-09  Chris Dumez  <cdumez@apple.com>
741
742         Unreviewed Windows build fix after r231622.
743
744         * DumpRenderTree/win/DumpRenderTree.cpp:
745         (enableExperimentalFeatures):
746
747 2018-05-09  Sihui Liu  <sihui_liu@apple.com>
748
749         Update WebKit.WebsiteDataStoreCustomPaths after r231536
750         https://bugs.webkit.org/show_bug.cgi?id=185486
751         <rdar://problem/37214391>
752
753         Reviewed by Chris Dumez.
754
755         Update WebKit.WebsiteDataStoreCustomPaths as _syncNetworkProcessCookies is async now.
756
757         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
758         (TEST):
759
760 2018-05-09  Leo Balter  <leonardo.balter@gmail.com>
761
762         Test262-Runner: Improve the verbose output
763         https://bugs.webkit.org/show_bug.cgi?id=185491
764
765         Reviewed by Michael Saboff.
766
767         * Scripts/test262/Import.pm:
768         (transferFiles):
769         * Scripts/test262/Runner.pm:
770         (processResult):
771
772 2018-05-09  Leo Balter  <leonardo.balter@gmail.com>
773
774         Fix Test262 Runner to have DYLD_FRAMEWORK_PATH always set
775         https://bugs.webkit.org/show_bug.cgi?id=185488
776
777         Reviewed by Michael Saboff.
778
779         * Scripts/test262/Runner.pm:
780         (processCLI):
781         (getBuildPath):
782         (runTest):
783
784 2018-05-09  Richard Houle  <rhoule@apple.com>
785
786         [Cocoa] Some fields are not identified as [WKWebProcessPlugInNodeHandle isTextField]
787         https://bugs.webkit.org/show_bug.cgi?id=185260
788         <rdar://problem/39290394>
789
790         Reviewed by Tim Horton.
791
792         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
793         * TestWebKitAPI/Tests/WebKitCocoa/InjectedBundleNodeHandleIsTextField.mm: Added.
794         (-[InjectedBundleNodeHandleIsTextField isTextFieldForHTMLInputType:document:jsContext:]):
795         (-[InjectedBundleNodeHandleIsTextField webProcessPlugIn:didCreateBrowserContextController:]):
796         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
797         (-[InjectedBundleNodeHandleIsTextFieldDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
798
799 2018-05-09  Thibault Saunier  <tsaunier@igalia.com>
800
801         [tests][GStreamer]: Pass USE_PLAYBIN3 to the tests subprocess
802         https://bugs.webkit.org/show_bug.cgi?id=185481
803
804         Reviewed by Philippe Normand.
805
806         [tests][GStreamer]: Pass USE_PLAYBIN3 to the tests subprocess
807
808         * Scripts/webkitpy/port/gtk.py:
809         (GtkPort.setup_environ_for_server):
810
811 2018-05-09  Leo Balter  <leonardo.balter@gmail.com>
812
813         Set build.webkit.org to use the new Test262-runner
814         https://bugs.webkit.org/show_bug.cgi?id=184933
815
816         Reviewed by Aakash Jain.
817
818         * BuildSlaveSupport/build.webkit.org-config/steps.py:
819         (RunTest262Tests):
820         (RunTest262Tests.countFailures):
821         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
822
823 2018-05-09  Carlos Eduardo Ramalho  <cadubentzen@gmail.com>
824
825         [GTK][JHBuild] LLVM 3.7.0 build is broken with GCC 8.1
826         https://bugs.webkit.org/show_bug.cgi?id=185461
827
828         Reviewed by Michael Catanzaro.
829
830         JHBuild now compiles LLVM 6 and Mesa 18.0.3.
831
832         * gtk/jhbuild.modules:
833
834 2018-05-09  Michael Catanzaro  <mcatanzaro@igalia.com>
835
836         Unreviewed. Update OptionsWPE.cmake and NEWS for 2.21.1 release.
837
838         * wpe/manifest.txt.in: Distribute the NEWS.
839
840 2018-05-09  Michael Catanzaro  <mcatanzaro@igalia.com>
841
842         [WPE] Build cleanly with GCC 8 and ICU 60
843         https://bugs.webkit.org/show_bug.cgi?id=185462
844
845         Reviewed by Carlos Alberto Lopez Perez.
846
847         * TestWebKitAPI/CMakeLists.txt: Fix weird build failure, we were missing a directory. Not
848         sure why this was never noticed until now or why the bots are OK.
849         * gtk/jhbuild.modules: Add upstream patch to avoid warnings inside G_DEFINE_TYPE.
850         * gtk/patches/glib-cast-function-type.patch: Added.
851         * wpe/jhbuild.modules: Add upstream patch to avoid warnings inside G_DEFINE_TYPE.
852         * wpe/patches/glib-cast-function-type.patch: Added.
853
854 2018-05-06  Yusuke Suzuki  <utatane.tea@gmail.com>
855
856         [JSC][GTK][JSCONLY] Use capstone disassembler
857         https://bugs.webkit.org/show_bug.cgi?id=185283
858
859         Reviewed by Michael Catanzaro.
860
861         * gtk/manifest.txt.in:
862         * wpe/manifest.txt.in:
863
864 2018-05-09  Antti Koivisto  <antti@apple.com>
865
866         Add OptionSet::operator& and operator bool
867         https://bugs.webkit.org/show_bug.cgi?id=185306
868
869         Reviewed by Anders Carlsson.
870
871         * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
872         (TestWebKitAPI::TEST):
873
874 2018-05-08  Wenson Hsieh  <wenson_hsieh@apple.com>
875
876         Consolidate WebContentReaderIOS and WebContentReaderMac into WebContentReaderCocoa
877         https://bugs.webkit.org/show_bug.cgi?id=185340
878
879         Reviewed by Tim Horton.
880
881         Adds a new API test to verify that URLs written using -[NSPasteboard writeObjects:] are pasted as anchors with
882         non-empty text in a contenteditable.
883
884         * TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:
885         (TestWebKitAPI::TEST):
886
887 2018-05-08  Valerie R Young  <valerie@bocoup.com>
888
889         test262/Runner.pm: create results dir for results of test262 run
890         https://bugs.webkit.org/show_bug.cgi?id=185392
891
892         Reviewed by Michael Saboff.
893
894         New directory test262-results created from where ever script is
895         called.
896
897         * Scripts/test262/Runner.pm:
898         (processCLI):
899
900 2018-05-08  Valerie R Young  <valerie@bocoup.com>
901
902         test262/Runner.pm: lower number of processes per core
903         https://bugs.webkit.org/show_bug.cgi?id=185426
904
905         Reviewed by Michael Saboff.
906
907         * Scripts/test262/Runner.pm:
908         (getProcesses):
909
910 2018-05-08  Leo Balter  <leonardo.balter@gmail.com>
911
912         Test262-Runner: Add base Perl UnicodeData
913         https://bugs.webkit.org/show_bug.cgi?id=185444
914
915         Reviewed by Michael Saboff.
916
917         * Scripts/test262/local/lib/perl5/unicore/lib/gc_sc/SpacePer.pl: Added.
918         * Scripts/test262/local/lib/perl5/unicore/lib/gc_sc/Word.pl: Added.
919
920 2018-05-08  Daniel Bates  <dabates@apple.com>
921
922         Add tests to ensure that the Strong Password appearance is removed on form reset
923         https://bugs.webkit.org/show_bug.cgi?id=185440
924
925         Reviewed by Ryosuke Niwa.
926
927         * TestWebKitAPI/Tests/WebKitCocoa/DidResignInputElementStrongPasswordAppearance.mm:
928         (-[DidResignInputElementStrongPasswordAppearance webProcessPlugIn:didCreateBrowserContextController:]):
929         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
930         (TEST):
931
932 2018-05-08  Daniel Bates  <dabates@apple.com>
933
934         Resign Strong Password appearance when text field value changes
935         https://bugs.webkit.org/show_bug.cgi?id=185433
936         <rdar://problem/39958508>
937
938         Reviewed by Ryosuke Niwa.
939
940         Add a unit test to ensure the injected bundle API and WebKit UI delegate SPI is invoked
941         when the field has the Strong Password button and its value changes.
942
943         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
944         (testDidResignInputElementStrongPasswordAppearanceAfterEvaluatingJavaScript):
945         (TEST):
946
947 2018-05-06  Filip Pizlo  <fpizlo@apple.com>
948
949         InPlaceAbstractState::beginBasicBlock shouldn't have to clear any abstract values
950         https://bugs.webkit.org/show_bug.cgi?id=185365
951
952         Reviewed by Saam Barati.
953         
954         Make it possible to measure compile times.
955         
956         Rolling back in after fixing cloop builds.
957
958         * Scripts/run-jsc-benchmarks:
959
960 2018-05-08  Wenson Hsieh  <wenson_hsieh@apple.com>
961
962         [iOS] WKAttachmentTestsIOS.InsertDroppedItemProvidersInOrder fails after r231396
963         https://bugs.webkit.org/show_bug.cgi?id=185414
964
965         Reviewed by Tim Horton.
966
967         Adjust a test expectation to check that the resulting DOM contains an attachment element,
968         anchor element, and another attachment element in that order. This ensures that the test
969         still passes, even after the anchor element is followed by a line break.
970
971         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
972         (TestWebKitAPI::TEST):
973
974 2018-05-08  Commit Queue  <commit-queue@webkit.org>
975
976         Unreviewed, rolling out r231491.
977         https://bugs.webkit.org/show_bug.cgi?id=185434
978
979         Setting the Created key on a cookie does not work yet, due a
980         bug in CFNetwork (Requested by ggaren on #webkit).
981
982         Reverted changeset:
983
984         "[WKHTTPCookieStore getAllCookies] returns inconsistent
985         creation time"
986         https://bugs.webkit.org/show_bug.cgi?id=185041
987         https://trac.webkit.org/changeset/231491
988
989 2018-05-08  Valerie R Young  <valerie@bocoup.com>
990
991         test262/Runner.pm: move input files to JSTests/test262
992         https://bugs.webkit.org/show_bug.cgi?id=185389
993
994         Reviewed by Michael Saboff.
995
996         * Scripts/test262/Runner.pm:
997         (processCLI):
998
999 2018-05-08  Chris Dumez  <cdumez@apple.com>
1000
1001         Unreviewed, simplify Speedometer fixes landed in r231489, r231483 & r231474.
1002
1003         * Scripts/webkitpy/performance_tests/perftest.py:
1004         (PerfTest):
1005
1006 2018-05-08  Ryan Haddad  <ryanhaddad@apple.com>
1007
1008         Unreviewed, rolling out r231468.
1009
1010         Broke the CLoop build
1011
1012         Reverted changeset:
1013
1014         "InPlaceAbstractState::beginBasicBlock shouldn't have to clear
1015         any abstract values"
1016         https://bugs.webkit.org/show_bug.cgi?id=185365
1017         https://trac.webkit.org/changeset/231468
1018
1019 2018-05-08  Sihui Liu  <sihui_liu@apple.com>
1020
1021         [WKHTTPCookieStore getAllCookies] returns inconsistent creation time
1022         https://bugs.webkit.org/show_bug.cgi?id=185041
1023         <rdar://problem/34684214>
1024
1025         Reviewed by Geoffrey Garen.
1026
1027         Add API test Coverage.
1028
1029         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
1030         (TEST):
1031
1032 2018-05-08  Chris Dumez  <cdumez@apple.com>
1033
1034         Unreviewed, fix issue with running Speedometer PerfTest after r231450.
1035
1036         * Scripts/webkitpy/performance_tests/perftest.py:
1037         (PerfTest):
1038
1039 2018-05-08  Chris Dumez  <cdumez@apple.com>
1040
1041         Unreviewed, fix issue with running Speedometer PerfTest after r231450.
1042
1043         * Scripts/webkitpy/performance_tests/perftest.py:
1044         (PerfTest):
1045
1046 2018-05-07  Chris Dumez  <cdumez@apple.com>
1047
1048         Unreviewed, fix issue with running Speedometer PerfTest after r231450.
1049
1050         * Scripts/webkitpy/performance_tests/perftest.py:
1051         (PerfTest):
1052
1053 2018-05-06  Filip Pizlo  <fpizlo@apple.com>
1054
1055         InPlaceAbstractState::beginBasicBlock shouldn't have to clear any abstract values
1056         https://bugs.webkit.org/show_bug.cgi?id=185365
1057
1058         Reviewed by Saam Barati.
1059         
1060         Make it possible to measure compile times.
1061
1062         * Scripts/run-jsc-benchmarks:
1063
1064 2018-05-07  Leo Balter  <leonardo.balter@gmail.com>
1065
1066         Test262-Runner: Add base module to the local deps - unicore/Exact.pl
1067         https://bugs.webkit.org/show_bug.cgi?id=185390
1068
1069         Reviewed by Michael Saboff.
1070
1071         * Scripts/test262/local/lib/perl5/unicore/Exact.pl: Added.
1072
1073 2018-05-07  Jonathan Bedard  <jbedard@apple.com>
1074
1075         Check for com.apple.datamigrator before declaring simulators booted
1076         https://bugs.webkit.org/show_bug.cgi?id=185315
1077         <rdar://problem/39986261>
1078
1079         Reviewed by David Kilzer.
1080
1081         * Scripts/webkitdirs.pm:
1082         (waitUntilProcessNotRunning): Wait until a process is not found.
1083         (relaunchIOSSimulator): Wait until com.apple.datamigrator stops running to declare
1084         a simulator booted.
1085         * Scripts/webkitpy/common/system/executive_mock.py:
1086         (MockExecutive2.__init__): Define _running_pids.
1087         * Scripts/webkitpy/xcode/simulated_device.py:
1088         (SimulatedDeviceManager.initialize_devices): Call wait_until_data_migration_is_done before
1089         declaring that devices have been booted, increase the timeout since data migration will frequently
1090         take longer than 60 seconds, especially with multiple simulators booting.
1091         (SimulatedDeviceManager.swap): Ditto.
1092         (SimulatedDeviceManager):
1093         (SimulatedDeviceManager.wait_until_data_migration_is_done): Wait until there are no com.apple.datamigrator
1094         processes running.
1095
1096 2018-05-07  Daniel Bates  <dabates@apple.com>
1097
1098         REGRESSION (r229955): run-webkit-tests runs tests in skipped directories and subdirectories of directory given on command line
1099         https://bugs.webkit.org/show_bug.cgi?id=185054
1100         <rdar://problem/39773209>
1101
1102         Reviewed by Ryosuke Niwa.
1103
1104         Fallback to MacPort.CURRENT_VERSION if we are not using a known named macOS and do not have Apple Additions.
1105
1106         Darwin-based ports have OS version-specific test expectations and are certified to support running tests using
1107         the currently shipping OS by way of a hardcoded class variable CURRENT_VERSION. The run-webkit-tests script
1108         depends on the OS version to find the applicable TestExpectations files to parse to compute the list of skipped
1109         tests for the port.
1110
1111         * Scripts/webkitpy/port/mac.py:
1112         (MacPort.__init__): Fall back to MacPort.CURRENT_VERSION if we are not using a known named macOS and do not
1113         have Apple Additions.
1114         * Scripts/webkitpy/port/mac_unittest.py:
1115         (MacTest.test_factory_with_future_version): Added.
1116         (MacTest.test_factory_with_future_version_and_apple_additions): Renamed from MacTest.test_factory_with_future_version()
1117         and added code to use the mock Apple Additions so that running this code with- and without- the real Apple Additions
1118         produces consistent results now that the Mac port's OS version falls back to MacPort.CURRENT_VERSION when Apple Additions
1119         is absent.
1120
1121 2018-05-07  Brian Burg  <bburg@apple.com>
1122
1123         Web Inspector: opt out of process swap on navigation if a Web Inspector frontend is connected
1124         https://bugs.webkit.org/show_bug.cgi?id=184861
1125         <rdar://problem/39153768>
1126
1127         Reviewed by Timothy Hatcher.
1128
1129         Add a new test that checks whether a new process is used for navigation when
1130         an Inspector is shown. Also check that the behavior reverts to normal after
1131         the Inspector has been closed.
1132
1133         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1134
1135 2018-05-04  Wenson Hsieh  <wenson_hsieh@apple.com>
1136
1137         [iOS] Multiple links in Mail are dropped in a single line, and are difficult to tell apart
1138         https://bugs.webkit.org/show_bug.cgi?id=185289
1139         <rdar://problem/35756912>
1140
1141         Reviewed by Tim Horton and Darin Adler.
1142
1143         Augment and rebaseline some iOS drag-and-drop API tests that handle dropping URLs as a part of multi-item drop
1144         sessions.
1145
1146         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1147         (TestWebKitAPI::TEST):
1148
1149 2018-05-04  Timothy Hatcher  <timothy@apple.com>
1150
1151         Deprecate legacy WebView and friends
1152         https://bugs.webkit.org/show_bug.cgi?id=185279
1153         rdar://problem/33268700
1154
1155         Reviewed by Tim Horton.
1156
1157         * MiniBrowser/Configurations/Base.xcconfig: Added GCC_PREPROCESSOR_DEFINITIONS
1158         to define DISABLE_LEGACY_WEBKIT_DEPRECATIONS.
1159
1160 2018-05-04  Leo Balter  <leonardo.balter@gmail.com>
1161
1162         Test262-Runner: Add base module to the local deps - unicore/PVA.pl
1163         https://bugs.webkit.org/show_bug.cgi?id=185314
1164
1165         Reviewed by Michael Saboff.
1166
1167         * Scripts/test262/local/lib/perl5/unicore/PVA.pl: Added.
1168
1169 2018-05-04  Wenson Hsieh  <whsieh@berkeley.edu>
1170
1171         REGRESSION: [ios-simulator] 3 WKWebViewAutofillTests API test failures seen with 11.3 SDK
1172         https://bugs.webkit.org/show_bug.cgi?id=184196
1173         <rdar://problem/39054481>
1174
1175         Reviewed by Tim Horton.
1176
1177         Removes some unnecessary workarounds to enable running app autofill tests against iOS versions
1178         earlier than 11.3. Also re-enables these tests.
1179
1180         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
1181         (TestWebKitAPI::TEST):
1182         (-[UITextAutofillSuggestion initWithUsername:password:]): Deleted.
1183         (+[UITextAutofillSuggestion autofillSuggestionWithUsername:password:]): Deleted.
1184
1185 2018-05-04  Myles C. Maxfield  <mmaxfield@apple.com>
1186
1187         Text shaping in the simple path is flipped in the y direction
1188         https://bugs.webkit.org/show_bug.cgi?id=185062
1189         <rdar://problem/39778678>
1190
1191         Reviewed by Simon Fraser.
1192
1193         Huge thanks to Ulrike Rausch of LiebeFonts for contributing the test fonts!!!
1194
1195         * Scripts/webkitpy/common/config/contributors.json:
1196
1197 2018-05-04  Leo Balter  <leonardo.balter@gmail.com>
1198
1199         Test262-Runner: place the processCLI inside the main call
1200         https://bugs.webkit.org/show_bug.cgi?id=185304
1201
1202         Reviewed by Michael Saboff.
1203
1204         * Scripts/test262/Runner.pm:
1205         (main):
1206
1207 2018-05-04  Carlos Garcia Campos  <cgarcia@igalia.com>
1208
1209         [GTK] Epiphany (GNOME Web) says "Error downloading: Service Unavailable." when trying to download an image from discogs.com
1210         https://bugs.webkit.org/show_bug.cgi?id=174730
1211
1212         Reviewed by Michael Catanzaro.
1213
1214         Update unit tests to check that User-Agent header is included in HTTP download requests.
1215
1216         * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
1217         (testDownloadRemoteFile):
1218         (testWebViewDownloadURI):
1219         (testPolicyResponseDownload):
1220         (testPolicyResponseDownloadCancel):
1221         (testDownloadMIMEType):
1222         (testContextMenuDownloadActions):
1223
1224 2018-05-03  Ross Kirsling  <ross.kirsling@sony.com>
1225
1226         [WinCairo] Test archive must use Python zipfile, just like build product.
1227         https://bugs.webkit.org/show_bug.cgi?id=185265
1228
1229         Reviewed by Per Arne Vollan.
1230
1231         * BuildSlaveSupport/test-result-archive:
1232         (archive_test_results):
1233         Copy over Win32-oriented archiving logic from built-product-archive.
1234
1235 2018-05-03  Leo Balter  <leonardo.balter@gmail.com>
1236
1237         cleanup modules usage for the Test262-Runner
1238         https://bugs.webkit.org/show_bug.cgi?id=185263
1239
1240         Reviewed by Michael Saboff.
1241
1242         * Scripts/test262-runner:
1243         * Scripts/test262/Runner.pm:
1244         (processCLI):
1245
1246 2018-05-03  Valerie R Young  <valerie@bocoup.com>
1247
1248         test262/Runner.pm: minor fixes
1249         https://bugs.webkit.org/show_bug.cgi?id=185250
1250
1251         Reviewed by Michael Saboff.
1252
1253         Add comments, change output and fix bug: unintended interpolation
1254         of filename when running jsc.
1255
1256         * Scripts/test262/Runner.pm:
1257         (processCLI):
1258         (main):
1259         (runTest):
1260
1261 2018-05-03  Chris Dumez  <cdumez@apple.com>
1262
1263         Load hangs if the WebProcess fails to launch
1264         https://bugs.webkit.org/show_bug.cgi?id=185225
1265         <rdar://problem/38249058>
1266
1267         Reviewed by Geoff Garen.
1268
1269         Add API test coverage.
1270
1271         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1272         * TestWebKitAPI/Tests/WebKitCocoa/WebContentProcessDidTerminate.mm: Added.
1273         (-[CrashOnStartNavigationDelegate _webView:webContentProcessDidTerminateWithReason:]):
1274         (-[CrashOnStartNavigationDelegate webView:didFinishNavigation:]):
1275         (-[CrashRecoveryScriptMessageHandler userContentController:didReceiveScriptMessage:]):
1276         (TEST):
1277
1278 2018-05-03  Don Olmstead  <don.olmstead@sony.com>
1279
1280         [WinCairo] Add JSC test bots
1281         https://bugs.webkit.org/show_bug.cgi?id=185234
1282
1283         Reviewed by Per Arne Vollan.
1284
1285         * BuildSlaveSupport/build.webkit.org-config/config.json:
1286         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1287         (RunJavaScriptCoreTests.start):
1288
1289 2018-05-03  Michael Catanzaro  <mcatanzaro@igalia.com>
1290
1291         WebKit should send fake macOS user agent to docs.google.com
1292         https://bugs.webkit.org/show_bug.cgi?id=185165
1293
1294         Reviewed by Carlos Garcia Campos.
1295
1296         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
1297         (TestWebKitAPI::TEST):
1298
1299 2018-05-03  Valerie R Young  <valerie@bocoup.com>
1300
1301         test262/Runner.pm: performance improvements
1302         https://bugs.webkit.org/show_bug.cgi?id=185202
1303
1304         Reviewed by Michael Saboff.
1305
1306         Batch the tests by the number of processes, and give each process
1307         a file to save results to to avoid threading. Do not parallelize
1308         when running small sets of tests.
1309
1310         * Scripts/test262/Runner.pm:
1311         (processCLI):
1312         (main):
1313         (processFile):
1314         (processResult):
1315
1316 2018-05-03  Ryan Haddad  <ryanhaddad@apple.com>
1317
1318         Unreviewed, rolling out r231253.
1319
1320         The API test added with this change is crashing on the bots.
1321
1322         Reverted changeset:
1323
1324         "Web Inspector: opt out of process swap on navigation if a Web
1325         Inspector frontend is connected"
1326         https://bugs.webkit.org/show_bug.cgi?id=184861
1327         https://trac.webkit.org/changeset/231253
1328
1329 2018-05-03  Carlos Garcia Campos  <cgarcia@igalia.com>
1330
1331         REGRESSION(r222772): [GTK][WPE] WebProcess from WebKitGtk+ 2.19.9x SIGSEVs in WebKit::WebProcess::ensureNetworkProcessConnection() at Source/WebKit/WebProcess/WebProcess.cpp:1127
1332         https://bugs.webkit.org/show_bug.cgi?id=183348
1333
1334         Reviewed by Michael Catanzaro.
1335
1336         Add a test case to reproduce the crash.
1337
1338         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1339         (testWebViewCloseQuickly):
1340         (beforeAll):
1341
1342 2018-05-02  Aditya Keerthi  <akeerthi@apple.com>
1343
1344         Can't copy and paste URLs that have no title into Mail (macOS)
1345         https://bugs.webkit.org/show_bug.cgi?id=185205
1346         <rdar://problem/36352406>
1347
1348         Reviewed by Tim Horton.
1349
1350         Added test to verify behavior when copying and pasting a URL without a title.
1351
1352         * TestWebKitAPI/Tests/mac/ContextMenuCanCopyURL.html:
1353         * TestWebKitAPI/Tests/mac/ContextMenuCanCopyURL.mm:
1354         (TestWebKitAPI::TEST):
1355
1356 2018-05-02  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1357
1358         [GTK] Generate a JSC bundle on the 64 and 32 bit release bots and upload it to webkitgtk.org (follow-up fix)
1359         https://bugs.webkit.org/show_bug.cgi?id=184699
1360
1361         Unreviewed follow-up fix after r231230.
1362
1363         * Scripts/generate-jsc-bundle:
1364         (generate_wrapper_script): Quote the arguments passed to jsc.
1365
1366 2018-05-02  Brian Burg  <bburg@apple.com>
1367
1368         Web Inspector: opt out of process swap on navigation if a Web Inspector frontend is connected
1369         https://bugs.webkit.org/show_bug.cgi?id=184861
1370         <rdar://problem/39153768>
1371
1372         Reviewed by Ryosuke Niwa.
1373
1374         Add a new test that checks whether a new process is used for navigation when
1375         an Inspector is shown. Also check that the behavior reverts to normal after
1376         the Inspector has been closed.
1377
1378         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1379
1380 2018-05-02  Valerie R Young  <valerie@bocoup.com>
1381
1382         test262/Runner.pm: save summary to file
1383         https://bugs.webkit.org/show_bug.cgi?id=185200
1384
1385         Reviewed by Michael Saboff.
1386
1387         * Scripts/test262/Runner.pm:
1388         (processCLI):
1389         (main):
1390         (summarizeResults):
1391
1392 2018-05-02  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1393
1394         [GTK] Generate a JSC bundle on the 64 and 32 bit release bots and upload it to webkitgtk.org
1395         https://bugs.webkit.org/show_bug.cgi?id=184699
1396
1397         Reviewed by Gustavo Noronha Silva.
1398
1399         This adds a new step for the GTK 64-bit release build bot and the
1400         GTK 32-bit release build&test bot.
1401
1402         This step will be run as one of the lasts ones (after the product
1403         is built) and will execute the script generate-jsc-bundle.
1404         This script will take care of creating a JSC bundle and uploading
1405         it to a server defined on a configuration file that has to be
1406         deployed on the bots with the required server data and credentials
1407         for this upload.
1408
1409         In this case, the built products should then be accessible at
1410         <https://webkitgtk.org/jsc-built-products>. But the implementation
1411         is not tied to any specific server. All the details about where
1412         to upload the file is done in configuration file that is kept
1413         private on each bot outside of the WebKit source tree.
1414
1415         The script also supports generating a JSC bundle locally and not
1416         uploading it anywhere. This is the default mode of running.
1417         The remote upload will only be activated if a --remote-config-file
1418         parameter is passed (which is done from the buildbot config)
1419
1420         * BuildSlaveSupport/build.webkit.org-config/config.json:
1421         * BuildSlaveSupport/build.webkit.org-config/factories.py:
1422         (BuildFactory):
1423         (BuildFactory.__init__):
1424         (TestFactory):
1425         (TestFactory.__init__):
1426         (BuildAndGenerateJSCBundleFactory):
1427         (BuildAndNonLayoutTestAndGenerateJSCBundleFactory):
1428         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1429         (GenerateJSCBundle):
1430         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
1431         * Scripts/generate-jsc-bundle: Added.
1432         (ldd_get_libs_and_interpreter):
1433         (generate_readme):
1434         (generate_wrapper_script):
1435         (copy_and_remove_rpath):
1436         (createJSCBundle):
1437         (sha256sum):
1438         (uploadJSCBundle):
1439         (main):
1440
1441 2018-05-01  Ryosuke Niwa  <rniwa@webkit.org>
1442
1443         PSON: Make WebKitTestRunner work with process swap on navigation turned on
1444         https://bugs.webkit.org/show_bug.cgi?id=185111
1445
1446         Reviewed by Chris Dumez.
1447
1448         Add the basic support for running layout tests with process-swap-on-navigation turned on.
1449
1450         First, move m_whatToDump, m_dumpPixels, m_waitToDump, and m_dumpFrameLoadCallbacks from WebContent process
1451         to UI process so that calls to waitUntilDone, dumpAsText, etc... persist across process swaps.
1452
1453         In addition, initialize the injected bundle inside a new WebContent process when the first page is created.
1454         This instantiates objects such as TestRunner, GCController, etc... in the new process. The initialization
1455         can't be done in InjectedBundle::beginTesting because some steps in InjectedBundle::initialize require
1456         the current PageGroup and Page objects. We avoid clearing databases and app cache in this case.
1457
1458         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1459         (WTR::InjectedBundle::didCreatePage): Send "Initialization" message to UI process. This message returns
1460         all the dictionary values usually present in "BeginTest" message from UI process as well as "ResumeTesting"
1461         boolean which is set when this process was created as a result of a process swap on navgation. Invoke
1462         beginTesting with BegingTestingMode::Resume when this boolean is set.
1463         (WTR::InjectedBundle::didReceiveMessageToPage):
1464         (WTR::InjectedBundle::beginTesting): Don't clear database, app cache, etc... when initializing an injected
1465         bundle after a process swap on navigation.
1466         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
1467         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1468         (WTR::InjectedBundlePage::dump):
1469         (WTR::InjectedBundlePage::frameDidChangeLocation):
1470         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1471         (WTR::TestRunner::TestRunner):
1472         (WTR::TestRunner::shouldDumpPixels const): Added.
1473         (WTR::TestRunner::setDumpPixels): Added.
1474         (WTR::TestRunner::dumpAsText):
1475         (WTR::TestRunner::whatToDump const): Added.
1476         (WTR::TestRunner::setWhatToDump): Added.
1477         (WTR::TestRunner::waitUntilDone):
1478         (WTR::TestRunner::setWaitUntilDone): Added.
1479         (WTR::TestRunner::shouldWaitUntilDone): Added.
1480         (WTR::TestRunner::notifyDone):
1481         (WTR::TestRunner::forceImmediateCompletion):
1482         (WTR::TestRunner::setShouldDumpFrameLoadCallbacks): Added.
1483         (WTR::TestRunner::shouldDumpFrameLoadCallbacks): Added.
1484         (WTR::TestRunner::setAudioResult):
1485         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1486         (WTR::TestRunner::dumpChildFramesAsText):
1487         (WTR::TestRunner::dumpDOMAsWebArchive):
1488         (WTR::TestRunner::setShouldDumpFrameLoadCallbacks): Moved to cpp.
1489         (WTR::TestRunner::whatToDump const): Moved to cpp.
1490         (WTR::TestRunner::shouldDumpMainFrameScrollPosition const):
1491         (WTR::TestRunner::shouldDumpPixels const): Moved to cpp.
1492         (WTR::TestRunner::shouldDumpFrameLoadCallbacks const): Moved to cpp.
1493         (WTR::TestRunner::waitToDump const): Renamed to shouldWaitUntilDone and moved to cpp.
1494         * WebKitTestRunner/TestInvocation.cpp:
1495         (WTR::TestInvocation::TestInvocation): Initialize m_dumpFrameLoadCallbacks here.
1496         (WTR::TestInvocation::shouldLogFrameLoadDelegates const): Deleted.
1497         (WTR::TestInvocation::createTestSettingsDictionary): Extracted from invoke().
1498         (WTR::TestInvocation::invoke): Sets m_startedTesting to true immediately afte sending "BeginTest" message.
1499         m_startedTesting is later used in didReceiveSynchronousMessageFromInjectedBundle to detect whether a given
1500         "Initialization" message is sent from a regular WebContent process (m_startedTesting is false) or the one
1501         started as a result of a process swap on navigation (m_startedTesting is true).
1502         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle): Added a bunch of new messgaes to
1503         support initializing the injected bundle in a process swapped after navigation and set/get messages for
1504         the states which must persist across process swaps within a test.
1505         * WebKitTestRunner/TestInvocation.h:
1506         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1507         * Tools/WebKitTestRunner/WhatToDump.h:
1508         (WTR::WhatToDump): Added.
1509
1510 2018-05-01  Leo Balter  <leonardo.balter@gmail.com>
1511
1512         Auto save the results for Test262
1513         https://bugs.webkit.org/show_bug.cgi?id=184926
1514
1515         Reviewed by Michael Saboff.
1516
1517         * Scripts/test262/Runner.pm:
1518         (processCLI):
1519         (main):
1520         (parseError):
1521         (processResult):
1522         (summarizeResults):
1523         * Scripts/test262/config.yaml: Renamed from Tools/Scripts/test262/test262-config.yaml.
1524
1525 2018-05-01  Jonathan Bedard  <jbedard@apple.com>
1526
1527         webkitpy: SIGKILL right after SIGTERM causes orphaned processes with 'xcrun simctl spawn'
1528         https://bugs.webkit.org/show_bug.cgi?id=185164
1529
1530         Reviewed by David Kilzer.
1531
1532         * Scripts/webkitpy/common/system/executive.py:
1533         (Executive.kill_process): First attempt will always send a SIGTERM, all subsequent attempts will
1534         send a SIGKILL. A SIGKILL with not be sent if the process is not running to avoid orphaning childen.
1535
1536 2018-05-01  Chris Dumez  <cdumez@apple.com>
1537
1538         REGRESSION (r230919): API test WebKit.AutoLayoutIntegration is a flaky failure
1539         https://bugs.webkit.org/show_bug.cgi?id=184918
1540         <rdar://problem/39705516>
1541
1542         Reviewed by Wenson Hsieh.
1543
1544         Make sure provisional load has started before calling beginLayoutAtMinimumWidth
1545         on the AutoLayoutWKWebView to restore pre-r230919 behavior. The load now starts
1546         asynchronously because we ask the client if it is OK to do the load and the policy
1547         delegates are asynchronous nowadays.
1548
1549         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
1550         (-[AutoLayoutWKWebView load:withWidth:expectingContentSize:resettingWidth:]):
1551         * TestWebKitAPI/cocoa/TestNavigationDelegate.h:
1552         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
1553         (-[TestNavigationDelegate webView:didStartProvisionalNavigation:]):
1554         (-[TestNavigationDelegate waitForDidStartProvisionalNavigation]):
1555         (-[WKWebView _test_waitForDidStartProvisionalNavigation]):
1556
1557 2018-05-01  Ross Kirsling  <ross.kirsling@sony.com>
1558
1559         [WinCairo] Align buildbot test stages with AppleWin.
1560         https://bugs.webkit.org/show_bug.cgi?id=185094
1561
1562         Reviewed by Brent Fulgham.
1563
1564         * BuildSlaveSupport/build.webkit.org-config/factories.py:
1565         (TestFactory.__init__):
1566         Do run API tests, don't run dashboard tests.
1567
1568         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1569         (RunUnitTests):
1570         Call run-api-tests with Python, not Perl (bugfix for r230998).
1571
1572         * Scripts/webkitpy/port/win.py:
1573         (WinPort.environment_for_api_tests):
1574         Retrieve necessary Windows environment variables.
1575
1576 2018-05-01  Eric Carlson  <eric.carlson@apple.com>
1577
1578         [MediaStream] remove WK1 support
1579         https://bugs.webkit.org/show_bug.cgi?id=185136
1580
1581         Reviewed by Youenn Fablet.
1582
1583         * DumpRenderTree/mac/UIDelegate.mm:
1584         (-[UIDelegate webView:decidePolicyForUserMediaRequestFromOrigin:listener:]): Deleted.
1585
1586 2018-05-01  Chris Dumez  <cdumez@apple.com>
1587
1588         [WKTR] Move navigation policy for response decision from InjectedBundle to UIProcess
1589         https://bugs.webkit.org/show_bug.cgi?id=185157
1590
1591         Reviewed by Geoffrey Garen.
1592
1593         Move navigation policy for response decision from InjectedBundle to UIProcess. This is a more
1594         common configuration and should therefore be the configuration we test by default.
1595
1596         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1597         (WTR::InjectedBundlePage::decidePolicyForResponse):
1598
1599 2018-05-01  Oleksandr Skachkov  <gskachkov@gmail.com>
1600
1601         WebAssembly: add support for stream APIs - JavaScript API
1602         https://bugs.webkit.org/show_bug.cgi?id=183442
1603
1604         Reviewed by Yusuke Suzuki and JF Bastien.
1605
1606         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1607
1608 2018-04-30  Mark Lam  <mark.lam@apple.com>
1609
1610         Apply PtrTags to the MetaAllocator and friends.
1611         https://bugs.webkit.org/show_bug.cgi?id=185110
1612         <rdar://problem/39533895>
1613
1614         Reviewed by Saam Barati.
1615
1616         Update the test to match MetaAllocator changes in WTF.
1617
1618         * TestWebKitAPI/Tests/WTF/MetaAllocator.cpp:
1619         (TestWebKitAPI::TEST_F):
1620         (WTF::tagForPtr):
1621         (WTF::ptrTagName):
1622
1623 2018-04-30  Alex Christensen  <achristensen@webkit.org>
1624
1625         Add WKUIDelegatePrivate equivalent of WKPageContextMenuClient getContextMenuFromProposedMenuAsync
1626         https://bugs.webkit.org/show_bug.cgi?id=180955
1627
1628         Reviewed by Andy Estes.
1629
1630         * TestWebKitAPI/Tests/WebKit/mac/ContextMenuImgWithVideo.mm:
1631         (-[ContextMenuImgWithVideoDelegate _webView:contextMenu:forElement:]):
1632         (-[ContextMenuImgWithVideoDelegate _webView:getContextMenuFromProposedMenu:forElement:userInfo:completionHandler:]):
1633
1634 2018-04-30  JF Bastien  <jfbastien@apple.com>
1635
1636         Use some C++17 features
1637         https://bugs.webkit.org/show_bug.cgi?id=185135
1638
1639         Reviewed by Alex Christensen.
1640
1641         * DumpRenderTree/PlatformMac.cmake:
1642         * gtk/ycm_extra_conf.py:
1643         (FlagsForFile):
1644
1645 2018-04-30  Yusuke Suzuki  <utatane.tea@gmail.com>
1646
1647         Use WordLock instead of std::mutex for Threading
1648         https://bugs.webkit.org/show_bug.cgi?id=185121
1649
1650         Reviewed by Geoffrey Garen.
1651
1652         * TestWebKitAPI/Tests/WTF/Signals.cpp:
1653         (TEST):
1654
1655 2018-04-30  Michael Catanzaro  <mcatanzaro@igalia.com>
1656
1657         [GTK] Webkit should spoof as Safari on a Mac when on Chase.com
1658         https://bugs.webkit.org/show_bug.cgi?id=185103
1659
1660         Reviewed by Carlos Garcia Campos.
1661
1662         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
1663         (TestWebKitAPI::TEST):
1664
1665 2018-04-28  Sihui Liu  <sihui_liu@apple.com>
1666
1667         [Cocoa] Set HTTPOnly flag when converting Cookie to NSHTTPCookie
1668         https://bugs.webkit.org/show_bug.cgi?id=185052
1669
1670         Reviewed by Geoffrey Garen.
1671
1672         Modified API test to provide correct test cases for HTTPOnly flag.
1673
1674         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
1675         (TEST):
1676
1677 2018-04-28  Rick Waldron  <waldron.rick@gmail.com>
1678
1679         Token misspelled "tocken" in error message string
1680         https://bugs.webkit.org/show_bug.cgi?id=185030
1681
1682         Reviewed by Saam Barati.
1683
1684         * Scripts/test262/test262-expectations.yaml: Fix typo "tocken" => "token"
1685
1686 2018-04-27  Stephan Szabo  <stephan.szabo@sony.com>
1687
1688         [WinCairo] Support --no-copy for jsc tests in wincairo tests, add copying of dlls for copy case
1689         https://bugs.webkit.org/show_bug.cgi?id=185049
1690
1691         Reviewed by Keith Miller.
1692
1693         * Scripts/run-javascriptcore-tests:
1694         (runJSCStressTests):
1695         * Scripts/run-jsc-stress-tests:
1696
1697 2018-04-26  Ryosuke Niwa  <rniwa@webkit.org>
1698
1699         PSON: Triggering a navigation to an invalid URL creates a new WebContent process
1700         https://bugs.webkit.org/show_bug.cgi?id=185066
1701
1702         Reviewed by Youenn Fablet.
1703
1704         Added a new test case (ProcessSwap.NavigateToInvalidURL) for navigating to an invalid URL.
1705         WebKit should not swap WebContent process in this case.
1706
1707         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1708         (-[PSONNavigationDelegate webView:didFailProvisionalNavigation:withError:]):
1709         (-[PSONUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
1710
1711 2018-04-27  Nan Wang  <n_wang@apple.com>
1712
1713         AX: Accessibility needs to know which part of the content view is visible on iOS
1714         https://bugs.webkit.org/show_bug.cgi?id=185085
1715         <rdar://problem/39801363>
1716
1717         Reviewed by Chris Fleizach.
1718
1719         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
1720         (WTR::AccessibilityUIElement::stringAttributeValue):
1721
1722 2018-04-27  Wenson Hsieh  <wenson_hsieh@apple.com>
1723
1724         [Extra zoom mode] Add a mechanism to override default viewport behaviors in extra zoom mode
1725         https://bugs.webkit.org/show_bug.cgi?id=185050
1726         <rdar://problem/39624038>
1727
1728         Reviewed by Tim Horton.
1729
1730         Remove a test that's no longer useful, now that the SPI it was testing is gone. This functionality is now
1731         tested by the layout test added in this patch.
1732
1733         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1734         * TestWebKitAPI/Tests/ios/ViewportSizingTests.mm: Removed.
1735
1736 2018-04-26  Ryan Haddad  <ryanhaddad@apple.com>
1737
1738         REGRESSION (r231039): RunUnitTests step reports disabled tests as failures
1739         https://bugs.webkit.org/show_bug.cgi?id=185061
1740
1741         Reviewed by Aakash Jain.
1742
1743         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1744         (RunUnitTests.countFailures): Return the difference between the total number of tests run and the number that passed.
1745         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Add a test.
1746
1747 2018-04-26  Ross Kirsling  <ross.kirsling@sony.com>
1748
1749         Add release bots for WinCairo.
1750         https://bugs.webkit.org/show_bug.cgi?id=185042
1751
1752         Reviewed by Lucas Forschler.
1753
1754         * BuildSlaveSupport/build.webkit.org-config/config.json:
1755         Add a release build bot and two test bots, replacing the outdated WinCairo release bots.
1756
1757 2018-04-26  Sihui Liu  <sihui_liu@apple.com>
1758
1759         -[WKHTTPCookieStore deleteCookie:completionHandler:] doesn't delete cookies
1760         https://bugs.webkit.org/show_bug.cgi?id=184938
1761         <rdar://problem/34737395>
1762
1763         Reviewed by Geoffrey Garen.
1764
1765         Add API test coverage.
1766
1767         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
1768         (TEST):
1769
1770 2018-04-26  Ross Kirsling  <ross.kirsling@sony.com>
1771
1772         WinCairo test bots should run JSC tests with options for Windows command prompt.
1773         https://bugs.webkit.org/show_bug.cgi?id=185019
1774
1775         Reviewed by Per Arne Vollan.
1776
1777         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1778         (RunJavaScriptCoreTests.start):
1779
1780 2018-04-26  Ross Kirsling  <ross.kirsling@sony.com>
1781
1782         WinCairo WKL Debug Test bot is not using DRT.
1783         https://bugs.webkit.org/show_bug.cgi?id=185009
1784
1785         Reviewed by Per Arne Vollan.
1786
1787         * BuildSlaveSupport/build.webkit.org-config/config.json:
1788
1789 2018-04-26  Per Arne Vollan  <pvollan@apple.com>
1790
1791         Disable content filtering in minimal simulator mode
1792         https://bugs.webkit.org/show_bug.cgi?id=185027
1793         <rdar://problem/39736091>
1794
1795         Reviewed by Jer Noble.
1796
1797         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1798
1799 2018-04-26  Brady Eidson  <beidson@apple.com>
1800
1801         Add a setting for keeping around all processes and always reusing them per-origin.
1802         <rdar://problem/39695798> and https://bugs.webkit.org/show_bug.cgi?id=185020
1803
1804         Reviewed by Andy Estes.
1805
1806         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1807
1808 2018-04-26  Andy VanWagoner  <thetalecrafter@gmail.com>
1809
1810         [INTL] Implement Intl.PluralRules
1811         https://bugs.webkit.org/show_bug.cgi?id=184312
1812
1813         Reviewed by JF Bastien.
1814
1815         Added Intl.PluralRules feature flag.
1816
1817         * Scripts/webkitperl/FeatureList.pm:
1818         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1819
1820 2018-04-25  Michael Catanzaro  <mcatanzaro@igalia.com>
1821
1822         [WPE] Build and link against latest WPEBackend and WPEBackend-fdo
1823         https://bugs.webkit.org/show_bug.cgi?id=184643
1824
1825         Reviewed by Žan Doberšek.
1826
1827         Add missing INCLUDE_DIRS in many places.
1828
1829         Adapt to single-header WPE includes.
1830
1831         Null-initialize padding to silence -Wmissing-field-initializers. (Yuck.)
1832
1833         * TestWebKitAPI/PlatformWPE.cmake:
1834         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1835         (testWebViewWebBackend):
1836         * TestWebKitAPI/glib/PlatformWPE.cmake:
1837         * WebKitTestRunner/EventSenderProxy.h:
1838         * WebKitTestRunner/PlatformWPE.cmake:
1839         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
1840         * wpe/HeadlessViewBackend/CMakeLists.txt:
1841         * wpe/HeadlessViewBackend/HeadlessViewBackend.cpp:
1842         * wpe/HeadlessViewBackend/HeadlessViewBackend.h:
1843         * wpe/jhbuild.modules:
1844
1845 2018-04-25  Jonathan Bedard  <jbedard@apple.com>
1846
1847         REGRESSION (r230998): Bot watcher's dashboard doesn't display number of API test failures
1848         https://bugs.webkit.org/show_bug.cgi?id=184982
1849
1850         Rubber-stamped by Aakash Jain.
1851
1852         Correctly count the number of API test failures.
1853
1854         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1855         (RunUnitTests.countFailures): Count the number of test failures for the new run-api-tests.
1856         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
1857         * Scripts/webkitpy/api_tests/manager.py:
1858         (Manager.run): Disabled tests are not run.
1859
1860 2018-04-25  Jiewen Tan  <jiewen_tan@apple.com>
1861
1862         Remove access to keychain from the WebContent process
1863         https://bugs.webkit.org/show_bug.cgi?id=184428
1864         <rdar://problem/13150903>
1865
1866         Reviewed by Brent Fulgham.
1867
1868         This patch does the followings:
1869         1. Added an API test for this patch.
1870         2. Instrument DumpRenderTree and WebKitTestRunner to take advantages of new SPIs.
1871
1872         * DumpRenderTree/mac/UIDelegate.mm:
1873         (-[UIDelegate signedPublicKeyAndChallengeStringForWebView:]):
1874         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1875         * TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm: Added.
1876         (TestWebKitAPI::SSLKeyGeneratorTest::SetUp):
1877         (TestWebKitAPI::SSLKeyGeneratorTest::TearDown):
1878         (TestWebKitAPI::TEST_F):
1879         * WebKitTestRunner/TestController.cpp:
1880         (WTR::copySignedPublicKeyAndChallengeString):
1881         (WTR::TestController::createOtherPage):
1882         (WTR::TestController::createWebViewWithOptions):
1883
1884 2018-04-25  Wenson Hsieh  <wenson_hsieh@apple.com>
1885
1886         [Extra zoom mode] The search field on www.bing.com is missing label text
1887         https://bugs.webkit.org/show_bug.cgi?id=184975
1888         <rdar://problem/39723081>
1889
1890         Reviewed by Tim Horton.
1891
1892         Adds UIScriptController.formInputLabel, which asynchronously requests the input label text for the currently
1893         focused element in extra zoom mode.
1894
1895         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1896         (WTR::UIScriptController::formInputLabel const):
1897         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1898         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1899         (WTR::UIScriptController::formInputLabel const):
1900         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1901         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1902         (WTR::UIScriptController::formInputLabel const):
1903
1904 2018-04-25  Michael Catanzaro  <mcatanzaro@igalia.com>
1905
1906         [WPE] Should load injected bundle from builddir in developer builds
1907         https://bugs.webkit.org/show_bug.cgi?id=184983
1908
1909         Reviewed by Carlos Alberto Lopez Perez.
1910
1911         Set WEBKIT_INJECTED_BUNDLE_PATH when running WPE MiniBrowser.
1912
1913         * Scripts/run-minibrowser:
1914
1915 2018-04-25  Michael Catanzaro  <mcatanzaro@igalia.com>
1916
1917         [WPE] libgstggtk.so broken in jhbuild environment
1918         https://bugs.webkit.org/show_bug.cgi?id=184984
1919
1920         Reviewed by Carlos Alberto Lopez Perez.
1921
1922         Don't pass --enable-glx=no when building libepoxy, to ensure it's compatible with
1923         gst-plugins-good.
1924
1925         * wpe/jhbuild.modules:
1926
1927 2018-04-25  Ryosuke Niwa  <rniwa@webkit.org>
1928
1929         PSON: Don't create a new process when navigating to a blob URL, data URL, and about:blank
1930         https://bugs.webkit.org/show_bug.cgi?id=184962
1931
1932         Reviewed by Youenn Fablet.
1933
1934         Added four test cases for navigating to a blob URL, data URL, and about:blank with process-swap-on-navigation turned on.
1935
1936         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1937         (ProcessSwap.SameOriginBlobNavigation): Added.
1938         (ProcessSwap.CrossOriginBlobNavigation): Added.
1939         (ProcessSwap.NavigateToAboutBlank): Added.
1940         (ProcessSwap.NavigateToDataURL): Added.
1941
1942 2018-04-25  Michael Catanzaro  <mcatanzaro@igalia.com>
1943
1944         [WPE] Remove deprecated functions and properties from the API
1945         https://bugs.webkit.org/show_bug.cgi?id=179295
1946
1947         Reviewed by Žan Doberšek.
1948
1949         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
1950         (testWebViewAuthenticationStorage): Disable this test for now. It will require some effort
1951         to rewrite LoadTrackingTest to not require the web view at construction time.
1952         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
1953         (testWebKitSettings): Don't test private browsing setting, which is gone.
1954         * TestWebKitAPI/glib/CMakeLists.txt: Disable TestCookieManager for now.
1955
1956 2018-04-25  Andy Estes  <aestes@apple.com>
1957
1958         [Mac] Number of drop items is always 0 when performing a DHTML drag
1959         https://bugs.webkit.org/show_bug.cgi?id=184943
1960
1961         Reviewed by Ryosuke Niwa.
1962
1963         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1964         * TestWebKitAPI/Tests/mac/DragAndDropPasteboardTests.mm:
1965         (-[DragInfo numberOfValidItemsForDrop]):
1966         (-[DragInfo setNumberOfValidItemsForDrop:]):
1967         (TestWebKitAPI::TEST):
1968         * TestWebKitAPI/Tests/mac/full-page-dropzone.html: Added.
1969
1970 2018-04-25  Jonathan Bedard  <jbedard@apple.com>
1971
1972         API test harness should be Python
1973         https://bugs.webkit.org/show_bug.cgi?id=181043
1974         <rdar://problem/36164410>
1975
1976         Reviewed by David Kilzer.
1977
1978         Run API tests from a Python script rather than Perl. The Python API tests have
1979         the same structure as the layout tests.
1980
1981         * Scripts/run-api-tests: Changed from Perl to Python.
1982         * Scripts/webkitpy/api_tests: Added.
1983         * Scripts/webkitpy/api_tests/__init__.py: Added.
1984         * Scripts/webkitpy/api_tests/manager.py: Added.
1985         (Manager):
1986         (Manager.__init__):
1987         (Manager._test_list_from_output): Construct a list of tests from the output of
1988         TestWTF and TestWebKitAPI.
1989         (Manager._find_test_subset): Given a list of all possible tests and command line
1990         arguments, return a list of tests which match the provided arguments.
1991         (Manager._collect_tests): Run TestWTF and TestWebKitAPI with --gtest_list_tests
1992         to determine which tests will be run.
1993         (Manager._print_test_result): Formatted print of a test with it's output.
1994         (Manager._print_tests_result_with_status): Print all tests and output for tests
1995         which ran with a specified exit status.
1996         (Manager.run): Collect all tests, run them and then print results from the run.
1997         * Scripts/webkitpy/api_tests/run_api_tests.py: Added.
1998         (main): Parse arguments, construct a port, early exit for illegal ports and
1999         then run tests.
2000         (run): Setup logging and printing before using the Manager to run tests.
2001         (parse_args): Use argparse to define all options used by run-api-tests.
2002         * Scripts/webkitpy/api_tests/runner.py: Added.
2003         (Runner):
2004         (Runner.__init__):
2005         (Runner._shard_tests): Split tests so that each suite runs together.
2006         (Runner.command_for_port): Run a command on the device specified by the given
2007         port object. Once <https://bugs.webkit.org/show_bug.cgi?id=175204> is completed,
2008         this function would be entirely replaced by the server_process factory owned
2009         by the port object.
2010         (Runner.run): Run all shards in the message_pool.
2011         (Runner.handle): Handle reports from child processes.
2012         (Runner.result_map_by_status): Return a mapping of tests to output for tests
2013         which exit with a specific status.
2014         (_Worker):
2015         (_Worker.__init__):
2016         (_Worker._filter_noisy_output): Filter out objc warnings since these polite the log.
2017         (_Worker._run_single_test): Runs a single test in a single child process.
2018         (_Worker._run_shard_with_binary): Attempts to run a group of tests in the same
2019         child process. If this technique fails, the remaining tests are run singly.
2020         (_Worker.handle): Run the specified shard.
2021         * Scripts/webkitpy/port/base.py:
2022         (Port):
2023         (Port.check_api_test_build): Check if TestWTF and TestWebKitAPI are built.
2024         (Port.environment_for_api_tests): Return the environment needed to run
2025         the TestWebKitAPI binary.
2026         (Port. path_to_api_test_binaries): Return a list of the path to all binaries
2027         used when running API tests.
2028         (Port._build_api_tests): Build TestWTF and TestWebKitAPI if required.
2029         * Scripts/webkitpy/port/mac.py:
2030         (MacPort.environment_for_api_tests): Enable GuardMalloc for API tests.
2031         * Scripts/webkitpy/port/server_process.py: 
2032         (ServerProcess.pop_all_buffered_stdout):
2033
2034 2018-04-25  Carlos Garcia Campos  <cgarcia@igalia.com>
2035
2036         Incorrect number of WebDriver test failures shown in the bots
2037         https://bugs.webkit.org/show_bug.cgi?id=184959
2038
2039         Reviewed by Michael Catanzaro.
2040
2041         The regular expression we are using to get the number of failures from the log is matching a particular test
2042         error output. Improve the regular expression to avoid matching other strings in the log. Ensure that only
2043         matches at the beginning of lines and add spaces after Unexpected and before the (<failures>).
2044
2045         * BuildSlaveSupport/build.webkit.org-config/steps.py:
2046         (RunWebDriverTests.commandComplete):
2047
2048 2018-04-25  Carlos Garcia Campos  <cgarcia@igalia.com>
2049
2050         [GTK] Implement MouseEvent.buttons
2051         https://bugs.webkit.org/show_bug.cgi?id=184913
2052
2053         Reviewed by Žan Doberšek.
2054
2055         Include the mouse buttons state in WTR synthesized events.
2056
2057         * WebKitTestRunner/EventSenderProxy.h:
2058         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
2059         (WTR::EventSenderProxy::EventSenderProxy):
2060         (WTR::EventSenderProxy::createMouseButtonEvent):
2061         (WTR::EventSenderProxy::mouseDown):
2062         (WTR::EventSenderProxy::mouseUp):
2063         (WTR::EventSenderProxy::mouseMoveTo):
2064
2065 2018-04-24  Pablo Saavedra  <psaavedra@igalia.com>
2066
2067         [GTK][WPE] Fix triggered bot name on the WPE Debug Build bot
2068         https://bugs.webkit.org/show_bug.cgi?id=184954
2069
2070         Reviewed by Michael Catanzaro.
2071
2072         * BuildSlaveSupport/build.webkit.org-config/config.json:
2073
2074 2018-04-24  Saam Barati  <sbarati@apple.com>
2075
2076         Keep around a pre-warmed process when doing process swap on navigation
2077         https://bugs.webkit.org/show_bug.cgi?id=184765
2078         <rdar://problem/39685099>
2079
2080         Reviewed by Ryosuke Niwa and Brady Eidson.
2081
2082         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2083
2084 2018-04-24  Aakash Jain  <aakash_jain@apple.com>
2085
2086         [build.webkit.org] unit-tests fail when passwords.json is missing
2087         https://bugs.webkit.org/show_bug.cgi?id=180390
2088
2089         Reviewed by Carlos Alberto Lopez Perez.
2090
2091         * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
2092         (loadBuilderConfig): Add support for test_mode. Load mock passwords in test_mode.
2093         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2094         (BuildBotConfigLoader._add_dependant_modules_to_sys_modules): Call _add_webkitpy_to_sys_path as well.
2095         (BuildBotConfigLoader._mock_open): Deleted.
2096         (BuildBotConfigLoader.load_config): Deleted.
2097
2098 2018-04-24  John Wilander  <wilander@apple.com>
2099
2100         From-Origin: Support for 'same' and 'same-site' response header, nested frame origin check
2101         https://bugs.webkit.org/show_bug.cgi?id=184560
2102         <rdar://problem/38901344>
2103
2104         Reviewed by Youenn Fablet and Daniel Bates.
2105
2106         This patch implements significant parts of https://github.com/whatwg/fetch/issues/687.
2107         We consume the From-Origin response header and only load the resource if:
2108         - The header is non-existent, empty, or invalid.
2109         - The header specifies 'same' and the resource's origin matches the originating
2110           document's origin and the origins up the frame tree.
2111         - The header specifies 'same-site' and the resource's eTLD+1 matches the originating
2112           document's eTLD+1 and the eTLD+1 of the documents up the frame tree.
2113
2114         This feature is experimental and off by default.
2115
2116         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2117         * TestWebKitAPI/Tests/WebCore/HTTPParsers.cpp: Added.
2118         (TestWebKitAPI::TEST):
2119             Tests for From-Origin header parsing.
2120
2121 2018-04-24  Carlos Garcia Campos  <cgarcia@igalia.com>
2122
2123         Unreviewed. Update W3C WebDriver imported tests.
2124
2125         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
2126         (WebDriverW3CExecutor.__init__):
2127
2128 2018-04-24  Zan Dobersek  <zdobersek@igalia.com>
2129
2130         [WPE] Remove libgbm dependency
2131         https://bugs.webkit.org/show_bug.cgi?id=184906
2132
2133         Reviewed by Carlos Garcia Campos.
2134
2135         Stop searching for libgbm, using its compiler flags for the
2136         HeadlessViewBackend compilation and linking against the .so object.
2137         This is not necessary anymore after r230562 switched to a different
2138         backend implementation for testing.
2139
2140         * wpe/HeadlessViewBackend/CMakeLists.txt:
2141         * wpe/install-dependencies:
2142
2143 2018-04-23  Carlos Garcia Campos  <cgarcia@igalia.com>
2144
2145         [GLIB] Make it possible to use a different timeout for slow test cases in GLib tests
2146         https://bugs.webkit.org/show_bug.cgi?id=184816
2147
2148         Reviewed by Michael Catanzaro.
2149
2150         Pass a function from api test runner to glib test runner to check if a test is slow and use the given slow
2151         timeout.
2152
2153         * TestWebKitAPI/glib/TestExpectations.json:
2154         * glib/api_test_runner.py:
2155         (TestRunner._run_test_glib.is_slow_test):
2156         (TestRunner._run_test_glib):
2157         * glib/glib_test_runner.py:
2158         (GLibTestRunner.__init__):
2159         (GLibTestRunner._stop_timeout):
2160         (GLibTestRunner._subtest_start):
2161         (GLibTestRunner._subtest_end):
2162
2163 2018-04-23  Wenson Hsieh  <wenson_hsieh@apple.com>
2164
2165         [Extra zoom mode] REGRESSION(230860) Unable to change time input values using UI
2166         https://bugs.webkit.org/show_bug.cgi?id=184901
2167         <rdar://problem/39664797>
2168
2169         Reviewed by Tim Horton.
2170
2171         Introduce a new UIScriptController method to set the value of a currently focused input of type time, by
2172         interacting with the UI. See WebKit ChangeLogs for more detail.
2173
2174         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2175         (WTR::UIScriptController::setTimePickerValue):
2176         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2177         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2178         (WTR::UIScriptController::setTimePickerValue):
2179         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2180         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2181         (WTR::UIScriptController::setTimePickerValue):
2182
2183 2018-04-23  Zalan Bujtas  <zalan@apple.com>
2184
2185         [LayoutFormattingContext] Initial commit.
2186         https://bugs.webkit.org/show_bug.cgi?id=184896
2187
2188         Reviewed by Antti Koivisto.
2189
2190         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2191
2192 2018-04-23  Chris Dumez  <cdumez@apple.com>
2193
2194         [WKTR] Move navigation policy decision from the injected bundle to the UIProcess
2195         https://bugs.webkit.org/show_bug.cgi?id=184801
2196
2197         Reviewed by Geoffrey Garen.
2198
2199         Move navigation policy decision from the injected bundle to the UIProcess in WebKitTestRunner.
2200         This is a more common configuration and therefore should be the default testing configuration.
2201
2202         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2203         (WTR::InjectedBundlePage::decidePolicyForNavigationAction):
2204         Always respond with 'PassThrough' in the InjectedBundle so the UIProcess
2205         is now asked for the policy decision.
2206
2207 2018-04-23  Pablo Saavedra  <psaavedra@igalia.com>
2208
2209         [GTK][WPE] Add Debug bots (build and tests) for WPE
2210         https://bugs.webkit.org/show_bug.cgi?id=184887
2211
2212         Reviewed by Carlos Alberto Lopez Perez.
2213
2214         Deployed 2 new bots for WPE Debug: wpe-linux-bot-3 and
2215         wpe-linux-bot-4
2216
2217         Both bots have already the credentials ready to authenticated against
2218         build.webkit.org. They provides the bots for the "debug" configuration over
2219         the "WPE" platform and building for the "x86_64" architecture:
2220         WPE Linux 64-bit Debug (Build) and WPE Linux 64-bit Debug (Tests) 
2221
2222         * BuildSlaveSupport/build.webkit.org-config/config.json:
2223         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2224
2225 2018-04-23  Chris Dumez  <cdumez@apple.com>
2226
2227         HTML String load cannot be prevented by responding 'Cancel' asynchronously in decidePolicyForNavigationAction
2228         https://bugs.webkit.org/show_bug.cgi?id=184848
2229         <rdar://problem/39145306>
2230
2231         Reviewed by Brady Eidson.
2232
2233         Add API test coverage.
2234
2235         * TestWebKitAPI/Tests/WebKitCocoa/DecidePolicyForNavigationAction.mm:
2236         (-[DecidePolicyForNavigationActionController webView:decidePolicyForNavigationAction:decisionHandler:]):
2237         (TEST):
2238
2239 2018-04-23  Michael Catanzaro  <mcatanzaro@igalia.com>
2240
2241         [GTK][WPE] TestSSL fails due to additional TLS errors returned
2242         https://bugs.webkit.org/show_bug.cgi?id=184860
2243
2244         Reviewed by Carlos Garcia Campos.
2245
2246         Add script and config file for regenerating the test certificate.
2247         Regenerate it. TestSSL no longer fails on my machine.
2248
2249         I do see a ton of network process crashes and JavaScript errors, none of
2250         which prevent the test from passing, but this commit only claims to fix
2251         the certificate validation portion of the test.
2252
2253         * TestWebKitAPI/Tests/WebKitGLib/resources/generate-test-cert.sh: Added.
2254         * TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.conf: Added.
2255         * TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.pem:
2256
2257 2018-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>
2258
2259         [GLIB] ERROR: Thread was unable to be detached when running /jsc/vm test in debug
2260         https://bugs.webkit.org/show_bug.cgi?id=184815
2261
2262         Reviewed by Michael Catanzaro.
2263
2264         This is because in the test we are calling both join and detach. We should only call join.
2265
2266         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
2267         (testsJSCVirtualMachine):
2268
2269 2018-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>
2270
2271         [GLIB] Test /jsc/prototypes crashes in debug
2272         https://bugs.webkit.org/show_bug.cgi?id=184814
2273
2274         Reviewed by Michael Catanzaro.
2275
2276         We should also call the constructor/destructor of Bar struct to ensure Foo is constructed.
2277
2278         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
2279         (barCreate):
2280         (barFree):
2281
2282 2018-04-20  Michael Catanzaro  <mcatanzaro@igalia.com>
2283
2284         REGRESSION(r228088): [SOUP] Check TLS errors for WebSockets on GTlsConnection::accept-certificate
2285         https://bugs.webkit.org/show_bug.cgi?id=184804
2286
2287         Reviewed by Carlos Garcia Campos.
2288
2289         * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
2290         (WebSocketTest::WebSocketTest):
2291         (WebSocketTest::~WebSocketTest):
2292         (WebSocketTest::serverWebSocketCallback):
2293         (WebSocketTest::webSocketTestResultCallback):
2294         (WebSocketTest::connectToServerAndWaitForEvents):
2295         (testWebSocketTLSErrors):
2296         (beforeAll):
2297
2298 2018-04-20  Chris Dumez  <cdumez@apple.com>
2299
2300         Unreviewed, update 2 more API tests after r230876.
2301
2302         * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
2303         (TEST):
2304         * TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
2305         (TestWebKitAPI::TEST):
2306
2307 2018-04-20  Tim Horton  <timothy_horton@apple.com>
2308
2309         Adjust geolocation feature flag
2310         https://bugs.webkit.org/show_bug.cgi?id=184856
2311
2312         Reviewed by Wenson Hsieh.
2313
2314         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2315
2316 2018-04-20  Chris Dumez  <cdumez@apple.com>
2317
2318         REGRESSION (r229828): web view doesn’t update or respond to resizing until client calls policy decision handler
2319         https://bugs.webkit.org/show_bug.cgi?id=184210
2320         <rdar://problem/39072354>
2321
2322         Reviewed by Wenson Hsieh.
2323
2324         * TestWebKitAPI/Tests/WebKit/large-red-square-image.html:
2325         * TestWebKitAPI/Tests/WebKitCocoa/dragstart-change-selection-offscreen.html:
2326         Add viewport meta tags.
2327
2328         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
2329         (-[WKWebView _test_waitForDidFinishNavigation]):
2330         Update _test_waitForDidFinishNavigation to wait for the next presentation update
2331         to make iOS API tests happy without having to modify each of them.
2332
2333 2018-04-20  Timothy Hatcher  <timothy@apple.com>
2334
2335         REGRESSION: API test WebKit.BackgroundColorSystemColor is failing
2336
2337         https://bugs.webkit.org/show_bug.cgi?id=184849
2338         rdar://problem/39386405
2339
2340         Reviewed by Brian Burg.
2341
2342         * TestWebKitAPI/Tests/mac/BackgroundColor.mm:
2343         (TestWebKitAPI::TEST): Use CGColorEqualToColor since we might get a different
2344         CGColor pointer from NSColor each time.
2345
2346 2018-04-20  Wenson Hsieh  <wenson_hsieh@apple.com>
2347
2348         [Extra zoom mode] Injected bundle form client should be notified when editing text fields
2349         https://bugs.webkit.org/show_bug.cgi?id=184822
2350         <rdar://problem/38807319>
2351
2352         Reviewed by Tim Horton.
2353
2354         Add WebKitTestRunner support for listening to form editing SPI hooks in the injected bundle. The new layout test
2355         installs callbacks that listen for "begin editing", "end editing", and "text changed" calls to injected bundle
2356         SPI. See other ChangeLogs for more detail.
2357
2358         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2359         (WTR::UIScriptController::enterText):
2360         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2361
2362         Add UIScriptController support for simulating text entry in the currently focused element.
2363
2364         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2365         (WTR::UIScriptController::enterText):
2366         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2367         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2368
2369         Add TestRunner bindings for registering injected bundle form client callbacks.
2370
2371         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2372         (WTR::handleTextDidChangeInTextField):
2373         (WTR::handleTextFieldDidBeginEditing):
2374         (WTR::handleTextFieldDidEndEditing):
2375         (WTR::InjectedBundle::didCreatePage):
2376
2377         Set the injected bundle form editor client.
2378
2379         (WTR::InjectedBundle::setUpInjectedBundleClients):
2380         (WTR::InjectedBundle::textDidChangeInTextField):
2381         (WTR::InjectedBundle::textFieldDidBeginEditing):
2382         (WTR::InjectedBundle::textFieldDidEndEditing):
2383         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
2384         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2385         (WTR::TestRunner::installTextDidChangeInTextFieldCallback):
2386         (WTR::TestRunner::textDidChangeInTextFieldCallback):
2387         (WTR::TestRunner::installTextFieldDidBeginEditingCallback):
2388         (WTR::TestRunner::textFieldDidBeginEditingCallback):
2389         (WTR::TestRunner::installTextFieldDidEndEditingCallback):
2390         (WTR::TestRunner::textFieldDidEndEditingCallback):
2391         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2392         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2393         (WTR::UIScriptController::enterText):
2394
2395 2018-04-20  Youenn Fablet  <youenn@apple.com>
2396
2397         WebPage sometimes incorrectly rules out PDF as a mime type that can be showed
2398         https://bugs.webkit.org/show_bug.cgi?id=184369
2399
2400         Reviewed by Chris Dumez.
2401
2402         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
2403         (TEST):
2404
2405 2018-04-20  Daniel Bates  <dabates@apple.com>
2406
2407         Remove Strong Password decoration when text field type changes
2408         https://bugs.webkit.org/show_bug.cgi?id=184795
2409         <rdar://problem/38325108>
2410
2411         Reviewed by Antti Koivisto.
2412
2413         Add a unit test to ensure the injected bundle API and WebKit UI delegate SPI is invoked
2414         when the field has the Strong Password button and its type changes.
2415
2416         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2417         * TestWebKitAPI/Tests/WebKitCocoa/DidResignInputElementStrongPasswordAppearance.mm: Added.
2418         (didResignInputElementStrongPasswordAppearance):
2419         (-[DidResignInputElementStrongPasswordAppearance webProcessPlugIn:didCreateBrowserContextController:]):
2420         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
2421         (-[DidResignInputElementStrongPasswordAppearanceDelegate _webView:didResignInputElementStrongPasswordAppearanceWithUserInfo:]):
2422         (-[DidResignInputElementStrongPasswordAppearanceDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2423         (TEST):
2424
2425 2018-04-20  Brady Eidson  <beidson@apple.com>
2426
2427         Add a test to verify load/unload/pageshow/pagehide all work with process swapping.
2428         https://bugs.webkit.org/show_bug.cgi?id=184807
2429
2430         Reviewed by Chris Dumez.
2431
2432         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2433         (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
2434
2435 2018-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>
2436
2437         Unreviewed. Mark TestJSC as slow in debug.
2438
2439         Only /jsc/vm is slow, but GLib API test runner only checks the test binary for GLib tests.
2440
2441         * TestWebKitAPI/glib/TestExpectations.json:
2442
2443 2018-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>
2444
2445         [GTK] Local cross references are broken in API documentation
2446         https://bugs.webkit.org/show_bug.cgi?id=184771
2447
2448         Reviewed by Michael Catanzaro.
2449
2450         The problem is that gtkdoc-fixxref expects the links to be in the form html/modulename (like the installed
2451         ones), but we generate the documentation as modulename/html. So, links to WebKitDOM or JSC are generated as
2452         ../html/Foo. The rebase command considers html to be the module name in this case, creating broken links in all
2453         the cases.
2454
2455         * gtk/gtkdoc.py:
2456         (GTKDoc._copy_doc_files_to_output_dir): We don't have any html dir in the source tree so, we are not copying
2457         anything here.
2458         (GTKDoc._run_gtkdoc_mkhtml): Create the html dir here using html/modulename instead now.
2459         (GTKDoc._run_gtkdoc_fixxref): Pass the new directory as module dir to gtkdoc-fixxref and fix several links for
2460         which gtkdoc-fixxref always uses absolute paths.
2461         * gtk/manifest.txt.in: Update the documentation html paths and include the JSC GLib API in the tarball too.
2462
2463 2018-04-19  Brady Eidson  <beidson@apple.com>
2464
2465         Make back forward cache work with process swapping.
2466         <rdar://problem/38676604> and https://bugs.webkit.org/show_bug.cgi?id=184793
2467
2468         Reviewed by Chris Dumez.
2469
2470         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2471
2472 2018-04-19  David Kilzer  <ddkilzer@apple.com>
2473
2474         Enable Objective-C weak references
2475         <https://webkit.org/b/184789>
2476         <rdar://problem/39571716>
2477
2478         Reviewed by Dan Bernstein.
2479
2480         * ContentExtensionTester/Configurations/Base.xcconfig:
2481         (CLANG_ENABLE_OBJC_WEAK): Enable.
2482         * DumpRenderTree/mac/Configurations/Base.xcconfig:
2483         (CLANG_ENABLE_OBJC_WEAK): Enable.
2484         * ImageDiff/cg/Configurations/Base.xcconfig:
2485         (CLANG_ENABLE_OBJC_WEAK): Enable.
2486         * MiniBrowser/Configurations/Base.xcconfig:
2487         (CLANG_ENABLE_OBJC_WEAK): Enable.
2488         * TestWebKitAPI/Configurations/Base.xcconfig:
2489         (CLANG_ENABLE_OBJC_WEAK): Enable.
2490         * WebEditingTester/Configurations/Base.xcconfig:
2491         (CLANG_ENABLE_OBJC_ARC): Re-order.
2492         * WebKitLauncher/Configurations/Base.xcconfig: Add newline at
2493         end of file.
2494         (CLANG_ENABLE_OBJC_WEAK): Enable.
2495         * WebKitTestRunner/Configurations/Base.xcconfig:
2496         (CLANG_ENABLE_OBJC_WEAK): Enable.
2497
2498 2018-04-19  Chris Dumez  <cdumez@apple.com>
2499
2500         REGRESSION (r229133): decidePolicyForNavigationAction not called for loading an HTML string
2501         https://bugs.webkit.org/show_bug.cgi?id=184209
2502         <rdar://problem/39145306>
2503
2504         Reviewed by Ryosuke Niwa.
2505
2506         Add API test coverage.
2507
2508         * TestWebKitAPI/Tests/WebKitCocoa/DecidePolicyForNavigationAction.mm:
2509         (TEST):
2510
2511 2018-04-18  Ross Kirsling  <ross.kirsling@sony.com>
2512
2513         [WinCairo][EWS] Build bot should clean user temp directory each time.
2514         https://bugs.webkit.org/show_bug.cgi?id=184761
2515
2516         Reviewed by Lucas Forschler.
2517
2518         * EWSTools/Start-Queue.ps1:
2519         Clean user's temp directory before each build, so that Windows git doesn't fill it up over time.
2520
2521 2018-04-18  Ross Kirsling  <ross.kirsling@sony.com>
2522
2523         Buildbots using Python zipfile should enable compression
2524         https://bugs.webkit.org/show_bug.cgi?id=184759
2525
2526         Reviewed by Lucas Forschler.
2527
2528         * BuildSlaveSupport/built-product-archive:
2529         (createZipManually):
2530         Default is to archive without compressing, so tell it to compress as well. 
2531
2532 2018-04-18  Nan Wang  <n_wang@apple.com>
2533
2534         AX: [macOS] WebKit hangs when triggering an alert from an AOM increment event
2535         https://bugs.webkit.org/show_bug.cgi?id=184742
2536
2537         Reviewed by Chris Fleizach.
2538
2539         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
2540         (AccessibilityUIElement::increment):
2541         (AccessibilityUIElement::decrement):
2542         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
2543         (WTR::AccessibilityUIElement::asyncIncrement):
2544         (WTR::AccessibilityUIElement::asyncDecrement):
2545         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
2546         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
2547         (WTR::AccessibilityUIElement::increment):
2548         (WTR::AccessibilityUIElement::decrement):
2549         (WTR::AccessibilityUIElement::asyncIncrement):
2550         (WTR::AccessibilityUIElement::asyncDecrement):
2551
2552 2018-04-18  Ross Kirsling  <ross.kirsling@sony.com>
2553
2554         Fix archive step for WinCairo build bot.
2555         https://bugs.webkit.org/show_bug.cgi?id=184715
2556
2557         Reviewed by Lucas Forschler.
2558
2559         * BuildSlaveSupport/built-product-archive:
2560         (archiveBuiltProduct):
2561         (extractBuiltProduct):
2562
2563 2018-04-18  Sihui Liu  <sihui_liu@apple.com>
2564
2565         REGRESSION: Using the reload button while offline pushes identical pages onto the back/forward list
2566         https://bugs.webkit.org/show_bug.cgi?id=184570
2567         <rdar://problem/34807323>
2568
2569         Reviewed by Chris Dumez.
2570
2571         Add API test coverage.
2572
2573         * TestWebKitAPI/Tests/WebKitCocoa/LoadAlternateHTMLString.mm:
2574         (TEST):
2575
2576 2018-04-18  Chris Dumez  <cdumez@apple.com>
2577
2578         Add support for converting a local window to a remote window
2579         https://bugs.webkit.org/show_bug.cgi?id=184515
2580         <rdar://problem/39011318>
2581
2582         Reviewed by Ryosuke Niwa.
2583
2584         * MiniBrowser/mac/AppDelegate.m:
2585         (defaultConfiguration):
2586         * MiniBrowser/mac/SettingsController.h:
2587         * MiniBrowser/mac/SettingsController.m:
2588         (-[SettingsController _populateMenu]):
2589         (-[SettingsController validateMenuItem:]):
2590         (-[SettingsController processSwapOnWindowOpenWithOpenerEnabled]):
2591         (-[SettingsController toggleProcessSwapOnWindowOpenWithOpener:]):
2592         Add menu entry in minibrowser to turn on process swap on cross-origin window.open().
2593
2594         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2595         Turn on process swap on cross-origin window.open() for corresponding test and update
2596         test to expect that a new WebProcess is created.
2597
2598         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2599         (WTR::InjectedBundlePage::decidePolicyForResponse):
2600         Add null checks for injectedBundle.testRunner(). When we swap process on navigation,
2601         the InjectedBundlePage::decidePolicyForResponse() gets called in the new process.
2602         In this new process, we have constructed a InjectedBundlePage for the page but we
2603         have not initialized the InjectedBundle members such as testRunner.
2604
2605         * WebKitTestRunner/TestController.cpp:
2606         (WTR::TestController::createWebViewWithOptions):
2607         (WTR::updateTestOptionsFromTestHeader):
2608         * WebKitTestRunner/TestOptions.h:
2609         (WTR::TestOptions::hasSameInitializationOptions const):
2610         Add a way for layout tests to turn on process swap on navigation via a test header.
2611
2612 2018-04-18  Yusuke Suzuki  <utatane.tea@gmail.com>
2613
2614         Unreviewed, reland r230697, r230720, and r230724.
2615         https://bugs.webkit.org/show_bug.cgi?id=184600
2616
2617         * Scripts/run-jsc-stress-tests:
2618
2619 2018-04-17  Carlos Garcia Campos  <cgarcia@igalia.com>
2620
2621         [GLIB] Make it possible to handle JSCClass external properties not added to the prototype
2622         https://bugs.webkit.org/show_bug.cgi?id=184687
2623
2624         Reviewed by Michael Catanzaro.
2625
2626         Add test cases for the new API.
2627
2628         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
2629         (fooCreate):
2630         (fooFree):
2631         (fooGetProperty):
2632         (fooSetProperty):
2633         (testJSCPromises):
2634         (testJSCGarbageCollector):
2635         (testsJSCVirtualMachine):
2636         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp:
2637         (windowObjectClearedCallback):
2638
2639 2018-04-17  Wenson Hsieh  <wenson_hsieh@apple.com>
2640
2641         [Extra zoom mode] Programmatically changing focus when an element already has focus is a confusing experience
2642         https://bugs.webkit.org/show_bug.cgi?id=184635
2643         <rdar://problem/39440642>
2644
2645         Reviewed by Tim Horton.
2646
2647         Add plumbing to support invoking `didHideKeyboardCallback` and `didShowKeyboardCallback` when (respectively)
2648         dismissing or presenting fullscreen input view controllers in extra zoom mode.
2649
2650         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
2651         (-[TestRunnerWKWebView initWithFrame:configuration:]):
2652         (-[TestRunnerWKWebView dealloc]):
2653         (-[TestRunnerWKWebView _invokeShowKeyboardCallbackIfNecessary]):
2654         (-[TestRunnerWKWebView _invokeHideKeyboardCallbackIfNecessary]):
2655         (-[TestRunnerWKWebView _keyboardDidShow:]):
2656         (-[TestRunnerWKWebView _keyboardDidHide:]):
2657         (-[TestRunnerWKWebView _webView:didPresentFocusedElementViewController:]):
2658         (-[TestRunnerWKWebView _webView:didDismissFocusedElementViewController:]):
2659
2660 2018-04-17  Michael Catanzaro  <mcatanzaro@igalia.com>
2661
2662         [GTK] Webkit should spoof as Safari on a Mac for Outlook.com
2663         https://bugs.webkit.org/show_bug.cgi?id=184573
2664
2665         Reviewed by Carlos Alberto Lopez Perez.
2666
2667         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
2668         (TestWebKitAPI::TEST):
2669
2670 2018-04-17  Fujii Hironori  <Hironori.Fujii@sony.com>
2671
2672         [WinCairo][TestWebKitAPI] Implement PlatformWebView for TestWebKit
2673         https://bugs.webkit.org/show_bug.cgi?id=184524
2674
2675         Reviewed by Alex Christensen.
2676
2677         Resurrect PlatformWebView for Windows port which was removed in Bug 104607.
2678
2679         * TestWebKitAPI/PlatformWebView.h:
2680         * TestWebKitAPI/PlatformWin.cmake:
2681         * TestWebKitAPI/win/InjectedBundleControllerWin.cpp: Added.
2682         (TestWebKitAPI::InjectedBundleController::platformInitialize):
2683         * TestWebKitAPI/win/PlatformUtilitiesWin.cpp: Added.
2684         (TestWebKitAPI::Util::moduleDirectory):
2685         (TestWebKitAPI::Util::createInjectedBundlePath):
2686         (TestWebKitAPI::Util::createURLForResource):
2687         (TestWebKitAPI::Util::URLForNonExistentResource):
2688         (TestWebKitAPI::Util::isKeyDown):
2689         * TestWebKitAPI/win/PlatformWebViewWin.cpp: Added.
2690         (TestWebKitAPI::PlatformWebView::registerWindowClass):
2691         (TestWebKitAPI::PlatformWebView::PlatformWebView):
2692         (TestWebKitAPI::PlatformWebView::initialize):
2693         (TestWebKitAPI::PlatformWebView::~PlatformWebView):
2694         (TestWebKitAPI::PlatformWebView::page const):
2695         (TestWebKitAPI::PlatformWebView::resizeTo):
2696         (TestWebKitAPI::PlatformWebView::simulateSpacebarKeyPress):
2697         (TestWebKitAPI::PlatformWebView::simulateAltKeyPress):
2698         (TestWebKitAPI::PlatformWebView::simulateRightClick):
2699         (TestWebKitAPI::PlatformWebView::simulateMouseMove):
2700         (TestWebKitAPI::PlatformWebView::wndProc):
2701         * TestWebKitAPI/win/UtilitiesWin.cpp: Added.
2702         (TestWebKitAPI::Util::run):
2703         (TestWebKitAPI::Util::spinRunLoop):
2704         (TestWebKitAPI::Util::sleep):
2705
2706 2018-04-17  Jonathan Bedard  <jbedard@apple.com>
2707
2708         Fix hasher tests for system with 32 bit longs
2709         https://bugs.webkit.org/show_bug.cgi?id=184708
2710         <rdar://problem/39459977>
2711
2712         Reviewed by Mark Lam.
2713
2714         Some systems have 32 bit longs. The Hasher WTF tests should handle this case.
2715
2716         * TestWebKitAPI/Tests/WTF/Hasher.cpp:
2717         (TestWebKitAPI::TEST):
2718
2719 2018-04-17  Commit Queue  <commit-queue@webkit.org>
2720
2721         Unreviewed, rolling out r230697, r230720, and r230724.
2722         https://bugs.webkit.org/show_bug.cgi?id=184717
2723
2724         These caused multiple failures on the Test262 testers.
2725         (Requested by mlewis13 on #webkit).
2726
2727         Reverted changesets:
2728
2729         "[WebAssembly][Modules] Prototype wasm import"
2730         https://bugs.webkit.org/show_bug.cgi?id=184600
2731         https://trac.webkit.org/changeset/230697
2732
2733         "[WebAssembly][Modules] Implement function import from wasm
2734         modules"
2735         https://bugs.webkit.org/show_bug.cgi?id=184689
2736         https://trac.webkit.org/changeset/230720
2737
2738         "[JSC] Rename runWebAssembly to runWebAssemblySuite"
2739         https://bugs.webkit.org/show_bug.cgi?id=184703
2740         https://trac.webkit.org/changeset/230724
2741
2742 2018-04-17  Jonathan Bedard  <jbedard@apple.com>
2743
2744         Unreviewed rollout of r230632. Regression in memory usage.
2745
2746         That bug tracked in https://bugs.webkit.org/show_bug.cgi?id=184569.
2747
2748         * DumpRenderTree/TestOptions.h:
2749         * DumpRenderTree/mac/DumpRenderTree.mm:
2750         (runTest):
2751         (shouldOverrideAndDisableCSSAnimationsAndCSSTransitionsBackedByWebAnimationsPreference): Deleted.
2752         * WebKitTestRunner/TestController.cpp:
2753         (WTR::TestController::resetPreferencesToConsistentValues):
2754         * WebKitTestRunner/TestOptions.cpp:
2755         (WTR::TestOptions::TestOptions):
2756         (WTR::isLegacyAnimationEngineTestPath): Deleted.
2757         * WebKitTestRunner/TestOptions.h:
2758
2759 2018-04-17  Yusuke Suzuki  <utatane.tea@gmail.com>
2760
2761         [JSC] Rename runWebAssembly to runWebAssemblySuite
2762         https://bugs.webkit.org/show_bug.cgi?id=184703
2763
2764         Reviewed by JF Bastien.
2765
2766         * Scripts/run-jsc-stress-tests:
2767
2768 2018-04-17  Yusuke Suzuki  <utatane.tea@gmail.com>
2769
2770         [WebAssembly][Modules] Implement function import from wasm modules
2771         https://bugs.webkit.org/show_bug.cgi?id=184689
2772
2773         Reviewed by JF Bastien.
2774
2775         Add runWebAssemblyDirect, which runs wasm file directly.
2776
2777         * Scripts/run-jsc-stress-tests:
2778
2779 2018-04-17  Saam Barati  <sbarati@apple.com>
2780
2781         Add system trace points for process launch and for initializeWebProcess
2782         https://bugs.webkit.org/show_bug.cgi?id=184669
2783
2784         Reviewed by Simon Fraser.
2785
2786         * Tracing/SystemTracePoints.plist:
2787
2788 2018-04-17  Ross Kirsling  <ross.kirsling@sony.com>
2789
2790         Add debug bots for WinCairo.
2791         https://bugs.webkit.org/show_bug.cgi?id=184663
2792
2793         Reviewed by Lucas Forschler.
2794
2795         * BuildSlaveSupport/build.webkit.org-config/config.json:
2796         Add a debug build bot and two debug test bots.
2797
2798         * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
2799         * BuildSlaveSupport/build.webkit.org-config/templates/root.html:
2800         Add a WinCairo category to build.webkit.org.
2801
2802 2018-04-17  Zalan Bujtas  <zalan@apple.com>
2803
2804         [LayoutReloaded] Set inline-block box position.
2805         https://bugs.webkit.org/show_bug.cgi?id=184690
2806
2807         Reviewed by Antti Koivisto.
2808
2809         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2810         (InlineFormattingContext.prototype._handleInlineBlock):
2811         * LayoutReloaded/Utils.js:
2812         (Utils._dumpBox):
2813         * LayoutReloaded/test/inline-block-with-fixed-width-height.html:
2814
2815 2018-04-17  Carlos Garcia Campos  <cgarcia@igalia.com>
2816
2817         [GLIB] Add API to clear JSCContext uncaught exception
2818         https://bugs.webkit.org/show_bug.cgi?id=184685
2819
2820         Reviewed by Žan Doberšek.
2821
2822         Add test cases for the new API.
2823
2824         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
2825         (testJSCExceptions):
2826
2827 2018-04-17  Carlos Garcia Campos  <cgarcia@igalia.com>
2828
2829         [GLIB] Add API to query, delete and enumerate properties
2830         https://bugs.webkit.org/show_bug.cgi?id=184647
2831
2832         Reviewed by Michael Catanzaro.
2833
2834         Add test cases for the new API.
2835
2836         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
2837         (testJSCObject):
2838         (testJSCClass):
2839         (testJSCPrototypes):
2840
2841 2018-04-16  Zalan Bujtas  <zalan@apple.com>
2842
2843         [LayoutReloaded] Add support for replaced box.
2844         https://bugs.webkit.org/show_bug.cgi?id=184680
2845
2846         Reviewed by Antti Koivisto.
2847
2848         Basic support for inline replaced.
2849
2850         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2851         (InlineFormattingContext.prototype._handleInlineBox):
2852         (InlineFormattingContext.prototype._handleInlineBlock):
2853         (InlineFormattingContext.prototype._handleReplaced):
2854         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2855         (Line.prototype.lastLineBox):
2856         (Line.prototype.addInlineBox):
2857         (Line.prototype.addInlineContainerBox): Deleted.
2858         * LayoutReloaded/TreeBuilder.js:
2859         (TreeBuilder.prototype._createAndAttachBox):
2860         * LayoutReloaded/Utils.js:
2861         (Utils._dumpBox):
2862         * LayoutReloaded/test/index.html:
2863         * LayoutReloaded/test/inline-simple-replaced.html: Added.
2864
2865 2018-04-16  Zalan Bujtas  <zalan@apple.com>
2866
2867         [LayoutReloaded] Minor InlineFormattingContext::layout() cleanup.
2868         https://bugs.webkit.org/show_bug.cgi?id=184679
2869
2870         Reviewed by Antti Koivisto.
2871
2872         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2873         (InlineFormattingContext):
2874         (InlineFormattingContext.prototype.layout):
2875         (InlineFormattingContext.prototype._handleInlineContainer):
2876         (InlineFormattingContext.prototype._handleInlineContent):
2877         (InlineFormattingContext.prototype._handleInlineBlock):
2878         (InlineFormattingContext.prototype._handleReplacedBox):
2879         (InlineFormattingContext.prototype._clearNeedsLayoutAndMoveToNextSibling):
2880         (InlineFormattingContext.prototype._handleInlineBlockContainer): Deleted.
2881         (InlineFormattingContext.prototype._clearAndMoveToNext): Deleted.
2882
2883 2018-04-16  Zalan Bujtas  <zalan@apple.com>
2884
2885         [LayoutReloaded] Introduce fragmentation state/context.
2886         https://bugs.webkit.org/show_bug.cgi?id=184677
2887
2888         Reviewed by Antti Koivisto.
2889
2890         State/context for fragmented content (multicol, regions, pagination etc).
2891
2892         * LayoutReloaded/FormattingContext/FragmentationContext.js: Added.
2893         (FragmentationContext):
2894         * LayoutReloaded/FormattingState/FragmentationState.js: Added.
2895         (FragmentationState):
2896         (FragmentationState.prototype.formattingState):
2897
2898 2018-04-16  Andy Estes  <aestes@apple.com>
2899
2900         [iOS] Enable WKPDFView by default
2901         https://bugs.webkit.org/show_bug.cgi?id=184675
2902         <rdar://problem/27885452>
2903
2904         Reviewed by Darin Adler.
2905
2906         * TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm:
2907
2908 2018-04-16  Leo Balter  <leonardo.balter@gmail.com>
2909
2910         Perl-based Test262 runner
2911         https://bugs.webkit.org/show_bug.cgi?id=183343
2912
2913         Reviewed by Michael Saboff.
2914
2915         * Scripts/test262-helpers/README.md: Added.
2916         * Scripts/test262-helpers/agent.js: Added.
2917         (262.getGlobal):
2918         (262.setGlobal):
2919         (262.destroy):
2920         (262.IsHTMLDDA):
2921         * Scripts/test262-helpers/cpanfile: Added.
2922         * Scripts/test262-helpers/cpanfile.snapshot: Added.
2923         * Scripts/test262-helpers/test262-runner.pl: Added.
2924         (main):
2925         (processFile):
2926         (getScenarios):
2927         (addScenario):
2928         (compileTest):
2929         (runTest):
2930         (processResult):
2931         (getTempFile):
2932         (getContents):
2933         (parseData):
2934         (getHarness):
2935         * Scripts/test262-helpers/tests.log: Added.
2936
2937 2018-04-15  Andy Estes  <aestes@apple.com>
2938
2939         [iOS] Add API tests for PDF find-in-page
2940         https://bugs.webkit.org/show_bug.cgi?id=184634
2941
2942         Reviewed by Dan Bernstein.
2943
2944         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2945         * TestWebKitAPI/Tests/WebKit/find.pdf: Added.
2946         * TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm:
2947         (-[TestFindDelegate findString]):
2948         (-[TestFindDelegate _webView:didCountMatches:forString:]):
2949         (-[TestFindDelegate _webView:didFindMatches:forString:withMatchIndex:]):
2950         (-[TestFindDelegate _webView:didFailToFindString:]):
2951         (loadWebView):
2952         (TEST):
2953
2954 2018-04-13  Zalan Bujtas  <zalan@apple.com>
2955
2956         [LayoutReloaded] Update class documentation
2957         https://bugs.webkit.org/show_bug.cgi?id=184625
2958
2959         Reviewed by Antti Koivisto.
2960
2961         * LayoutReloaded/DisplayTree/Box.js:
2962         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
2963         * LayoutReloaded/FormattingContext/BlockFormatting/BlockMarginCollapse.js:
2964         * LayoutReloaded/FormattingContext/FloatingContext.js:
2965         * LayoutReloaded/FormattingContext/FormattingContext.js:
2966         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2967         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2968         * LayoutReloaded/FormattingState/BlockFormattingState.js:
2969         * LayoutReloaded/FormattingState/FloatingState.js:
2970         * LayoutReloaded/FormattingState/FormattingState.js:
2971         * LayoutReloaded/FormattingState/InlineFormattingState.js:
2972         * LayoutReloaded/LayoutState.js:
2973         * LayoutReloaded/LayoutTree/BlockContainer.js:
2974         * LayoutReloaded/LayoutTree/Box.js:
2975         * LayoutReloaded/LayoutTree/Container.js:
2976         * LayoutReloaded/LayoutTree/InlineBox.js:
2977         * LayoutReloaded/LayoutTree/InlineContainer.js:
2978         * LayoutReloaded/LayoutTree/Text.js:
2979         * LayoutReloaded/misc/headers/BlockContainer.h: Removed.
2980         * LayoutReloaded/misc/headers/BlockFormattingContext.h: Removed.
2981         * LayoutReloaded/misc/headers/BlockMarginCollapse.h: Removed.
2982         * LayoutReloaded/misc/headers/Box.h: Removed.
2983         * LayoutReloaded/misc/headers/Container.h: Removed.
2984         * LayoutReloaded/misc/headers/FloatingContext.h: Removed.
2985         * LayoutReloaded/misc/headers/FormattingContext.h: Removed.
2986         * LayoutReloaded/misc/headers/InitialBlockContainer.h: Removed.
2987         * LayoutReloaded/misc/headers/InlineBox.h: Removed.
2988         * LayoutReloaded/misc/headers/LayoutContext.h: Removed.
2989         * LayoutReloaded/misc/headers/Line.h: Removed.
2990         * LayoutReloaded/misc/headers/Text.h: Removed.
2991
2992 2018-04-13  Zalan Bujtas  <zalan@apple.com>
2993
2994         [LayoutReloaded] Add simple implementation for FormattingState::markNeedsLayout()
2995         https://bugs.webkit.org/show_bug.cgi?id=184621
2996
2997         Reviewed by Antti Koivisto.
2998
2999         This is just a simple, mark ancestors dirty implementation.
3000
3001         * LayoutReloaded/FormattingState/FormattingState.js:
3002         (FormattingState.prototype.markNeedsLayout):
3003         * LayoutReloaded/LayoutState.js:
3004         (LayoutState.prototype.markNeedsLayout):
3005         (LayoutState.prototype.setNeedsLayoutById): Deleted.
3006         (LayoutState.prototype.setNeedsLayout): Deleted.
3007         * LayoutReloaded/TreeBuilder.js:
3008         (TreeBuilder.prototype._createAndAttachBox):
3009         (TreeBuilder.prototype._findBox): Deleted.
3010         * LayoutReloaded/Utils.js:
3011         (Utils.layoutBoxById):
3012         * LayoutReloaded/test/index.html:
3013         * LayoutReloaded/test/simple-incremental-layout-with-static-content.html:
3014
3015 2018-04-13  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3016
3017         [WPE] [webkitpy] The driver requirements should be checked before starting the tests
3018         https://bugs.webkit.org/show_bug.cgi?id=184595
3019
3020         Reviewed by Michael Catanzaro.
3021
3022         Ensure Driver.check_driver() is checked at check_sys_deps() time.
3023
3024         * Scripts/webkitpy/port/wpe.py:
3025         (WPEPort.check_sys_deps):
3026
3027 2018-04-13  Zalan Bujtas  <zalan@apple.com>
3028
3029         Rebaseline LayoutReloaded patch file (collectRenderersWithNeedsLayout).
3030
3031         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
3032
3033 2018-04-13  Jonathan Bedard  <jbedard@apple.com>
3034
3035         Boot fewer simulators in CI/EWS machines
3036         https://bugs.webkit.org/show_bug.cgi?id=184594
3037         <rdar://problem/39188082>
3038
3039         Reviewed by Alexey Proskuryakov.
3040
3041         This is a temporary workaround fro <rdar://problem/39393590>.
3042
3043         * Scripts/webkitpy/xcode/simulated_device.py:
3044         (SimulatedDeviceManager): Treat simulators as taking 6 gigs instead of 2.
3045
3046 2018-04-13  Brady Eidson  <beidson@apple.com>
3047
3048         Introduce SuspendedPageProxy to keep old web processes around after their WebPageProxy has been swapped to a new one.
3049         https://bugs.webkit.org/show_bug.cgi?id=184559
3050
3051         Reviewed by Alex Christensen.
3052
3053         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3054
3055 2018-04-13  Chris Dumez  <cdumez@apple.com>
3056
3057         input.webkitEntries does not work as expected when folder contains accented chars
3058         https://bugs.webkit.org/show_bug.cgi?id=184517
3059         <rdar://problem/39265537>
3060
3061         Reviewed by Alex Christensen.
3062
3063         Add API test coverage.
3064
3065         * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
3066         (TestWebKitAPI::TEST_F):
3067
3068 2018-04-13  Thibault Saunier  <tsaunier@igalia.com>
3069
3070         Update my emails ordering in contributors.json
3071         https://bugs.webkit.org/show_bug.cgi?id=184587
3072
3073         Rubber-stamped by Philippe Normand.
3074
3075         Bugzilla seems to pick up tsaunier@igalia.com which is not the one I use there.
3076
3077         * Scripts/webkitpy/common/config/contributors.json:
3078
3079 2018-04-13  Michael Catanzaro  <mcatanzaro@igalia.com>
3080
3081         [WPE] xkbcommon: ERROR: failed to add default include path /home/mcatanzaro/Projects/WebKit/WebKitBuild/DependenciesWPE/Root/share/X11/xkb
3082         https://bugs.webkit.org/show_bug.cgi?id=184388
3083
3084         Reviewed by Carlos Alberto Lopez Perez.
3085
3086         Remove libxkbcommon from the JHBuild environment. We could alternatively add
3087         xkeyboard-config, but there doesn't seem to be any need to build libxkbcommon because I do
3088         not believe it depends on anything else in the JHBuild environment.
3089
3090         * wpe/install-dependencies:
3091         * wpe/jhbuild.modules:
3092
3093 2018-04-12  Antoine Quint  <graouts@apple.com>
3094
3095         [Web Animations] Turn CSS Animations and CSS Transitions as Web Animations on by default
3096         https://bugs.webkit.org/show_bug.cgi?id=184569
3097         <rdar://problem/38671301>
3098
3099         Reviewed by Jon Lee.
3100
3101         We set the default value for the CSS Animations and CSS Transitions as Web Animations flag to true
3102         but override it to be false always in the LayoutTests/legacy-animation-engine directory.
3103
3104         * DumpRenderTree/TestOptions.h:
3105         * DumpRenderTree/mac/DumpRenderTree.mm:
3106         (shouldOverrideAndDisableCSSAnimationsAndCSSTransitionsBackedByWebAnimationsPreference):
3107         (runTest):
3108         * WebKitTestRunner/TestController.cpp:
3109         (WTR::TestController::resetPreferencesToConsistentValues):
3110         * WebKitTestRunner/TestOptions.cpp:
3111         (WTR::isLegacyAnimationEngineTestPath):
3112         (WTR::TestOptions::TestOptions):
3113         * WebKitTestRunner/TestOptions.h:
3114
3115 2018-04-13  Carlos Garcia Campos  <cgarcia@igalia.com>
3116
3117         [GLIB] Tests WTF_RefPtr.ReleaseInNonMainThread and WTF_RefPtr.ReleaseInNonMainThreadDestroyInMainThread are crashing since they were added
3118         https://bugs.webkit.org/show_bug.cgi?id=184531
3119
3120         Reviewed by Michael Catanzaro.
3121
3122         It's not a bug in WebKit, but in the tests. The problem is that those tests are using RunLoop::main() but main
3123         run loop hasn't been initialized. ReleaseInNonMainThread doesn't really need to initialize the main run loop if
3124         we change Util::run() to always use RunLop::current() instead of RunLoop::main(). But
3125         ReleaseInNonMainThreadDestroyInMainThread ends up scheduling a task to the main thread, and the generic
3126         implementation fo that uses RunLoop::main(), so we need to initialize the main loop in this case.
3127
3128         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
3129         (TestWebKitAPI::TEST): Call RunLoop::initializeMainRunLoop().
3130         * TestWebKitAPI/glib/UtilitiesGLib.cpp:
3131         (TestWebKitAPI::Util::run): Use RunLop::current() to stop the current run loop.
3132         (TestWebKitAPI::Util::sleep): Ditto.
3133
3134 2018-04-12  Zalan Bujtas  <zalan@apple.com>
3135
3136         [LayoutReloaded] Add support for incremental layout
3137         https://bugs.webkit.org/show_bug.cgi?id=184578
3138
3139         Reviewed by Antti Koivisto.
3140
3141         * LayoutReloaded/Layout.js:
3142         (layout):
3143         * LayoutReloaded/LayoutState.js:
3144         (LayoutState.prototype.rootContainer):
3145         (LayoutState.prototype.setNeedsLayoutById):
3146         * LayoutReloaded/Utils.js:
3147         (Utils.layoutTreeDump):
3148         * LayoutReloaded/test/TestHarness.js:
3149         (verifyLayout):
3150         (runLayout):
3151         (verifyLayoutTreeDump): Deleted.
3152         * LayoutReloaded/test/index.html:
3153         * LayoutReloaded/test/simple-incremental-layout-with-static-content.html: Added.
3154
3155 2018-04-12  Zalan Bujtas  <zalan@apple.com>
3156
3157         [LayoutReloaded] Move root container ownership to layout state
3158         https://bugs.webkit.org/show_bug.cgi?id=184575
3159
3160         Reviewed by Antti Koivisto.
3161
3162         Now the root container is on the associated layout state (ICB only at this point though).
3163
3164         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
3165         (BlockFormattingContext.prototype.layout):
3166         * LayoutReloaded/FormattingContext/FormattingContext.js:
3167         (FormattingContext.prototype._layoutOutOfFlowDescendants):
3168         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3169         (InlineFormattingContext.prototype._handleInlineBlockContainer):
3170         (InlineFormattingContext.prototype._handleFloatingBox):
3171         * LayoutReloaded/Layout.js:
3172         (layout):
3173         * LayoutReloaded/LayoutState.js:
3174         (LayoutState):
3175         (LayoutState.prototype.formattingContext):
3176         (LayoutState.prototype.establishedFormattingState):
3177         (LayoutState.prototype.formattingStateForBox):
3178         (LayoutState.prototype.needsLayout):
3179         (LayoutState.prototype.displayBox):
3180         (LayoutState.prototype._formattingContext):
3181         (LayoutState.prototype.layout): Deleted.
3182         (LayoutState.prototype.formattingStates): Deleted.
3183         (LayoutState.prototype.initialDisplayBox): Deleted.
3184         * LayoutReloaded/Utils.js:
3185         (Utils._dumpBox):
3186         (Utils._findDisplayBox): Deleted.
3187
3188 2018-04-12  Jonathan Bedard  <jbedard@apple.com>
3189
3190         Fix --build-directory flag for run-webkit-tests
3191         https://bugs.webkit.org/show_bug.cgi?id=184545
3192         <rdar://problem/39385080>
3193
3194         Rubber-stamped by Aakash Jain.
3195
3196         The --build-directory path does not work with iOS-Simulator.
3197
3198         * Scripts/webkitpy/port/base.py:
3199         (Port._build_path): Use the port configuration to calculate the root directory.
3200         * Scripts/webkitpy/port/base_unittest.py:
3201         (PortTest.test_build_path): Test build directories for embedded configurations.
3202
3203 2018-04-12  Ross Kirsling  <ross.kirsling@sony.com>
3204
3205         pemfile.py should not assume POSIX line endings
3206         https://bugs.webkit.org/show_bug.cgi?id=184507
3207
3208         Reviewed by Daniel Bates.
3209
3210         * Scripts/webkitpy/common/system/pemfile.py:
3211         (_parse_pem_format):
3212         * Scripts/webkitpy/common/system/pemfile_unittest.py:
3213         (PemFileTest.test_parse_crlf):
3214         (PemFileTest.test_parse_cr):
3215
3216 2018-04-12  Zalan Bujtas  <zalan@apple.com>
3217
3218         [LayoutReloaded] Minor cleanup in LayoutSate
3219         https://bugs.webkit.org/show_bug.cgi?id=184546
3220
3221         Reviewed by Antti Koivisto.
3222
3223         * LayoutReloaded/FormattingContext/FormattingContext.js:
3224         (FormattingContext.isInFormattingContext):
3225         * LayoutReloaded/FormattingState/FormattingState.js:
3226         (FormattingState.prototype.displayBoxes):
3227         (FormattingState.prototype.displayBox):
3228         (FormattingState.prototype._markSubTreeNeedsLayout):
3229         (FormattingState):
3230         (FormattingState.prototype.displayBoxMap): Deleted.
3231         * LayoutReloaded/LayoutState.js:
3232         (LayoutState.prototype.formattingStateForBox):
3233         (LayoutState.prototype.needsLayout):
3234         (LayoutState.prototype.displayBox):
3235         (LayoutState.prototype._createFormattingState):
3236         (LayoutState):
3237         * LayoutReloaded/LayoutTree/Box.js:
3238         (Layout.Box.prototype.isFormattingContextDescendant): Deleted.
3239         * LayoutReloaded/LayoutTree/Container.js:
3240         (Layout.Container.prototype.isContainingBlockDescendant): Deleted.
3241         * LayoutReloaded/Utils.js:
3242         (Utils._findDisplayBox):
3243
3244 2018-04-12  Zalan Bujtas  <zalan@apple.com>
3245
3246         [LayoutReloaded] Introduce needsLayout to InlineFormattingContext
3247         https://bugs.webkit.org/show_bug.cgi?id=184538
3248
3249         Reviewed by Antti Koivisto.
3250
3251         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
3252         (BlockFormattingContext.prototype._adjustBottomWithFIXME):
3253         (BlockFormattingContext):
3254         (BlockFormattingContext.prototype._firstInFlowChildWithNeedsLayout): Deleted.
3255         (BlockFormattingContext.prototype._nextInFlowSiblingWithNeedsLayout): Deleted.
3256         * LayoutReloaded/FormattingContext/FormattingContext.js:
3257         (FormattingContext.prototype._firstInFlowChildWithNeedsLayout):
3258         (FormattingContext.prototype._nextInFlowSiblingWithNeedsLayout):
3259         (FormattingContext):
3260         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3261         (InlineFormattingContext.prototype.layout):
3262         (InlineFormattingContext.prototype._handleInlineContainer):
3263         (InlineFormattingContext.prototype._handleInlineBlockContainer):
3264         (InlineFormattingContext.prototype._handleInlineContent):
3265         (InlineFormattingContext.prototype._clearAndMoveToNext):
3266         (InlineFormattingContext):
3267
3268 2018-04-12  Xabier Rodriguez Calvar  <calvaris@igalia.com>
3269
3270         [GStreamer] Speed up GStreamer dependency build by removing examples compilation
3271         https://bugs.webkit.org/show_bug.cgi?id=184528
3272
3273         Reviewed by Philippe Normand.
3274
3275         * gstreamer/jhbuild.modules: Added --disable-examples for GStreamer package.
3276
3277 2018-04-12  Zan Dobersek  <zdobersek@igalia.com>
3278
3279         [WPE] Switch testing process to using WPEBackend-fdo
3280         https://bugs.webkit.org/show_bug.cgi?id=184357
3281
3282         Reviewed by Carlos Alberto Lopez Perez.
3283
3284         Switch WPE testing to using the WPEBackend-fdo implementation that
3285         depends on the WL_bind_wayland_display EGL extension, as defined under
3286         the freedesktop.org project.
3287         https://cgit.freedesktop.org/mesa/mesa/tree/docs/specs/WL_bind_wayland_display.spec
3288
3289         HeadlessViewBackend is refactored to use the WPEBackend-fdo API, but
3290         otherwise is not changed in functionality.
3291
3292         Unit tests now have to unconditionally use HeadlessViewBackend as a
3293         wpe_view_backend provider, since WPEBackend-fdo does not provide a
3294         default wpe_view_backend implementation. Unit tests covering that are
3295         adjusted to instead use a mock wpe_view_backend interface.
3296
3297         * Scripts/webkitdirs.pm:
3298         (builtDylibPathForName): Fix the libWPEWebKit.so name to also include
3299         the API version that was added in r230449.
3300         * Scripts/webkitpy/port/waylanddriver.py:
3301         (WaylandDriver._setup_environ_for_test): Export EGL_PLATFORM=wayland.
3302         * Scripts/webkitpy/port/wpe.py:
3303         (WPEPort._driver_class): Use WaylandDriver by default.
3304         * TestWebKitAPI/PlatformWebView.h:
3305         (): Deleted.
3306         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
3307         (testWebViewWebBackend):
3308         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
3309         (Test::createWebViewBackend):
3310         * TestWebKitAPI/wpe/PlatformWebViewWPE.cpp:
3311         (TestWebKitAPI::PlatformWebView::~PlatformWebView):
3312         (TestWebKitAPI::PlatformWebView::initialize):
3313         * wpe/HeadlessViewBackend/CMakeLists.txt:
3314         * wpe/HeadlessViewBackend/HeadlessViewBackend.cpp:
3315         (getEGLDisplay):
3316         (HeadlessViewBackend::HeadlessViewBackend):
3317         (HeadlessViewBackend::~HeadlessViewBackend):
3318         (HeadlessViewBackend::backend const):
3319         (HeadlessViewBackend::createSnapshot):
3320         (HeadlessViewBackend::performUpdate):
3321         (HeadlessViewBackend::makeCurrent): Deleted.
3322         * wpe/HeadlessViewBackend/HeadlessViewBackend.h:
3323         * wpe/jhbuild.modules: Module name cleanup. Dyz version is bumped.
3324
3325 2018-04-12  Carlos Garcia Campos  <cgarcia@igalia.com>
3326
3327         [GTK] Switch to use always complex text code path
3328         https://bugs.webkit.org/show_bug.cgi?id=183285
3329
3330         Reviewed by Michael Catanzaro.
3331
3332         Keep the auto mode for the layout tests to avoid having to rebaseline a lot of tests.
3333
3334         * WebKitTestRunner/gtk/main.cpp:
3335         (main): Set WEBKIT_FORCE_COMPLEX_TEXT to 0 unless it's already present in the environment.
3336
3337 2018-04-11  Carlos Garcia Campos  <cgarcia@igalia.com>
3338
3339         [GLIB] Handle strings containing null characters
3340         https://bugs.webkit.org/show_bug.cgi?id=184450
3341
3342         Reviewed by Michael Catanzaro.
3343
3344         Add test case for strings with null characters and update all calls to evaluate to pass the script length.
3345
3346         * TestWebKitAPI/PlatformGTK.cmake:
3347         * TestWebKitAPI/PlatformWPE.cmake:
3348         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
3349         (testJSCBasic):
3350         (testJSCFunction):
3351         (testJSCObject):
3352         (testJSCClass):
3353         (testJSCPrototypes):
3354         (testJSCExceptions):
3355         (testJSCPromises):
3356         (testJSCGarbageCollector):
3357         (testJSCWeakValue):
3358         (testsJSCVirtualMachine):
3359         (testsJSCAutocleanups):
3360         * TestWebKitAPI/Tests/JavaScriptCore/glib/script.js: Added.
3361         * TestWebKitAPI/Tests/WebKitGLib/DOMElementTest.cpp:
3362         (DOMElementTest::testAutoFill):
3363         * TestWebKitAPI/Tests/WebKitGLib/EditorTest.cpp:
3364         (WebKitWebEditorTest::testSelectionChanged):
3365         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
3366         (WebKitFrameTest::testJavaScriptValues):
3367         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
3368         (consoleMessageSentCallback):
3369         (methodCallCallback):
3370
3371 2018-04-11  Zan Dobersek  <zdobersek@igalia.com>
3372
3373         [WPE] Make WebKitWebViewBackend object mandatory for webkit_web_view_new*() constructors
3374         https://bugs.webkit.org/show_bug.cgi?id=184513
3375
3376         Reviewed by Michael Catanzaro.
3377
3378         Update the WPE-specific testWebViewWebBackend() test case, removing the
3379         test that passes a null WebKitWebViewBackend object to the
3380         webkit_web_view_new() call.
3381
3382         Helper createWebViewBackend() that's called via Test::createWebView()
3383         variations is updated to, in case of not using the headless backend,
3384         return a WebKitWebViewBackend instance that wraps around a
3385         default wpe_view_backend object.
3386
3387         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
3388         (testWebViewWebBackend):
3389         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
3390         (Test::createWebViewBackend):
3391
3392 2018-04-11  Zalan Bujtas  <zalan@apple.com>
3393
3394         [LayoutReloaded] Introduce needsLayout flag
3395         https://bugs.webkit.org/show_bug.cgi?id=184527
3396
3397         Reviewed by Antti Koivisto.
3398
3399         Use the formatting state to mark boxes dirty.
3400
3401         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
3402         (BlockFormattingContext.prototype.layout):
3403         (BlockFormattingContext.prototype._firstInFlowChildWithNeedsLayout):
3404         (BlockFormattingContext.prototype._nextInFlowSiblingWithNeedsLayout):
3405         (BlockFormattingContext):
3406         * LayoutReloaded/FormattingContext/FormattingContext.js:
3407         (FormattingContext.prototype._layoutOutOfFlowDescendants):
3408         * LayoutReloaded/FormattingState/FormattingState.js:
3409         (FormattingState):
3410         (FormattingState.prototype.markNeedsLayout):
3411         (FormattingState.prototype.clearNeedsLayout):
3412         (FormattingState.prototype.needsLayout):
3413         (FormattingState.prototype.layoutNeeded):
3414         (FormattingState.prototype._markSubTreeNeedsLayout):
3415         * LayoutReloaded/LayoutState.js:
3416         (LayoutState.prototype.formattingStateForBox):
3417         (LayoutState.prototype.setNeedsLayout):
3418         (LayoutState.prototype.needsLayout):
3419         * LayoutReloaded/LayoutTree/Box.js:
3420         (Layout.Box.prototype.isFormattingContextDescendant):
3421         * LayoutReloaded/LayoutTree/Container.js:
3422         (Layout.Container.prototype.isContainingBlockDescendant):
3423
3424 2018-04-11  Jonathan Bedard  <jbedard@apple.com>
3425
3426         Fix TestInvocation class for newer versions of clang.
3427         https://bugs.webkit.org/show_bug.cgi?id=184508
3428         <rdar://problem/39328648>
3429
3430         Reviewed by Alexey Proskuryakov.
3431
3432         Declare TestInvocation to be final so it does not require a virtual destructor.
3433
3434         * WebKitTestRunner/TestInvocation.h:
3435
3436 2018-04-10  Alex Christensen  <achristensen@webkit.org>
3437
3438         IDN spoofing with Hebrew combining characters
3439         https://bugs.webkit.org/show_bug.cgi?id=184472
3440         <rdar://problem/39148687>
3441
3442         Reviewed by Brent Fulgham.
3443
3444         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
3445         (TestWebKitAPI::TEST):
3446
3447 2018-04-11  Wenson Hsieh  <wenson_hsieh@apple.com>
3448
3449         [Extra zoom mode] Missing label when focusing a <select> with a title attribute but no associated <label>
3450         https://bugs.webkit.org/show_bug.cgi?id=184352
3451         <rdar://problem/39237683>
3452
3453         Reviewed by Andy Estes.
3454
3455         Add support for UIScriptController::selectFormPopoverTitle, which returns the title of the current select
3456         popover's UITableViewController (for testing purposes).
3457
3458         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3459         (WTR::UIScriptController::selectFormPopoverTitle const):
3460         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3461         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3462         (WTR::UIScriptController::selectFormPopoverTitle const):
3463         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3464         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3465         (WTR::UIScriptController::selectFormPopoverTitle const):
3466
3467 2018-04-10  Nan Wang  <n_wang@apple.com>
3468
3469         AX: Expose strong password fields on iOS
3470         https://bugs.webkit.org/show_bug.cgi?id=184465
3471         <rdar://problem/39325104>
3472
3473         Reviewed by Chris Fleizach.
3474
3475         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
3476         (AccessibilityUIElement::boolAttributeValue):
3477         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
3478         (WTR::AccessibilityUIElement::boolAttributeValue):
3479
3480 2018-04-10  Zalan Bujtas  <zalan@apple.com>
3481
3482         [LayoutReloaded] Add support for out-of-flow descendants in inline formatting context.
3483         https://bugs.webkit.org/show_bug.cgi?id=184454
3484
3485         Reviewed by Antti Koivisto.
3486
3487         When the containing block of an out-of-flow positioned element establishes an inline formatting context.
3488         This is mostly about moving out-of-flow logic from BlockFormattingContext to the base class.
3489
3490         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
3491         (BlockFormattingContext.prototype._adjustBottomWithFIXME):
3492         (BlockFormattingContext):
3493         (BlockFormattingContext.prototype._layoutOutOfFlowDescendants): Deleted.
3494         (BlockFormattingContext.prototype._computeOutOfFlowWidth): Deleted.
3495         (BlockFormattingContext.prototype._computeInFlowWidth): Deleted.
3496         (BlockFormattingContext.prototype._computeOutOfFlowHeight): Deleted.
3497         (BlockFormattingContext.prototype._computeOutOfFlowPosition): Deleted.
3498         (BlockFormattingContext.prototype._shrinkToFitWidth): Deleted.
3499         * LayoutReloaded/FormattingContext/FormattingContext.js:
3500         (FormattingContext.prototype._placeInFlowPositionedChildren):
3501         (FormattingContext.prototype._computeInFlowWidth):
3502         (FormattingContext.prototype._layoutOutOfFlowDescendants):
3503         (FormattingContext.prototype._computeOutOfFlowWidth):
3504         (FormattingContext.prototype._computeOutOfFlowHeight):
3505         (FormattingContext.prototype._computeOutOfFlowPosition):
3506         (FormattingContext.prototype._shrinkToFitWidth):
3507         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3508         (InlineFormattingContext.prototype.layout):
3509         (InlineFormattingContext.prototype._handleInlineContainer):
3510         (InlineFormattingContext.prototype._handleInlineBlockContainer):
3511         (InlineFormattingContext.prototype._placeOutOfFlowDescendants): Deleted.
3512         * LayoutReloaded/test/index.html:
3513         * LayoutReloaded/test/inline-with-out-of-flow-descendant.html: Added.
3514
3515 2018-04-09  Zan Dobersek  <zdobersek@igalia.com>
3516
3517         WKTR: Enable DOM cache, SW registration directory cleanup on non-Cocoa platforms
3518         https://bugs.webkit.org/show_bug.cgi?id=184414
3519
3520         Reviewed by Michael Catanzaro.
3521
3522         Enable clearServiceWorkerRegistrations(), clearDOMCache() and
3523         clearDOMCaches() implementations in WebKitTestRunner's TestController
3524         class for non-Cocoa platforms. Implementations depend on the generic
3525         WK2 C API that other ports can leverage as well.
3526
3527         The clearDOMCache() and clearDOMCaches() calls are now operational for
3528         tests that invoke them. clearServiceWorkerRegistrations() and
3529         clearDOMCaches() are also called between each test, cleaning up relevant
3530         resources.
3531
3532         The TestController::getAllStorageAccessEntries() stub for non-Cocoa
3533         platforms is moved into the main !PLATFORM(COCOA) block.
3534
3535         * WebKitTestRunner/TestController.cpp:
3536         (WTR::TestController::getAllStorageAccessEntries):
3537         (WTR::clearServiceWorkerRegistrationsCallback):
3538         (WTR::TestController::clearServiceWorkerRegistrations):
3539         (WTR::clearDOMCacheCallback):
3540         (WTR::TestController::clearDOMCache):
3541         (WTR::TestController::clearDOMCaches):
3542
3543 2018-04-09  Zalan Bujtas  <zalan@apple.com>
3544
3545         [LayoutReloaded] Add support for relatively positioned containers in inline formatting context.
3546         https://bugs.webkit.org/show_bug.cgi?id=184439
3547
3548         Reviewed by Antti Koivisto.
3549
3550         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
3551         (BlockFormattingContext.prototype._placeInFlowPositionedChildren): Deleted.
3552         (BlockFormattingContext.prototype._computeInFlowPositionedPosition): Deleted.
3553         * LayoutReloaded/FormattingContext/FormattingContext.js:
3554         (FormattingContext.prototype._computeInFlowPositionedPosition):
3555         (FormattingContext.prototype._placeInFlowPositionedChildren):
3556         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3557         (InlineFormattingContext.prototype._placeInFlowPositionedChildren): Deleted.
3558         * LayoutReloaded/Utils.js:
3559         (Utils._dumpBox):
3560         (Utils._dumpLines.):
3561         (Utils._dumpLines):
3562         (Utils.precisionRoundWithDecimals):
3563         (Utils.precisionRound):
3564         (Utils):
3565         * LayoutReloaded/test/index.html:
3566         * LayoutReloaded/test/inline-with-relative-positioning.html: Added.
3567
3568 2018-04-09  Zalan Bujtas  <zalan@apple.com>
3569
3570         [LayoutReloaded] Remove Layout.InitialContainingBlock class
3571         https://bugs.webkit.org/show_bug.cgi?id=184436
3572
3573         Reviewed by Antti Koivisto.
3574
3575         * LayoutReloaded/LayoutTree/Box.js:
3576         (Layout.Box.prototype.establishesBlockFormattingContext):
3577         * LayoutReloaded/LayoutTree/InitialBlockContainer.js: Removed.
3578         * LayoutReloaded/TreeBuilder.js:
3579         (TreeBuilder.prototype.createTree):
3580         * LayoutReloaded/test/index.html:
3581
3582 2018-04-09  Zalan Bujtas  <zalan@apple.com>
3583
3584         [LayoutReloaded] Add support for inline-block.
3585         https://bugs.webkit.org/show_bug.cgi?id=184434
3586
3587         Reviewed by Antti Koivisto.
3588
3589         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3590         (InlineFormattingContext):
3591         (InlineFormattingContext.prototype.layout):
3592         (InlineFormattingContext.prototype._handleInlineContainer):
3593         (InlineFormattingContext.prototype._handleInlineBlockContainer):
3594         (InlineFormattingContext.prototype._handleInlineContent):
3595         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
3596         (Line.prototype.addInlineContainerBox):
3597         (Line.prototype.addTextLineBox):
3598         (Line):
3599         * LayoutReloaded/LayoutTree/Box.js:
3600         (Layout.Box.prototype.isInlineBlockBox):
3601         * LayoutReloaded/Utils.js:
3602         (LayoutRect.prototype.growHorizontally):
3603         (Utils.isBlockContainerElement):
3604         (Utils.isInlineBlockElement):
3605         (Utils._dumpLines.):
3606         (Utils._dumpLines):
3607         * LayoutReloaded/test/index.html:
3608         * LayoutReloaded/test/inline-block-with-fixed-width-height.html: Added.
3609
3610 2018-04-09  Timothy Hatcher  <timothy@apple.com>
3611
3612         Add support for setting a background color on WKWebView and WKView
3613         https://bugs.webkit.org/show_bug.cgi?id=184426
3614
3615         Reviewed by Wenson Hsieh.
3616
3617         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3618         * TestWebKitAPI/Tests/mac/BackgroundColor.mm: Added.
3619
3620 2018-04-09  Charlie Turner  <cturner@igalia.com>
3621
3622         [WPE] Add some missing install dependencies
3623         https://bugs.webkit.org/show_bug.cgi?id=184383
3624
3625         Reviewed by Michael Catanzaro.
3626
3627         * wpe/install-dependencies:
3628
3629 2018-04-09  Sihui Liu  <sihui_liu@apple.com>
3630
3631         REGRESSION(r229929): localStorage is broken for WebInspector
3632         https://bugs.webkit.org/show_bug.cgi?id=184382
3633         <rdar://problem/39257355>
3634
3635         Reviewed by Chris Dumez.
3636
3637         * TestWebKitAPI/Tests/WebKitCocoa/LocalStoragePersistence.mm:
3638         (TEST):
3639         * TestWebKitAPI/Tests/WebKitCocoa/localstorage-empty-string-value.html:
3640
3641 2018-04-09  Zan Dobersek  <zdobersek@igalia.com>
3642
3643         Unreviewed follow-up to r230389.
3644
3645         * WebKitTestRunner/TestController.cpp:
3646         (WTR::TestController::platformAdjustContext): Use the 'ServiceWorkers'
3647         subdirectory for the temporary testing-purpose SW registration directory
3648         like it's used in Cocoa's TestController, addressing the review comment
3649         that I forgot about.
3650
3651 2018-04-08  Zan Dobersek  <zdobersek@igalia.com>
3652
3653         Non-Cocoa ports use default directory for ServiceWorker data during testing
3654         https://bugs.webkit.org/show_bug.cgi?id=183784
3655
3656         Reviewed by Youenn Fablet.
3657
3658         * WebKitTestRunner/TestController.cpp:
3659         (WTR::TestController::platformAdjustContext): Set the service worker registration
3660         directory through the new WKWebsiteDataStore API for non-Cocoa ports.
3661
3662 2018-04-08  Zalan Bujtas  <zalan@apple.com>
3663
3664         [LayoutReloaded] Adjust line with inline container's margin border and padding
3665         https://bugs.webkit.org/show_bug.cgi?id=184409
3666
3667         Reviewed by Antti Koivisto.
3668
3669         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3670         (InlineFormattingContext.prototype.layout):
3671         (InlineFormattingContext.prototype._handleFloatingBox):
3672         (InlineFormattingContext.prototype._adjustLineForInlineContainerStart):
3673         (InlineFormattingContext.prototype._adjustLineForInlineContainerEnd):
3674         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
3675         (Line.prototype.shrink):
3676         (Line.prototype.adjustWithOffset):
3677         (Line.prototype.moveContentHorizontally):
3678         (Line.prototype.addTextLineBox):
3679         (Line):
3680         (Line.prototype.addFloatingBox): Deleted.
3681         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
3682         * LayoutReloaded/test/index.html:
3683         * LayoutReloaded/test/inline-with-padding-border-margin-offsets.html: Added.
3684
3685 2018-04-07  Zalan Bujtas  <zalan@apple.com>
3686
3687         [LayoutReloaded] Add support for InlineContainer
3688         https://bugs.webkit.org/show_bug.cgi?id=184394
3689
3690         Reviewed by Antti Koivisto.
3691
3692         * LayoutReloaded/FormattingContext/FormattingContext.js:
3693         (FormattingContext.prototype._addToLayoutQueue):
3694         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3695         (InlineFormattingContext.prototype.layout):
3696         (InlineFormattingContext.prototype._handleInlineContent):
3697         (InlineFormattingContext.prototype._handleFloatingBox):
3698         (InlineFormattingContext.prototype._adjustLineForInlineContainerStart):
3699         (InlineFormattingContext.prototype._adjustLineForInlineContainerEnd):
3700         (InlineFormattingContext.prototype._placeInFlowPositionedChildren):
3701         (InlineFormattingContext.prototype._placeOutOfFlowDescendants):
3702         (InlineFormattingContext.prototype._createNewLine):
3703         (InlineFormattingContext.prototype._handleContent): Deleted.
3704         * LayoutReloaded/LayoutState.js:
3705         (LayoutState.prototype._createFormattingState):
3706         * LayoutReloaded/LayoutTree/Box.js:
3707         (Layout.Box.prototype.isContainer):
3708         (Layout.Box.prototype.isInlineContainer):
3709         (Layout.Box.prototype.isInlineBox):
3710         * LayoutReloaded/LayoutTree/Container.js:
3711         (Layout.Container.prototype.isContainer): Deleted.
3712         * LayoutReloaded/LayoutTree/InlineContainer.js: Added.
3713         (Layout.InlineContainer):
3714         * LayoutReloaded/TreeBuilder.js:
3715         (TreeBuilder.prototype._createAndAttachBox):
3716         * LayoutReloaded/Utils.js:
3717         (Utils._dumpBox):
3718         (Utils.precisionRound):
3719         (Utils):
3720         * LayoutReloaded/test/index.html:
3721         * LayoutReloaded/test/inline-content-simple2.html: Added.
3722         * LayoutReloaded/test/inline-floating1.html: Added.
3723         * LayoutReloaded/test/inline-formatting-context-floats1.html: Added.
3724         * LayoutReloaded/test/inline-formatting-context-floats2.html: Added.
3725
3726 2018-04-07  Timothy Hatcher  <timothy@apple.com>
3727
3728         Use the system's link color when system appearance is desired for a WebView.
3729
3730         https://bugs.webkit.org/show_bug.cgi?id=184353
3731         rdar://problem/9420053
3732
3733         Reviewed by Wenson Hsieh.
3734
3735         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3736         * TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm: Added.
3737         (TestWebKitAPI::WebKit::LinkColor):
3738         (TestWebKitAPI::WebKit::LinkColorWithSystemAppearance):
3739
3740 2018-04-06  Zalan Bujtas  <zalan@apple.com>
3741
3742         Rebaseline LayoutReloaded patch file.
3743
3744         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
3745
3746 2018-04-06  Fujii Hironori  <Hironori.Fujii@sony.com>
3747
3748         [Win][WebCore] Expose a constant for scrollbar pixels per line (cScrollbarPixelsPerLine)
3749         https://bugs.webkit.org/show_bug.cgi?id=184296
3750
3751         Reviewed by Alex Christensen.
3752
3753         * DumpRenderTree/win/EventSender.cpp:
3754         (mouseScrollBy): Removed the duplicated cScrollbarPixelsPerLine
3755         definition. Use WebCore::cScrollbarPixelsPerLine.
3756
3757 2018-04-06  Zalan Bujtas  <zalan@apple.com>
3758
3759         Rebaseline LayoutReloaded patch file.
3760
3761         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
3762
3763 2018-04-05  Youenn Fablet  <youenn@apple.com>
3764
3765         Test expectation updater should handle Win bot results
3766         https://bugs.webkit.org/show_bug.cgi?id=184274
3767
3768         Reviewed by Ryosuke Niwa.
3769
3770         Add processing of win bot results.
3771         They will update platform/win results.
3772
3773         Updated the script so that if there is no mac-wk2 results, it will still process specific results.
3774
3775         * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater.py:
3776         (TestExpectationUpdater.__init__):
3777         (TestExpectationUpdater._bot_type):
3778         (TestExpectationUpdater.do_update):
3779         * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater_unittest.py:
3780         (MockAttachment):
3781         (MockAttachment.__init__):
3782         (MockAttachment.contents):
3783         (MockBugzilla):
3784         (MockBugzilla.__init__):
3785         (MockBugzilla.fetch_bug):
3786         (MockBugzilla.attachments):
3787         (MockZip):
3788         (MockZip.__init__):
3789         (MockZip.unzip):
3790         (MockZip.read):
3791         (TestExpectationUpdaterTest.test_update_test_expectations):
3792         (TestExpectationUpdaterTest):
3793         (TestExpectationUpdaterTest.test_update_win_future_test_expectations):
3794
3795 2018-04-05  Zalan Bujtas  <zalan@apple.com>
3796
3797         [LayoutReloaded] Fix static position for floating boxes when they don't fit the current line
3798         https://bugs.webkit.org/show_bug.cgi?id=184354
3799
3800         Reviewed by Antti Koivisto.
3801
3802         Do not shrink the current line with the floating box unless it is on the current line.
3803
3804         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3805         (InlineFormattingContext.prototype._handleFloatingBox):
3806         (InlineFormattingContext.prototype._mapFloatingVerticalPosition):
3807         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
3808         (Line.prototype.addFloatingBox):
3809         (Line):
3810         * LayoutReloaded/test/index.html:
3811         * LayoutReloaded/test/inline-with-right-floats3.html: Added.
3812
3813 2018-04-05  Zalan Bujtas  <zalan@apple.com>
3814
3815         [LayoutReloaded] Add support for right floating boxes in inline formatting context
3816         https://bugs.webkit.org/show_bug.cgi?id=184351
3817
3818         Reviewed by Antti Koivisto.
3819
3820         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3821         (InlineFormattingContext.prototype._handleFloatingBox):
3822         (InlineFormattingContext.prototype._mapFloatingVerticalPosition):
3823         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
3824         (Line.prototype.addFloatingBox):
3825         (Line):
3826         * LayoutReloaded/test/index.html:
3827         * LayoutReloaded/test/inline-with-right-float-simple.html: Added.
3828         * LayoutReloaded/test/inline-with-right-floats2.html: Added.
3829
3830 2018-04-05  Zalan Bujtas  <zalan@apple.com>
3831
3832         [LayoutReloaded] Move floating box to the next line when needed
3833         https://bugs.webkit.org/show_bug.cgi?id=184349
3834
3835         Reviewed by Antti Koivisto.
3836
3837         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3838         (InlineFormattingContext.prototype.layout):
3839         (InlineFormattingContext.prototype._handleContent):
3840         (InlineFormattingContext.prototype._handleText):
3841         (InlineFormattingContext.prototype._handleFloatingBox):
3842         (InlineFormattingContext.prototype._mapFloatingHorizontalPosition):
3843         (InlineFormattingContext):
3844         (InlineFormattingContext.prototype._handleFloatingBoxes): Deleted.
3845         (InlineFormattingContext.prototype._floatingBoxes): Deleted.
3846         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
3847         (Line.prototype.addTextLineBox):
3848         (Line.prototype.addFloatingBox):
3849         (Line):
3850         * LayoutReloaded/Utils.js:
3851         (LayoutRect.prototype.moveHorizontally):
3852         (LayoutRect.prototype.moveVertically):
3853         * LayoutReloaded/test/index.html:
3854         * LayoutReloaded/test/inline-with-floats-when-they-dont-fit.html: Added.
3855
3856 2018-04-05  Brady Eidson  <beidson@apple.com>
3857
3858         Process Swap on Navigation causes many webpages to hang due to attempted process swap for iframe navigations.
3859         <rdar://problem/39162236> and https://bugs.webkit.org/show_bug.cgi?id=184318
3860
3861         Reviewed by Andy Estes.
3862
3863         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3864         (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
3865         (-[PSONScheme addMappingFromURLString:toData:]):
3866         (-[PSONScheme webView:startURLSchemeTask:]):
3867
3868 2018-04-05  Yusuke Suzuki  <utatane.tea@gmail.com>
3869
3870         [WTF] Remove StaticLock
3871         https://bugs.webkit.org/show_bug.cgi?id=184332
3872
3873         Reviewed by Mark Lam.
3874
3875         * DumpRenderTree/JavaScriptThreading.cpp:
3876
3877 2018-04-05  Zalan Bujtas  <zalan@apple.com>
3878
3879         [LayoutReloaded] Find the correct left edge for a line when floating boxes are in parent formatting context.
3880         https://bugs.webkit.org/show_bug.cgi?id=184330
3881
3882         Reviewed by Antti Koivisto.
3883
3884         In inline formatting context, the floating boxes can come from the parent (block) formatting context. Let's
3885         take them into account when computing the line edges.
3886
3887         * LayoutReloaded/FormattingContext/FloatingContext.js:
3888         (FloatingContext.prototype.left):
3889         (FloatingContext.prototype.right):
3890         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3891         (InlineFormattingContext.prototype._createNewLine):
3892         (InlineFormattingContext.prototype._mapFloatingVerticalPosition):
3893         (InlineFormattingContext.prototype._mapFloatingHorizontalPosition):
3894         (InlineFormattingContext.prototype._mapFloatingPosition): Deleted.
3895         * LayoutReloaded/test/index.html:
3896         * LayoutReloaded/test/multiple-left-floats-on-line-from-parent-formatting-context.html: Added.
3897
3898 2018-04-05  Zalan Bujtas  <zalan@apple.com>
3899
3900         [LayoutReloaded] Collect floating boxes in inline formatting context and layout them first.
3901         https://bugs.webkit.org/show_bug.cgi?id=184329
3902
3903         Reviewed by Antti Koivisto.
3904
3905         Let's do this for now. There might be some cases where this violates layout.
3906
3907         * LayoutReloaded/FormattingContext/FormattingContext.js:
3908         (FormattingContext.prototype._outOfFlowDescendants):
3909         (FormattingContext):
3910         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3911         (InlineFormattingContext.prototype.layout):
3912         (InlineFormattingContext.prototype._handleFloatingBoxes):
3913         (InlineFormattingContext.prototype._handleFloatingBox):
3914         (InlineFormattingContext.prototype._floatingBoxes):
3915         (InlineFormattingContext):
3916         * LayoutReloaded/test/index.html:
3917         * LayoutReloaded/test/multiple-left-floats-on-line-simple.html: Added.
3918
3919 2018-04-04  Youenn Fablet  <youenn@apple.com>
3920
3921         WebRTC data channel only applications require capture permissions for direct connections
3922         https://bugs.webkit.org/show_bug.cgi?id=174500
3923         <rdar://problem/34134281>
3924
3925         Reviewed by Eric Carlson.
3926
3927         Adding options to enable MDNS ICE candidates.
3928
3929         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3930         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3931         (WTR::TestRunner::setMediaDevicesEnabled):
3932         (WTR::TestRunner::setMDNSICECandidatesEnabled):
3933         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3934         * WebKitTestRunner/TestController.cpp:
3935         (WTR::TestController::resetPreferencesToConsistentValues):
3936
3937 2018-04-04  Ryan Haddad  <ryanhaddad@apple.com>
3938
3939         Disable failing WKWebViewAutofillTests
3940         https://bugs.webkit.org/show_bug.cgi?id=184196
3941
3942         Unreviewed test gardening.
3943
3944         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
3945         (TestWebKitAPI::TEST):
3946
3947 2018-04-04  Youenn Fablet  <youenn@apple.com>
3948
3949         Introduce a ThreadSafeRefCounted parameter to ensure being destroyed on the main thread
3950         https://bugs.webkit.org/show_bug.cgi?id=183988
3951
3952         Reviewed by Darin Adler.
3953
3954         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
3955         (TestWebKitAPI::ThreadSafeRefCountedObject::create):
3956         (TestWebKitAPI::ThreadSafeRefCountedObject::~ThreadSafeRefCountedObject):
3957         (TestWebKitAPI::MainThreadSafeRefCountedObject::create):
3958         (TestWebKitAPI::MainThreadSafeRefCountedObject::~MainThreadSafeRefCountedObject):
3959         (TestWebKitAPI::TEST):
3960
3961 2018-04-04  Ms2ger  <Ms2ger@igalia.com>
3962
3963         Test gardening for GTK.
3964         https://bugs.webkit.org/show_bug.cgi?id=184298
3965
3966         Unreviewed test gardening.
3967
3968         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: Add pointer to
3969         https://bugs.webkit.org/show_bug.cgi?id=184295.
3970
3971 2018-04-03  Carlos Garcia Campos  <cgarcia@igalia.com>
3972
3973         ASSERTION FAILED: !m_mainFrame->coreFrame()->loader().frameHasLoaded() || !m_pendingNavigationID when reloading page while a page is loading
3974         https://bugs.webkit.org/show_bug.cgi?id=153210
3975
3976         Reviewed by Alex Christensen.
3977
3978         Add unit tests to WebKit C API and WebKitGLib.
3979
3980         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
3981         (TestWebKitAPI::TEST):
3982         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
3983         (LoadTwiceAndReloadTest::reloadOnFinishLoad):
3984         (LoadTwiceAndReloadTest::LoadTwiceAndReloadTest):
3985         (LoadTwiceAndReloadTest::~LoadTwiceAndReloadTest):
3986         (LoadTwiceAndReloadTest::waitUntilFinished):
3987         (testWebViewLoadTwiceAndReload):
3988         (beforeAll):
3989
3990 2018-04-03  Carlos Garcia Campos  <cgarcia@igalia.com>
3991
3992         [GTK] Test /webkit/WebKitWebPage/context-menu is failing since r229831
3993         https://bugs.webkit.org/show_bug.cgi?id=184260
3994
3995         Reviewed by Michael Catanzaro.
3996
3997         This is not a regression introduced in r229831, though, it's a bug in the test itself revealed by r229831. We
3998         should wait for the load to complete before trying to show the context menu.
3999
4000         * TestWebKitAPI/Tests/WebKitGtk/TestContextMenu.cpp:
4001         (testContextMenuWebExtensionMenu):
4002
4003 2018-04-03  Zalan Bujtas  <zalan@apple.com>
4004
4005         [LayoutReloaded] Introduce floating to InlineFormattingContext
4006         https://bugs.webkit.org/show_bug.cgi?id=184288
4007
4008         Reviewed by Antti Koivisto.
4009
4010         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
4011         (BlockFormattingContext.prototype._computeFloatingWidth): Deleted.
4012         (BlockFormattingContext.prototype._computeFloatingHeight): Deleted.
4013         * LayoutReloaded/FormattingContext/FormattingContext.js:
4014         (FormattingContext.prototype._computeFloatingWidth):
4015         (FormattingContext.prototype._computeFloatingHeight):
4016         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
4017         (InlineFormattingContext.prototype.layout):
4018         (InlineFormattingContext.prototype._handleFloatingBox):
4019         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
4020         (Line.prototype.addFloatingBox):
4021         (Line):
4022         * LayoutReloaded/test/float-is-inside-inline-formatting-context-simple.html: Added.
4023         * LayoutReloaded/test/index.html:
4024
4025 2018-04-03  Youenn Fablet  <youenn@apple.com>
4026
4027         NetworkResourceLoader does not need to expose all redirect response headers
4028         https://bugs.webkit.org/show_bug.cgi?id=184114
4029         <rdar://problem/39010557>
4030
4031         Reviewed by Ryosuke Niwa.
4032
4033         Add an option to dump the number of headers in a response.
4034         This allows validating that filtering does happen or not.
4035
4036         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
4037         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
4038         (WTR::dumpResponseDescriptionSuitableForTestResult):
4039         (WTR::InjectedBundlePage::responseHeaderCount):
4040         (WTR::InjectedBundlePage::willSendRequestForFrame):
4041         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
4042         * WebKitTestRunner/InjectedBundle/TestRunner.h:
4043         (WTR::TestRunner::dumpAllHTTPRedirectedResponseHeaders):
4044         (WTR::TestRunner::shouldDumpAllHTTPRedirectedResponseHeaders const):
4045         * WebKitTestRunner/InjectedBundle/cocoa/InjectedBundlePageCocoa.mm:
4046         (WTR::InjectedBundlePage::responseHeaderCount):
4047         * WebKitTestRunner/TestController.cpp:
4048         (WTR::TestController::resetPreferencesToConsistentValues):
4049
4050 2018-04-03  Andy Estes  <aestes@apple.com>
4051
4052         [Mac] Prioritize file promises over filenames during drag and drop
4053         https://bugs.webkit.org/show_bug.cgi?id=184237
4054         <rdar://problem/38278076>
4055
4056         Reviewed by Wenson Hsieh.
4057
4058         * DumpRenderTree/mac/EventSendingController.mm:
4059         (-[EventSendingController beginDragWithFilePromises:]):
4060
4061 2018-04-03  Brady Eidson  <beidson@apple.com>
4062
4063         Make SessionStorage work with process swapping.
4064         https://bugs.webkit.org/show_bug.cgi?id=184270
4065
4066         Reviewed by Andy Estes.
4067
4068         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4069         (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
4070
4071 2018-04-03  Chris Dumez  <cdumez@apple.com>
4072
4073         Drop MainFrame class
4074         https://bugs.webkit.org/show_bug.cgi?id=184191
4075
4076         Reviewed by Darin Adler.
4077
4078         * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
4079
4080 2018-04-03  Charlie Turner  <cturner@igalia.com>
4081
4082         [WPE] Add WPE port to garden-o-matic
4083         https://bugs.webkit.org/show_bug.cgi?id=182998
4084
4085         Reviewed by Michael Catanzaro.
4086
4087         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
4088         Add WPE as a port to check.
4089         (config.kPlatforms.string_appeared_here._builderApplies): Use less
4090         surprising equality operator.
4091         (config.kPlatforms.string_appeared_here.resultsDirectoryNameFromBuilderName):
4092         Ditto.
4093         (config.kPlatforms.string_appeared_here.resultsDirectoryForBuildNumber):
4094         Ditto.
4095
4096 2018-04-03  Adrian Perez de Castro  <aperez@igalia.com>
4097
4098         [GTK][JHBuild] Tools/gtk/install-dependencies: Replace libxfont with libxfont2 in Arch Linux
4099         https://bugs.webkit.org/show_bug.cgi?id=184258
4100
4101         Reviewed by Carlos Alberto Lopez Perez.
4102
4103         * gtk/install-dependencies: Use libxfont2 on Arch Linux as well.
4104
4105 2018-04-02  Brady Eidson  <beidson@apple.com>
4106
4107         Process swapping on navigation needs to handle server redirects.
4108         <rdar://problem/38690465> and https://bugs.webkit.org/show_bug.cgi?id=184142
4109
4110         Reviewed by Alex Christensen.
4111
4112         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4113         (-[PSONNavigationDelegate webView:didFinishNavigation:]):
4114         (-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
4115         (-[PSONNavigationDelegate webView:didReceiveServerRedirectForProvisionalNavigation:]):
4116         (-[PSONScheme addRedirectFromURLString:toURLString:]):
4117         (-[PSONScheme webView:startURLSchemeTask:]):
4118
4119 2018-04-02  Daniel Bates  <dabates@apple.com>
4120
4121         Add infrastructure to relax SSL for allowed hosts in DumpRenderTree and WebKitTestRunner
4122         https://bugs.webkit.org/show_bug.cgi?id=184239
4123
4124         Reviewed by Alexey Proskuryakov.
4125
4126         Adds a new optional command line option --allow-any-certificate-for-allowed-hosts (defaults to disabled)
4127         to allow the allowed hosts to accept any HTTPS certificate. You can specify an allowed host
4128         by using the existing command line option --allowed-host.
4129
4130         Currently both DumpRenderTree and WebKitTestRunner relax SSL certificate validation
4131         for 127.0.0.1 and localhost so that we can run HTTPS tests from these hosts using
4132         a self-signed certificate. They do not relax these restrictions for any allowed host,
4133         specified using the optional command line option --allowed-host. For testing purposes
4134         it is useful to be able to run a local HTTPS server with a self-signed certificate and
4135         mimic a non-localhost hostname (by adding an alias(es) for 127.0.0.1 to /etc/hosts).
4136         We should support relaxing SSL restrictions for such testing purposes.
4137
4138         For example, to allow host example.test to present any HTTPS certificate when running
4139         tests you would invoke:
4140
4141             run-webkit-tests --allowed-host example.test --additional-drt-flag '--allow-any-certificate-for-allowed-hosts'
4142
4143         * DumpRenderTree/mac/DumpRenderTree.mm:
4144         (initializeGlobalsFromCommandLineOptions): Parse the command line option --allow-any-certificate-for-allowed-hosts.
4145         (dumpRenderTree): Allow any HTTPS certificate from each allowed host.
4146         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
4147         (WTR::InjectedBundle::didReceiveMessageToPage): Clear out the existing list of allowed hosts
4148         before appending entries to it to avoid growing the list of allowed hosts without bound. Call
4149         platformAllowAnyHTTPSCertificateForAllowedHosts() to apply SSL relaxation for each allowed host.
4150         * WebKitTestRunner/Options.cpp:
4151         (WTR::handleOptionAllowAnyHTTPSCertificateForAllowedHosts): Added.
4152         (WTR::handleOptionAllowedHost): Update code as needed now that Options::allowedHosts is a std::set.
4153         (WTR::OptionsHandler::OptionsHandler):
4154         * WebKitTestRunner/Options.h: Change the data type of allowedHosts from a std::vector to a std::set
4155         so that we can make use of the convenience functon std::set::find() in TestController::canAuthenticateAgainstProtectionSpace().
4156         * WebKitTestRunner/TestController.cpp:
4157         (WTR::TestController::initialize):
4158         (WTR::TestController::canAuthenticateAgainstProtectionSpace): Allow any HTTPS certificate from each allowed host.
4159         * WebKitTestRunner/TestController.h:
4160
4161 2018-04-02  Ryan Haddad  <ryanhaddad@apple.com>
4162
4163         Unreviewed, rolling out r230174.
4164
4165         Caused LayoutTests to exit early with assertion failures.
4166
4167         Reverted changeset:
4168
4169         "Process swapping on navigation needs to handle server
4170         redirects."
4171         https://bugs.webkit.org/show_bug.cgi?id=184142
4172         https://trac.webkit.org/changeset/230174
4173
4174 2018-04-02  Daniel Bates  <dabates@apple.com>
4175
4176         Remove pre-Network Session code path for allowing any HTTPS certificate on Mac and iOS
4177         https://bugs.webkit.org/show_bug.cgi?id=184242
4178
4179         Reviewed by Alexey Proskuryakov.
4180
4181         Following r227364 we use the Network Session (NSURLSession) code path by default in
4182         modern WebKit on Mac and iOS. That is, we no longer use {CF, NS}URLConnection in modern
4183         WebKit on these platforms. So, we can remove code that used NSURLRequest SPI to allow
4184         any HTTPS certificate from localhost and 127.0.0.1 when using {CF, NS}URLConnection.
4185         The equivalent functionality is implemented in TestController::canAuthenticateAgainstProtectionSpace().
4186
4187         * WebKitTestRunner/InjectedBundle/ios/InjectedBundleIOS.mm:
4188         (WTR::InjectedBundle::platformInitialize):
4189         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
4190         (WTR::InjectedBundle::platformInitialize):
4191
4192 2018-04-02  Brady Eidson  <beidson@apple.com>
4193
4194         Process swapping on navigation needs to handle server redirects.
4195         <rdar://problem/38690465> and https://bugs.webkit.org/show_bug.cgi?id=184142
4196
4197         Reviewed by Alex Christensen.
4198
4199         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4200         (-[PSONNavigationDelegate webView:didFinishNavigation:]):
4201         (-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
4202         (-[PSONNavigationDelegate webView:didReceiveServerRedirectForProvisionalNavigation:]):
4203         (-[PSONScheme addRedirectFromURLString:toURLString:]):
4204         (-[PSONScheme webView:startURLSchemeTask:]):
4205
4206 2018-04-02  Thibault Saunier  <tsaunier@igalia.com>
4207
4208         webkitpy: Use current environment value for GST_DEBUG(_FILE) and DOT_DIR env vars
4209         https://bugs.webkit.org/show_bug.cgi?id=184036
4210
4211         Reviewed by Philippe Normand.
4212
4213         Those variables are for debug purpose and should not change the behaviour
4214         itself, and developers expect them to have effect.
4215
4216         * Scripts/webkitpy/port/gtk.py:
4217         (GtkPort.setup_environ_for_server):
4218
4219 2018-04-02  Daniel Bates  <dabates@apple.com>
4220
4221         Remove Options constructor and use internal linkage for option handlers
4222         https://bugs.webkit.org/show_bug.cgi?id=184229
4223
4224         Reviewed by Andy Estes.
4225
4226         Use C++11 default initializer syntax to remove the need to explicitly have a constructor
4227         for the struct Options. Use internal linkage for option handler functions as these
4228         are never invoked outside the translation unit they are defined in.
4229
4230         * WebKitTestRunner/Options.cpp:
4231         (WTR::handleOptionNoTimeout):
4232         (WTR::handleOptionVerbose):
4233         (WTR::handleOptionGcBetweenTests):
4234         (WTR::handleOptionPixelTests):
4235         (WTR::handleOptionPrintSupportedFeatures):
4236         (WTR::handleOptionComplexText):
4237         (WTR::handleOptionAcceleratedDrawing):
4238         (WTR::handleOptionRemoteLayerTree):
4239         (WTR::handleOptionShowWebView):
4240         (WTR::handleOptionShowTouches):
4241         (WTR::handleOptionAllowedHost):
4242         (WTR::handleOptionUnmatched):
4243         (WTR::Options::Options): Deleted.
4244         * WebKitTestRunner/Options.h:
4245
4246 2018-04-02  Alejandro G. Castro  <alex@igalia.com>
4247
4248         Unreviewed GTK port dependencies fix after r230152.
4249
4250         Add alsa library dependency for gtk.
4251
4252         * gtk/install-dependencies:
4253
4254 2018-04-02  Alejandro G. Castro  <alex@igalia.com>
4255
4256         [GTK] Make libwebrtc backend buildable for GTK  port
4257         https://bugs.webkit.org/show_bug.cgi?id=178860
4258
4259         Reviewed by Youenn Fablet.
4260
4261         * gstreamer/jhbuild.modules: Modified the libvpx module for the
4262         libwebrtc compilation.
4263         * gtk/install-dependencies: Add libevent as a system requirement.
4264         * Scripts/webkitpy/style/checker.py: Added libwebrtc to the list of third
4265         party libraries with reduced style checks.
4266
4267 2018-04-01  Zalan Bujtas  <zalan@apple.com>
4268
4269         [LayoutReloaded] Use containing block's contentBox left edge when the float is to the right.
4270         https://bugs.webkit.org/show_bug.cgi?id=184230
4271
4272         Reviewed by Antti Koivisto.
4273
4274         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
4275         (InlineFormattingContext.prototype._mapFloatingPosition):
4276         (InlineFormattingContext):
4277         * LayoutReloaded/test/index.html:
4278         * LayoutReloaded/test/inline-formatting-context-with-floats2.html: Added.
4279
4280 2018-04-01  Zalan Bujtas  <zalan@apple.com>
4281
4282         [LayoutReloaded] Right floating box reduces available line width.
4283         https://bugs.webkit.org/show_bug.cgi?id=184226
4284
4285         Reviewed by Antti Koivisto.
4286
4287         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
4288         (InlineFormattingContext.prototype._createNewLine):
4289         * LayoutReloaded/test/index.html:
4290         * LayoutReloaded/test/inline-with-floats-right-left-simple.html: Added.
4291
4292 2018-03-31  Zalan Bujtas  <zalan@apple.com>
4293
4294         [LayoutReloaded] Floating box reduces line with in inline formatting context
4295         https://bugs.webkit.org/show_bug.cgi?id=184223
4296
4297         Reviewed by Antti Koivisto.
4298
4299         * LayoutReloaded/FormattingContext/FloatingContext.js:
4300         (FloatingContext.prototype.left):
4301         (FloatingContext.prototype.right):
4302         (FloatingContext.prototype._mapDisplayMarginBoxToFormattingRoot):
4303         (FloatingContext.prototype._mapBorderBoxToFormattingRoot):
4304         (FloatingContext.prototype._mapContentBoxToFormattingRoot):
4305         (FloatingContext.prototype.formattingRoot):
4306         (FloatingContext.prototype._floatingState):
4307         (FloatingContext.prototype._formattingRoot): Deleted.
4308         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
4309         (InlineFormattingContext.prototype._createNewLine):
4310         (InlineFormattingContext.prototype._mapFloatingPosition):
4311         (InlineFormattingContext):
4312         * LayoutReloaded/FormattingState/FormattingState.js:
4313         (FormattingState.prototype.displayBox):
4314         (FormattingState):
4315         * LayoutReloaded/test/index.html:
4316         * LayoutReloaded/test/inline-formatting-context-with-floats.html: Added.
4317
4318 2018-03-31  Zalan Bujtas  <zalan@apple.com>
4319
4320         [LayoutReloaded] InlineFormattingState should inherit the floating state from its parent formatting state
4321         https://bugs.webkit.org/show_bug.cgi?id=184220
4322
4323         Reviewed by Antti Koivisto.
4324
4325         If the block container box that initiates an inline formatting context also establishes a block context,
4326         create a new float state, otherwise use the existing one.
4327
4328         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
4329         (BlockFormattingContext.prototype._contentHeight):
4330         * LayoutReloaded/FormattingState/InlineFormattingState.js:
4331         (InlineFormattingState):
4332         * LayoutReloaded/LayoutState.js:
4333         (LayoutState.prototype.establishedFormattingState):
4334         (LayoutState.prototype.formattingStateForBox):
4335         (LayoutState.prototype.formattingState): Deleted.
4336         * LayoutReloaded/Utils.js:
4337
4338 2018-03-31  Zalan Bujtas  <zalan@apple.com>
4339
4340         [LayoutReloaded] FloatingContext does not