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