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