Temporarily add back the file removed in r210463 to unbreak internal bots.
[WebKit-https.git] / Tools / ChangeLog
1 2017-01-10  Ryosuke Niwa  <rniwa@webkit.org>
2
3         Temporarily add back the file removed in r210463 to unbreak internal bots.
4
5         * Scripts/webkitpy/benchmark_runner/data/patches/Animometer.patch: Copied from Tools/Scripts/webkitpy/benchmark_runner/data/patches/Animometer.patch.
6
7 2017-01-10  Jonathan Bedard  <jbedard@apple.com>
8
9         svn-apply failed to apply a patch (deleting file with svn property)
10         https://bugs.webkit.org/show_bug.cgi?id=165953
11
12         Reviewed by Daniel Bates.
13
14         * Scripts/VCSUtils.pm:
15         (parseSvnPropertyValue): The beginning of a diff will cause an early exit in the case of no empty newlines.
16         * Scripts/webkitperl/VCSUtils_unittest/parseSvnProperty.pl: Add tests without break between diffs for properties.
17
18 2017-01-10  Ryan Haddad  <ryanhaddad@apple.com>
19
20         Update flakiness dashboard configuration.
21         https://bugs.webkit.org/show_bug.cgi?id=166869
22
23         Reviewed by Alexey Proskuryakov.
24
25         * TestResultServer/static-dashboards/builders.jsonp:
26         * TestResultServer/static-dashboards/flakiness_dashboard.js:
27
28 2017-01-10  Carlos Alberto Lopez Perez  <clopez@igalia.com>
29
30         [GTK] Stop honoring the environment variable USE_NATIVE_XDISPLAY
31         https://bugs.webkit.org/show_bug.cgi?id=165232
32
33         Unreviewed follow-up patch after r210539 and r210523.
34
35         Instead of using that environment variable, the argument
36         --display-server=xorg should be passed now.
37
38         The GTK+ performance bot was the only bot using this, and is
39         already passing --display-server=xorg after r210539.
40
41         * Scripts/webkitpy/port/gtk.py:
42         (GtkPort._driver_class):
43
44 2017-01-10  Carlos Alberto Lopez Perez  <clopez@igalia.com>
45
46         [GTK] Add a new release test bot for Wayland and pass --display-server=xorg to the GTK Perf bot.
47         https://bugs.webkit.org/show_bug.cgi?id=166872
48
49         Reviewed by Michael Catanzaro.
50
51         Add the new wayland release test bot as a test-only bot. It will download the built product from the release build-only bot.
52         Define the required "--display-server=driver" in the bot additionalArguments config entry.
53         Implement support for honoring additionalArguments on the RunGtkAPITests and RunAndUploadPerfTests steps.
54         The step RunWebKitTests already has support for it.
55
56         * BuildSlaveSupport/build.webkit.org-config/config.json:
57         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
58         (RunGtkAPITests.start):
59         (RunAndUploadPerfTests.start):
60         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
61
62 2017-01-09  Ryan Haddad  <ryanhaddad@apple.com>
63
64         Unreviewed, rolling out r210531.
65
66         This change broke the 32-bit macOS build and caused LayoutTest
67         failures.
68
69         Reverted changeset:
70
71         "File scheme should not allow access of a resource on a
72         different volume."
73         https://bugs.webkit.org/show_bug.cgi?id=158552
74         http://trac.webkit.org/changeset/210531
75
76 2017-01-09  Brent Fulgham  <bfulgham@apple.com>
77
78         File scheme should not allow access of a resource on a different volume.
79         https://bugs.webkit.org/show_bug.cgi?id=158552
80         <rdar://problem/15307582>
81
82         Reviewed by Alex Christensen.
83
84         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
85         * TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.html: Added.
86         * TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.mm: Added.
87
88 2017-01-09  Carlos Alberto Lopez Perez  <clopez@igalia.com>
89
90         [GTK][Wayland] Allow running the layout tests under a native Wayland environment.
91         https://bugs.webkit.org/show_bug.cgi?id=165232
92
93         Reviewed by Michael Catanzaro.
94
95         Add a new WaylandDriver to run the tests in the user current wayland session.
96
97         Also merge all the configuration options for selecting the display server inside one
98         switch --display-server=xvfb/xorg/wayland/weston (defaulting to xvfb).
99
100         This switch is supported on the scripts: run-gtk-tests, run-perf-tests and run-webkit-tests.
101
102         * Scripts/run-gtk-tests: Add missing logging.basicConfig() initialization for the error logger.
103         (TestRunner._create_driver):
104         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
105         (parse_args):
106         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
107         (PerfTestsRunner._parse_args):
108         * Scripts/webkitpy/port/gtk.py:
109         (GtkPort.__init__):
110         (GtkPort._driver_class):
111         (GtkPort._search_paths):
112         * Scripts/webkitpy/port/waylanddriver.py: Added.
113         (WaylandDriver):
114         (WaylandDriver.check_driver):
115         (WaylandDriver._setup_environ_for_test):
116         (WaylandDriver._start):
117
118 2017-01-09  Andy Estes  <aestes@apple.com>
119
120         [QuickLook] Add a layout test for webkit.org/b/135651
121         https://bugs.webkit.org/show_bug.cgi?id=166855
122
123         Reviewed by Andreas Kling.
124
125         * DumpRenderTree/mac/FrameLoadDelegate.mm:
126         (-[FrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]): Added output for
127         errors with code WebKitErrorCannotShowURL.
128         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
129         (WTR::InjectedBundlePage::didFailProvisionalLoadWithErrorForFrame): Made the error output
130         not specific to WebKit2 error codes.
131
132 2017-01-09  Antoine Quint  <graouts@apple.com>
133
134         Support webkit-test-runner key-value pairs in http tests in DumpRenderTree
135         https://bugs.webkit.org/show_bug.cgi?id=166837
136
137         Reviewed by Alex Christensen.
138
139         We now correctly handle the --absolutePath argument in DumpRenderTree and use
140         the provided value when trying to determine the path to the test file. Failing
141         that, we use the computed URL or the raw path provided to cover all cases.
142         
143         This was tested in the context of https://bugs.webkit.org/show_bug.cgi?id=165668
144         by applying this patch and seeing the number test failures dramatically reduced
145         with WK1 due to the option to turn modern media controls off for older media controls
146         tests.
147
148         * DumpRenderTree/DumpRenderTree.h:
149         * DumpRenderTree/DumpRenderTreeCommon.cpp:
150         (parseInputLine):
151         * DumpRenderTree/TestOptions.h:
152         * DumpRenderTree/TestOptions.mm:
153         (TestOptions::TestOptions):
154         * DumpRenderTree/mac/DumpRenderTree.mm:
155         (runTest):
156
157 2017-01-09  Milan Crha  <mcrha@redhat.com>
158
159         prepare-ChangeLog: Correct help string for --style option
160         https://bugs.webkit.org/show_bug.cgi?id=166725
161
162         Reviewed by Alexey Proskuryakov.
163
164         * Scripts/prepare-ChangeLog:
165         (main):
166
167 2017-01-09  Lucas Forschler  <lforschler@apple.com>
168
169         https://bugs.webkit.org/show_bug.cgi?id=166839
170         Add php7 support for macOS.
171         Mirror the debian logic to look for a php7 module on disk, and return the appropriate apache config file.
172
173         Reviewed by Alexey Proskuryakov.
174
175         * Scripts/webkitpy/port/base.py:
176         (Port._is_darwin_php_version_7):
177         (Port._debian_php_version):
178         (Port):
179         (Port._darwin_php_version):
180         (Port._apache_config_file_name_for_platform):
181
182 2017-01-06  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
183
184         [GTK] Should support key and code properties on keyboard events
185         https://bugs.webkit.org/show_bug.cgi?id=166759
186
187         Reviewed by Carlos Garcia Campos.
188
189         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
190         (WTR::getGDKKeySymForKeyRef): add missing modifier keys which were being reported as 'l' and 'r' only
191         on tests.
192
193 2017-01-06  Per Arne Vollan  <pvollan@apple.com>
194
195         [Win] Some tests are flaky because certain DLLs are writing to stdout.
196         https://bugs.webkit.org/show_bug.cgi?id=166760
197
198         Reviewed by Darin Adler.
199
200         Some tests are flaky because certain DLLs are writing to stdout, giving incorrect test results.
201         We can work around that by duplicating and redirecting stdout.
202
203         * DumpRenderTree/PixelDumpSupport.cpp:
204         (dumpWebViewAsPixelsAndCompareWithExpected):
205         (printPNG):
206         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
207         (logEventProc):
208         * DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
209         (DRTDesktopNotificationPresenter::showDesktopNotification):
210         (DRTDesktopNotificationPresenter::cancelDesktopNotification):
211         (DRTDesktopNotificationPresenter::requestNotificationPermission):
212         * DumpRenderTree/win/DumpRenderTree.cpp:
213         (dumpFrameScrollPosition):
214         (dumpHistoryItem):
215         (dumpBackForwardList):
216         (dump):
217         (runTest):
218         (main):
219         * DumpRenderTree/win/DumpRenderTreeWin.h:
220         * DumpRenderTree/win/EditingDelegate.cpp:
221         (EditingDelegate::shouldBeginEditingInDOMRange):
222         (EditingDelegate::shouldEndEditingInDOMRange):
223         (EditingDelegate::shouldInsertNode):
224         (EditingDelegate::shouldInsertText):
225         (EditingDelegate::shouldDeleteDOMRange):
226         (EditingDelegate::shouldChangeSelectedDOMRange):
227         (EditingDelegate::shouldApplyStyle):
228         (EditingDelegate::shouldChangeTypingStyle):
229         (EditingDelegate::doPlatformCommand):
230         (EditingDelegate::webViewDidBeginEditing):
231         (EditingDelegate::webViewDidChange):
232         (EditingDelegate::webViewDidEndEditing):
233         (EditingDelegate::webViewDidChangeTypingStyle):
234         (EditingDelegate::webViewDidChangeSelection):
235         * DumpRenderTree/win/FrameLoadDelegate.cpp:
236         (FrameLoadDelegate::didStartProvisionalLoadForFrame):
237         (FrameLoadDelegate::didReceiveServerRedirectForProvisionalLoadForFrame):
238         (FrameLoadDelegate::didChangeLocationWithinPageForFrame):
239         (FrameLoadDelegate::didFailProvisionalLoadWithError):
240         (FrameLoadDelegate::didCommitLoadForFrame):
241         (FrameLoadDelegate::didReceiveTitle):
242         (FrameLoadDelegate::didFinishLoadForFrame):
243         (FrameLoadDelegate::didFailLoadWithError):
244         (FrameLoadDelegate::willPerformClientRedirectToURL):
245         (FrameLoadDelegate::didCancelClientRedirectForFrame):
246         (FrameLoadDelegate::windowScriptObjectAvailable):
247         (FrameLoadDelegate::didFinishDocumentLoadForFrame):
248         (FrameLoadDelegate::didHandleOnloadEventsForFrame):
249         (FrameLoadDelegate::didDisplayInsecureContent):
250         (FrameLoadDelegate::didRunInsecureContent):
251         (FrameLoadDelegate::webViewProgressFinishedNotification):
252         * DumpRenderTree/win/HistoryDelegate.cpp:
253         (HistoryDelegate::didNavigateWithNavigationData):
254         (HistoryDelegate::didPerformClientRedirectFromURL):
255         (HistoryDelegate::didPerformServerRedirectFromURL):
256         (HistoryDelegate::updateHistoryTitle):
257         (HistoryDelegate::populateVisitedLinksForWebView):
258         * DumpRenderTree/win/PolicyDelegate.cpp:
259         (PolicyDelegate::decidePolicyForNavigationAction):
260         (PolicyDelegate::unableToImplementPolicyWithError):
261         * DumpRenderTree/win/ResourceLoadDelegate.cpp:
262         (ResourceLoadDelegate::willSendRequest):
263         (ResourceLoadDelegate::didReceiveAuthenticationChallenge):
264         (ResourceLoadDelegate::didReceiveResponse):
265         (ResourceLoadDelegate::didFinishLoadingFromDataSource):
266         (ResourceLoadDelegate::didFailLoadingWithError):
267         * DumpRenderTree/win/TestRunnerWin.cpp:
268         (TestRunner::addDisallowedURL):
269         (TestRunner::originsWithApplicationCache):
270         (TestRunner::setStorageDatabaseIdleInterval):
271         (TestRunner::closeIdleLocalStorageDatabases):
272         (TestRunner::copyDecodedHostName):
273         (TestRunner::copyEncodedHostName):
274         (TestRunner::numberOfPendingGeolocationPermissionRequests):
275         (TestRunner::isGeolocationProviderActive):
276         (TestRunner::pathToLocalResource):
277         (TestRunner::setMockDeviceOrientation):
278         (TestRunner::setMockGeolocationPosition):
279         (TestRunner::setMockGeolocationPositionUnavailableError):
280         (TestRunner::setSpatialNavigationEnabled):
281         (TestRunner::setAutomaticLinkDetectionEnabled):
282         (TestRunner::isCommandEnabled):
283         (TestRunner::authenticateSession):
284         (TestRunner::addChromeInputField):
285         (TestRunner::removeChromeInputField):
286         (TestRunner::focusWebView):
287         (TestRunner::grantWebNotificationPermission):
288         (TestRunner::denyWebNotificationPermission):
289         (TestRunner::removeAllWebNotificationPermissions):
290         (TestRunner::simulateWebNotificationClick):
291         (TestRunner::imageCountInGeneralPasteboard):
292         * DumpRenderTree/win/UIDelegate.cpp:
293         (UIDelegate::runJavaScriptAlertPanelWithMessage):
294         (UIDelegate::runJavaScriptConfirmPanelWithMessage):
295         (UIDelegate::runJavaScriptTextInputPanelWithPrompt):
296         (UIDelegate::runBeforeUnloadConfirmPanelWithMessage):
297         (UIDelegate::webViewAddMessageToConsole):
298         (UIDelegate::exceededDatabaseQuota):
299         (UIDelegate::setStatusText):
300         (UIDelegate::didPressMissingPluginButton):
301
302 2017-01-07  Tim Horton  <timothy_horton@apple.com>
303
304         Add a setting to create editable MiniBrowser windows by default
305         https://bugs.webkit.org/show_bug.cgi?id=166806
306
307         Reviewed by Beth Dakin.
308
309         * MiniBrowser/mac/AppDelegate.m:
310         (-[BrowserAppDelegate createBrowserWindowController:]):
311         (-[BrowserAppDelegate applicationDidFinishLaunching:]):
312         (-[BrowserAppDelegate _updateNewWindowKeyEquivalents]):
313         * MiniBrowser/mac/SettingsController.h:
314         * MiniBrowser/mac/SettingsController.m:
315         (-[SettingsController _populateMenu]):
316         (-[SettingsController validateMenuItem:]):
317         (-[SettingsController toggleCreateEditorByDefault:]):
318         (-[SettingsController createEditorByDefault]):
319         Add a setting and update the key equivalents accordingly.
320         Also make sure to make the right kind of window on launch.
321
322 2017-01-07  Tim Horton  <timothy_horton@apple.com>
323
324         Fix the 32-bit build.
325
326         * MiniBrowser/mac/BrowserWindowController.h:
327         * MiniBrowser/mac/BrowserWindowController.m:
328
329 2017-01-07  Tim Horton  <timothy_horton@apple.com>
330
331         Fix the 32-bit build.
332
333         * MiniBrowser/mac/BrowserWindowController.m:
334
335 2017-01-07  Tim Horton  <timothy_horton@apple.com>
336
337         Make it possible to drop HTML files on the MiniBrowser icon
338         https://bugs.webkit.org/show_bug.cgi?id=166802
339
340         Reviewed by Simon Fraser.
341
342         * MiniBrowser/mac/AppDelegate.m:
343         (-[BrowserAppDelegate application:openFile:]):
344         * MiniBrowser/mac/Info.plist:
345         If you're using an editable window, the usual trick of dropping on the
346         window doesn't work anymore (it makes an <attachment> instead).
347
348 2017-01-07  Tim Horton  <timothy_horton@apple.com>
349
350         MiniBrowser window gets smaller each time it is instantiated
351         https://bugs.webkit.org/show_bug.cgi?id=166807
352
353         Reviewed by Andy Estes.
354
355         * MiniBrowser/mac/BrowserWindowController.m:
356         (-[BrowserWindowController windowDidLoad]):
357         * MiniBrowser/mac/BrowserWindow.xib:
358         Turn on full-window content view support with IB, instead of waiting
359         until after the views have been loaded. This seems to resolve the
360         longstanding ever-shrinking-window problem.
361
362 2017-01-07  Tim Horton  <timothy_horton@apple.com>
363
364         Add indent/outdent items to MiniBrowser's new format menu
365         https://bugs.webkit.org/show_bug.cgi?id=166805
366
367         Reviewed by Dan Bernstein.
368
369         * MiniBrowser/mac/MainMenu.xib:
370
371 2017-01-07  Tim Horton  <timothy_horton@apple.com>
372
373         Add a stock Format menu to MiniBrowser
374         https://bugs.webkit.org/show_bug.cgi?id=166804
375
376         Reviewed by Andy Estes.
377
378         * MiniBrowser/mac/MainMenu.xib:
379         Many of the features automatically work with editable web views.
380         However, this seems to expose a bug where none of the font-related features
381         (Cmd-B, for example) work until the first time the font panel is shown,
382         per process, which will need to be investigated separately.
383
384 2017-01-07  Tim Horton  <timothy_horton@apple.com>
385
386         Remove unused applicationWillTerminate methods from MiniBrowser
387         https://bugs.webkit.org/show_bug.cgi?id=166803
388
389         Reviewed by Andy Estes.
390
391         * MiniBrowser/mac/AppDelegate.m:
392         (-[BrowserAppDelegate applicationWillTerminate:]): Deleted.
393         * MiniBrowser/mac/BrowserWindowController.h:
394         * MiniBrowser/mac/BrowserWindowController.m:
395         (-[BrowserWindowController applicationTerminating]): Deleted.
396         * MiniBrowser/mac/WK1BrowserWindowController.m:
397         (-[WK1BrowserWindowController applicationTerminating]): Deleted.
398         * MiniBrowser/mac/WK2BrowserWindowController.m:
399         (-[WK2BrowserWindowController applicationTerminating]): Deleted.
400
401 2017-01-07  Tim Horton  <timothy_horton@apple.com>
402
403         Add the ability to create empty contentEditable windows in MiniBrowser
404         https://bugs.webkit.org/show_bug.cgi?id=166801
405
406         Reviewed by Wenson Hsieh.
407
408         * MiniBrowser/mac/AppDelegate.h:
409         * MiniBrowser/mac/AppDelegate.m:
410         (-[BrowserAppDelegate createBrowserWindowController:]):
411         (-[BrowserAppDelegate newWindow:]):
412         (-[BrowserAppDelegate newEditorWindow:]):
413         (-[BrowserAppDelegate openDocument:]):
414         (-[BrowserAppDelegate _updateNewWindowKeyEquivalents]):
415         * MiniBrowser/mac/BrowserWindowController.h:
416         * MiniBrowser/mac/BrowserWindowController.m:
417         (-[BrowserWindowController loadHTMLString:]):
418         (-[BrowserWindowController toggleEditable:]):
419         * MiniBrowser/mac/MainMenu.xib:
420         * MiniBrowser/mac/WK1BrowserWindowController.m:
421         (-[WK1BrowserWindowController awakeFromNib]):
422         (-[WK1BrowserWindowController loadHTMLString:]):
423         (-[WK1BrowserWindowController validateMenuItem:]):
424         (-[WK1BrowserWindowController setEditable:]):
425         (-[WK1BrowserWindowController updateTitle:]):
426         * MiniBrowser/mac/WK2BrowserWindowController.m:
427         (-[WK2BrowserWindowController awakeFromNib]):
428         (-[WK2BrowserWindowController validateMenuItem:]):
429         (-[WK2BrowserWindowController setEditable:]):
430         (-[WK2BrowserWindowController updateTitle:]):
431         (-[WK2BrowserWindowController loadHTMLString:]):
432         Merge more functionality from WebEditingTester.
433         Add two menu items for creating empty editable WebKit1/2 windows.
434         Add a menu item to the Edit menu to toggle editability on any window.
435
436 2017-01-07  Tim Horton  <timothy_horton@apple.com>
437
438         Implement find-in-page in MiniBrowser
439         https://bugs.webkit.org/show_bug.cgi?id=166799
440
441         Reviewed by Andy Estes.
442
443         * MiniBrowser/mac/BrowserWindow.xib:
444         * MiniBrowser/mac/BrowserWindowController.h:
445         * MiniBrowser/mac/BrowserWindowController.m:
446         (-[BrowserWindowController find:]): Deleted.
447         * MiniBrowser/mac/MainMenu.xib:
448         * MiniBrowser/mac/WK1BrowserWindowController.m:
449         (-[WK1BrowserWindowController toggleShrinkToFit:]):
450         (-[WK1BrowserWindowController find:]): Deleted.
451         * MiniBrowser/mac/WK2BrowserWindowController.m:
452         (-[WK2BrowserWindowController awakeFromNib]):
453         (-[WK2BrowserWindowController dealloc]):
454         (-[WK2BrowserWindowController validateMenuItem:]):
455         (-[WK2BrowserWindowController performTextFinderAction:]):
456         (-[WK2BrowserWindowController findBarView]):
457         (-[WK2BrowserWindowController setFindBarView:]):
458         (-[WK2BrowserWindowController isFindBarVisible]):
459         (-[WK2BrowserWindowController setFindBarVisible:]):
460         (-[WK2BrowserWindowController contentView]):
461         (-[WK2BrowserWindowController findBarViewDidChangeHeight]):
462         (-[WK2BrowserWindowController performFindPanelAction:]): Deleted.
463         (-[WK2BrowserWindowController find:]): Deleted.
464         Implement find-in-page using WKWebView's conformance to the NSTextFinderClient
465         protocol. At first glance, it's pretty broken, but vaguely works.
466
467 2017-01-07  Tim Horton  <timothy_horton@apple.com>
468
469         Share the implementation of MiniBrowser view hiding functionality
470         https://bugs.webkit.org/show_bug.cgi?id=166800
471
472         Reviewed by Andy Estes.
473
474         * MiniBrowser/mac/BrowserWindowController.m:
475         (-[BrowserWindowController showHideWebView:]):
476         (-[BrowserWindowController removeReinsertWebView:]):
477         * MiniBrowser/mac/WK1BrowserWindowController.m:
478         (-[WK1BrowserWindowController showHideWebView:]): Deleted.
479         (-[WK1BrowserWindowController removeReinsertWebView:]): Deleted.
480         * MiniBrowser/mac/WK2BrowserWindowController.m:
481         (-[WK2BrowserWindowController showHideWebView:]): Deleted.
482         (-[WK2BrowserWindowController removeReinsertWebView:]): Deleted.
483         Move the implementation of these two things to the shared superclass,
484         since they don't depend on WebKit-specific things.
485         Also, there was no reason to retain the (WK)WebView while it was unparented,
486         as the BrowserWindowController maintains a reference the entire time.
487
488 2017-01-06  Andy Estes  <aestes@apple.com>
489
490         [Cocoa] Consolidate duplicate copies of WebArchiveDumpSupport in DRT and WKTR into WebCoreTestSupport
491         https://bugs.webkit.org/show_bug.cgi?id=166789
492
493         Reviewed by Alex Christensen.
494
495         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
496         * DumpRenderTree/PlatformMac.cmake:
497         * DumpRenderTree/cf/WebArchiveDumpSupport.cpp: Removed.
498         * DumpRenderTree/cf/WebArchiveDumpSupport.h: Removed.
499         * DumpRenderTree/mac/DumpRenderTree.mm:
500         Called WebCoreTestSupport::createXMLStringFromWebArchiveData() instead of
501         createXMLStringFromWebArchiveData().
502         * DumpRenderTree/mac/WebArchiveDumpSupportMac.mm: Removed.
503         * WebKitTestRunner/Configurations/Base.xcconfig:
504         Added $(BUILT_PRODUCTS_DIR)/WebCoreTestSupport to HEADER_SEARCH_PATHS.
505         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
506         (WTR::InjectedBundlePage::dumpDOMAsWebArchive):
507         Called WebCoreTestSupport::createXMLStringFromWebArchiveData() instead of
508         createXMLStringFromWebArchiveData().
509         * WebKitTestRunner/InjectedBundle/cocoa/WebArchiveDumpSupportCocoa.mm: Removed.
510         * WebKitTestRunner/PlatformMac.cmake:
511         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
512         * WebKitTestRunner/cf/WebArchiveDumpSupport.h: Removed.
513
514 2017-01-06  Tim Horton  <timothy_horton@apple.com>
515
516         Minor cleanups to IndentOutdentCommand and related code
517         https://bugs.webkit.org/show_bug.cgi?id=166791
518
519         Reviewed by Simon Fraser.
520
521         * WebEditingTester/EditingOperations.m:
522         (editingOperations):
523         Add the outdent operation to WebEditingTester.
524
525 2017-01-06  Said Abou-Hallawa  <sabouhallawa@apple.com>
526
527         Create a plan and a patch files for MotionMark and delete the Animometer's ones
528         https://bugs.webkit.org/show_bug.cgi?id=166785
529
530         Reviewed by Ryosuke Niwa.
531
532         * Scripts/webkitpy/benchmark_runner/data/patches/MotionMark.patch: Renamed from Tools/Scripts/webkitpy/benchmark_runner/data/patches/Animometer.patch.
533         * Scripts/webkitpy/benchmark_runner/data/plans/motionmark.plan: Renamed from Tools/Scripts/webkitpy/benchmark_runner/data/plans/animometer.plan.
534
535 2017-01-06  Antoine Quint  <graouts@apple.com>
536
537         Support webkit-test-runner key-value pairs in http tests
538         https://bugs.webkit.org/show_bug.cgi?id=149812
539
540         Reviewed by Alex Christensen.
541
542         We pass the absolute path for a test through to WKTR so that we can parse
543         tests that are running as URLs for webkit-test-runner options.
544
545         * DumpRenderTree/DumpRenderTreeCommon.cpp:
546         (parseInputLine):
547
548         Explicitly skip the --absolute-path option in DRT or else we'd crash.
549
550         * Scripts/webkitpy/port/driver.py:
551         (Driver._command_from_driver_input):
552
553         Pass the absolute path to the file through the CLI.
554
555         * WebKitTestRunner/TestController.cpp:
556         (WTR::updateTestOptionsFromTestHeader):
557         (WTR::TestController::testOptionsForTest):
558         (WTR::parseInputLine):
559         (WTR::TestController::runTest):
560         * WebKitTestRunner/TestController.h:
561
562 2017-01-06  Tim Horton  <timothy_horton@apple.com>
563
564         Warning about unconnectable outlets when opening a MiniBrowser window
565         https://bugs.webkit.org/show_bug.cgi?id=166756
566
567         Reviewed by Dan Bernstein.
568
569         * MiniBrowser/mac/BrowserWindow.xib:
570         When launching MiniBrowser, it says:
571         Failed to connect (Share) outlet from (WK1BrowserWindowController) to
572             (MBToolbarItem): missing setter or instance variable
573         Failed to connect (shareButton) outlet from (WK1BrowserWindowController) to
574             (NSButtonCell): missing setter or instance variable.
575
576         It looks like someone added the connection from the share button
577         to the BrowserWindowController three times; only one of the connections
578         is valid. Remove the other two.
579
580 2017-01-05  Keith Rollin  <krollin@apple.com>
581
582         Add WebCore::URL::protocolHostAndPort
583         https://bugs.webkit.org/show_bug.cgi?id=166426
584
585         Reviewed by Alex Christensen.
586
587         Add test for protocolHostAndPort.
588
589         * TestWebKitAPI/Tests/WebCore/URL.cpp:
590         (TestWebKitAPI::TEST_F):
591
592 2017-01-05  Per Arne Vollan  <pvollan@apple.com>
593
594         [Win] Archive test result is failing.
595         https://bugs.webkit.org/show_bug.cgi?id=166720
596
597         Reviewed by Alex Christensen.
598
599         Deleting the layout test result folder is sometimes failing
600         on Windows. This is not a critical error.
601
602         * BuildSlaveSupport/test-result-archive:
603         (archiveTestResults):
604
605 2017-01-04  Tomas Popela  <tpopela@redhat.com>
606
607         [GTK] Minibrowser: Add printing support
608         https://bugs.webkit.org/show_bug.cgi?id=165298
609
610         Open a print dialog when the Ctrl + P shortcut is pressed. If there is
611         an error during the print, it's printed on the console.
612
613         Reviewed by Michael Catanzaro.
614
615         * MiniBrowser/gtk/BrowserWindow.c:
616         (webKitPrintOperationFailedCallback):
617         (printPage):
618         (browser_window_init):
619
620 2017-01-04  Manuel Rego Casasnovas  <rego@igalia.com>
621
622         [css-grid] Fix crash clamping grid lines
623         https://bugs.webkit.org/show_bug.cgi?id=166637
624
625         Reviewed by Darin Adler.
626
627         Creates new unit test to verify that the maximum tracks limit
628         is used in GridPosition too.
629
630         * TestWebKitAPI/PlatformEfl.cmake:
631         * TestWebKitAPI/PlatformGTK.cmake:
632         * TestWebKitAPI/PlatformWin.cmake:
633         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
634         * TestWebKitAPI/Tests/WebCore/GridPosition.cpp: Added.
635         (TestWebKitAPI::TEST):
636
637 2017-01-04  Wenson Hsieh  <wenson_hsieh@apple.com>
638
639         Move editing history scripts to WebCore PrivateHeaders
640         https://bugs.webkit.org/show_bug.cgi?id=166709
641         <rdar://problem/29876612>
642
643         Reviewed by Dan Bernstein.
644
645         Update references to editing script files in WebCore that were moved.
646
647         * EditingHistory/EditingHistory.xcodeproj/project.pbxproj:
648
649 2017-01-04  Yusuke Suzuki  <utatane.tea@gmail.com>
650
651         Unreviewed, build fix after r210313 part 2
652         https://bugs.webkit.org/show_bug.cgi?id=166676
653
654         Add 'U' suffix.
655
656         * TestWebKitAPI/Tests/WTF/StringView.cpp:
657         (TestWebKitAPI::TEST):
658         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
659         (TestWebKitAPI::TEST):
660
661 2017-01-04  Yusuke Suzuki  <utatane.tea@gmail.com>
662
663         Limit thread name appropriately
664         https://bugs.webkit.org/show_bug.cgi?id=166676
665
666         Reviewed by Sam Weinig.
667
668         * TestWebKitAPI/Tests/WTF/StringView.cpp:
669         (TestWebKitAPI::TEST):
670         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
671         (TestWebKitAPI::TEST):
672
673 2017-01-04  Andy Estes  <aestes@apple.com>
674
675         [Cocoa] Teach SharedBuffer to return an NSArray of data segments to avoid flattening
676         https://bugs.webkit.org/show_bug.cgi?id=166696
677
678         Reviewed by Tim Horton.
679
680         * TestWebKitAPI/PlatformGTK.cmake:
681         * TestWebKitAPI/PlatformWin.cmake:
682         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
683         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp: Moved class SharedBufferTest to SharedBufferTest.{cpp,h}.
684         * TestWebKitAPI/Tests/WebCore/SharedBufferTest.cpp: Moved class SharedBufferTest from SharedBuffer.cpp.
685         * TestWebKitAPI/Tests/WebCore/SharedBufferTest.h: Ditto.
686         * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm: Added.
687         (TestWebKitAPI::expectDataArraysEqual): Added a helper to assert that two NSArrays of NSData are equal.
688         (TestWebKitAPI::TEST_F): Added a test for createNSDataArray.
689
690 2017-01-03  Brian Burg  <bburg@apple.com>
691
692         Web Inspector: teach the protocol generator about platform-specific types, events, and commands
693         https://bugs.webkit.org/show_bug.cgi?id=166003
694         <rdar://problem/28718990>
695
696         Reviewed by Joseph Pecoraro.
697
698         Teach run-inspector-generator-tests to generate test output using the platform name
699         derived from the directory that the test is in. For example, tests in the /generic/
700         subdirectory will pass `--platform generic` to generate-inspector-protocol-bindings.py.
701
702         * Scripts/webkitpy/inspector/main.py:
703         (InspectorGeneratorTests.generate_from_json):
704         (InspectorGeneratorTests.run_tests):
705         (InspectorGeneratorTests.main):
706
707 2017-01-04  Csaba Osztrogonác  <ossy@webkit.org>
708
709         Unreviewed cmake buildfix after r210266.
710
711         * DumpRenderTree/PlatformMac.cmake:
712
713 2017-01-04  Tim Horton  <timothy_horton@apple.com>
714
715         Provide a setting for clients to always prefer low-power WebGL
716         https://bugs.webkit.org/show_bug.cgi?id=166675
717         <rdar://problem/29834093>
718
719         Reviewed by Dan Bernstein.
720
721         * MiniBrowser/mac/Info.plist:
722         Have MiniBrowser claim to be a modern app that supports
723         automatic graphics switching. WebKit needs to support automatic
724         graphics switching, so our test app might as well. Without this
725         Info.plist parameter, this change has no effect, and bringing up
726         a WebGL context still brings up the discrete GPU (also true of the
727         existing web-exposed preferLowPowerToHighPerformance API).
728
729 2017-01-03  Yusuke Suzuki  <utatane.tea@gmail.com>
730
731         WorkQueueGeneric's platformInvalidate() can deadlock when called on the RunLoop's thread
732         https://bugs.webkit.org/show_bug.cgi?id=166645
733
734         Reviewed by Carlos Garcia Campos.
735
736         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
737         (TestWebKitAPI::TEST):
738
739 2017-01-03  Andy Estes  <aestes@apple.com>
740
741         Place all the Cocoa WebCore API tests in the same directory
742         https://bugs.webkit.org/show_bug.cgi?id=166673
743
744         Reviewed by Michael Catanzaro.
745
746         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
747         * TestWebKitAPI/Tests/WebCore/cocoa/SerializedCryptoKeyWrap.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/SerializedCryptoKeyWrap.mm.
748         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm: Renamed from Tools/TestWebKitAPI/Tests/Cocoa/URLExtras.mm.
749         * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/WebCoreNSURLSession.mm.
750
751 2017-01-03  Tim Horton  <timothy_horton@apple.com>
752
753         NSSpellChecker's recordResponse isn't called for unseen automatic corrections
754         https://bugs.webkit.org/show_bug.cgi?id=166450
755         <rdar://problem/29447824>
756
757         Reviewed by Darin Adler.
758
759         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
760         * DumpRenderTree/TestRunner.cpp:
761         (TestRunner::staticFunctions):
762         * DumpRenderTree/mac/TestRunnerMac.mm:
763         (setSpellCheckerLoggingEnabledCallback):
764         * DumpRenderTree/win/TestRunnerWin.cpp:
765         (setSpellCheckerLoggingEnabledCallback):
766         * DumpRenderTree/mac/DumpRenderTree.mm:
767         (resetWebViewToConsistentStateBeforeTesting):
768         * DumpRenderTree/mac/DumpRenderTreeSpellChecker.h: Added.
769         * DumpRenderTree/mac/DumpRenderTreeSpellChecker.mm: Added.
770         (stringForCorrectionResponse):
771         (drt_NSSpellChecker_recordResponseToCorrection):
772         (swizzleNSSpellCheckerMethodsIfNeeded):
773         (setSpellCheckerLoggingEnabled):
774         Add a new testRunner method, setSpellCheckerLoggingEnabled, which, when
775         set to true, logs to stdout (which ends up in the test result) whenever
776         NSSpellChecker recordResponse:toCorrection:forWord:language:inSpellDocumentWithTag:
777         is called, and then calls the original method. It is reset to false between tests.
778
779 2017-01-03  Sam Weinig  <sam@webkit.org>
780
781         Make WTF::Expected support Ref template parameters
782         https://bugs.webkit.org/show_bug.cgi?id=166662
783
784         Reviewed by Alex Christensen.
785
786         * TestWebKitAPI/Tests/WTF/Expected.cpp:
787         (TestWebKitAPI::TEST):
788         Add tests for using Ref with Expected.
789
790 2017-01-03  Michael Catanzaro  <mcatanzaro@igalia.com>
791
792         [GTK] Expose WebKitSecurityOrigin API
793         https://bugs.webkit.org/show_bug.cgi?id=166632
794
795         Reviewed by Carlos Garcia Campos.
796
797         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
798         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSecurityOrigin.cpp: Added.
799         (testSecurityOriginBasicConstructor):
800         (testSecurityOriginURIConstructor):
801         (testSecurityOriginDefaultPort):
802         (testSecurityOriginFileURI):
803         (testSecurityOriginDataURI):
804         (beforeAll):
805         (afterAll):
806
807 2017-01-03  Carlos Garcia Campos  <cgarcia@igalia.com>
808
809         [GTK] HTTP auth layout tests are flaky
810         https://bugs.webkit.org/show_bug.cgi?id=158919
811
812         Reviewed by Michael Catanzaro.
813
814         * gtk/jhbuild.modules: Update libsoup to version 2.57.1.
815         * gtk/jhbuildrc: Stop passing --enable-introspection unconditionally to all modules. We don't really need
816         introspection for the dependencies in the internal build, and it makes newer libsoup build fail because of
817         missing valac in the bots.
818
819 2017-01-03  Carlos Garcia Campos  <cgarcia@igalia.com>
820
821         REGRESSION(r173753): [GTK] Source/WebKit is distributed in tarballs
822         https://bugs.webkit.org/show_bug.cgi?id=165797
823
824         Reviewed by Michael Catanzaro.
825
826         Move directory ruleset after all exclude rules of Source rulset.
827
828         * gtk/manifest.txt.in:
829
830 2017-01-02  Yusuke Suzuki  <utatane.tea@gmail.com>
831
832         Leverage Substring to create new AtomicStringImpl for StaticStringImpl and SymbolImpl
833         https://bugs.webkit.org/show_bug.cgi?id=166636
834
835         Reviewed by Darin Adler.
836
837         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
838         (TestWebKitAPI::TEST):
839
840 2017-01-02  Manuel Rego Casasnovas  <rego@igalia.com>
841
842         [GTK] WebCore/CSSParser unit test is not being built
843         https://bugs.webkit.org/show_bug.cgi?id=166492
844
845         Reviewed by Michael Catanzaro.
846
847         This test was introduced in r175930, but we were not building
848         it on GTK+ port since r176015.
849         This patch marks the test to be built again on GTK+.
850         JFTR, the test is passing right now.
851
852         * TestWebKitAPI/PlatformGTK.cmake: Add CSSParser.cpp test file and use
853         ADD_WHOLE_ARCHIVE_TO_LIBRARIES to avoid linking errors.
854
855 2017-01-02  Chris Fleizach  <cfleizach@apple.com>
856
857         AX: Expose block quote level to iOS API
858         https://bugs.webkit.org/show_bug.cgi?id=166629
859         <rdar://problem/29834793>
860
861         Reviewed by Darin Adler.
862
863         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
864         (AccessibilityUIElement::numberAttributeValue):
865         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
866         (WTR::AccessibilityUIElement::numberAttributeValue):
867
868 2016-12-31  Michael Catanzaro  <mcatanzaro@igalia.com>
869
870         SecurityOrigin::create triplet constructor does not canonicalize port
871         https://bugs.webkit.org/show_bug.cgi?id=166624
872
873         Reviewed by Daniel Bates.
874
875         * TestWebKitAPI/PlatformGTK.cmake:
876         * TestWebKitAPI/PlatformWin.cmake:
877         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
878         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp: Added.
879         (TestWebKitAPI::SecurityOriginTest::SetUp):
880         (TestWebKitAPI::TEST_F):
881
882 2016-12-30  Michael Catanzaro  <mcatanzaro@igalia.com>
883
884         [GTK] Improve user agent construction
885         https://bugs.webkit.org/show_bug.cgi?id=142074
886
887         Reviewed by Carlos Garcia Campos.
888
889         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
890         (TestWebKitAPI::assertUserAgentForURLHasChromeBrowserQuirk):
891         (TestWebKitAPI::assertUserAgentForURLHasFirefoxBrowserQuirk):
892         (TestWebKitAPI::assertUserAgentForURLHasLinuxPlatformQuirk):
893         (TestWebKitAPI::assertUserAgentForURLHasMacPlatformQuirk):
894         (TestWebKitAPI::TEST):
895
896 2016-12-27  Michael Catanzaro  <mcatanzaro@igalia.com>
897
898         [GTK] Improve user agent construction
899         https://bugs.webkit.org/show_bug.cgi?id=142074
900
901         Reviewed by Carlos Garcia Campos.
902
903         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
904         (TestWebKitAPI::TEST):
905
906 2016-12-23  Simon Fraser  <simon.fraser@apple.com>
907
908         REGRESSION (r209299): Selection is broken when you zoom in webpage using trackpad
909         https://bugs.webkit.org/show_bug.cgi?id=166472
910         rdar://problem/29675551
911
912         Reviewed by Tim Horton.
913
914         These changes are necessary to allow the mouse to leave the WTR window while
915         drag-scrolling, to test autoscroll. Previously, we were never calling -mouseDragged
916         (which DRT does); we'd always go through mouseMoved, which hits an early return
917         in WebViewImpl::mouseMoved() when the point is outside the view.
918
919         * WebKitTestRunner/mac/EventSenderProxy.mm:
920         (WTR::EventSenderProxy::mouseMoveTo):
921
922 2016-12-23  Andy Estes  <aestes@apple.com>
923
924         [iOS] Fix some crashing webarchive tests
925         https://bugs.webkit.org/show_bug.cgi?id=166470
926
927         Reviewed by Andreas Kling.
928
929         Tests that use TestRunner.dumpDOMAsWebArchive() crashed on iOS due to a stub implementation
930         of WebArchiveDumpSupport in WebKitTestRunner. The Mac implementation works fine on iOS too,
931         so this change uses that on both platforms.
932
933         * WebKitTestRunner/Configurations/InjectedBundle.xcconfig: Removed
934         WebArchiveDumpSupportMac.mm from EXCLUDED_SOURCE_FILE_NAMES.
935         * WebKitTestRunner/InjectedBundle/cocoa/WebArchiveDumpSupportCocoa.mm: Renamed from
936         Tools/WebKitTestRunner/mac/WebArchiveDumpSupportMac.mm.
937         * WebKitTestRunner/PlatformMac.cmake:
938         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
939         * WebKitTestRunner/ios/WebArchiveDumpSupportIOS.mm: Removed.
940
941 2016-12-22  Saam Barati  <sbarati@apple.com>
942
943         WebAssembly: Silence the output of the spec-tests
944         https://bugs.webkit.org/show_bug.cgi?id=166417
945
946         Reviewed by Mark Lam.
947
948         * Scripts/run-jsc-stress-tests:
949
950 2016-12-22  Zhuo Li  <zachli@apple.com>
951
952         [Cocoa] SPI for setloadsImagesAutomatically.
953         https://bugs.webkit.org/show_bug.cgi?id=166401.
954
955         Reviewed by Darin Adler.
956
957         * TestWebKitAPI/Tests/WebKit2Cocoa/Preferences.mm:
958         (TEST): Test the _setLoadsImagesAutomatically SPI. By default,
959         _loadsImagesAutomatically returns YES.
960
961 2016-12-22  Wenson Hsieh  <wenson_hsieh@apple.com>
962
963         fast/events/ios/viewport-shrink-to-fit-allows-double-tap.html is flaky/order dependent
964         https://bugs.webkit.org/show_bug.cgi?id=161328
965         <rdar://problem/28475977>
966
967         Reviewed by Darin Adler.
968
969         Running a test that scales the viewport and listens to a didEndZooming callback (such as
970         viewport-shrink-to-fit-allows-double-tap.html) immediately after a test that may begin to trigger viewport
971         scaling as the test completes (such as viewport-device-width-at-initial-scale-fast-clicks.html) may result in
972         the didEndZooming callback of the latter test being fired early due to the previous test triggering a zoom
973         animation. Ideally, -[WKScrollView _stopScrollingAndZoomingAnimations], which is called when committing the page
974         load, should prevent this from happening, but from reading documentation and code inspection, this is not
975         intended to fire any associated delegate methods or notifications of the UIScrollView, instead deferring them
976         for later. Instead, what we need in this case is to clear out any started but not yet completed animations after
977         we finish running a test and before we load the next test.
978
979         One way to do this is to remove all animations from the WKScrollView's layer, and the layers of its children,
980         recursively. Doing so causes scrollViewDidEndZooming:withView:atScale: to fire at the end of the runloop if the
981         previous test started zooming and then finished before zooming completed. Since this happens before the next
982         test has a chance to run UI-side scripts, we won't end up firing this callback prematurely during the next test.
983
984         * WebKitTestRunner/ios/TestControllerIOS.mm:
985         (WTR::TestController::platformResetStateToConsistentValues):
986
987 2016-12-22  Jer Noble  <jer.noble@apple.com>
988
989         Muted media element playback should not interrupt other audio playback
990         https://bugs.webkit.org/show_bug.cgi?id=166347
991
992         Reviewed by Eric Carlson.
993
994         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
995         * TestWebKitAPI/Tests/WebKit/ios/AudioSessionCategoryIOS.mm:
996         (TestWebKitAPI::TEST):
997         * TestWebKitAPI/Tests/WebKit/ios/video-with-muted-audio.html: Added.
998
999 2016-12-22  Alejandro G. Castro  <alex@igalia.com>
1000
1001         [WebRTC] Add support for runtime PeeConnection setting, required after r209757
1002         https://bugs.webkit.org/show_bug.cgi?id=166346
1003
1004         Reviewed by Carlos Garcia Campos.
1005
1006         Enable WebRTC by default to simplify testing.
1007
1008         * MiniBrowser/gtk/main.c:
1009         (main):
1010
1011 2016-12-21  Alexey Proskuryakov  <ap@apple.com>
1012
1013         REGRESSION: API test failure: WKWebView.LocalStorageClear
1014         https://bugs.webkit.org/show_bug.cgi?id=166032
1015         <rdar://problem/29758423>
1016
1017         Reviewed by Simon Fraser.
1018
1019         Add an @autoreleasepool around the code that allocates then clears the WKWebView, 
1020         to ensure that the view is destroyed before the callback fires.
1021
1022         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
1023         (TEST):
1024
1025 2016-12-21  Saam Barati  <sbarati@apple.com>
1026
1027         WebAssembly: Import spec tests
1028         https://bugs.webkit.org/show_bug.cgi?id=166395
1029
1030         Rubber stamped by Keith Miller.
1031
1032         * Scripts/run-jsc-stress-tests:
1033
1034 2016-12-21  Alexey Proskuryakov  <ap@apple.com>
1035
1036         REGRESSION: API test failure: _WKDownload.OriginatingWebView
1037         https://bugs.webkit.org/show_bug.cgi?id=166033
1038         <rdar://problem/29758428>
1039
1040         Reviewed by Simon Fraser.
1041
1042         Add an @autoreleasepool around the code that allocates the WKWebView, 
1043         so that it can be destroyed by removing the last reference in _downloadDidStart.
1044
1045         * TestWebKitAPI/Tests/WebKit2Cocoa/Download.mm:
1046         (TEST):
1047
1048 2016-12-21  Daniel Bates  <dabates@apple.com>
1049
1050         WebKitTestRunner: Add comment to TestRunner::setCanOpenWindows()
1051         https://bugs.webkit.org/show_bug.cgi?id=166356
1052
1053         Add comment in TestRunner::setCanOpenWindows() to elaborate further on its purpose
1054         as a means to allow a test to explicit allow an embedding client to open a new windows
1055         such that the default behavior is for the embedding client to forbid such an action.
1056         The test plugins/get-url-with-blank-target.html assumes this default behavior though
1057         it is currently skipped on WebKit2 because questions were raised in the patch for
1058         <https://bugs.webkit.org/show_bug.cgi?id=43389> about its correctness and usefulness.
1059         We will need to implement TestRunner::setCanOpenWindows() should we decide to unskip
1060         this test.
1061
1062         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1063         (WTR::TestRunner::setCanOpenWindows):
1064
1065 2016-12-20  Simon Fraser  <simon.fraser@apple.com>
1066
1067         REGRESSION: API test failure: WKWebView.EvaluateJavaScriptBlockCrash
1068         https://bugs.webkit.org/show_bug.cgi?id=166031
1069
1070         Reviewed by Tim Horton.
1071         
1072         Add an @autoreleasepool around the code that allocates then clears the WKWebView, 
1073         to ensure that the view is destroyed before the callback fires.
1074
1075         * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewEvaluateJavaScript.mm:
1076
1077 2016-12-20  Megan Gardner  <megan_gardner@apple.com>
1078
1079         Throw Exception when test doesn't clean up HID Events properly
1080         https://bugs.webkit.org/show_bug.cgi?id=166271
1081
1082         Reviewed by Simon Fraser.
1083
1084         Add in a check when UIScriptController is deleted to make sure that the HID event
1085         callback dictionary is empty. If it is not, and a HID event is hit, this will cause
1086         the program to crash without any good information. Crashes are race-y, and will still
1087         happen with malformed test, but the information will be much more helpful. 
1088
1089         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1090         (WTR::UIScriptController::checkForClean):
1091         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
1092         (UIScriptContext::~UIScriptContext):
1093         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1094         (WTR::UIScriptController::checkForClean):
1095         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1096         * WebKitTestRunner/ios/HIDEventGenerator.h:
1097         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1098         (-[HIDEventGenerator checkHIDCallbacksClear]):
1099         * WebKitTestRunner/ios/TestControllerIOS.mm:
1100         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1101         (WTR::UIScriptController::checkForClean):
1102
1103 2016-12-20  Andy Estes  <aestes@apple.com>
1104
1105         [Cocoa] REGRESSION (r209558): Calling decisionHandler multiple times in webView:decidePolicyForNavigationAction:decisionHandler: leads to a crash
1106         https://bugs.webkit.org/show_bug.cgi?id=165992
1107
1108         Reviewed by Brady Eidson.
1109
1110         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1111         * TestWebKitAPI/Tests/WebKit2Cocoa/DuplicateCompletionHandlerCalls.mm: Added.
1112         (expectException):
1113         (-[DuplicateCompletionHandlerCallsDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
1114         (-[DuplicateCompletionHandlerCallsDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
1115         (-[DuplicateCompletionHandlerCallsDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
1116         (-[DuplicateCompletionHandlerCallsDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
1117         (-[DuplicateCompletionHandlerCallsDelegate webView:runJavaScriptTextInputPanelWithPrompt:defaultText:initiatedByFrame:completionHandler:]):
1118         (-[DuplicateCompletionHandlerCallsDelegate _webView:decideDatabaseQuotaForSecurityOrigin:currentQuota:currentOriginUsage:currentDatabaseUsage:expectedUsage:decisionHandler:]):
1119         (-[DuplicateCompletionHandlerCallsDelegate _webView:willSubmitFormValues:userObject:submissionHandler:]):
1120         (TEST):
1121         * TestWebKitAPI/Tests/WebKit2Cocoa/duplicate-completion-handler-calls.html: Added.
1122
1123 2016-12-20  Dean Jackson  <dino@apple.com>
1124
1125         Remove INDIE_UI
1126         https://bugs.webkit.org/show_bug.cgi?id=165881
1127         <rdar://problem/29672532>
1128
1129         Reviewed by Simon Fraser.
1130
1131         The Indie UI work has been discontinued.
1132
1133         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1134
1135 2016-12-19  Yusuke Suzuki  <utatane.tea@gmail.com>
1136
1137         [ES6] Enable ES6 Modules
1138         https://bugs.webkit.org/show_bug.cgi?id=165849
1139
1140         Reviewed by Geoffrey Garen.
1141
1142         * DumpRenderTree/mac/DumpRenderTree.mm:
1143         (resetWebPreferencesToConsistentValues):
1144         * DumpRenderTree/win/DumpRenderTree.cpp:
1145         (resetWebPreferencesToConsistentValues):
1146         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1147         (WTR::InjectedBundle::beginTesting):
1148         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1149         (WTR::TestRunner::setES6ModulesEnabled): Deleted.
1150         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1151
1152 2016-12-19  Ryan Haddad  <ryanhaddad@apple.com>
1153
1154         Repurpose bots and clean up dashboard.
1155         https://bugs.webkit.org/show_bug.cgi?id=166045
1156
1157         Reviewed by Lucas Forschler.
1158
1159         * BuildSlaveSupport/build.webkit.org-config/config.json:
1160         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
1161         (BubbleQueueServer):
1162         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
1163         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1164         (WebKitBuildbot):
1165         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
1166         (table.queue-grid tr.platform.mac-os-x-yosemite img.logo): Deleted.
1167
1168 2016-12-19  Michael Catanzaro  <mcatanzaro@igalia.com>
1169
1170         [CMake] TestWebKitAPIBase links to itself
1171         https://bugs.webkit.org/show_bug.cgi?id=165985
1172
1173         Reviewed by Alex Christensen.
1174
1175         Fix CMake warning about a target linking to itself, which makes no sense.
1176
1177         * TestWebKitAPI/CMakeLists.txt:
1178
1179 2016-12-19  Michael Catanzaro  <mcatanzaro@igalia.com>
1180
1181         [GTK] GtkDoc build should be quieter
1182         https://bugs.webkit.org/show_bug.cgi?id=165994
1183
1184         Reviewed by Carlos Garcia Campos.
1185
1186         Make it not print by default.
1187
1188         * gtk/generate-gtkdoc:
1189         (get_generator_for_config):
1190         (generate_doc):
1191         * gtk/gtkdoc.py:
1192         (GTKDoc._run_command):
1193         (GTKDoc._copy_doc_files_to_output_dir):
1194
1195 2016-12-18  Simon Fraser  <simon.fraser@apple.com>
1196
1197         Expose a way for MiniBrowser to simulate header and footer banners
1198         https://bugs.webkit.org/show_bug.cgi?id=166005
1199
1200         Reviewed by Wenson Hsieh.
1201         
1202         Add a MiniBrowser menu item and setting to toggle adding space for header and footer
1203         banners. This only works in WebKit2.
1204         
1205         We need to reset these on each navigation, since newly created FrameViews
1206         don't re-fetch the header and footer height stored on Page.
1207         
1208         Also fix the signature of webView:didFinishNavigation: to follow API changes,
1209         as well as fixing webViewWebContentProcessDidTerminate:
1210
1211         * MiniBrowser/mac/SettingsController.h:
1212         * MiniBrowser/mac/SettingsController.m:
1213         (-[SettingsController _populateMenu]):
1214         (-[SettingsController validateMenuItem:]):
1215         (-[SettingsController toggleReserveSpaceForBanners:]):
1216         (-[SettingsController isSpaceReservedForBanners]):
1217         * MiniBrowser/mac/WK2BrowserWindowController.m:
1218         (-[WK2BrowserWindowController didChangeSettings]):
1219         (-[WK2BrowserWindowController webView:didFinishNavigation:]):
1220         (-[WK2BrowserWindowController webViewWebContentProcessDidTerminate:]):
1221         (-[WK2BrowserWindowController webView:didFinishLoadingNavigation:]): Deleted.
1222         (-[WK2BrowserWindowController _webViewWebProcessDidCrash:]): Deleted.
1223
1224 2016-12-17  Simon Fraser  <simon.fraser@apple.com>
1225
1226         Fix iOS test results after r209967.
1227         
1228         Subtracting out the status bar height was erroneously happening for all tests,
1229         not just for flexible viewport tests.
1230         
1231         Fix by plumbing WebViewSizingMode through resizeTo() and setWindowFrame().
1232
1233         * WebKitTestRunner/PlatformWebView.h:
1234         * WebKitTestRunner/TestController.cpp:
1235         (WTR::TestController::resetStateToConsistentValues):
1236         * WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
1237         (WTR::PlatformWebView::resizeTo):
1238         (WTR::PlatformWebView::setWindowFrame):
1239         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
1240         (WTR::PlatformWebView::resizeTo):
1241         (WTR::PlatformWebView::setWindowFrame):
1242         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
1243         (WTR::PlatformWebView::resizeTo):
1244         (WTR::PlatformWebView::setWindowFrame):
1245         * WebKitTestRunner/ios/TestControllerIOS.mm:
1246         (WTR::TestController::platformConfigureViewForTest):
1247         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
1248         (WTR::PlatformWebView::resizeTo):
1249         (WTR::PlatformWebView::setWindowFrame):
1250
1251 2016-12-17  Joonghun Park  <jh718.park@samsung.com>
1252
1253         [EFL] bump EFL version to 1.18.4
1254         https://bugs.webkit.org/show_bug.cgi?id=166004
1255
1256         Reviewed by Gyuyoung Kim.
1257
1258         * efl/jhbuild.modules: Use efl-1.18.4 instead of 1.18.1.
1259
1260 2016-12-17  Wenson Hsieh  <wenson_hsieh@apple.com>
1261
1262         Visual viewports: bottom fixed elements disappear behind the keyboard
1263         https://bugs.webkit.org/show_bug.cgi?id=165983
1264         <rdar://problem/29409852>
1265
1266         Reviewed by Simon Fraser.
1267
1268         Add support for UIScriptController.inputViewBounds, which UI-side scripts may use to fetch the bounding rect of
1269         the keyboard when it is up.
1270
1271         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1272         (WTR::UIScriptController::inputViewBounds):
1273         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1274         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1275         (WTR::UIScriptController::inputViewBounds):
1276         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1277         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
1278         (WTR::viewRectForWindowRect):
1279
1280         Previously, we accounted for the status bar height by translating the entire web view down by the height of the
1281         status bar. However, we did not shrink the height of the web view itself, which means that for tests which
1282         involve scrolling past the end of the document, the bottom strip of the web view is out of bounds of the window.
1283
1284         (WTR::PlatformWebView::PlatformWebView):
1285         (WTR::PlatformWebView::setWindowFrame):
1286         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1287         (WTR::UIScriptController::inputViewBounds):
1288
1289 2016-12-16  Ryosuke Niwa  <rniwa@webkit.org>
1290
1291         Deleting a character converted from pinyin after an image causes a Safari crash
1292         https://bugs.webkit.org/show_bug.cgi?id=165839
1293         <rdar://problem/27951933>
1294
1295         Reviewed by Wenson Hsieh.
1296
1297         Add a WebKit API test to call attributedSubstringForProposedRange on a WKWebView
1298         while the proposed range contains an image. This should not cause a WebProcess to crash
1299         or send an invalid message to the UIProcess.
1300
1301         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1302         * TestWebKitAPI/Tests/WebKit2/chinese-character-with-image.html: Added.
1303         * TestWebKitAPI/Tests/WebKit2/mac/AttributedSubstringForProposedRangeWithImage.mm: Added.
1304         (TestWebKitAPI::didFinishLoadForFrame):
1305         (TestWebKitAPI::processDidCrash):
1306         (TestWebKitAPI::invalidMessageFunction):
1307         (TestWebKitAPI::WebKit2.AttributedSubstringForProposedRangeWithImage):
1308
1309 2016-12-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1310
1311         Visual viewports: carets and selection UI are incorrectly positioned when editing fixed elements
1312         https://bugs.webkit.org/show_bug.cgi?id=165767
1313         <rdar://problem/29602382>
1314
1315         Reviewed by Simon Fraser.
1316
1317         Introduces two new UIScriptController methods: doAfterWebPageIsInStableState and textSelectionCaretRect. See
1318         WebKit2 ChangeLog for more details.
1319
1320         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1321         (WTR::UIScriptController::doAfterNextStablePresentationUpdate):
1322         (WTR::UIScriptController::textSelectionCaretRect):
1323         * DumpRenderTree/mac/UIScriptControllerMac.mm:
1324         (WTR::UIScriptController::doAfterNextStablePresentationUpdate):
1325         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1326         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1327         (WTR::UIScriptController::doAfterNextStablePresentationUpdate):
1328         (WTR::UIScriptController::textSelectionCaretRect):
1329         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1330         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1331         (-[TestRunnerWKWebView _setStableStateOverride:]):
1332
1333         Force the WKWebView to update its visible content rects when changing the stable state override.
1334
1335         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1336         (WTR::toNSDictionary):
1337         (WTR::UIScriptController::doAfterNextStablePresentationUpdate):
1338         (WTR::UIScriptController::selectionRangeViewRects):
1339         (WTR::UIScriptController::textSelectionCaretRect):
1340         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
1341         (WTR::UIScriptController::doAfterNextStablePresentationUpdate):
1342
1343 2016-12-15  Brent Fulgham  <bfulgham@apple.com>
1344
1345         Arguments called in wrong order
1346         https://bugs.webkit.org/show_bug.cgi?id=165923
1347
1348         Reviewed by Simon Fraser.
1349
1350         The 'audioDeviceUIDs' array is being passed to the argument that expects video devices,
1351         and the 'videoDeviceUIDs' array is being passed to the audo device argument. Fix this.
1352
1353         * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
1354         (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack): The
1355         order of arguments to WKUserMediaPermissionRequestAllow are flipped.
1356
1357 2016-12-16  Hunseop Jeong  <hs85.jeong@samsung.com>
1358
1359         [EFL] Disable non-srcdir builds for failing libraries
1360         https://bugs.webkit.org/show_bug.cgi?id=165896
1361
1362         Reviewed by Gyuyoung Kim.
1363
1364         * efl/jhbuild.modules: Set non srcdir builds to no
1365
1366 2016-12-15  Daniel Bates  <dabates@apple.com>
1367
1368         check-style should not complain about code in icu directories
1369         https://bugs.webkit.org/show_bug.cgi?id=53929
1370
1371         Reviewed by Darin Adler.
1372
1373         Skip style checking of imported ICU headers to avoid a deluge of style issues
1374         as they do not conform to the WebKit Code Style guideline. We want to preserve
1375         the formatting of these headers so as to make it straightforward to merge
1376         changes to them, if necessary.
1377
1378         * Scripts/webkitpy/style/checker.py:
1379
1380 2016-12-15  Alexey Proskuryakov  <ap@apple.com>
1381
1382         Move JSC testers from Yosemite to Sierra
1383         https://bugs.webkit.org/show_bug.cgi?id=165925
1384
1385         Reviewed by Lucas Forschler.
1386
1387         * BuildSlaveSupport/build.webkit.org-config/config.json:
1388         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1389         (WebKitBuildbot):
1390
1391 2016-12-15  Megan Gardner  <megan_gardner@apple.com>
1392
1393         Add coordinate space to event streams and streamline tests
1394         https://bugs.webkit.org/show_bug.cgi?id=165119
1395
1396         Reviewed by Simon Fraser.
1397
1398         Update event streams to allow for both content and global coordinate space.
1399         Update example script to more accurately show all the available options.
1400
1401         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1402         * WebKitTestRunner/ios/HIDEventGenerator.h:
1403         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1404         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1405         (WTR::convertCoordinates):
1406         (WTR::UIScriptController::sendEventStream):
1407
1408 2016-12-15  Claudio Saavedra  <csaavedra@igalia.com>
1409
1410         [GTK] Ensure gst* docs are not built with update-webkitgtk-libs
1411         https://bugs.webkit.org/show_bug.cgi?id=165855
1412
1413         Reviewed by Philippe Normand.
1414
1415         GStreamer's autogen.sh enables gtk-doc always so we end up building
1416         docs even if we disable them. Use the configure script instead, since
1417         we build from packages and these include it already.
1418
1419         * gtk/jhbuild.modules: Use shipped configure instead of autogen.sh for
1420         upstream gstreamer packages.
1421
1422 2016-12-15  Alex Christensen  <achristensen@webkit.org>
1423
1424         REGRESSION (r208902) Null pointer dereference in wkIsPublicSuffix
1425         https://bugs.webkit.org/show_bug.cgi?id=165885
1426         <rdar://problem/29476917>
1427
1428         Reviewed by Darin Adler.
1429
1430         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1431         (TestWebKitAPI::utf16String): Deleted.
1432         * TestWebKitAPI/Tests/mac/PublicSuffix.mm:
1433         (TestWebKitAPI::TEST_F):
1434         * TestWebKitAPI/WTFStringUtilities.h:
1435         (utf16String):
1436         Moved from URLParser to share with other tests.
1437
1438 2016-12-14  Ryosuke Niwa  <rniwa@webkit.org>
1439
1440         iOS: An element with tabindex is not focusable unless there is no mouse event handler
1441         https://bugs.webkit.org/show_bug.cgi?id=165843
1442
1443         Reviewed by Antti Koivisto.
1444
1445         Add testRunner.isWebKit2 which is always true in WebKitTestRunner.
1446         Without this, it's really hard to reliably differentiate DumpRenderTree and WebKitTestRunner,
1447         and DumpRenderTree's runUIScript would hit an assertion :(
1448
1449         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1450         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1451         (WTR::TestRunner::isWebKit2):
1452
1453 2016-12-14  Brady Eidson  <beidson@apple.com>
1454
1455         IndexedDB 2.0: Massively speedup IDBIndex.get().
1456         https://bugs.webkit.org/show_bug.cgi?id=165802
1457
1458         Reviewed by Alex Christensen.
1459
1460         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1461         * TestWebKitAPI/Tests/WebKit2Cocoa/IDBIndexUpgradeToV2.html: Added.
1462         * TestWebKitAPI/Tests/WebKit2Cocoa/IDBIndexUpgradeToV2.mm: Added.
1463         * TestWebKitAPI/Tests/WebKit2Cocoa/IndexUpgrade.blob: Added.
1464         * TestWebKitAPI/Tests/WebKit2Cocoa/IndexUpgrade.sqlite3: Added.
1465
1466 2016-12-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1467
1468         [GTK][EFL] Update the JHBuild version.
1469         https://bugs.webkit.org/show_bug.cgi?id=165838
1470
1471         Reviewed by Michael Catanzaro.
1472
1473         * jhbuild/jhbuild-wrapper: This new version fixes a bug with the
1474         usage of the JHBUILD_MIRROR feature with git repositories.
1475
1476 2016-12-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1477
1478         [GTK] Yasm is needed for building the JHBuild after r208940
1479         https://bugs.webkit.org/show_bug.cgi?id=165837
1480
1481         Reviewed by Alejandro G. Castro.
1482
1483         * gtk/install-dependencies: Yasm is needed for building libvpx.
1484
1485 2016-12-14  Youenn Fablet  <youenn@apple.com>
1486
1487         Test infrastructure should allow to filter out text output before doing a comparison with the baseline
1488         https://bugs.webkit.org/show_bug.cgi?id=161310
1489
1490         Reviewed by Ryosuke Niwa.
1491
1492         Adding --dump-jsconsolelog-in-stderr test option for DRT and WTR.
1493         When set, WTR and DRT output JS console log in the stderr and not the test output.
1494         This allows removing potentially flaky information while still being able to read it for investigation.
1495
1496         Updated webkitpy infrastructure to use this test option in case of DumpJSConsoleLogInStdErr modifier.
1497
1498         Changes are covered by updating a fetch test to output console log and set its option to --dump-jsconsolelog-in-stderr in TestExpectations.
1499         This test should have this option when fetch API will start logging resource loader errors.
1500
1501         * DumpRenderTree/DumpRenderTree.h:
1502         (TestCommand::TestCommand): Deleted.
1503         * DumpRenderTree/DumpRenderTreeCommon.cpp:
1504         (parseInputLine):
1505         * DumpRenderTree/TestRunner.h:
1506         (TestRunner::setDumpJSConsoleLogInStdErr):
1507         (TestRunner::dumpJSConsoleLogInStdErr):
1508         * DumpRenderTree/mac/DumpRenderTree.mm:
1509         (runTest):
1510         * DumpRenderTree/mac/UIDelegate.mm:
1511         (-[UIDelegate webView:addMessageToConsole:withSource:]):
1512         * DumpRenderTree/win/DumpRenderTree.cpp:
1513         (runTest):
1514         * DumpRenderTree/win/UIDelegate.cpp:
1515         (UIDelegate::webViewAddMessageToConsole):
1516         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
1517         (TestExpectationParser._tokenize_line):
1518         * Scripts/webkitpy/port/driver.py:
1519         (Driver._command_from_driver_input):
1520         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1521         (WTR::InjectedBundle::didReceiveMessageToPage):
1522         (WTR::InjectedBundle::dumpToStdErr):
1523         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
1524         (WTR::InjectedBundle::dumpJSConsoleLogInStdErr):
1525         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1526         (WTR::InjectedBundlePage::willAddMessageToConsole):
1527         * WebKitTestRunner/TestController.cpp:
1528         (WTR::parseInputLine):
1529         (WTR::TestController::runTest):
1530         (WTR::TestCommand::TestCommand): Deleted.
1531         * WebKitTestRunner/TestInvocation.cpp:
1532         (WTR::TestInvocation::invoke):
1533         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
1534         * WebKitTestRunner/TestInvocation.h:
1535         (WTR::TestInvocation::setDumpJSConsoleLogInStdErr):
1536
1537
1538 2016-12-14  Enrique Ocaña González  <eocanha@igalia.com>
1539
1540         REGRESSION(r207879-207891): [GStreamer] Introduced many layout test failures and crashes, bots exiting early
1541         https://bugs.webkit.org/show_bug.cgi?id=164022
1542
1543         Reviewed by Xabier Rodriguez-Calvar.
1544
1545         * Scripts/webkitperl/FeatureList.pm:
1546           Re-enable MEDIA_SOURCE for the GTK+ port.
1547
1548 2016-12-13  Alex Christensen  <achristensen@webkit.org>
1549
1550         Fix CMake build.
1551
1552         * DumpRenderTree/PlatformMac.cmake:
1553         Define NS_RETURNS_RETAINED as nothing for now.
1554
1555 2016-12-13  Jer Noble  <jer.noble@apple.com>
1556
1557         Fullscreen in WebKit2 does not restore topContentInset upon exiting; leaves top of page not visible
1558         https://bugs.webkit.org/show_bug.cgi?id=165697
1559
1560         Reviewed by Tim Horton.
1561
1562         * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenTopContentInset.mm:
1563         (TestWebKitAPI::TEST):
1564
1565 2016-12-13  Andy Estes  <aestes@apple.com>
1566
1567         [Cocoa] Implement -shouldInsertText: on WKWebProcessPlugInEditingDelegate
1568         https://bugs.webkit.org/show_bug.cgi?id=165785
1569         <rdar://problem/26929398>
1570
1571         Reviewed by Darin Adler.
1572
1573         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
1574         (-[BundleEditingDelegateRemoteObject shouldInsertText:replacingRange:givenAction:]): Added
1575         expectations for the text, range, and action.
1576         (TEST): Set the "EditingDelegateShouldInsertText" bundle parameter to NO so that the plug-in
1577         will return NO in -_webProcessPlugInBrowserContextController:willInsertText:. Added a
1578         plain-text string to the pasteboard, executed a paste action, and verified that the selected
1579         text in the web view did not change.
1580         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm:
1581         (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]): Set
1582         _editingDelegateShouldInsertText according to the "EditingDelegateShouldInsertText" bundle
1583         parameter.
1584         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:shouldInsertText:replacingRange:givenAction:]):
1585         Added. Called -shouldInsertText:replacingRange:givenAction: on the remote object proxy
1586         and returned the value of _editingDelegateShouldInsertText.
1587         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegateProtocol.h: Declared
1588         -shouldInsertText:replacingRange:givenAction:.
1589
1590 2016-12-13  Chris Dumez  <cdumez@apple.com>
1591
1592         Unreviewed, rolling out r209544.
1593
1594         Looks like r209489 did not cause the performance regression
1595         after all
1596
1597         Reverted changeset:
1598
1599         "Unreviewed, rolling out r209489."
1600         https://bugs.webkit.org/show_bug.cgi?id=165550
1601         http://trac.webkit.org/changeset/209544
1602
1603 2016-12-12  Sam Weinig  <sam@webkit.org>
1604
1605         [WebIDL] Remove use of Dictionary in ApplePaySession
1606         https://bugs.webkit.org/show_bug.cgi?id=165787
1607
1608         Reviewed by Anders Carlsson.
1609
1610         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1611         (WTR::initializeWebViewConfiguration):
1612         (WTR::TestController::platformCreateWebView):
1613         Enable ApplePay for the tests (where supported).
1614
1615 2016-12-13  Eric Carlson  <eric.carlson@apple.com>
1616
1617         Annotate MediaStream and WebRTC idl with EnabledAtRuntime flag
1618         https://bugs.webkit.org/show_bug.cgi?id=165251
1619
1620         Reviewed by Youenn Fablet.
1621
1622         * TestWebKitAPI/Tests/WebKit2/EnumerateMediaDevices.cpp:
1623         (TestWebKitAPI::TEST): Enable MediaStream, create web view from the page group upon which
1624         the preferences have been set.
1625
1626 2016-12-08  Antti Koivisto  <antti@apple.com>
1627
1628         Enable network cache speculative revalidation in MiniBrowser
1629         https://bugs.webkit.org/show_bug.cgi?id=165616
1630
1631         Reviewed by Darin Adler.
1632
1633         Match Safari. Also add a menu item to disable it.
1634
1635         * MiniBrowser/mac/AppDelegate.m:
1636         (defaultConfiguration):
1637         * MiniBrowser/mac/SettingsController.h:
1638         * MiniBrowser/mac/SettingsController.m:
1639         (-[SettingsController _populateMenu]):
1640         (-[SettingsController validateMenuItem:]):
1641         (-[SettingsController networkCacheSpeculativeRevalidationDisabled]):
1642         (-[SettingsController toggleNetworkCacheSpeculativeRevalidationDisabled:]):
1643
1644 2016-12-12  Alexey Proskuryakov  <ap@apple.com>
1645
1646         ChangeLogs become readonly after resolving a conflict
1647         https://bugs.webkit.org/show_bug.cgi?id=165440
1648         rdar://problem/29491002
1649
1650         Reviewed by Darin Adler.
1651
1652         * Scripts/resolve-ChangeLogs: (resolveChangeLog): Set correct permissions when
1653         moving the file.
1654
1655 2016-12-12  Filip Pizlo  <fpizlo@apple.com>
1656
1657         Re-enable collectContinuously since it doesn't crash anymore
1658
1659         Rubber stamped by Michael Saboff.
1660
1661         * Scripts/run-jsc-stress-tests:
1662
1663 2016-12-11  Konstantin Tokarev  <annulen@yandex.ru>
1664
1665         Unreviewed attempt to fix EFL and Mac/cmake builds after r209665.
1666         https://bugs.webkit.org/show_bug.cgi?id=165686
1667
1668         * DumpRenderTree/CMakeLists.txt: WebKit2 should precede other target
1669         so that right config.h comes first in include path.
1670
1671 2016-12-11  Dave Hyatt  <hyatt@apple.com>
1672
1673         [CSS Parser] Make sure content extensions initialize AtomicString
1674         https://bugs.webkit.org/show_bug.cgi?id=165737
1675
1676         Reviewed by Darin Adler.
1677
1678         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
1679         (TestWebKitAPI::makeBackend):
1680
1681 2016-12-08  Dave Hyatt  <hyatt@apple.com>
1682
1683         [CSS Parser] Remove the old CSS Parser
1684         https://bugs.webkit.org/show_bug.cgi?id=165645
1685
1686         Reviewed by Daniel Bates.
1687
1688         * TestWebKitAPI/Tests/WebCore/CSSParser.cpp:
1689         (TestWebKitAPI::TEST):
1690
1691 2016-12-10  Konstantin Tokarev  <annulen@yandex.ru>
1692
1693         [cmake] Include WTF, JSC, and WebCore headers automatically to targers using them
1694         https://bugs.webkit.org/show_bug.cgi?id=165686
1695
1696         Reviewed by Michael Catanzaro.
1697
1698         This change reduces duplication of include path lists between modules,
1699         and reduces future need for fixes like r209605 (broken build because of
1700         WebCore header suddenly becoming used in WebKit2).
1701
1702         * DumpRenderTree/CMakeLists.txt:
1703         * DumpRenderTree/PlatformMac.cmake:
1704         * ImageDiff/CMakeLists.txt:
1705         * MiniBrowser/gtk/CMakeLists.txt:
1706         * MiniBrowser/mac/CMakeLists.txt:
1707         * MiniBrowser/win/CMakeLists.txt:
1708         * TestWebKitAPI/CMakeLists.txt:
1709         * TestWebKitAPI/PlatformEfl.cmake:
1710         * TestWebKitAPI/PlatformJSCOnly.cmake:
1711         * TestWebKitAPI/PlatformMac.cmake:
1712         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
1713         * WebKitTestRunner/CMakeLists.txt:
1714         * WebKitTestRunner/PlatformGTK.cmake:
1715         * WebKitTestRunner/PlatformMac.cmake:
1716
1717 2016-12-09  Csaba Osztrogonác  <ossy@webkit.org>
1718
1719         Unreviewed buildfix after r209630.
1720
1721         * Scripts/build-jsc: Remove building the non-existing testWASM.
1722
1723 2016-12-09  Eric Carlson  <eric.carlson@apple.com>
1724
1725         Annotate MediaStream and WebRTC idl with EnabledAtRuntime flag
1726         https://bugs.webkit.org/show_bug.cgi?id=165251
1727
1728         Reviewed by Dean Jackson.
1729
1730         Based on a patch by Dr Alex Gouaillard <agouaillard@gmail.com>
1731
1732         * DumpRenderTree/mac/DumpRenderTree.mm:
1733         (resetWebPreferencesToConsistentValues): Enable MediaStream and PeerConnection.
1734
1735         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1736         (WTR::InjectedBundle::beginTesting): Ditto.
1737
1738         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1739         (WTR::TestRunner::setMediaStreamEnabled): New.
1740         (WTR::TestRunner::setPeerConnectionEnabled): New.
1741         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1742
1743 2016-12-09  Brady Eidson  <beidson@apple.com> 
1744  
1745         Re-landing:
1746         Add _WKIconLoadingDelegate SPI. 
1747         https://bugs.webkit.org/show_bug.cgi?id=164894 
1748  
1749         Reviewed by Alex Christensen. 
1750         
1751         Add MiniBrowser support for this new SPI, configurable with a setting. 
1752  
1753         * MiniBrowser/mac/SettingsController.h: 
1754         * MiniBrowser/mac/SettingsController.m: 
1755         (-[SettingsController _populateMenu]): 
1756         (-[SettingsController validateMenuItem:]): 
1757         (-[SettingsController loadsAllSiteIcons]): 
1758         (-[SettingsController toggleLoadsAllSiteIcons:]): 
1759         * MiniBrowser/mac/WK2BrowserWindowController.m: 
1760         (-[WK2BrowserWindowController awakeFromNib]): 
1761         (-[WK2BrowserWindowController webView:shouldLoadIconWithParameters:completionHandler:]): 
1762
1763 2016-12-09  Ryan Haddad  <ryanhaddad@apple.com>
1764
1765         Fix the 32-bit build.
1766
1767         Unreviewed build fix.
1768
1769         * MiniBrowser/mac/SettingsController.h:
1770
1771 2016-12-09  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1772
1773         Fedora also needs a PHP7 config file alternative
1774         https://bugs.webkit.org/show_bug.cgi?id=165606
1775
1776         Reviewed by Michael Catanzaro.
1777
1778         * Scripts/webkitpy/port/base.py:
1779         (Port._is_fedora_php_version_7): check for the php7 library.
1780         (Port._fedora_php_version): get the appropriate filename for Fedora.
1781         (Port._apache_config_file_name_for_platform):
1782
1783 2016-12-09  Ryan Haddad  <ryanhaddad@apple.com>
1784
1785         Complete the revert of r208865.
1786         https://bugs.webkit.org/show_bug.cgi?id=164894
1787
1788         Unreviewed build fix.
1789
1790         * MiniBrowser/mac/SettingsController.h:
1791         * MiniBrowser/mac/SettingsController.m:
1792         (-[SettingsController _populateMenu]):
1793         (-[SettingsController validateMenuItem:]):
1794         (-[SettingsController loadsAllSiteIcons]): Deleted.
1795         (-[SettingsController toggleLoadsAllSiteIcons:]): Deleted.
1796         * MiniBrowser/mac/WK2BrowserWindowController.m:
1797         (-[WK2BrowserWindowController awakeFromNib]):
1798         (-[WK2BrowserWindowController webView:shouldLoadIconWithParameters:completionHandler:]): Deleted.
1799
1800 2016-12-09  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1801
1802         [GTK] Force GDK backend to x11 when running with XvfbDriver
1803         https://bugs.webkit.org/show_bug.cgi?id=165612
1804
1805         Reviewed by Michael Catanzaro.
1806
1807         When the developer is running a Wayland session, GDK may get confused
1808         and try to use its Wayland backend (which is higher priority) instead.
1809         This ensures it will use the appropriate backend when running under
1810         Xvfb.
1811
1812         * Scripts/webkitpy/port/gtk.py:
1813         (GtkPort.setup_environ_for_server): when running with XvfbDriver,
1814         force GDK_BACKEND to x11.
1815
1816 2016-12-08  Keith Miller  <keith_miller@apple.com>
1817
1818         Add 64-bit signed LEB decode method
1819         https://bugs.webkit.org/show_bug.cgi?id=165630
1820
1821         Reviewed by Ryosuke Niwa.
1822
1823         Add tests for LEB int64 and uint64 decode since I guess
1824         I forgot to add tests before.
1825
1826         * TestWebKitAPI/Tests/WTF/LEBDecoder.cpp:
1827         (TestWebKitAPI::testUInt32LEBDecode):
1828         (TestWebKitAPI::TEST):
1829         (TestWebKitAPI::testUInt64LEBDecode):
1830         (TestWebKitAPI::testInt32LEBDecode):
1831         (TestWebKitAPI::testInt64LEBDecode):
1832         (TestWebKitAPI::testUnsignedLEBDecode): Deleted.
1833
1834 2016-12-08  Filip Pizlo  <fpizlo@apple.com>
1835
1836         Make it easy to enable --force-collectContinuously
1837         https://bugs.webkit.org/show_bug.cgi?id=165638
1838
1839         Reviewed by Keith Miller.
1840
1841         * Scripts/run-javascriptcore-tests:
1842         (runJSCStressTests):
1843
1844 2016-12-08  Filip Pizlo  <fpizlo@apple.com>
1845
1846         Disable the collectContinuously mode until I investigate failures.
1847
1848         Rubber stamped by Keith Miller.
1849         
1850         I'm seeing collectContinuously crashes on some platforms. Disabling that testing mode
1851         while I investigate.
1852
1853         * Scripts/run-jsc-stress-tests:
1854
1855 2016-12-08  Alex Christensen  <achristensen@webkit.org>
1856
1857         REGRESSION (URL parser): Relative URLs aren’t resolved correctly when the base URL is an applewebdata: URL
1858         https://bugs.webkit.org/show_bug.cgi?id=165621
1859
1860         Reviewed by Dan Bernstein.
1861
1862         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1863         (TestWebKitAPI::TEST_F):
1864
1865 2016-12-06  Filip Pizlo  <fpizlo@apple.com>
1866
1867         Concurrent GC should be stable enough to land enabled
1868         https://bugs.webkit.org/show_bug.cgi?id=164990
1869
1870         Reviewed by Geoffrey Garen.
1871         
1872         Add a new mode that runs GC continuously. Also made eager modes run GC continuously.
1873         
1874         It's clear that this works just fine in release, but I'm still trying to figure out if it's
1875         safe for debug. It might be too slow for debug.
1876
1877         * Scripts/run-jsc-stress-tests:
1878
1879 2016-12-08  Alex Christensen  <achristensen@webkit.org>
1880
1881         Add SPI for sending WebsiteSettings to WebProcess during navigation
1882         https://bugs.webkit.org/show_bug.cgi?id=165517
1883         <rdar://29341068>
1884
1885         Reviewed by Anders Carlsson.
1886
1887         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1888         * TestWebKitAPI/Tests/WebKit2/contentBlockerCheck.html: Added.
1889         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm: Added.
1890         (-[WebsitePoliciesDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
1891         (-[WebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
1892         (-[WebsitePoliciesDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
1893         (TEST):
1894
1895 2016-12-08  Chris Dumez  <cdumez@apple.com>
1896
1897         Unreviewed, rolling out r209489.
1898
1899         Likely caused large regressions on JetStream, Sunspider and
1900         Speedometer
1901
1902         Reverted changeset:
1903
1904         "Add system trace points for JavaScript VM entry/exit"
1905         https://bugs.webkit.org/show_bug.cgi?id=165550
1906         http://trac.webkit.org/changeset/209489
1907
1908 2016-12-08  Keith Miller  <keith_miller@apple.com>
1909
1910         Move LEB tests to API tests
1911         https://bugs.webkit.org/show_bug.cgi?id=165586
1912
1913         Reviewed by Saam Barati.
1914
1915         Move the tests from testWasm.cpp and make them functions
1916         rather than macros.
1917
1918         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1919         * TestWebKitAPI/Tests/WTF/LEBDecoder.cpp: Added.
1920         (TestWebKitAPI::testUnsignedLEBDecode):
1921         (TestWebKitAPI::TEST):
1922         (TestWebKitAPI::testInt32LEBDecode):
1923
1924 2016-12-08  Chris Dumez  <cdumez@apple.com>
1925
1926         Support running the layout tests offline
1927         https://bugs.webkit.org/show_bug.cgi?id=165534
1928
1929         Reviewed by Ryosuke Niwa.
1930
1931         * Scripts/webkitpy/common/system/autoinstall.py:
1932         (AutoInstaller._download_to_stream):
1933         getcode() returns None for file URLs so handle this.
1934
1935         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
1936         (WebPlatformTestServer._install_modules):
1937         Deal with local path in the json file and resolve them into file URLs
1938         before using AutoInstall.
1939
1940 2016-12-08  Alex Christensen  <achristensen@webkit.org>
1941
1942         Fix CMake build.
1943
1944         * DumpRenderTree/PlatformMac.cmake:
1945         Remove CheckedMalloc.cpp after r209516.
1946
1947 2016-12-07  Mark Lam  <mark.lam@apple.com>
1948
1949         DumpRenderTree should stop using CheckedMalloc.
1950         https://bugs.webkit.org/show_bug.cgi?id=165563
1951         <rdar://problem/28945820>
1952
1953         Reviewed by Geoffrey Garen.
1954
1955         1. WebKitTestRunner does not have equivalent behavior to that which is implemented
1956            in CheckedMalloc.
1957         2. bmalloc does not honor the settings of CheckedMalloc.
1958
1959         The only time CheckedMalloc comes into play is when DRT uses gmalloc or system
1960         malloc.  As a result, DRT exhibits different behavior from the normal way we run
1961         our tests.  We should obsolete CheckedMalloc and make DRT behave consistently
1962         with WKTR.
1963
1964         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
1965         * DumpRenderTree/mac/CheckedMalloc.cpp: Removed.
1966         * DumpRenderTree/mac/CheckedMalloc.h: Removed.
1967         * DumpRenderTree/mac/DumpRenderTree.mm:
1968         (prepareConsistentTestingEnvironment):
1969
1970 2016-12-07  Dean Jackson  <dino@apple.com>
1971
1972         Remove runtime toggle for pointer-lock
1973         https://bugs.webkit.org/show_bug.cgi?id=165577
1974         <rdar://problems/29566996>
1975
1976         Reviewed by Jon Lee.
1977
1978         Remove any runtime calls to check if pointer-lock is enabled. It's
1979         either compiled in or out.
1980
1981         * DumpRenderTree/mac/DumpRenderTree.mm:
1982         (resetWebPreferencesToConsistentValues):
1983         * WebKitTestRunner/TestController.cpp:
1984         (WTR::TestController::resetPreferencesToConsistentValues):
1985
1986 2016-12-07  Eric Carlson  <eric.carlson@apple.com>
1987
1988         [MediaStream][Mac] Revoke sandbox extensions when capture ends
1989         https://bugs.webkit.org/show_bug.cgi?id=165476
1990
1991         Reviewed by Brady Eidson.
1992         
1993         Add a test which loads a page that calls navigator.mediaDevices.enumerateDevices, kills the
1994         page, and loads the same page again to ensure that the WK2 UserMediaPermissionRequestManagerProxy
1995         is reset and recreated when a web page exits and is reloaded.
1996
1997         * TestWebKitAPI/PlatformGTK.cmake:
1998         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1999         * TestWebKitAPI/Tests/WebKit2/EnumerateMediaDevices.cpp: Added.
2000         (TestWebKitAPI::checkUserMediaPermissionCallback):
2001         (TestWebKitAPI::TEST):
2002         * TestWebKitAPI/Tests/WebKit2/enumerateMediaDevices.html: Added.
2003
2004 2016-12-07  Jeremy Jones  <jeremyj@apple.com>
2005
2006         One esc to exit fullscreen and pointer lock
2007         https://bugs.webkit.org/show_bug.cgi?id=165416
2008         rdar://problem/29430711
2009
2010         Reviewed by Jer Noble.
2011
2012         Implement WKPageUIClientV8 for pointer lock support.
2013         Add "escape" key support in EventSenderProxy.
2014
2015         * WebKitTestRunner/TestController.cpp:
2016         (WTR::requestPointerLock):
2017         (WTR::TestController::createOtherPage):
2018         (WTR::TestController::createWebViewWithOptions):
2019         * WebKitTestRunner/mac/EventSenderProxy.mm:
2020         (WTR::EventSenderProxy::keyDown):
2021
2022 2016-12-07  Simon Fraser  <simon.fraser@apple.com>
2023
2024         Add system trace points for JavaScript VM entry/exit
2025         https://bugs.webkit.org/show_bug.cgi?id=165550
2026
2027         Reviewed by Tim Horton.
2028
2029         Add trace points for entry/exit into/out of the JS VM.
2030
2031         * Tracing/SystemTracePoints.plist:
2032
2033 2016-12-07  ChangSeok Oh  <changseok@webkit.org>
2034
2035         [GTK] Cannot build GTK+ with CUPS 2.* versions
2036         https://bugs.webkit.org/show_bug.cgi?id=163591
2037
2038         Reviewed by Michael Catanzaro.
2039
2040         GTK+ build has failed on the system which CUPS 2.x is installed in. GTK+ 3.16.4
2041         does not assume to use the recent CUPS thus it fails to detect the CUPS in configuration.
2042         GTK+ upstream fixed this issue but it is not easy to apply the original patch to our
2043         old gtk+ since it requires not only bumping up glib accordingly and its consequence
2044         causes many printing test failures. So, I propose to fix the configuration issue by
2045         applying the change to the configure file directly. By doing this, we don't need to
2046         upgrade glib and worry about any test failures as a consequence of the upgraded glib.
2047
2048         * gtk/jhbuild.modules:
2049         * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Added.
2050
2051 2016-12-07  Simon Fraser  <simon.fraser@apple.com>
2052
2053         Fix use of enum in a WK2 C SPI header.
2054         rdar://problem/28725583
2055
2056         Followup to correctly prefix the enum values.
2057
2058         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2059         (WTR::InjectedBundlePage::prepare):
2060
2061 2016-12-07  Simon Fraser  <simon.fraser@apple.com>
2062
2063         Fix use of enum in a WK2 C SPI header.
2064         rdar://problem/28725583
2065
2066         Reviewed by Dan Bernstein.
2067
2068         Use correct enum style for a C SPI header and fix the callers.
2069
2070         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2071         (WTR::InjectedBundlePage::prepare):
2072
2073 2016-12-07  Wenson Hsieh  <wenson_hsieh@apple.com>
2074
2075         Add a new project for recording and playing back editing commands in editable web content
2076         https://bugs.webkit.org/show_bug.cgi?id=165114
2077         <rdar://problem/29408135>
2078
2079         Reviewed by Beth Dakin.
2080
2081         Adds a new Xcode project containing work towards rewinding and playing back editing commands. This work is
2082         wrapped in an Xcode project to take advantage of the XCTest framework. To manually test recording, open the
2083         capture test harness, edit the contenteditable body, and then hit cmd-S. This downloads a .json file which may
2084         then be dragged into the playback test harness.
2085
2086         Also adds 3 new unit tests in EditingHistoryTests/RewindAndPlaybackTests.m. These tests carry out the following
2087         steps:
2088
2089         1. Load the capture harness and perform test-specific editing on the web view.
2090         2. Let originalState be a dump of the DOM at this point in time.
2091         3. Extract the JSON-serialized editing history data and load the playback harness with this data.
2092         4. Rewind all editing to the beginning.
2093         5. Playback all editing to the end.
2094         6. Dump the state of the DOM. This should be identical to originalState.
2095
2096         * EditingHistory/EditingHistory.xcodeproj/project.pbxproj: Added.
2097         * EditingHistory/EditingHistory/Info.plist: Added.
2098         * EditingHistory/EditingHistory/Resources/CaptureHarness.html: Added.
2099         * EditingHistory/EditingHistory/Resources/DOMTestingUtil.js: Added.
2100         * EditingHistory/EditingHistory/Resources/PlaybackHarness.html: Added.
2101         * EditingHistory/EditingHistory/TestRunner.h: Added.
2102         * EditingHistory/EditingHistory/TestRunner.m: Added.
2103         (injectedMessageEventHandlerScript):
2104         (-[TestRunner init]):
2105         (-[TestRunner deleteBackwards:]):
2106         (-[TestRunner typeString:]):
2107         (-[TestRunner bodyElementSubtree]):
2108         (-[TestRunner bodyTextContent]):
2109         (-[TestRunner editingHistoryJSON]):
2110         (-[TestRunner loadPlaybackTestHarnessWithJSON:]):
2111         (-[TestRunner numberOfUpdates]):
2112         (-[TestRunner jumpToUpdateIndex:]):
2113         (-[TestRunner expectEvents:afterPerforming:]):
2114         (-[TestRunner loadCaptureTestHarness]):
2115         (-[TestRunner setTextObfuscationEnabled:]):
2116         (-[TestRunner isDoneWaitingForPendingEvents]):
2117         (-[TestRunner userContentController:didReceiveScriptMessage:]):
2118
2119         The TestRunner provides utilities that a unit test should use to drive the test forward (e.g. loading harnesses)
2120         or inspect the state of the loaded page (e.g. extracting JSON editing history data from the capture harness).
2121
2122         * EditingHistory/EditingHistory/TestUtil.h: Added.
2123         * EditingHistory/EditingHistory/TestUtil.m: Added.
2124         (waitUntilWithTimeout):
2125         (waitUntil):
2126
2127         Provides utilities for running tests. For now, this is just spinning the runloop on a given condition.
2128
2129         * EditingHistory/EditingHistory/WKWebViewAdditions.h: Added.
2130         * EditingHistory/EditingHistory/WKWebViewAdditions.m: Added.
2131         (-[WKWebView loadPageFromBundleNamed:]):
2132         (-[WKWebView typeCharacter:]):
2133         (-[WKWebView keyPressWithCharacters:keyCode:]):
2134         (-[WKWebView stringByEvaluatingJavaScriptFromString:]):
2135
2136         Provides utilities for simulating interaction in a web view.
2137
2138         * EditingHistory/EditingHistory/main.m: Added.
2139         (main):
2140         * EditingHistory/EditingHistoryTests/Info.plist: Added.
2141         * EditingHistory/EditingHistoryTests/RewindAndPlaybackTests.m: Added.
2142         (-[RewindAndPlaybackTests setUp]):
2143         (-[RewindAndPlaybackTests tearDown]):
2144         (-[RewindAndPlaybackTests testTypingSingleLineOfText]):
2145         (-[RewindAndPlaybackTests testTypingMultipleLinesOfText]):
2146         (-[RewindAndPlaybackTests testTypingAndDeletingText]):
2147         (-[RewindAndPlaybackTests rewindAndPlaybackEditingInPlaybackTestHarness]):
2148         (-[RewindAndPlaybackTests originalBodySubtree:isEqualToFinalSubtree:]):
2149
2150 2016-12-07  Philippe Normand  <pnormand@igalia.com>
2151
2152         [GTK][jhbuild] missing dependency on libvpx in gst-plugins-good
2153         https://bugs.webkit.org/show_bug.cgi?id=165525
2154
2155         Reviewed by Carlos Garcia Campos.
2156
2157         * gtk/jhbuild.modules: gst-plugins-good should depend on the
2158         libvpx package built within jhbuild.
2159
2160 2016-12-07  Philippe Normand  <pnormand@igalia.com>
2161
2162         [GTK][jhbuild] gst-plugins-bad fails to build with OpenSSL 1.1.0
2163         https://bugs.webkit.org/show_bug.cgi?id=165520
2164
2165         Reviewed by Carlos Garcia Campos.
2166
2167         * gtk/jhbuild.modules: Added missing dependency on openh264 in
2168         gst-plugins-bad, along with 2 upstream patches fixing the build
2169         against OpenSSL 1.1.0.
2170         * gtk/patches/gst-plugins-bad-0001-dtls-port-to-OpenSSL-1.1.0.patch: Added.
2171         * gtk/patches/gst-plugins-bad-0002-dtlscertificate-Fix-error-checking-in-RSA_generate_k.patch: Added.
2172
2173 2016-12-06  Alexey Proskuryakov  <ap@apple.com>
2174
2175         Correct SDKROOT values in xcconfig files
2176         https://bugs.webkit.org/show_bug.cgi?id=165487
2177         rdar://problem/29539209
2178
2179         Reviewed by Dan Bernstein.
2180
2181         Fix suggested by Dan Bernstein.
2182
2183         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
2184         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
2185         * MiniBrowser/Configurations/DebugRelease.xcconfig:
2186         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
2187         * WebEditingTester/Configurations/DebugRelease.xcconfig:
2188         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
2189
2190 2016-12-06  Daniel Bates  <dabates@apple.com>
2191
2192         WebKitTestRunner: Plugins are disabled in new windows
2193         https://bugs.webkit.org/show_bug.cgi?id=165410
2194
2195         Reviewed by Alex Christensen.
2196
2197         Currently WebKitTestRunner only enables plugins in the main window. So, a test that opens
2198         a new window and loads a plugin will fail. We should enable plugins in all windows by
2199         default. Moreover toggling testRunner.setPluginsEnabled() should effect all windows.
2200
2201         Making these changes is a step towards running plugins/open-and-close-window-with-plugin.html
2202         in WebKitTestRunner (we still need to fix <https://bugs.webkit.org/show_bug.cgi?id=46714>) and
2203         will make the behavior of WebKitTestRunner more closely match the behavior DumpRenderTree.
2204
2205         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2206         (WTR::InjectedBundle::beginTesting): Call TestRunner::setPluginsEnabled() instead of
2207         WKBundleSetPluginsEnabled().
2208         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2209         (WTR::TestRunner::setPluginsEnabled): Take a similar approach as TestRunner::setXSSAuditorEnabled()
2210         and make use of WKBundleOverrideBoolPreferenceForTestRunner().
2211
2212 2016-12-05  Dean Jackson  <dino@apple.com>
2213
2214         pointer lock needs to be feature detectable
2215         https://bugs.webkit.org/show_bug.cgi?id=165426
2216         <rdar://problem/29486715>
2217
2218         Reviewed by Antoine Quint.
2219
2220         Expose the comment line to turn on/off pointer lock.
2221
2222         * DumpRenderTree/TestOptions.h:
2223         * DumpRenderTree/TestOptions.mm:
2224         (TestOptions::TestOptions):
2225         * DumpRenderTree/mac/DumpRenderTree.mm:
2226         (resetWebPreferencesToConsistentValues):
2227         * WebKitTestRunner/TestController.cpp:
2228         (WTR::TestController::resetPreferencesToConsistentValues):
2229         (WTR::updateTestOptionsFromTestHeader):
2230         * WebKitTestRunner/TestOptions.h:
2231         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2232         (WTR::PlatformWebView::viewSupportsOptions):
2233         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2234         (WTR::PlatformWebView::viewSupportsOptions):
2235
2236 2016-12-05  Jonathan Bedard  <jbedard@apple.com>
2237
2238         Make it possible to use an existing simulator instance for one-off testing
2239         https://bugs.webkit.org/show_bug.cgi?id=164568
2240         <rdar://problem/29189133>
2241
2242         Reviewed by Daniel Bates.
2243
2244         With this patch, if a simulator is currently running on the machine and
2245         '--dedicated-simulators' is not passed into the application, only one simulator
2246         instance will be used, and this instance will be the existing instance.
2247         If no simulator is running or '--dedicated-simulators' is passed to the script,
2248         previous behavior will be used.
2249
2250         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2251         (parse_args):
2252         * Scripts/webkitpy/port/ios.py:
2253         (IOSSimulatorPort.__init__): Logic for enabling usage of currently running simulator.
2254         (IOSSimulatorPort._create_simulators): Only create simulators when needed, don't reset already running simulators.
2255         (IOSSimulatorPort.setup_test_run): Don't open already running simulators.
2256         (IOSSimulatorPort._quit_ios_simulator): Only quit simulators if we manage them.
2257         (IOSSimulatorPort.clean_up_test_run): Only clean up simulators if we manage them. 
2258         (IOSSimulatorPort._using_dedicated_simulators): True if simulators need to be managed, false if using an existing instance.
2259         (IOSSimulatorPort.device_id_for_worker_number): Access currently running simulator if not managing devices.
2260         * Scripts/webkitpy/xcode/simulator.py:
2261         (Simulator.refresh): Check if xcode_simctl_list returned None instead of a generator.
2262         (Simulator.current_device): Get currently running device.
2263
2264 2016-12-05  Dan Bernstein  <mitz@apple.com>
2265
2266         Disable a crashing test on iOS.
2267
2268         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
2269
2270 2016-12-04  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
2271
2272         Fix a build break on EFL since r209303.
2273
2274         Unreviewed build fix.
2275
2276         * Scripts/webkitperl/FeatureList.pm: Disable SS Device Adaptation temporarily.
2277
2278 2016-12-03  Yusuke Suzuki  <utatane.tea@gmail.com>
2279
2280         Refactor SymbolImpl layout
2281         https://bugs.webkit.org/show_bug.cgi?id=165247
2282
2283         Reviewed by Darin Adler.
2284
2285         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
2286         (TestWebKitAPI::TEST):
2287
2288 2016-12-03  Dan Bernstein  <mitz@apple.com>
2289
2290         Fixed the build after r209307.
2291
2292         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
2293         (TEST):
2294
2295 2016-12-03  Dan Bernstein  <mitz@apple.com>
2296
2297         [Cocoa] Expose InjectedBundlePageEditorClient via the Objective-C bundle SPI
2298         https://bugs.webkit.org/show_bug.cgi?id=165276
2299         <rdar://problem/29467040>
2300
2301         Reviewed by Darin Adler.
2302
2303         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2304         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm: Added.
2305         (-[BundleEditingDelegateRemoteObject willWriteToPasteboard:]):
2306         (-[BundleEditingDelegateRemoteObject didWriteToPasteboard]):
2307         (TEST):
2308         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm: Added.
2309         (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2310         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:willWriteRangeToPasteboard:]):
2311         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:pasteboardDataForRange:]):
2312         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextControllerDidWriteToPasteboard:]):
2313         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegateProtocol.h: Added.
2314
2315 2016-12-02  Andy Estes  <aestes@apple.com>
2316
2317         [Cocoa] Adopt the PRODUCT_BUNDLE_IDENTIFIER build setting
2318         https://bugs.webkit.org/show_bug.cgi?id=164492
2319
2320         Reviewed by Dan Bernstein.
2321
2322         * DumpRenderTree/TestNetscapePlugIn/mac/Info.plist: Changed CFBundleIdentifier's value from
2323         com.apple.testnetscapeplugin to ${PRODUCT_BUNDLE_IDENTIFIER}.
2324         * DumpRenderTree/ios/Info.plist: Changed CFBundleIdentifier's value from
2325         org.webkit.DumpRenderTree to ${PRODUCT_BUNDLE_IDENTIFIER}.
2326         * DumpRenderTree/mac/Configurations/DumpRenderTreeApp.xcconfig: Set
2327         PRODUCT_BUNDLE_IDENTIFIER to org.webkit.DumpRenderTree.
2328         * DumpRenderTree/mac/Configurations/TestNetscapePlugIn.xcconfig: Set
2329         PRODUCT_BUNDLE_IDENTIFIER to com.apple.testnetscapeplugin.
2330         * MiniBrowser/Configurations/MiniBrowser.xcconfig: Set PRODUCT_BUNDLE_IDENTIFIER to
2331         org.webkit.$(PRODUCT_NAME:rfc1034identifier).
2332         * MiniBrowser/Configurations/MiniBrowserBundle.xcconfig: Set PRODUCT_BUNDLE_IDENTIFIER to
2333         com.apple.$(PRODUCT_NAME:rfc1034identifier).
2334         * MiniBrowser/mac/Bundle/Info.plist: Changed CFBundleIdentifier's value from
2335         com.apple.${PRODUCT_NAME:rfc1034identifier} to ${PRODUCT_BUNDLE_IDENTIFIER}.
2336         * MiniBrowser/mac/Info.plist: Changed CFBundleIdentifier's value from
2337         org.webkit.${PRODUCT_NAME} to ${PRODUCT_BUNDLE_IDENTIFIER}.
2338         * TestWebKitAPI/Configurations/InjectedBundle.xcconfig: Set INFOPLIST_FILE to
2339         InjectedBundle-Info.plist and set PRODUCT_BUNDLE_IDENTIFIER to
2340         com.apple.$(PRODUCT_NAME:rfc1034identifier).
2341         * TestWebKitAPI/Configurations/WebProcessPlugIn.xcconfig: Set PRODUCT_BUNDLE_IDENTIFIER to
2342         com.apple.$(PRODUCT_NAME:rfc1034identifier).
2343         * TestWebKitAPI/InjectedBundle-Info.plist: Changed CFBundleIdentifier's value from
2344         com.yourcompany.${PRODUCT_NAME:rfc1034identifier} to ${PRODUCT_BUNDLE_IDENTIFIER}.
2345         * TestWebKitAPI/cocoa/WebProcessPlugIn/Info.plist: Added a CFBundleIdentifier key with the
2346         value ${PRODUCT_BUNDLE_IDENTIFIER}.
2347         * WebKitTestRunner/Configurations/InjectedBundle.xcconfig: Set INFOPLIST_FILE to
2348         InjectedBundle-Info.plist and set PRODUCT_BUNDLE_IDENTIFIER to
2349         com.apple.WebKitTestRunner.InjectedBundle.
2350         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig: Set
2351         PRODUCT_BUNDLE_IDENTIFIER to org.webkit.$(PRODUCT_NAME:rfc1034identifier).
2352         * WebKitTestRunner/InjectedBundle-Info.plist: Changed CFBundleIdentifier's value from
2353         com.apple.WebKitTestRunner.InjectedBundle to ${PRODUCT_BUNDLE_IDENTIFIER}.
2354         * WebKitTestRunner/WebKitTestRunnerApp/WebKitTestRunnerApp-Info.plist: Changed
2355         CFBundleIdentifier's value from org.webkit.${PRODUCT_NAME:rfc1034identifier} to
2356         ${PRODUCT_BUNDLE_IDENTIFIER}.
2357
2358 2016-12-02  Brady Eidson  <beidson@apple.com>
2359
2360         Make IndexedDB.WebProcessKillIDBCleanup even more reliable.
2361         https://bugs.webkit.org/show_bug.cgi?id=165330
2362
2363         Reviewed by Alex Christensen.
2364
2365         The test currently nulls out a RetainPtr<WKWebView> to try to destroy the view and kill the process.
2366
2367         Problem is that doesn't reliably destroy the view.
2368         We should explicitly kill the process instead.
2369
2370         Also, by relocating when we kill the process, we can better test behavior of the IndexedDB mechanism.
2371         e.g. We explicitly confirm that a second WebProcess can simultaneously attach to the same unique database as the first.
2372
2373         * TestWebKitAPI/Tests/WebKit2Cocoa/WebProcessKillIDBCleanup.mm:
2374         (TEST):
2375
2376 2016-12-02  Commit Queue  <commit-queue@webkit.org>
2377
2378         Unreviewed, rolling out r209136.
2379         https://bugs.webkit.org/show_bug.cgi?id=165337
2380
2381         broke 36 webkitpy tests (Requested by mcatanzaro on #webkit).
2382
2383         Reverted changeset:
2384
2385         "Make it possible to use an existing simulator instance for
2386         one-off testing"
2387         https://bugs.webkit.org/show_bug.cgi?id=164568
2388         http://trac.webkit.org/changeset/209136
2389
2390 2016-12-02  Chris Dumez  <cdumez@apple.com>
2391
2392         [Mac][WK1] Implement new HTML interactive form validation user interface
2393         https://bugs.webkit.org/show_bug.cgi?id=164483
2394
2395         Reviewed by Simon Fraser.
2396
2397         Add support for UIScriptController's contentsOfUserInterfaceItem("validationBubble")
2398         on Mac DRT as this is needed by the HTML form validation layout tests.
2399
2400         * DumpRenderTree/mac/UIScriptControllerMac.mm:
2401         (WTR::UIScriptController::contentsOfUserInterfaceItem):
2402
2403 2016-12-02  Brady Eidson  <beidson@apple.com>
2404
2405         IndexedDB.IndexedDBMultiProcess and IndexedDB.WebProcessKillIDBCleanup sometimes timeout.
2406         https://bugs.webkit.org/show_bug.cgi?id=160780 and https://bugs.webkit.org/show_bug.cgi?id=161001
2407
2408         Reviewed by Alexey Proskuryakov.
2409
2410         These tests had "run-loop races."
2411         
2412         The test spins the runloop waiting for one message.
2413         Two messages might come in from the WebProcess in short succession, and both be delivered to the
2414         UIProcess in the same spin of the runloop.
2415
2416         Therefore by the time the test stops spinning the runloop, notified that a message was received,
2417         the first message has been overwritten by the second.
2418
2419         These tests are fixed by queueing the incoming messages instead of just storing one.
2420
2421         * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBMultiProcess.mm:
2422         (-[IndexedDBMPMessageHandler userContentController:didReceiveScriptMessage:]):
2423         (getNextMessage):
2424         (TEST):
2425
2426         * TestWebKitAPI/Tests/WebKit2Cocoa/WebProcessKillIDBCleanup.mm:
2427         (-[IndexedDBWebProcessKillMessageHandler userContentController:didReceiveScriptMessage:]):
2428         (getNextMessage):
2429         (TEST):
2430
2431 2016-12-01  Jiewen Tan  <jiewen_tan@apple.com>
2432
2433         Add a runtime flag for SubtleCrypto
2434         https://bugs.webkit.org/show_bug.cgi?id=164982
2435
2436         Reviewed by Brent Fulgham.
2437
2438         * DumpRenderTree/mac/DumpRenderTree.mm:
2439         (resetWebPreferencesToConsistentValues):
2440         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2441         (WTR::InjectedBundle::beginTesting):
2442         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2443         (WTR::TestRunner::setSubtleCryptoEnabled):
2444         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2445
2446 2016-12-01  Alexey Proskuryakov  <ap@apple.com>
2447
2448         Remove webkitpy dependency on Eliza
2449         https://bugs.webkit.org/show_bug.cgi?id=164979
2450
2451         Reviewed by Daniel Bates.
2452
2453         This module is not on pypi, so installing it is a challenge. The jokes feel pretty old too!
2454
2455         * Scripts/webkitpy/thirdparty/__init__.py:
2456         * Scripts/webkitpy/thirdparty/__init___unittest.py: Changed mock import hook to
2457         test buildbot instead of eliza.
2458         * Scripts/webkitpy/tool/bot/ircbot.py:
2459         * Scripts/webkitpy/tool/bot/ircbot_unittest.py:
2460
2461 2016-12-01  Beth Dakin  <bdakin@apple.com>
2462
2463         Force clicking tests fail on some machines
2464         https://bugs.webkit.org/show_bug.cgi?id=165263
2465
2466         Reviewed by Tim Horton.
2467
2468         Initialize com.apple.trackpad.forceClick to 1 so that we don’t have to depend on 
2469         the user account having this feature enabled. 
2470         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
2471         (WTR::InjectedBundle::platformInitialize):
2472         * WebKitTestRunner/mac/main.mm:
2473         (setDefaultsToConsistentValuesForTesting):
2474
2475 2016-12-01  Yusuke Suzuki  <utatane.tea@gmail.com>
2476
2477         Introduce StringImpl::StaticStringImpl with constexpr constructor
2478         https://bugs.webkit.org/show_bug.cgi?id=165093
2479
2480         Reviewed by Darin Adler.
2481
2482         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
2483         (TestWebKitAPI::TEST):
2484
2485 2016-11-30  Antoine Quint  <graouts@apple.com>
2486
2487         [Modern Media Controls] Add an HTML comment flag to turn the feature on
2488         https://bugs.webkit.org/show_bug.cgi?id=165226
2489
2490         Reviewed by Dean Jackson.
2491
2492         Add a new flag to turn Modern Media Controls on in the test runners.
2493
2494         * DumpRenderTree/TestOptions.h:
2495         * DumpRenderTree/TestOptions.mm:
2496         (TestOptions::TestOptions):
2497         * DumpRenderTree/mac/DumpRenderTree.mm:
2498         (resetWebPreferencesToConsistentValues):
2499         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2500         (WTR::InjectedBundle::beginTesting):
2501         * WebKitTestRunner/TestController.cpp:
2502         (WTR::TestController::resetPreferencesToConsistentValues):
2503         (WTR::updateTestOptionsFromTestHeader):
2504         * WebKitTestRunner/TestOptions.h:
2505         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2506         (WTR::PlatformWebView::viewSupportsOptions):
2507         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2508         (WTR::PlatformWebView::viewSupportsOptions):
2509
2510 2016-11-30  Said Abou-Hallawa  <sabouhallawa@apple.com>
2511
2512         Add separate settings and preferences to enable/disable async decoding for large images and animated images
2513         https://bugs.webkit.org/show_bug.cgi?id=165177
2514
2515         Reviewed by Simon Fraser.
2516         
2517         Pref and a menu item to toggle async image decoding settings for WebKits 1 and 2.
2518
2519         * MiniBrowser/mac/SettingsController.h:
2520         * MiniBrowser/mac/SettingsController.m:
2521         (-[SettingsController _populateMenu]):
2522         (-[SettingsController validateMenuItem:]):
2523         (-[SettingsController toggleLargeImageAsyncDecodingEnabled:]):
2524         (-[SettingsController largeImageAsyncDecodingEnabled]):
2525         (-[SettingsController toggleAnimatedImageAsyncDecodingEnabled:]):
2526         (-[SettingsController animatedImageAsyncDecodingEnabled]):
2527         (-[SettingsController toggleAsyncImageDecodingEnabled:]): Deleted.
2528         (-[SettingsController asyncImageDecodingEnabled]): Deleted.
2529         * MiniBrowser/mac/WK1BrowserWindowController.m:
2530         (-[WK1BrowserWindowController didChangeSettings]):
2531         * MiniBrowser/mac/WK2BrowserWindowController.m:
2532         (-[WK2BrowserWindowController didChangeSettings]):
2533
2534 2016-11-30  Jonathan Bedard  <jbedard@apple.com>
2535
2536         Make it possible to use an existing simulator instance for one-off testing
2537         https://bugs.webkit.org/show_bug.cgi?id=164568
2538         <rdar://problem/29189133>
2539
2540         Reviewed by Daniel Bates.
2541
2542         With this patch, if a simulator is currently running on the machine and
2543         '--dedicated-simulators' is not passed into the application, only one simulator
2544         instance will be used, and this instance will be the existing instance.
2545         If no simulator is running or '--dedicated-simulators' is passed to the script,
2546         previous behavior will be used.
2547
2548         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2549         (parse_args):
2550         * Scripts/webkitpy/port/ios.py:
2551         (IOSSimulatorPort.__init__): Logic for enabling usage of currently running simulator.
2552         (IOSSimulatorPort._create_simulators): Only create simulators when needed, don't reset already running simulators.
2553         (IOSSimulatorPort.setup_test_run): Don't open already running simulators.
2554         (IOSSimulatorPort._quit_ios_simulator): Only quit simulators if we manage them.
2555         (IOSSimulatorPort.clean_up_test_run): Only clean up simulators if we manage them. 
2556         (IOSSimulatorPort._using_dedicated_simulators): True if simulators need to be managed, false if using an existing instance.
2557         (IOSSimulatorPort.device_id_for_worker_number): Access currently running simulator if not managing devices.
2558         * Scripts/webkitpy/xcode/simulator.py:
2559         (Simulator.current_device): Get currently running device.
2560
2561 2016-11-29  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2562
2563         [Linux] run-benchmark should be able to execute the benchmarks with more browsers.
2564         https://bugs.webkit.org/show_bug.cgi?id=164792
2565
2566         Reviewed by Michael Catanzaro.
2567
2568         This removes the GTKBrowserDriver (and the platform 'gtk') from the run-benchmark script,
2569         and adds a new LinuxBrowserDriver with a platform 'linux'.
2570
2571         It add also drivers for Chrome (Chromium), Firefox, Epiphany and MiniBrowser-GTK (previously MiniBrowser).
2572
2573         The detection of the platform is now done automatically, so it is not longer needed to pass a "--platform" parameter.
2574
2575         The tracking of the browser process is now more robust, we track the pid of the browser process and we only try to
2576         kill the ones that were executed by this script, instead of doing a 'killall $browser' (like before).
2577         We also check for browser process childs and we kill them if they are still alive after the main browser process has been killed.
2578         This depends on psutil, so this will only be done if psutil is installed.
2579
2580         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2581         (RunBenchmarkTests.start): The platform is now autodetected and the MiniBrowser driver is renamed to MiniBrowser-GTK.
2582         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
2583         (BenchmarkRunner._run_benchmark): Fix a bug that caused close_browsers to be called twice. Its already called inside BenchmarkRunner._run_one_test.
2584         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_browser_driver.py: Added.
2585         (LinuxBrowserDriver): Implement base class that has all the needed functionality for driving the browsers.
2586         (LinuxBrowserDriver.__init__):
2587         (LinuxBrowserDriver.prepare_env):
2588         (LinuxBrowserDriver.restore_env):
2589         (LinuxBrowserDriver.close_browsers): Made the dependency on psutil optional (because it was listed as such on the README file <Tools/Scripts/webkitpy/benchmark_runner/README.md>)
2590         (LinuxBrowserDriver.launch_url):
2591         (LinuxBrowserDriver._get_first_executable_path_from_list):
2592         (LinuxBrowserDriver._screen_size):
2593         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_chrome_driver.py: Copied from Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_minibrowser_driver.py.
2594         (LinuxChromeDriver):
2595         (LinuxChromeDriver.launch_url):
2596         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_epiphany_driver.py: Renamed from Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_browser_driver.py.
2597         (EpiphanyBrowserDriver):
2598         (EpiphanyBrowserDriver.launch_url):
2599         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_firefox_driver.py: Copied from Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_minibrowser_driver.py.
2600         (LinuxFirefoxDriver):
2601         (LinuxFirefoxDriver.launch_url):
2602         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_minibrowsergtk_driver.py: Renamed from Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_minibrowser_driver.py.
2603         (GTKMiniBrowserDriver):
2604         (GTKMiniBrowserDriver.launch_url):
2605         * Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py:
2606         (SimpleHTTPServerDriver):
2607         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
2608         (getplatform):
2609         (getdefaultbrowser):
2610         (parse_args):
2611         * Scripts/webkitpy/benchmark_runner/utils.py:
2612         (load_subclasses): The loading of subclasses was still (even after r196979) sensitive to the order in which the modules are loaded.
2613         We have to ensure that the files containing subclasses of the base_class_file are loaded after the base_class_file,
2614         we can do that by matching against the base_class_file pattern when the list is created.
2615
2616 2016-11-29  Andy Estes  <aestes@apple.com>
2617
2618         [Cocoa] Enable two clang warnings recommended by Xcode
2619         https://bugs.webkit.org/show_bug.cgi?id=164498
2620
2621         Reviewed by Mark Lam.
2622
2623         * DumpRenderTree/mac/Configurations/Base.xcconfig: Enabled CLANG_WARN_INFINITE_RECURSION and CLANG_WARN_SUSPICIOUS_MOVE.
2624         * MiniBrowser/Configurations/Base.xcconfig: Ditto.
2625         * TestWebKitAPI/Configurations/Base.xcconfig: Ditto.
2626         * WebKitTestRunner/Configurations/Base.xcconfig: Ditto.
2627
2628 2016-11-29  Eric Carlson  <eric.carlson@apple.com>
2629
2630         [MediaStream] Don't request user permission for a device if it has already been granted in the current browsing context
2631         https://bugs.webkit.org/show_bug.cgi?id=164760
2632         <rdar://problem/29261266>
2633
2634         Reviewed by Youenn Fablet.
2635         
2636         Allow scripts to determine the number of times the user has been prompted for capture device access.
2637
2638         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2639         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2640         (WTR::InjectedBundle::setUserMediaPersistentPermissionForOrigin):
2641         (WTR::InjectedBundle::userMediaPermissionRequestCountForOrigin):
2642         (WTR::InjectedBundle::resetUserMediaPermissionRequestCountForOrigin):
2643         (WTR::InjectedBundle::setUserMediaPermissionForOrigin): Deleted.
2644         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
2645         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2646         (WTR::TestRunner::setUserMediaPersistentPermissionForOrigin):
2647         (WTR::TestRunner::userMediaPermissionRequestCountForOrigin):
2648         (WTR::TestRunner::resetUserMediaPermissionRequestCountForOrigin):
2649         (WTR::TestRunner::setUserMediaPermissionForOrigin): Deleted.
2650         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2651         * WebKitTestRunner/TestController.cpp:
2652         (WTR::TestController::resetStateToConsistentValues):
2653         (WTR::OriginSettings::incrementRequestCount):
2654         (WTR::OriginSettings::resetRequestCount):
2655         (WTR::OriginSettings::requestCount):
2656         (WTR::TestController::saltForOrigin):
2657         (WTR::TestController::setUserMediaPersistentPermissionForOrigin):
2658         (WTR::TestController::handleCheckOfUserMediaPermissionForOrigin):
2659         (WTR::TestController::settingsForOrigin):
2660         (WTR::TestController::userMediaPermissionRequestCountForOrigin):
2661         (WTR::TestController::resetUserMediaPermissionRequestCountForOrigin):
2662         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible):
2663         (WTR::TestController::setUserMediaPermissionForOrigin): Deleted.
2664         * WebKitTestRunner/TestController.h:
2665         * WebKitTestRunner/TestInvocation.cpp:
2666         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2667         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2668
2669 2016-11-29  Simon Fraser  <simon.fraser@apple.com>
2670
2671         intersection-observer-entry-interface.html test fails on the bots
2672         https://bugs.webkit.org/show_bug.cgi?id=165133
2673
2674         Reviewed by Darin Adler.
2675         
2676         Tests that enabled Intersection Observer via <!-- webkit-test-runner [ enableIntersectionObserver=true ] -->
2677         would fail sometimes, because TestController::ensureViewSupportsOptionsForTest() failed to check
2678         to see if this option required creating a new web view, so would just use the old view without
2679         even resetting preferences.
2680         
2681         In general, TestController doesn't distinguish properly between options that require the creation
2682         of a new view (like mock scrollbars), and those that can be simply reset as resetPreferencesToConsistentValues()
2683         does.
2684         
2685         Do the easy fix of having viewSupportsOptions() check options.enableIntersectionObserver. We should probably
2686         just call resetPreferencesToConsistentValues() even when re-use the same view.
2687         
2688         * WebKitTestRunner/TestController.cpp:
2689         (WTR::TestController::resetPreferencesToConsistentValues):
2690         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2691         (WTR::PlatformWebView::viewSupportsOptions):
2692         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2693         (WTR::PlatformWebView::viewSupportsOptions):
2694
2695 2016-11-28  Ryan Haddad  <ryanhaddad@apple.com>
2696
2697         Unreviewed, rolling out r209008.
2698
2699         This change appears to have caused two fast/mediastrem
2700         LayoutTests to fail.
2701
2702         Reverted changeset:
2703
2704         "[MediaStream] Don't request user permission for a device if
2705         it has already been granted in the current browsing context"
2706         https://bugs.webkit.org/show_bug.cgi?id=164760
2707         http://trac.webkit.org/changeset/209008
2708
2709 2016-11-28  Daniel Bates  <dabates@apple.com>
2710
2711         Teach webkitpy how to read CSSProperties.json r209001
2712         https://bugs.webkit.org/show_bug.cgi?id=165108
2713
2714         Reviewed by Simon Fraser.
2715
2716         Fix webkitpy logic so that it can read CSS property names from CSSProperties.json following r209001.
2717
2718         Following r209001 CSSPropertyNames.in no longer exists as it was replaced with CSSProperties.json.
2719         We need to modify the webkitpy machinery that processed CSSPropertyNames.in to process CSSProperties.json.
2720
2721         * Scripts/webkitpy/w3c/test_converter.py:
2722         (_W3CTestConverter.__init__): Make self._css_property_file and self._css_property_value_file local
2723         variables as it is unnecessary for them to be instance variables. Call read_webkit_prefixed_css_property_list()
2724         to read the property names from file CSSProperties.json. Call legacy_read_webkit_prefixed_css_property_list() to
2725         read CSS keyword values from CSSValueKeywords.in.
2726         (_W3CTestConverter.read_webkit_prefixed_css_property_list): Added.
2727         (_W3CTestConverter):
2728         (_W3CTestConverter.legacy_read_webkit_prefixed_css_property_list): Renamed from read_webkit_prefixed_css_property_list.
2729         * Scripts/webkitpy/w3c/test_importer_unittest.py:
2730         (TestImporterTest.test_harnesslinks_conversion): Substitute CSSProperties.json for CSSPropertyNames.in.
2731
2732 2016-11-28  Eric Carlson  <eric.carlson@apple.com>
2733
2734         [MediaStream] Don't request user permission for a device if it has already been granted in the current browsing context
2735         https://bugs.webkit.org/show_bug.cgi?id=164760
2736         <rdar://problem/29261266>
2737
2738         Reviewed by Youenn Fablet.
2739         
2740         Allow scripts to determine the number of times the user has been prompted for capture device access.
2741
2742         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2743         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2744         (WTR::InjectedBundle::setUserMediaPersistentPermissionForOrigin):
2745         (WTR::InjectedBundle::userMediaPermissionRequestCountForOrigin):
2746         (WTR::InjectedBundle::resetUserMediaPermissionRequestCountForOrigin):
2747         (WTR::InjectedBundle::setUserMediaPermissionForOrigin): Deleted.
2748         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
2749         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2750         (WTR::TestRunner::setUserMediaPersistentPermissionForOrigin):
2751         (WTR::TestRunner::userMediaPermissionRequestCountForOrigin):
2752         (WTR::TestRunner::resetUserMediaPermissionRequestCountForOrigin):
2753         (WTR::TestRunner::setUserMediaPermissionForOrigin): Deleted.
2754         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2755         * WebKitTestRunner/TestController.cpp:
2756         (WTR::TestController::resetStateToConsistentValues):
2757         (WTR::OriginSettings::incrementRequestCount):
2758         (WTR::OriginSettings::resetRequestCount):
2759         (WTR::OriginSettings::requestCount):
2760         (WTR::TestController::saltForOrigin):
2761         (WTR::TestController::setUserMediaPersistentPermissionForOrigin):
2762         (WTR::TestController::handleCheckOfUserMediaPermissionForOrigin):
2763         (WTR::TestController::settingsForOrigin):
2764         (WTR::TestController::userMediaPermissionRequestCountForOrigin):
2765         (WTR::TestController::resetUserMediaPermissionRequestCountForOrigin):
2766         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible):
2767         (WTR::TestController::setUserMediaPermissionForOrigin): Deleted.
2768         * WebKitTestRunner/TestController.h:
2769         * WebKitTestRunner/TestInvocation.cpp:
2770         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2771         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2772
2773 2016-11-18  Jer Noble  <jer.noble@apple.com>
2774
2775         Add some performance tests for various aspects of media loading and playback.
2776         https://bugs.webkit.org/show_bug.cgi?id=164977
2777
2778         Reviewed by Darin Adler.
2779
2780         Allow callers to pass in extra alias/directory pairs to run-webkit-httpd.
2781
2782         * Scripts/run-webkit-httpd:
2783         (parse_args):
2784         (main):
2785
2786 2016-11-27  Simon Fraser  <simon.fraser@apple.com>
2787
2788         Another fix for CMake.
2789
2790         * DumpRenderTree/TestOptions.h:
2791         * DumpRenderTree/TestOptions.mm:
2792
2793 2016-11-26  Simon Fraser  <simon.fraser@apple.com>
2794
2795         Better fix for the Mac CMake build.
2796
2797         * DumpRenderTree/PlatformMac.cmake:
2798
2799 2016-11-26  Simon Fraser  <simon.fraser@apple.com>
2800
2801         Attempt to fix Mac CMake build.
2802
2803         * DumpRenderTree/PlatformMac.cmake:
2804
2805 2016-11-26  Yusuke Suzuki  <utatane.tea@gmail.com>
2806
2807         [WTF] Import std::optional reference implementation as WTF::Optional
2808         https://bugs.webkit.org/show_bug.cgi?id=164199
2809
2810         Reviewed by Saam Barati and Sam Weinig.
2811
2812         Use WTF::Optional::value_or.
2813
2814         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2815         (WTR::UIScriptController::stableStateOverride):
2816         (WTR::UIScriptController::setStableStateOverride):
2817         * TestRunnerShared/Bindings/JSWrappable.h:
2818         (WTR::JSValueMakeBooleanOrNull):
2819         (WTR::JSValueToNullableBoolean):
2820         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2821         (WTR::UIScriptController::stableStateOverride):
2822         (WTR::UIScriptController::setStableStateOverride):
2823         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2824         * TestWebKitAPI/Tests/WTF/Optional.cpp:
2825         (TestWebKitAPI::TEST):
2826         * TestWebKitAPI/Tests/WebCore/HTMLParserIdioms.cpp:
2827         (TestWebKitAPI::testParseHTMLInteger):
2828         (TestWebKitAPI::testParseHTMLNonNegativeInteger):
2829         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
2830         (TestWebKitAPI::checkURL):
2831         (TestWebKitAPI::checkRelativeURL):
2832         (TestWebKitAPI::checkURLDifferences):
2833         (TestWebKitAPI::checkRelativeURLDifferences):
2834         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2835         (WTR::UIScriptController::stableStateOverride):
2836         (WTR::UIScriptController::setStableStateOverride):
2837
2838 2016-11-26  Sam Weinig  <sam@webkit.org>
2839
2840         Convert IntersectionObserver over to using RuntimeEnabledFeatures so it can be properly excluded from script
2841         https://bugs.webkit.org/show_bug.cgi?id=164965
2842
2843         Reviewed by Simon Fraser.
2844
2845         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2846         Add new files.
2847
2848         * DumpRenderTree/TestOptions.h: Added.
2849         * DumpRenderTree/TestOptions.mm: Added.
2850         (parseBooleanTestHeaderValue):
2851         (TestOptions::TestOptions):
2852         Port TestOption parsing from WKTR to DRT.
2853
2854         * DumpRenderTree/mac/DumpRenderTree.mm:
2855         (resetWebPreferencesToConsistentValues):
2856         (resetWebViewToConsistentStateBeforeTesting):
2857         (runTest):
2858         * WebKitTestRunner/TestController.cpp:
2859         Pass TestOptions down to resetWebPreferencesToConsistentValues to allow setting
2860         preferences conditionally.
2861
2862         (WTR::TestController::resetPreferencesToConsistentValues):
2863         (WTR::updateTestOptionsFromTestHeader):
2864         * WebKitTestRunner/TestOptions.h:
2865         Add a new test option header, enableIntersectionObserver, to enable IntersectionObserver.
2866
2867 2016-11-26  Simon Fraser  <simon.fraser@apple.com>
2868
2869         Migrate some layout timer-related code from std::chrono to Seconds and MonotonicTime
2870         https://bugs.webkit.org/show_bug.cgi?id=164992
2871
2872         Reviewed by Darin Adler.
2873         
2874         Use Seconds::zero().
2875
2876         * TestWebKitAPI/Tests/WTF/Condition.cpp:
2877
2878 2016-11-26  Simon Fraser  <simon.fraser@apple.com>
2879
2880         Add literals for various time units
2881         https://bugs.webkit.org/show_bug.cgi?id=165074
2882
2883         Reviewed by Filip Pizlo.
2884         
2885         Add tests for new time literals. Add new tests for units.
2886
2887         * TestWebKitAPI/Tests/WTF/Time.cpp:
2888         (TestWebKitAPI::TEST):
2889
2890 2016-11-25  Csaba Osztrogonác  <ossy@webkit.org>
2891
2892         Fix compile warnings after r208415
2893         https://bugs.webkit.org/show_bug.cgi?id=165061
2894
2895         Reviewed by Andy Estes.
2896
2897         * TestWebKitAPI/Tests/WTF/Time.cpp:
2898         (TestWebKitAPI::TEST):
2899
2900 2016-11-24  Michael Catanzaro  <mcatanzaro@igalia.com>
2901
2902         [GTK] Notifications API does not expose or respect the "tag" attribute
2903         https://bugs.webkit.org/show_bug.cgi?id=164771
2904
2905         Reviewed by Gustavo Noronha Silva.
2906
2907         Verify that showing a notification with the same tag as another notification closes the
2908         previous notification before the new notification is shown.
2909
2910         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
2911         (testWebViewNotification):
2912
2913 2016-11-24  Carlos Garcia Campos  <cgarcia@igalia.com>
2914
2915         Unreviewed. Fix GTK+ test /webkit2/WebKitWebContext/get-plugins after r208429.
2916
2917         Test plugin library was renamed as libTestNetscapePlugIn.so in r208429.
2918
2919         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
2920         (testWebContextGetPlugins): Update the library name.
2921
2922 2016-11-22  Darin Adler  <darin@apple.com>
2923
2924         Make normal case fast in the input element limitString function
2925         https://bugs.webkit.org/show_bug.cgi?id=165023
2926
2927         Reviewed by Dan Bernstein.
2928
2929         * TestWebKitAPI/CMakeLists.txt: Added TextBreakIterator.cpp.
2930         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
2931         * TestWebKitAPI/Tests/WTF/TextBreakIterator.cpp: Added.
2932         Contains some tests for the numGraphemeClusters and
2933         numCharactersInGraphemeClusters functions that I used to make sure
2934         that the new fast paths I added work correctly.
2935
2936 2016-11-22  Tomas Popela  <tpopela@redhat.com>
2937
2938         Unreviewed, add myself as a WebKit committer.
2939
2940         * Scripts/webkitpy/common/config/contributors.json:
2941
2942 2016-11-21  Mark Lam  <mark.lam@apple.com>
2943
2944         Hasher::addCharacters() should be able to handle zero length strings.
2945         https://bugs.webkit.org/show_bug.cgi?id=165024
2946
2947         Reviewed by Yusuke Suzuki.
2948
2949         * TestWebKitAPI/Tests/WTF/StringHasher.cpp:
2950         (TestWebKitAPI::TEST):
2951
2952 2016-11-21  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2953
2954         [CMake] build fails after update to cmake 3.7
2955         https://bugs.webkit.org/show_bug.cgi?id=165008
2956
2957         Reviewed by Dan Bernstein.
2958
2959         When we remove the CMake cache, we should remove both the
2960         CMakeCache.txt file and the CMakeFiles directory.
2961         See: https://gitlab.kitware.com/cmake/cmake/issues/14820
2962
2963         * Scripts/webkitdirs.pm:
2964         (cmakeFilesPath):
2965         (removeCMakeCache):
2966
2967 2016-11-16  Philippe Normand  <pnormand@igalia.com>
2968
2969         [GTK][WebRTC] Switch to downstream OpenWebRTC and more recent GStreamer
2970         https://bugs.webkit.org/show_bug.cgi?id=164817
2971
2972         Reviewed by Alejandro G. Castro.
2973
2974         This is temporary, hopefully. The OpenWebRTC patches will/should
2975         be soon reviewed and upstream but meanwhile it makes sense to use
2976         the Igalia downstream fork so that the WebRTC testing is easier.
2977
2978         Recent GStreamer patches are also needed for RTP bundling support
2979         and RTP retransmission fixes.
2980
2981         * gtk/jhbuild.modules:
2982         * gtk/openwebrtc.modules: Removed.
2983         * gtk/patches/gst-plugins-good-0001-rtpbin-pipeline-gets-an-EOS-when-any-rtpsources-byes.patch: Added.
2984         * gtk/patches/gst-plugins-good-0002-rtpbin-avoid-generating-errors-when-rtcp-messages-ar.patch: Added.
2985         * gtk/patches/gst-plugins-good-0003-rtpbin-receive-bundle-support.patch: Added.
2986
2987 2016-11-20  Zan Dobersek  <zdobersek@igalia.com>
2988
2989         [EncryptedMedia] Make EME API runtime-enabled
2990         https://bugs.webkit.org/show_bug.cgi?id=164927
2991
2992         Reviewed by Jer Noble.
2993
2994         Enable the EME API via the WKTR InjectedBundle whenever testing
2995         commences. This does not have any effect unless the EME feature
2996         is enabled at compile-time, but it's still added to match other
2997         features and for future use.
2998
2999         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3000         (WTR::InjectedBundle::beginTesting):
3001         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3002         (WTR::TestRunner::setEncryptedMediaAPIEnabled):
3003         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3004
3005 2016-11-19  Simon Fraser  <simon.fraser@apple.com>
3006
3007         Fix the Mac and iOS bulds.
3008
3009         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3010         (-[TestRunnerWKWebView _stableStateOverride]):
3011         (-[TestRunnerWKWebView _setStableStateOverride:]):
3012
3013 2016-11-18  Simon Fraser  <simon.fraser@apple.com>
3014
3015         Make it possible to test non-stable-state scrolling on iOS
3016         https://bugs.webkit.org/show_bug.cgi?id=164905
3017
3018         Reviewed by Dan Bernstein.
3019
3020         Make it possible for an iOS layout test to force every visible rect update
3021         from the UI process to the web process to be in a non-stable state. This emulates
3022         what happens during panning and zooming interactions, and allows us to test the
3023         scrolling and layer trees in these transient states.
3024         
3025         This is done by adding a testing property on WKWebView, _stableStateOverride, whose
3026         getters and setters are overridden in TestRunnerWKWebView. When non-nil, we _updateVisibleContentRectAfterScrollInView
3027         consults the NSNumber's boolValue and uses it to override the stable state.
3028         
3029         To facilitate this kind of testing, also add immediateScrollToOffset() and
3030         immediateZoomToScale() to UIScriptController. Finally, add doAfterPresentationUpdate()
3031         which provides a callback that fires after one trip to the web process and back.
3032         
3033         Add code generation support for optional boolean attributes in IDL.
3034
3035         Align CodeGeneratorDumpRenderTree.pm and CodeGeneratorTestRunner.pm.
3036
3037         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
3038         (_generateImplementationFile):
3039         (_platformTypeConstructor):
3040         (_returnExpression):
3041         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3042         (WTR::UIScriptController::doAfterPresentationUpdate):
3043         (WTR::contentOffsetBoundedInValidRange):
3044         (WTR::UIScriptController::scrollToOffset):
3045         (WTR::UIScriptController::immediateScrollToOffset):
3046         (WTR::UIScriptController::immediateZoomToScale):
3047         (WTR::UIScriptController::stableStateOverride):
3048         (WTR::UIScriptController::setStableStateOverride):
3049         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3050         (WTR::UIScriptController::doAfterPresentationUpdate):
3051         * TestRunnerShared/Bindings/JSWrappable.h:
3052         (WTR::JSValueMakeBooleanOrNull):
3053         (WTR::JSValueToNullableBoolean):
3054         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3055         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3056         (WTR::UIScriptController::immediateScrollToOffset):
3057         (WTR::UIScriptController::immediateZoomToScale):
3058         (WTR::UIScriptController::stableStateOverride):
3059         (WTR::UIScriptController::setStableStateOverride):
3060         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3061         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
3062         (_classRefGetter):
3063         (_platformTypeConstructor):
3064         (_returnExpression):
3065         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3066         (-[TestRunnerWKWebView dealloc]):
3067         (-[TestRunnerWKWebView _stableStateOverride]):
3068         (-[TestRunnerWKWebView _setStableStateOverride:]):
3069         * WebKitTestRunner/ios/TestControllerIOS.mm:
3070         (WTR::TestController::platformResetStateToConsistentValues):
3071         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3072         (WTR::UIScriptController::doAsyncTask):
3073         (WTR::UIScriptController::doAfterPresentationUpdate):
3074         (WTR::UIScriptController::zoomToScale):
3075         (WTR::UIScriptController::immediateScrollToOffset):
3076         (WTR::UIScriptController::immediateZoomToScale):
3077         (WTR::UIScriptController::stableStateOverride):
3078         (WTR::UIScriptController::setStableStateOverride):
3079         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3080         (WTR::UIScriptController::doAfterPresentationUpdate):
3081
3082 2016-11-19  Joanmarie Diggs  <jdiggs@igalia.com>
3083
3084         AX: [ATK] Expose aria-busy via ATK_STATE_BUSY
3085         https://bugs.webkit.org/show_bug.cgi?id=164909
3086
3087         Reviewed by Chris Fleizach.
3088
3089         Implement boolAttributeValue() for ATK so we can test AXElementBusy.
3090
3091         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3092         (WTR::AccessibilityUIElement::boolAttributeValue):
3093
3094 2016-11-18  Simon Fraser  <simon.fraser@apple.com>
3095
3096         [iOS WK2] Eliminate a source of flakiness in layout tests by forcing WebPage into "responsive" mode for all tests, with an internals override
3097         https://bugs.webkit.org/show_bug.cgi?id=164980
3098
3099         Reviewed by Chris Dumez.
3100
3101         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
3102         (WTR::InjectedBundlePage::prepare):
3103
3104 2016-11-18  Dean Jackson  <dino@apple.com>
3105
3106         AX: "(inverted-colors)" media query only matches on page reload; should match on change
3107         https://bugs.webkit.org/show_bug.cgi?id=163564
3108         <rdar://problem/28807350>
3109
3110         Reviewed by Simon Fraser.
3111
3112         Add a UIScriptController method that tricks WebKit into thinking
3113         it has received a notification that accessibility settings have
3114         changed. Combined with our forced overrides, this allows us to
3115         test if a page would react to the notifications.
3116
3117         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3118         (WTR::UIScriptController::simulateAccessibilitySettingsChangeNotification):
3119         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3120         (WTR::UIScriptController::simulateAccessibilitySettingsChangeNotification):
3121         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3122         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3123         (WTR::simulateAccessibilitySettingsChangeNotification):
3124         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3125         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3126         (WTR::UIScriptController::simulateAccessibilitySettingsChangeNotification):
3127         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3128         (WTR::UIScriptController::simulateAccessibilitySettingsChangeNotification):
3129
3130 2016-11-18  Alex Christensen  <achristensen@webkit.org>
3131
3132         Fix API test after r208902
3133         https://bugs.webkit.org/show_bug.cgi?id=144194
3134
3135         * TestWebKitAPI/Tests/Cocoa/URLExtras.mm:
3136         (TestWebKitAPI::TEST):
3137         The fullwidth solidus, U+FF0F, changed encoding from IDN2003 to IDN2008, probably to prevent domains from using it
3138         to spoof other domains.  https://webkit.org/blog/ and https://webkit.org\uFF0Fblog/ would otherwise look 
3139         too similar when rendered.
3140
3141 2016-11-17  Alex Christensen  <achristensen@webkit.org>
3142
3143         Support IDN2008 with UTS #46 instead of IDN2003
3144         https://bugs.webkit.org/show_bug.cgi?id=144194
3145
3146         Reviewed by Darin Adler.
3147
3148         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3149         (TestWebKitAPI::TEST_F):
3150         Add some tests from http://unicode.org/faq/idn.html verifying that we follow UTS46's deviations from IDN2008.
3151         Add some tests based on https://tools.ietf.org/html/rfc5893 verifying that we check for bidirectional text.
3152         Add a test based on https://tools.ietf.org/html/rfc5892 verifying that we do not do ContextO check.
3153         Add a test for U+321D and U+321E which have particularly interesting punycode encodings.  We match Firefox here now.
3154         Also add a test from http://www.unicode.org/reports/tr46/#IDNAComparison verifying we are not using IDN2003.
3155         We should consider importing all of http://www.unicode.org/Public/idna/9.0.0/IdnaTest.txt as URL domain tests.
3156
3157 2016-11-17  Carlos Garcia Campos  <cgarcia@igalia.com>
3158
3159         Downloads started by context menu actions should also have a web view associated
3160         https://bugs.webkit.org/show_bug.cgi?id=164364
3161
3162         Reviewed by Michael Catanzaro.
3163
3164         Add a GTK+ unit tests to check that downloads started by the context menu have a web view associated.
3165
3166         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
3167         (downloadLocalFileSuccessfully):
3168         (testDownloadOverwriteDestinationDisallowed):
3169         (testDownloadLocalFileError):
3170         (testDownloadRemoteFile):
3171         (testDownloadRemoteFileError):
3172         (testDownloadMIMEType):
3173         (contextMenuCallback):
3174         (testContextMenuDownloadActions):
3175         (beforeAll):
3176
3177 2016-11-17  Ryosuke Niwa  <rniwa@webkit.org>
3178
3179         Add an experimental API to find elements across shadow boundaries
3180         https://bugs.webkit.org/show_bug.cgi?id=164851
3181         <rdar://problem/28220092>
3182
3183         Reviewed by Sam Weinig.
3184
3185         Added test cases for window.collectMatchingElementsInFlatTree to WebKit2.InjectedBundleMakeAllShadowRootOpen.
3186
3187         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3188         * TestWebKitAPI/Tests/WebKit2/InjectedBundleMakeAllShadowRoot*s*Open_Bundle.cpp: Renamed
3189         from InjectedBundleMakeAllShadowRootOpen_Bundle.cpp.
3190         (TestWebKitAPI::InjectedBundleMakeAllShadowRootOpenTest::initialize): Added test cases for
3191         window.collectMatchingElementsInFlatTree by calling alert() many times.
3192         * TestWebKitAPI/Tests/WebKit2/InjectedBundleMakeAllShadowRootsOpen.cpp:
3193         (TestWebKitAPI::runJavaScriptAlert): Added expectations for multiple test cases. Each test case
3194         finishes with a call to alert, and moves testNumber forward.
3195         (TestWebKitAPI::TEST): Use the newly added closed-shadow-tree-test.html
3196         * TestWebKitAPI/Tests/WebKit2/closed-shadow-tree-test.html: Added. Creates a shadow tree with slots
3197         and tests that window.collectMatchingElementsInFlatTree is not present when
3198         an event named "testnormalworld" is dispatched by the injected bundle.
3199
3200 2016-11-17  Brady Eidson  <beidson@apple.com>
3201
3202         Add _WKIconLoadingDelegate SPI.
3203         https://bugs.webkit.org/show_bug.cgi?id=164894
3204
3205         Reviewed by Alex Christensen.
3206
3207         Add MiniBrowser support for this new SPI, configurable with a setting.
3208
3209         * MiniBrowser/mac/SettingsController.h:
3210         * MiniBrowser/mac/SettingsController.m:
3211         (-[SettingsController _populateMenu]):
3212         (-[SettingsController validateMenuItem:]):
3213         (-[SettingsController loadsAllSiteIcons]):
3214         (-[SettingsController toggleLoadsAllSiteIcons:]):
3215         * MiniBrowser/mac/WK2BrowserWindowController.m:
3216         (-[WK2BrowserWindowController awakeFromNib]):
3217         (-[WK2BrowserWindowController webView:shouldLoadIconWithParameters:completionHandler:]):
3218
3219 2016-11-17  Caitlin Potter  <caitp@igalia.com>
3220
3221         [JSC] remove leftover references to ES2017_ASYNCFUNCTION_SYNTAX flag
3222         https://bugs.webkit.org/show_bug.cgi?id=164879
3223
3224         Reviewed by Alex Christensen.
3225
3226         The flag was referenced in FeatureList.pm and in one of the
3227         FeatureDefines.xcconfig files, despite being removed.
3228
3229         * Scripts/webkitperl/FeatureList.pm:
3230         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3231
3232 2016-11-17  Per Arne Vollan  <pvollan@apple.com>
3233
3234         [Win] run-api-tests is failing.
3235         https://bugs.webkit.org/show_bug.cgi?id=164818
3236
3237         Reviewed by Alexey Proskuryakov.
3238
3239         Make sure Visual Studio interprets string literal as utf8.
3240  
3241         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3242         (TestWebKitAPI::TEST_F):
3243
3244 2016-11-17  Yusuke Suzuki  <utatane.tea@gmail.com>
3245
3246         [JSC] WTF::TemporaryChange with WTF::SetForScope
3247         https://bugs.webkit.org/show_bug.cgi?id=164761
3248
3249         Reviewed by Saam Barati.
3250
3251         * TestWebKitAPI/CMakeLists.txt:
3252         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3253         * TestWebKitAPI/Tests/WTF/SetForScope.cpp: Renamed from Tools/TestWebKitAPI/Tests/WTF/TemporaryChange.cpp.
3254         (TestWebKitAPI::TEST):
3255         * WebKitTestRunner/TestController.cpp:
3256         (WTR::TestController::resetStateToConsistentValues):
3257
3258 2016-11-16  Alexey Proskuryakov  <ap@apple.com>
3259
3260         REGRESSION (r208455): LayoutTests swipe/pushState-cached-back-swipe.html and swipe/main-frame-pinning-requirement.html are failing
3261         https://bugs.webkit.org/show_bug.cgi?id=164572
3262
3263         Reviewed by Tim Horton.
3264
3265         * WebKitTestRunner/mac/TestControllerMac.mm: (WTR::TestController::platformResetStateToConsistentValues):
3266         Use the correct constant.
3267
3268 2016-11-16  Yusuke Suzuki  <utatane.tea@gmail.com>
3269
3270         [ES6][WebCore] Change ES6_MODULES compile time flag to runtime flag
3271         https://bugs.webkit.org/show_bug.cgi?id=164827
3272
3273         Reviewed by Ryosuke Niwa.
3274
3275         Enabled ES6 Modules in test runners.
3276
3277         * DumpRenderTree/mac/DumpRenderTree.mm:
3278         (resetWebPreferencesToConsistentValues):
3279         * DumpRenderTree/win/DumpRenderTree.cpp:
3280         (resetWebPreferencesToConsistentValues):
3281         * Scripts/webkitperl/FeatureList.pm:
3282         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3283         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3284         (WTR::InjectedBundle::beginTesting):
3285         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3286         (WTR::TestRunner::setES6ModulesEnabled):
3287         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3288
3289 2016-11-16  Simon Fraser  <simon.fraser@apple.com>
3290
3291         Hard to write reliable UIScriptController scrollingTreeAsText tests
3292         https://bugs.webkit.org/show_bug.cgi?id=164764
3293
3294         Reviewed by Wenson Hsieh.
3295
3296         Fix one cause of flakiness by resetting the WKWebView's UIScrollView scale
3297         and scroll position between tests.
3298
3299         * WebKitTestRunner/ios/TestControllerIOS.mm:
3300         (WTR::TestController::platformResetStateToConsistentValues):
3301
3302 2016-11-16  Simon Fraser  <simon.fraser@apple.com>
3303
3304         UIScriptController: script with no async tasks fails if an earlier script registered a callback
3305         https://bugs.webkit.org/show_bug.cgi?id=164762
3306
3307         Reviewed by Wenson Hsieh.
3308         
3309         Make TestRunner::callUIScriptCallback() async in DumpRenderTree to match WebKitTestRunner behavior.
3310         This fixes ui-side-script-with-callback.html in WK1, which failed because the second runUIScript()
3311         would occur inside the completion callback from the first. This no longer happens.
3312
3313         * DumpRenderTree/TestRunner.cpp:
3314         (TestRunner::callUIScriptCallback):
3315         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
3316         (UIScriptContext::tryToCompleteUIScriptForCurrentParentCallback):
3317
3318 2016-11-16  Ryan Haddad  <ryanhaddad@apple.com>
3319
3320         Unreviewed, rolling out r208770.
3321
3322         The test added with this change is timing out on mac-wk1.
3323
3324         Reverted changeset:
3325
3326         "UIScriptController: script with no async tasks fails if an
3327         earlier script registered a callback"
3328         https://bugs.webkit.org/show_bug.cgi?id=164762
3329         http://trac.webkit.org/changeset/208770
3330
3331 2016-11-16  Per Arne Vollan  <pvollan@apple.com>
3332
3333         [Win] WebCore test is failing.
3334         https://bugs.webkit.org/show_bug.cgi?id=164772
3335
3336         Reviewed by Brent Fulgham.
3337
3338         The value of CGRectInfinite is not the same on Windows as on Mac.
3339
3340         * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
3341         (TestWebKitAPI::TEST):
3342
3343 2016-11-15  Alexey Proskuryakov  <ap@apple.com>
3344
3345         Update Youenn's e-mail addresses.
3346
3347         * Scripts/webkitpy/common/config/contributors.json:
3348
3349 2016-11-15  Simon Fraser  <simon.fraser@apple.com>
3350
3351         UIScriptController: script with no async tasks fails if an earlier script registered a callback
3352         https://bugs.webkit.org/show_bug.cgi?id=164762
3353
3354         Reviewed by Wenson Hsieh.
3355         
3356         UIScriptContext::runUIScript() considers a script to be "immediate" if that script doesn't
3357         queue any async tasks. However, if an earlier UI script registered a callback, UIScriptContext::runUIScript()
3358         would consider that an outstanding task.
3359         
3360         Fix by unregistering any callbacks associated with the current UI script when uiScriptComplete() is called.
3361
3362         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
3363         (UIScriptContext::tryToCompleteUIScriptForCurrentParentCallback):
3364
3365 2016-11-15  Simon Fraser  <simon.fraser@apple.com>
3366
3367         UIScriptController: setting a callback to undefined should unregister it
3368         https://bugs.webkit.org/show_bug.cgi?id=164796
3369
3370         Reviewed by Dean Jackson.
3371         
3372         "Immediate" UI scripts (those that don't schedule any async tasks) should return
3373         immediately, without the need to call uiScriptComplete(). However, this is broken if
3374         an earlier UI script registered a callback (since no-one clears that callback after the
3375         first script completes).
3376
3377         Make possible the workaround of setting the callback to undefined, which previously did
3378         not clear the callback registration.
3379
3380         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
3381         (UIScriptContext::registerCallback):
3382         * TestRunnerShared/UIScriptContext/UIScriptContext.h:
3383         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3384         (WTR::UIScriptController::platformClearAllCallbacks):
3385
3386 2016-11-14  Mark Lam  <mark.lam@apple.com>
3387
3388         Enhance run-jsc-stress-test script to allow optional test specific options to be added for all test run configurations.
3389         https://bugs.webkit.org/show_bug.cgi?id=164695
3390
3391         Reviewed by Keith Miller.
3392
3393         This gives us more flexibility when specific tests needs to enable special JSC
3394         options in order to exercise specific code paths to be tested.  It also saves us
3395         from having to create duplicate test run configurations e.g. runMiscFTLNoCJITTest.
3396         We can now just use runFTLNoCJIT in its place.
3397
3398         Also replaced the ifJSCArgIsntProvidedAreWeReleaseBuild variable with $buildType
3399         so that we have the ability to skip certain tests for release or debug builds.
3400         This will be needed in the upcoming patch for https://webkit.org/b/155145.
3401
3402         * Scripts/run-jsc-stress-tests:
3403
3404 2016-11-14  Joanmarie Diggs  <jdiggs@igalia.com>
3405
3406         AX: [ATK] Expose STATE_SINGLE_LINE and STATE_MULTI_LINE for ARIA searchbox role
3407         https://bugs.webkit.org/show_bug.cgi?id=164712
3408
3409         Reviewed by Chris Fleizach.
3410
3411         Add AccessibilityUIElement::isSingleLine, AccessibilityUIElement::isMultiLine
3412         to DRT and WKTR. Implement it for ATK.
3413
3414         * DumpRenderTree/AccessibilityUIElement.h:
3415         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
3416         (AccessibilityUIElement::isSingleLine):
3417         (AccessibilityUIElement::isMultiLine):
3418         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
3419         (AccessibilityUIElement::isSingleLine):
3420         (AccessibilityUIElement::isMultiLine):
3421         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
3422         (AccessibilityUIElement::isSingleLine):
3423         (AccessibilityUIElement::isMultiLine):
3424         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
3425         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
3426         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3427         (WTR::AccessibilityUIElement::isSingleLine):
3428         (WTR::AccessibilityUIElement::isMultiLine):
3429         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
3430         (WTR::AccessibilityUIElement::isSingleLine):
3431         (WTR::AccessibilityUIElement::isMultiLine):
3432         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
3433         (WTR::AccessibilityUIElement::isSingleLine):
3434         (WTR::AccessibilityUIElement::isMultiLine):
3435
3436 2016-11-14  Youenn Fablet  <youenn@apple.com>
3437
3438         Support WPT templated tests
3439         https://bugs.webkit.org/show_bug.cgi?id=164707
3440
3441         Reviewed by Sam Weinig.
3442
3443         * Scripts/webkitpy/w3c/test_importer.py:
3444         (TestImporter.write_html_files_for_templated_js_tests): Generating empty HTML files for templated JS tests.
3445         (TestImporter.import_tests):
3446
3447 2016-11-13  JF Bastien  <jfbastien@apple.com>
3448
3449         Implement WTF::Expected
3450         https://bugs.webkit.org/show_bug.cgi?id=164526
3451
3452         Reviewed by Yusuke Suzuki.
3453
3454         std::expected isn't in C++17, and may be in C++20. It's a nice
3455         complement to std::any / std::optional because it's a type-tagged
3456         union which has a single expected result but could also contain an
3457         error.
3458
3459         This would be useful in the WebAssembly parser, for example.
3460
3461         Using this implementation will allow us to provide feedback to the
3462         standards committee and guide std::expected's design before it
3463         gets standardized. I've already sent a bunch of feedback to the
3464         author based on my experience implementing this.
3465
3466         This could supplement WTF::Either and WTF::ExceptionOr.
3467
3468         * TestWebKitAPI/CMakeLists.txt:
3469         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3470         * TestWebKitAPI/Tests/WTF/Expected.cpp: Added.
3471         (WTF::operator<<):
3472         (TestWebKitAPI::TEST):
3473         (TestWebKitAPI::foo::foo):
3474         (TestWebKitAPI::foo::~foo):
3475         (TestWebKitAPI::foo::operator==):
3476         (TestWebKitAPI::operator<<):
3477
3478 2016-11-12  Simon Fraser  <simon.fraser@apple.com>
3479
3480         Add a way to get the UI-side scrolling tree as text via UIScriptController
3481         https://bugs.webkit.org/show_bug.cgi?id=164697
3482
3483         Reviewed by Zalan Bujtas.
3484
3485         Add UIScriptController::scrollingTreeAsText(), which gets the state of the scrolling
3486         tree in the UI process, including the current positions of CALayers. This will be used
3487         to test UI-side scrolling and visual viewports.
3488
3489         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3490         (WTR::UIScriptController::scrollingTreeAsText):
3491         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3492         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3493         (WTR::UIScriptController::scrollingTreeAsText):
3494         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3495         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3496         (WTR::UIScriptController::scrollingTreeAsText):
3497
3498 2016-11-12  Wenson Hsieh  <wenson_hsieh@apple.com>
3499
3500         The main content heuristic should be robust when handling large media elements
3501         https://bugs.webkit.org/show_bug.cgi?id=164676
3502         <rdar://problem/29211503>
3503
3504         Reviewed by Eric Carlson.
3505
3506         Added a new test verifying that enormous video elements are handled gracefully when put through the main
3507         content heuristic.
3508
3509         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3510         * TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
3511         (TestWebKitAPI::TEST):
3512         * TestWebKitAPI/Tests/WebKit2Cocoa/enormous-video-with-sound.html: Added.
3513
3514 2016-11-12  Dan Bernstein  <mitz@apple.com>
3515
3516         run-safari does not work for open source contributors
3517         https://bugs.webkit.org/show_bug.cgi?id=164667
3518         <rdar://problem/29229894>
3519
3520         Reviewed by Joseph Pecoraro.
3521
3522         * Scripts/run-api-tests:
3523         (archCommandLineArgumentsForRestrictedEnvironmentVariables): Moved from here…
3524         * Scripts/webkitdirs.pm:
3525         (archCommandLineArgumentsForRestrictedEnvironmentVariables): …to here
3526         (runMacWebKitApp): Have arch(1) carry the DYLD_* variables we set in our environmet over
3527           to the environment of the app being run.
3528
3529 2016-11-11  Joseph Pecoraro  <pecoraro@apple.com>
3530
3531         Removed unused INCLUDE_OPTIONS_FOR_DEBUGGING
3532         https://bugs.webkit.org/show_bug.cgi?id=164664
3533
3534         Reviewed by Dan Bernstein.
3535
3536         * Scripts/debug-minibrowser:
3537         * Scripts/debug-safari:
3538         * Scripts/debug-test-runner:
3539         * Scripts/webkitdirs.pm:
3540         (printHelpAndExitForRunAndDebugWebKitAppIfNeeded):
3541         There are no debug specific options anymore.
3542
3543 2016-11-11  Wenson Hsieh  <wenson_hsieh@apple.com>
3544
3545         [WK2] autocorrect and autocapitalize attributes do not work in contenteditable elements
3546         https://bugs.webkit.org/show_bug.cgi?id=164538
3547         <rdar://problem/8418711>
3548
3549         Reviewed by Ryosuke Niwa.
3550
3551         Adds support for being able to test autocorrect and autocapitalize attributes in contenteditable areas. To do
3552         this, we add removeAllDynamicDictionaries to UIScriptController in order to ensure that autocorrect suggestions
3553         are reset to their defaults prior to running contenteditable-autocorrect-off.html.
3554
3555         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3556         (WTR::UIScriptController::removeAllDynamicDictionaries):
3557         * Scripts/webkitpy/port/ios.py:
3558         (IOSSimulatorPort._createSimulatorApp):
3559         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3560         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3561         (WTR::UIScriptController::removeAllDynamicDictionaries):
3562         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3563         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3564         (-[TestRunnerWKWebView _keyboardDidShow:]):
3565         (-[TestRunnerWKWebView _keyboardDidHide:]):
3566
3567         Work around an issue where consecutive UIKeyboardDidShowNotification would cause keyboard appearance callbacks
3568         to be fired multiple times. This was causing a single key press to cause two characters to be typed. While this
3569         does not affect the correctness of existing tests, the new autocorrection test requires this workaround.
3570
3571         * WebKitTestRunner/ios/UIKitSPI.h:
3572         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3573         (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex):
3574         (WTR::UIScriptController::removeAllDynamicDictionaries):
3575
3576 2016-11-11  Alex Christensen  <achristensen@webkit.org>
3577
3578         Build all Mac API tests
3579         https://bugs.webkit.org/show_bug.cgi?id=164633
3580
3581         Reviewed by Gyuyoung Kim.
3582
3583         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3584         * TestWebKitAPI/Tests/mac/NavigatorLanguage.mm:
3585
3586 2016-11-11  Alex Christensen  <achristensen@webkit.org>
3587
3588         Allow mutable lambdas in HashMap::ensure
3589         https://bugs.webkit.org/show_bug.cgi?id=164642
3590
3591         Reviewed by Sam Weinig.
3592
3593         * TestWebKitAPI/Tests/WTF/HashMap.cpp:
3594         (TestWebKitAPI::TEST):
3595
3596 2016-11-10  Wenson Hsieh  <wenson_hsieh@apple.com>
3597
3598         Composition state should be cleared when changing focus to a non-editable element
3599         https://bugs.webkit.org/show_bug.cgi?id=164595
3600         <rdar://problem/26412551>
3601
3602         Reviewed by Enrica Casucci.
3603
3604         Adds support for window.textInputController in DumpRenderTree on iOS. So far, only the methods needed for the
3605         new layout test (editing/focus-change-with-marked-text.html) are supported. These are insertText, setMarkedText,
3606         and markedRange.
3607
3608         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
3609         * DumpRenderTree/TextInputController.h: Re