[iOS] WKAttachmentTests.DropFolderAsAttachmentAndMoveByDragging encounters an excepti...
[WebKit-https.git] / Tools / ChangeLog
1 2018-08-28  Wenson Hsieh  <wenson_hsieh@apple.com>
2
3         [iOS] WKAttachmentTests.DropFolderAsAttachmentAndMoveByDragging encounters an exception on iOS simulator
4         https://bugs.webkit.org/show_bug.cgi?id=189049
5
6         Reviewed by Tim Horton.
7
8         Wrap an NSURL in a RetainPtr to prevent it from being freed prematurely. It seems this broke when I changed the
9         load handler from an Objective-C block that captured `folderURL` to a C++ lambda that didn't retain `folderURL`.
10
11         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
12         (simulateFolderDragWithURL):
13
14 2018-08-27  Wenson Hsieh  <wenson_hsieh@apple.com>
15
16         [Attachment Support] Remove WebCore::AttachmentDisplayOptions and friends
17         https://bugs.webkit.org/show_bug.cgi?id=189004
18
19         Reviewed by Dan Bernstein.
20
21         Move off of deprecated attachment insertion SPI.
22
23         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
24         (-[TestWKWebView synchronouslyInsertAttachmentWithFileWrapper:contentType:]):
25         (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:]):
26         (-[_WKAttachment synchronouslySetDisplayOptions:error:]): Deleted.
27
28 2018-08-27  Simon Fraser  <simon.fraser@apple.com>
29
30         Teach WebKitTestRunner and DumpRenderTree about detecting world leaks
31         https://bugs.webkit.org/show_bug.cgi?id=188994
32
33         Reviewed by Tim Horton.
34         
35         This patch adds the notion of a "control command" in the protocol between webkitpy and 
36         WebKitTestRunner/DumpRenderTree. A command is simply an input string starting with a #
37         that is checked for before trying to parse the input as test URL. For now, just one
38         commmand is supported, which is "#CHECK FOR WORLD LEAKS".
39         
40         In response to the command, the tool dumps an output block in the usual pseudo-MIME-style,
41         with a trailing "#EOF". Future patches will add support to webkitpy to parse this output.
42         
43         DumpRenderTree stubs out the command, returning an empty block.
44         
45         WebKitTestRunner responds to the command by dumping the list of live documents, if it was
46         run with the --check-for-world-leaks option.
47         
48         When run with --check-for-world-leaks, WebKitTestRunner gets the list of live documents via
49         WKBundleGetLiveDocumentURLs() after every test (this allows it to detect the first test
50         that leaked a document), and keeps them in a map of document identifier to test and live document URL.
51         Then when it receives the "#CHECK FOR WORLD LEAKS" command, it calls into the bundle to
52         clear the page and memory caches, runs a GC, then posts a task (in the Document::postTaks() sense)
53         after which it requests the list of live documents for a final time, excluding any that are loaded
54         in live Frames (thus omitting the about:blank that will be loaded at this point). Documents in this
55         list are therefore leaked (or abandoned).
56         
57         Future patches will hook up webkitpy reporting for leaked documents.
58
59         * DumpRenderTree/mac/DumpRenderTree.mm:
60         (initializeGlobalsFromCommandLineOptions):
61         (handleControlCommand):
62         (runTestingServerLoop):
63         * DumpRenderTree/win/DumpRenderTree.cpp:
64         (handleControlCommand):
65         (main):
66         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
67         (WTR::postGCTask):
68         (WTR::InjectedBundle::reportLiveDocuments):
69         (WTR::InjectedBundle::didReceiveMessageToPage):
70         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
71         * WebKitTestRunner/Options.cpp:
72         (WTR::handleOptionCheckForWorldLeaks):
73         (WTR::OptionsHandler::OptionsHandler):
74         * WebKitTestRunner/Options.h:
75         * WebKitTestRunner/TestController.cpp:
76         (WTR::AsyncTask::run):
77         (WTR::AsyncTask::currentTask):
78         (WTR::TestController::initialize):
79         (WTR::TestController::ensureViewSupportsOptionsForTest):
80         (WTR::TestController::resetStateToConsistentValues):
81         (WTR::TestController::updateLiveDocumentsAfterTest):
82         (WTR::TestController::checkForWorldLeaks):
83         (WTR::TestController::findAndDumpWorldLeaks):
84         (WTR::TestController::willDestroyWebView):
85         (WTR::parseInputLine):
86         (WTR::TestController::waitForCompletion):
87         (WTR::TestController::handleControlCommand):
88         (WTR::TestController::runTestingServerLoop):
89         (WTR::TestController::run):
90         (WTR::TestController::didReceiveLiveDocumentsList):
91         (WTR::TestController::didReceiveMessageFromInjectedBundle):
92         * WebKitTestRunner/TestController.h:
93         (WTR::AsyncTask::AsyncTask):
94         (WTR::AsyncTask::taskComplete):
95         (WTR::TestController::AbandonedDocumentInfo::AbandonedDocumentInfo):
96         * WebKitTestRunner/TestInvocation.cpp:
97         (WTR::TestInvocation::invoke):
98         * WebKitTestRunner/TestOptions.h:
99         (WTR::TestOptions::hasSameInitializationOptions const):
100
101 2018-08-27  Alex Christensen  <achristensen@webkit.org>
102
103         Fix API test after r235398
104         https://bugs.webkit.org/show_bug.cgi?id=188997
105
106         * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
107         (TestWebKitAPI::setPageLoaderClient):
108         (TestWebKitAPI::willGoToBackForwardListItem): Deleted.
109         willGoToBackForwardListItem is unused and unsupported.  Removing its check.
110
111 2018-08-27  Daniel Bates  <dabates@apple.com>
112
113         Partial revert of r235376
114         https://bugs.webkit.org/show_bug.cgi?id=189011
115
116         For now revert the unit tests added in r235376 as the following tests are failing on Apple Sierra
117         Debug and Apple High Sierra Debug bots:
118
119             lldb_webkit_unittest.TestSummaryProviders.serial_test_WTFOptionSetProvider_simple
120             lldb_webkit_unittest.TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_simple
121
122         Will investigate offline.
123
124         * lldb/lldbWebKitTester/main.cpp:
125         (testSummaryProviders):
126         * lldb/lldb_webkit_unittest.py:
127         (TestSummaryProviders.serial_test_WTFHashSet_tablesize_and_size):
128         (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_empty): Deleted.
129         (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_simple): Deleted.
130         (TestSummaryProviders.serial_test_WTFOptionSetProvider_empty): Deleted.
131         (TestSummaryProviders.serial_test_WTFOptionSetProvider_simple): Deleted.
132
133 2018-08-27  Aditya Keerthi  <akeerthi@apple.com>
134
135         Consolidate ENABLE_INPUT_TYPE_COLOR and ENABLE_INPUT_TYPE_COLOR_POPOVER
136         https://bugs.webkit.org/show_bug.cgi?id=188931
137
138         Reviewed by Wenson Hsieh.
139
140         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Removed ENABLE_INPUT_TYPE_COLOR_POPOVER.
141
142 2018-08-27  Justin Fan  <justin_fan@apple.com>
143
144         Add Justin Fan to list of WebKit contributors
145         https://bugs.webkit.org/show_bug.cgi?id=184431
146
147         * Scripts/webkitpy/common/config/contributors.json:
148
149 2018-08-27  Simon Fraser  <simon.fraser@apple.com>
150
151         Convert timeout values in WebKitTestRunner to WTF::Seconds
152         https://bugs.webkit.org/show_bug.cgi?id=188987
153
154         Reviewed by Ryosuke Niwa.
155         
156         Replace various 'int' timeout values with WTF::Seconds. The timeout argument
157         comes in as milliseconds, so convert on input. When sending messages to the InjectedBundle
158         using integers, convert to and from milliseconds.
159         
160         Also do some #pragma once, and initializer cleanup.
161
162         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
163         (WTR::InjectedBundle::didReceiveMessageToPage):
164         (WTR::InjectedBundle::beginTesting):
165         (WTR::InjectedBundle::InjectedBundle): Deleted.
166         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
167         * WebKitTestRunner/InjectedBundle/TestRunner.h:
168         (WTR::TestRunner::timeout):
169         (WTR::TestRunner::setCustomTimeout):
170         * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
171         (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
172         * WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:
173         (WTR::TestRunner::invalidateWaitToDumpWatchdogTimer):
174         (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
175         * WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp:
176         (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
177         * WebKitTestRunner/TestController.cpp:
178         (WTR::TestController::TestController):
179         (WTR::parseInputLine):
180         (WTR::TestController::runTest):
181         (WTR::TestController::runUntil):
182         (WTR::TestController::didReceiveMessageFromInjectedBundle):
183         * WebKitTestRunner/TestController.h:
184         * WebKitTestRunner/TestInvocation.cpp:
185         (WTR::TestInvocation::shortTimeout const):
186         (WTR::TestInvocation::createTestSettingsDictionary):
187         * WebKitTestRunner/TestInvocation.h:
188         * WebKitTestRunner/TestOptions.h:
189         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
190         (WTR::TestController::platformRunUntil):
191         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
192         (WTR::TestController::platformRunUntil):
193         * WebKitTestRunner/wpe/TestControllerWPE.cpp:
194         (WTR::TestController::platformRunUntil):
195
196 2018-08-27  Simon Fraser  <simon.fraser@apple.com>
197
198         Convert timeout values in WebKitTestRunner to WTF::Seconds
199         https://bugs.webkit.org/show_bug.cgi?id=188987
200
201         Reviewed by Ryosuke Niwa.
202         
203         Replace various 'int' timeout values with WTF::Seconds. The timeout argument
204         comes in as milliseconds, so convert on input. When sending messages to the InjectedBundle
205         using integers, convert to and from milliseconds.
206         
207         Also do some #pragma once, and initializer cleanup.
208
209         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
210         (WTR::InjectedBundle::didReceiveMessageToPage):
211         (WTR::InjectedBundle::beginTesting):
212         (WTR::InjectedBundle::InjectedBundle): Deleted.
213         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
214         * WebKitTestRunner/InjectedBundle/TestRunner.h:
215         (WTR::TestRunner::timeout):
216         (WTR::TestRunner::setCustomTimeout):
217         * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
218         (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
219         * WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:
220         (WTR::TestRunner::invalidateWaitToDumpWatchdogTimer):
221         (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
222         * WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp:
223         (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
224         * WebKitTestRunner/TestController.cpp:
225         (WTR::TestController::TestController):
226         (WTR::parseInputLine):
227         (WTR::TestController::runTest):
228         (WTR::TestController::runUntil):
229         (WTR::TestController::didReceiveMessageFromInjectedBundle):
230         * WebKitTestRunner/TestController.h:
231         * WebKitTestRunner/TestInvocation.cpp:
232         (WTR::TestInvocation::shortTimeout const):
233         (WTR::TestInvocation::createTestSettingsDictionary):
234         * WebKitTestRunner/TestInvocation.h:
235         * WebKitTestRunner/TestOptions.h:
236         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
237         (WTR::TestController::platformRunUntil):
238         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
239         (WTR::TestController::platformRunUntil):
240         * WebKitTestRunner/wpe/TestControllerWPE.cpp:
241         (WTR::TestController::platformRunUntil):
242
243 2018-08-27  Alex Christensen  <achristensen@webkit.org>
244
245         REGRESSION(r234985/r234989) WKPageLoadHTMLString with a 16-bit String has the wrong encoding
246         https://bugs.webkit.org/show_bug.cgi?id=189002
247
248         Reviewed by Tim Horton.
249
250         * TestWebKitAPI/Tests/WebKit/WillLoad.cpp:
251         (TestWebKitAPI::TEST_F):
252
253 2018-08-27  Wenson Hsieh  <wenson_hsieh@apple.com>
254
255         [Cocoa] Exception (fileType 'dyn.agq8u' is not a valid UTI) raised when dragging an attachment whose file wrapper is a directory
256         https://bugs.webkit.org/show_bug.cgi?id=188903
257         <rdar://problem/43702993>
258
259         Reviewed by Tim Horton.
260
261         Add two API tests and adjust existing WKAttachment API tests. The new tests exercise the following scenarios, in
262         both iOS and macOS:
263         •       Dropping a folder as an attachment element, and then moving that attachment element in the document by
264                 dragging and dropping.
265         •       Using WKWebView SPI to insert a folder and a file with an unknown extension, and then using more
266                 _WKAttachment SPI to swap the attachments' backing file wrappers.
267
268         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
269         (runTestWithTemporaryFolder):
270
271         Add a helper function to run a test with a new folder path, created in the temporary directory and populated
272         with some sample content. This folder is deleted after running the test.
273
274         (simulateFolderDragWithURL):
275
276         Add a helper function to prepare a given DragAndDropSimulator for simulating a dragged folder from a source
277         external to the web view.
278
279         (platformCopyRichTextWithMultipleAttachments):
280         (platformCopyRichTextWithImage):
281         (platformCopyPNG):
282         (TestWebKitAPI::TEST):
283
284         Add new API tests, and adjust existing tests to reflect new -setFileWrapper:…: behavior. Specifically,
285         ChangeAttachmentDataAndFileInformation previously required that changing a _WKAttachment's NSFileWrapper would
286         preserve the previous NSFileWrapper's preferred name if the new file wrapper does not have a preferred name, but
287         this quirk is no longer supported.
288
289         Also add a few bridging casts for the eventual transition of TestWebKitAPI to ARC.
290
291         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
292
293         Add a new hook to clear any external drag information on an existing DragAndDropSimulator. This is convenient
294         when using the same DragAndDropSimulator to perform multiple drags in a single test.
295
296         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
297         (-[DragAndDropSimulator clearExternalDragInformation]):
298         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
299         (-[DragAndDropSimulator clearExternalDragInformation]):
300
301 2018-08-27  Alex Christensen  <achristensen@webkit.org>
302
303         Translate 4 tests using WKPageLoaderClient to ObjC
304         https://bugs.webkit.org/show_bug.cgi?id=188827
305
306         Reviewed by Tim Horton.
307
308         They use processDidBecomeUnresponsive, didChangeBackForwardList, or willGoToBackForwardListItem.
309         Rather than introduce these to WKPageNavigationClient, I just translated the tests to use WKNavigationDelegate, which already have equivalent callbacks.
310         willGoToBackForwardListItem had userData from the InjectedBundle, but nobody was using it so I did not add that to the ObjC SPI, so I don't test that unused
311         bundle functionality any more.
312
313         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
314         * TestWebKitAPI/Tests/WebKit/ResponsivenessTimer.cpp: Removed.
315         * TestWebKitAPI/Tests/WebKit/ResponsivenessTimerDoesntFireEarly.cpp: Removed.
316         * TestWebKitAPI/Tests/WebKit/RestoreSessionStateWithoutNavigation.cpp: Removed.
317         * TestWebKitAPI/Tests/WebKit/ShouldGoToBackForwardListItem.cpp: Removed.
318         * TestWebKitAPI/Tests/WebKit/ShouldGoToBackForwardListItem_Bundle.cpp: Removed.
319         * TestWebKitAPI/Tests/WebKitCocoa/ResponsivenessTimer.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/ResponsivenessTimer.cpp.
320         (-[ResponsivenessTimerDelegate webView:didFinishNavigation:]):
321         (-[ResponsivenessTimerDelegate _webViewWebProcessDidBecomeUnresponsive:]):
322         (TestWebKitAPI::TEST):
323         (): Deleted.
324         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
325         (TestWebKitAPI::processDidBecomeUnresponsive): Deleted.
326         (TestWebKitAPI::setPageLoaderClient): Deleted.
327         * TestWebKitAPI/Tests/WebKitCocoa/ResponsivenessTimerDoesntFireEarly.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/ResponsivenessTimerDoesntFireEarly.cpp.
328         (-[ResponsivenessDelegate webView:didFinishNavigation:]):
329         (-[ResponsivenessDelegate _webViewWebProcessDidBecomeUnresponsive:]):
330         (TestWebKitAPI::TEST):
331         (TestWebKitAPI::didReceiveMessageFromInjectedBundle): Deleted.
332         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
333         (TestWebKitAPI::processDidBecomeUnresponsive): Deleted.
334         (TestWebKitAPI::setInjectedBundleClient): Deleted.
335         (TestWebKitAPI::setPageLoaderClient): Deleted.
336         * TestWebKitAPI/Tests/WebKitCocoa/RestoreSessionStateWithoutNavigation.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/RestoreSessionStateWithoutNavigation.cpp.
337         (-[SessionStateDelegate webView:didFinishNavigation:]):
338         (-[SessionStateDelegate _webView:backForwardListItemAdded:removed:]):
339         (TestWebKitAPI::createSessionStateData):
340         (TestWebKitAPI::TEST):
341         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
342         (TestWebKitAPI::didChangeBackForwardListForPage): Deleted.
343         (TestWebKitAPI::setPageLoaderClient): Deleted.
344         * TestWebKitAPI/Tests/WebKitCocoa/ShouldGoToBackForwardListItem.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/ShouldGoToBackForwardListItem.cpp.
345         (-[BackForwardClient webView:didFinishNavigation:]):
346         (-[BackForwardClient _webView:willGoToBackForwardListItem:inPageCache:]):
347         (TestWebKitAPI::TEST):
348         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
349         (TestWebKitAPI::willGoToBackForwardListItem): Deleted.
350         (TestWebKitAPI::setPageLoaderClient): Deleted.
351
352 2018-08-27  Wenson Hsieh  <wenson_hsieh@apple.com>
353
354         [Cocoa] "video.html" appears at the top level of the TestWebKitAPI Xcode project
355         https://bugs.webkit.org/show_bug.cgi?id=188989
356
357         Reviewed by Andy Estes.
358
359         Move this into the Tests/WebKit/Resources group in the project.
360
361         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
362
363 2018-08-27  Thomas Denney  <tdenney@apple.com>
364
365         Avoid an exception in the interactive interpreter
366         https://bugs.webkit.org/show_bug.cgi?id=188991
367
368         Reviewed by Myles C. Maxfield.
369
370         * WebGPUShadingLanguageRI/index.html: Corrects a typo in the name of a
371         local variable
372
373 2018-08-27  Thomas Denney  <tdenney@apple.com>
374
375         Allow new vector types to work with the interactive interpreter
376         https://bugs.webkit.org/show_bug.cgi?id=188988
377
378         Reviewed by Myles C. Maxfield.
379
380         * WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js:
381         (FlattenedStructOffsetGatherer.prototype.visitTypeRef): Do not
382         unncessarily visit the type arguments of a TypeRef, as by this point
383         there are none that are relevant.
384         * WebGPUShadingLanguageRI/Intrinsics.js:
385         (Intrinsics): Treat VectorType as a primitive type.
386
387 2018-08-27  Keith Rollin  <krollin@apple.com>
388
389         Build system support for LTO
390         https://bugs.webkit.org/show_bug.cgi?id=187785
391         <rdar://problem/42353132>
392
393         Reviewed by Dan Bernstein.
394
395         Add tools/scripts support for controlling LTO builds.
396
397         * Scripts/build-webkit: Add --lto-mode={none,thin,full}.
398         * Scripts/set-webkit-configuration: Add support for saving LTO
399         configuration to WebKitBuild/LTO.
400         * Scripts/webkitdirs.pm: Add support for reading configuration from
401         WebKitBuild/LTO and providing it to xcodebuild.
402         (determineLTOMode):
403         (ltoMode):
404         (XcodeOptions):
405
406 2018-08-27  Daniel Bates  <dabates@apple.com>
407
408         lldb-webkit: Pretty-print OptionSet
409         https://bugs.webkit.org/show_bug.cgi?id=188936
410
411         Reviewed by Simon Fraser.
412
413         Add LLDB formatters to pretty-print an OptionSet.
414
415         * lldb/lldbWebKitTester/main.cpp:
416         (testSummaryProviders):
417         * lldb/lldb_webkit.py:
418         (__lldb_init_module):
419         (__lldb_init_module.lldb_webkit):
420         (WTFOptionSet_SummaryProvider):
421         (WTFOptionSetProvider):
422         (WTFOptionSetProvider.__init__):
423         (WTFOptionSetProvider.has_children):
424         (WTFOptionSetProvider.num_children):
425         (WTFOptionSetProvider.get_child_index):
426         (WTFOptionSetProvider.get_child_at_index):
427         (WTFOptionSetProvider.update):
428         * lldb/lldb_webkit_unittest.py:
429         (TestSummaryProviders.serial_test_WTFHashSet_tablesize_and_size):
430         (TestSummaryProviders):
431         (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_empty):
432         (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_simple):
433         (TestSummaryProviders.serial_test_WTFOptionSetProvider_empty):
434         (TestSummaryProviders.serial_test_WTFOptionSetProvider_simple):
435
436 2018-08-27  Wenson Hsieh  <wenson_hsieh@apple.com>
437
438         [Attachment Support] [WK2] Images copied from Mail message view paste with the wrong file name in compose
439         https://bugs.webkit.org/show_bug.cgi?id=188957
440         <rdar://problem/43737715>
441
442         Reviewed by Darin Adler.
443
444         Add a new API test to verify that pasting a web archive containing several image elements with alt attributes
445         generates _WKAttachments whose names reflect those alt attributes.
446
447         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
448         (testGIFFileURL):
449         (testGIFData):
450         (TestWebKitAPI::TEST):
451
452 2018-08-27  Alex Christensen  <achristensen@webkit.org>
453
454         Unreviewed, rolling out r235367.
455
456         Broke iOS build.
457
458         Reverted changeset:
459
460         "Translate 4 tests using WKPageLoaderClient to ObjC"
461         https://bugs.webkit.org/show_bug.cgi?id=188827
462         https://trac.webkit.org/changeset/235367
463
464 2018-08-27  Alex Christensen  <achristensen@webkit.org>
465
466         Fix GTK build.
467
468         * TestWebKitAPI/CMakeLists.txt:
469
470 2018-08-27  Alex Christensen  <achristensen@webkit.org>
471
472         Fix iOS build.
473
474         * TestWebKitAPI/PlatformWebView.h:
475
476 2018-08-27  Alex Christensen  <achristensen@webkit.org>
477
478         Translate 4 tests using WKPageLoaderClient to ObjC
479         https://bugs.webkit.org/show_bug.cgi?id=188827
480
481         Reviewed by Tim Horton.
482
483         They use processDidBecomeUnresponsive, didChangeBackForwardList, or willGoToBackForwardListItem.
484         Rather than introduce these to WKPageNavigationClient, I just translated the tests to use WKNavigationDelegate, which already have equivalent callbacks.
485         willGoToBackForwardListItem had userData from the InjectedBundle, but nobody was using it so I did not add that to the ObjC SPI, so I don't test that unused
486         bundle functionality any more.
487
488         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
489         * TestWebKitAPI/Tests/WebKit/ResponsivenessTimer.cpp: Removed.
490         * TestWebKitAPI/Tests/WebKit/ResponsivenessTimerDoesntFireEarly.cpp: Removed.
491         * TestWebKitAPI/Tests/WebKit/RestoreSessionStateWithoutNavigation.cpp: Removed.
492         * TestWebKitAPI/Tests/WebKit/ShouldGoToBackForwardListItem.cpp: Removed.
493         * TestWebKitAPI/Tests/WebKit/ShouldGoToBackForwardListItem_Bundle.cpp: Removed.
494         * TestWebKitAPI/Tests/WebKitCocoa/ResponsivenessTimer.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/ResponsivenessTimer.cpp.
495         (-[ResponsivenessTimerDelegate webView:didFinishNavigation:]):
496         (-[ResponsivenessTimerDelegate _webViewWebProcessDidBecomeUnresponsive:]):
497         (TestWebKitAPI::TEST):
498         (): Deleted.
499         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
500         (TestWebKitAPI::processDidBecomeUnresponsive): Deleted.
501         (TestWebKitAPI::setPageLoaderClient): Deleted.
502         * TestWebKitAPI/Tests/WebKitCocoa/ResponsivenessTimerDoesntFireEarly.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/ResponsivenessTimerDoesntFireEarly.cpp.
503         (-[ResponsivenessDelegate webView:didFinishNavigation:]):
504         (-[ResponsivenessDelegate _webViewWebProcessDidBecomeUnresponsive:]):
505         (TestWebKitAPI::TEST):
506         (TestWebKitAPI::didReceiveMessageFromInjectedBundle): Deleted.
507         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
508         (TestWebKitAPI::processDidBecomeUnresponsive): Deleted.
509         (TestWebKitAPI::setInjectedBundleClient): Deleted.
510         (TestWebKitAPI::setPageLoaderClient): Deleted.
511         * TestWebKitAPI/Tests/WebKitCocoa/RestoreSessionStateWithoutNavigation.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/RestoreSessionStateWithoutNavigation.cpp.
512         (-[SessionStateDelegate webView:didFinishNavigation:]):
513         (-[SessionStateDelegate _webView:backForwardListItemAdded:removed:]):
514         (TestWebKitAPI::createSessionStateData):
515         (TestWebKitAPI::TEST):
516         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
517         (TestWebKitAPI::didChangeBackForwardListForPage): Deleted.
518         (TestWebKitAPI::setPageLoaderClient): Deleted.
519         * TestWebKitAPI/Tests/WebKitCocoa/ShouldGoToBackForwardListItem.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/ShouldGoToBackForwardListItem.cpp.
520         (-[BackForwardClient webView:didFinishNavigation:]):
521         (-[BackForwardClient _webView:willGoToBackForwardListItem:inPageCache:]):
522         (TestWebKitAPI::TEST):
523         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
524         (TestWebKitAPI::willGoToBackForwardListItem): Deleted.
525         (TestWebKitAPI::setPageLoaderClient): Deleted.
526
527 2018-08-27  Keith Miller  <keith_miller@apple.com>
528
529         test262-runner -s --test-only should replace test results
530         https://bugs.webkit.org/show_bug.cgi?id=188450
531
532         Reviewed by Michael Saboff.
533
534         * Scripts/test262/Runner.pm:
535         (main):
536         (SetFailureForTest):
537         (UpdateResults):
538
539 2018-08-26  Sam Weinig  <sam@webkit.org>
540
541         Using _WKRemoteObjectInterface with a protocol that inherits from a non-NSObject protocol crashes
542         https://bugs.webkit.org/show_bug.cgi?id=188958
543
544         Reviewed by Anders Carlsson.
545
546         * TestWebKitAPI/Tests/WebKitCocoa/RemoteObjectRegistry.h:
547         Update test protocol to have inheritance.
548
549 2018-08-26  Wenson Hsieh  <wenson_hsieh@apple.com>
550
551         [Attachment Support] Dropping and pasting images should insert inline image elements with _WKAttachments
552         https://bugs.webkit.org/show_bug.cgi?id=188933
553         <rdar://problem/43699724>
554
555         Reviewed by Darin Adler.
556
557         Rebaseline existing API tests that involve dropping or pasting image files, and additionally write some new
558         tests. These new tests exercise the following cases:
559         •       Inserting and removing newlines before an inline image with an attachment element does not cause new
560                 _WKAttachments to be created and destroyed.
561         •       Pasting an image, cutting it, and then pasting it again propagates an attachment update to the UI
562                 process with the original _WKAttachment.
563         •       A pasted attachment in the document can be moved around by dragging, and doing so does not cause us to
564                 lose a _WKAttachment.
565
566         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
567         (-[TestWKWebView expectElementCount:tagName:]):
568         (TestWebKitAPI::TEST):
569
570         Add the new tests described above, and also adjust existing tests to check that images are dropped or pasted
571         as image elements, but still have associated attachment elements whose attachment identifiers (observed via
572         script) match that of the corresponding _WKAttachment's uniqueIdentifier in the UI process.
573
574         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
575         (-[DragAndDropSimulator runFrom:to:]):
576         (-[DragAndDropSimulator continueDragSession]):
577         (-[DragAndDropSimulator performDragInWebView:atLocation:withImage:pasteboard:source:]):
578
579         Teach DragAndDropSimulator on macOS to wait until the drop has been handled by the web process before returning
580         execution to the caller. This ensures that tests which involve dropping promised files as attachments aren't
581         flaky, due to how the promised data is retrieved asynchronously when performing the drop.
582
583         (-[DragAndDropSimulator _webView:didPerformDragOperation:]):
584
585 2018-08-26  Lucas Forschler  <lforschler@apple.com>
586
587         Open svn.webkit.org for commits.
588
589 2018-08-24  Myles C. Maxfield  <mmaxfield@apple.com>
590
591         Unreviewed test fix after r235249
592         https://bugs.webkit.org/show_bug.cgi?id=178981
593
594         * WebGPUShadingLanguageRI/Test.js:
595
596 2018-08-24  Alex Christensen  <achristensen@webkit.org>
597
598         Introduce _WKInspector
599         https://bugs.webkit.org/show_bug.cgi?id=188923
600         <rdar://problem/34657861>
601
602         Reviewed by Brian Burg.
603
604         * MiniBrowser/mac/WK2BrowserWindowController.m:
605         (-[WK2BrowserWindowController validateMenuItem:]):
606         (-[WK2BrowserWindowController showHideWebInspector:]):
607
608 2018-08-24  Jonathan Bedard  <jbedard@apple.com>
609
610         Fix handling of iOS minor versions in default_baseline_search_path
611         https://bugs.webkit.org/show_bug.cgi?id=188902
612
613         Reviewed by Aakash Jain.
614
615         * Scripts/webkitpy/port/ios.py:
616         (IOSPort.default_baseline_search_path): When the major version matches the major version of the CURRENT_VERSION, treat
617         it as a the CURRENT_VERSION.
618
619 2018-08-24  Antti Koivisto  <antti@apple.com>
620
621         Allow creating WeakPtrs to const objects
622         https://bugs.webkit.org/show_bug.cgi?id=188785
623
624         Reviewed by Geoff Garen.
625
626         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
627         (TestWebKitAPI::Base::weakPtrFactory const):
628         (TestWebKitAPI::TEST):
629         (TestWebKitAPI::Base::weakPtrFactory): Deleted.
630
631 2018-08-23  Carlos Garcia Campos  <cgarcia@igalia.com>
632
633         [GTK][WPE] Add API to inject/register user content in isolated worlds
634         https://bugs.webkit.org/show_bug.cgi?id=188883
635
636         Reviewed by Michael Catanzaro.
637
638         Add test cases for the new API.
639
640         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
641         (isStyleSheetInjectedForURLAtPath):
642         (isScriptInjectedForURLAtPath):
643         (testUserContentManagerInjectedStyleSheet):
644         (testUserContentManagerInjectedScript):
645         (UserScriptMessageTest::registerHandler):
646         (UserScriptMessageTest::unregisterHandler):
647         (UserScriptMessageTest::postMessageAndWaitUntilReceived):
648         (testUserContentManagerScriptMessageInWorldReceived):
649         (beforeAll):
650
651 2018-08-23  Simon Fraser  <simon.fraser@apple.com>
652
653         Add support for dumping GC heap snapshots, and a viewer
654         https://bugs.webkit.org/show_bug.cgi?id=186416
655
656         Reviewed by Joseph Pecoraro.
657
658         Add a viewer for GC heap snapshots. A snapshot JSON file can be dragged into this
659         page for inspection (or set via the 'filename' URL parameter).
660
661         For now, this page shows all objects, all roots, and the shortest path from a root
662         to all HTMLDocuments and Windows.
663
664         * GCHeapInspector/gc-heap-inspector.html: Added.
665         * GCHeapInspector/heap-analysis/HeapSnapshot.js: Copied from Source/WebInspectorUI/UserInterface/Workers/HeapSnapshot/HeapSnapshot.js.
666         * GCHeapInspector/script/interface.js: Added.
667
668 2018-08-23  Alex Christensen  <achristensen@webkit.org>
669
670         Add new _webViewRequestPointerLock SPI with a completionHandler
671         https://bugs.webkit.org/show_bug.cgi?id=188907
672         <rdar://problem/35871109>
673
674         Reviewed by Andy Estes.
675
676         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
677         (-[PointerLockDelegate _webViewRequestPointerLock:completionHandler:]):
678         (-[PointerLockDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
679         (TEST):
680
681 2018-08-23  David Fenton  <david_fenton@apple.com>
682
683         Unreviewed, rolling out r235129.
684
685         broke internal builds
686
687         Reverted changeset:
688
689         "Allow creating WeakPtrs to const objects"
690         https://bugs.webkit.org/show_bug.cgi?id=188785
691         https://trac.webkit.org/changeset/235129
692
693 2018-08-23  Jonathan Bedard  <jbedard@apple.com>
694
695         API tests should output json results
696         https://bugs.webkit.org/show_bug.cgi?id=188869
697         <rdar://problem/43615652>
698
699         Reviewed by Aakash Jain.
700
701         JSON output for API tests is of the form:
702             {
703                 "Failed": [{"name": <test name>, "output": <test log>}],
704                 "Timedout": [...],
705                 "Skipped": [...],
706                 "Crashed": [...]
707             }
708         Tests which are successful are not displayed in the json output.
709
710         * Scripts/webkitpy/api_tests/manager.py:
711         (Manager.run): Print test results to provided file as a json dictionary.
712         * Scripts/webkitpy/api_tests/run_api_tests.py:
713         (run): Pass json option.
714         (parse_args): Add --json-output flag.
715
716 2018-08-23  Andy Estes  <aestes@apple.com>
717
718         [Apple Pay] Introduce Apple Pay JS v4 on iOS 12 and macOS Mojave
719         https://bugs.webkit.org/show_bug.cgi?id=188829
720
721         Reviewed by Tim Horton.
722
723         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
724
725 2018-08-23  Myles C. Maxfield  <mmaxfield@apple.com>
726
727         [WSL] Ternary expressions appear to be unimplemented
728         https://bugs.webkit.org/show_bug.cgi?id=178981
729
730         Reviewed by Saam Barati.
731
732         Implement ternary statements. These can be both lvalues and rvalues. (a ? b : c ? d : e)
733         is parsed as (a ? b : (c ? d : e)).
734
735         * WebGPUShadingLanguageRI/All.js:
736         * WebGPUShadingLanguageRI/Checker.js:
737         (Checker.prototype.visitTernaryExpression):
738         * WebGPUShadingLanguageRI/Evaluator.js:
739         (Evaluator.prototype.visitTernaryExpression):
740         * WebGPUShadingLanguageRI/NormalUsePropertyResolver.js:
741         (NormalUsePropertyResolver.prototype.visitTernaryExpression):
742         (NormalUsePropertyResolver):
743         * WebGPUShadingLanguageRI/Parse.js:
744         (parsePossibleTernaryConditional):
745         * WebGPUShadingLanguageRI/PropertyResolver.js:
746         (PropertyResolver.prototype._visitRValuesWithinLValue.RValueFinder.prototype.visitTernaryExpression):
747         (PropertyResolver.prototype._visitRValuesWithinLValue.RValueFinder):
748         (PropertyResolver.prototype._visitRValuesWithinLValue):
749         * WebGPUShadingLanguageRI/Rewriter.js:
750         (Rewriter.prototype.visitTernaryExpression):
751         * WebGPUShadingLanguageRI/SPIRV.html:
752         * WebGPUShadingLanguageRI/Test.html:
753         * WebGPUShadingLanguageRI/Test.js:
754         * WebGPUShadingLanguageRI/Visitor.js:
755         (Visitor.prototype.visitProtocolDecl):
756         * WebGPUShadingLanguageRI/index.html:
757
758 2018-08-22  Ryosuke Niwa  <rniwa@webkit.org>
759
760         Assert in NetworkBlobRegistry::unregisterBlobURL after network process had terminated
761         https://bugs.webkit.org/show_bug.cgi?id=188880
762
763         Reviewed by Saam Barati.
764
765         Fixed the bug that testRunner's terminateNetworkProcess, terminateServiceWorkerProcess, and terminateStorageProcess
766         were asynchronously terminating respective processes. Do so synchronously so that we can deterministically
767         test WebKit's behavior in layout tests.
768
769         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
770         (WTR::TestRunner::terminateNetworkProcess):
771         (WTR::TestRunner::terminateServiceWorkerProcess):
772         (WTR::TestRunner::terminateStorageProcess):
773         * WebKitTestRunner/TestInvocation.cpp:
774         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
775         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
776
777 2018-08-23  Myles C. Maxfield  <mmaxfield@apple.com>
778
779         [WHLSL] Allow native types to have type arguments (like "vector<float, 4>")
780         https://bugs.webkit.org/show_bug.cgi?id=188773
781
782         Reviewed by Filip Pizlo.
783
784         Before this patch, it was impossible to represent "native typedef vector<float, 4>" because NativeTypes couldn't have
785         typeArguments.
786
787         Previously, the way to identify a type was strictly by name, which was represented by a string. Therefore, when something like
788         "vector<int, 3>" was parsed, it would produce a TypeRef with the name "vector" and typeArguments [TypeRef, IntLiteral]. Then,
789         there was a pass to convert the TypeRef to have the name "int3" and no typeArguments. After this transformation, each type could
790         be uniquely identified by name. That name was then matched to the string-only NativeType name.
791
792         This is okay for vectors and matrices, but it is unfortunate for textures (e.g. Texture2D<float4>) because they don't have any
793         natural string-only name. In addition, the canonicalization would have to be made aware of the fact that Texture2D<float4> is
794         the same as Texture2D<vector<float, 4>>. Similarly, an author may wish to typedef float4 to a different name.
795
796         It would be possible to mangle the names of the texture types to something unique, but then we lose information about the inner
797         type. For example, if we did this, Visitor wouldn't recurse into the float4 when encountering Texture2D<float4> because that
798         information would be lost. This could potentially make operations like programWithUnnecessaryThingsRemoved() more difficult to
799         implement in the future.
800
801         So, it would be better to have each type uniquely identified by (name, typeArguments). TypeRef will therefore also have
802         typeArguments which are used to determine which type it is referencing. After this analysis is done to determine what each
803         TypeRef is referencing, subsequent passes shouldn't care about the typeArguments and should only care about the .type field
804         which had been set - this was true even before this patch.
805
806         This means that NameContext has to aggregate types that accept typeArguments into arrays, where each array holds all the Types
807         that have the same name but different typeArguments. Then, when we need to match a TypeRef with a Type, we can ask the
808         NameContext for the appropriate array. This is the same way that function resolution works.
809
810         We can use Node.unify() to determine whether a TypeRef matches a NativeType. Eventually, this will go away, but for now, this is
811         an okay start. This works just about the same way that function overload resolution works. 
812
813         * WebGPUShadingLanguageRI/All.js:
814         * WebGPUShadingLanguageRI/CallExpression.js:
815         (CallExpression.prototype.resolve):
816         * WebGPUShadingLanguageRI/CheckTypesWithArguments.js: Copied from Tools/WebGPUShadingLanguageRI/ResolveTypeDefs.js. After types
817         have been resolved, there should be no TypeRefs with name "vector" that don't have type arguments. This is just a sanity check.
818         (checkTypesWithArguments.TypeWithArgumentsChecker.prototype.visitTypeRef):
819         (checkTypesWithArguments.TypeWithArgumentsChecker):
820         (checkTypesWithArguments):
821         * WebGPUShadingLanguageRI/Checker.js:
822         (Checker.prototype.visitProgram): Program.types mirrors NameContext: it's a Map that maps strings to types. Because types with
823         typeArguments share names, this has to be updated to map strings to arrays for these types.
824         (Checker.prototype.visitTypeRef):
825         * WebGPUShadingLanguageRI/InferTypesForCall.js:
826         (inferTypesForCall): Don't know why this was here.
827         (inferTypesForTypeArguments): Same as inferTypesForCall, but this one is for matching type arguments.
828         * WebGPUShadingLanguageRI/Intrinsics.js: Adding the types. This patch also adds some scalar types like half, char, etc, but they
829         don't have any functions which accept them. Those will be tested in my next patch which adds math functions for these types. This
830         moves in the direction of matching the standard library in the spec.
831         (Intrinsics.cast):
832         (Intrinsics.bitwiseCast):
833         (Intrinsics.castToHalf):
834         (Intrinsics.):
835         (Intrinsics):
836         * WebGPUShadingLanguageRI/NameContext.js: Aggregate types with typeArguments into arrays.
837         (NameContext.prototype.add):
838         (NameContext.prototype.get let):
839         (NameContext.underlyingThings.prototype.else):
840         (NameContext.prototype.Symbol.iterator):
841         (NameContext):
842         * WebGPUShadingLanguageRI/NameResolver.js:
843         (NameResolver.prototype.visitTypeRef): Call TypeRef.resolve().
844         (NameResolver.prototype.visitCallExpression):
845         (NameResolver):
846         (NameResolver.prototype.visitVectorType): Deleted.
847         * WebGPUShadingLanguageRI/NativeType.js: NativeTypes can have type arguments now.
848         (NativeType):
849         (NativeType.prototype.get typeArguments):
850         (NativeType.prototype.toString):
851         (NativeType.create):
852         * WebGPUShadingLanguageRI/Prepare.js:
853         (let.prepare):
854         * WebGPUShadingLanguageRI/Program.js: Update to work with types aggregated into arrays.
855         (Program.prototype.add):
856         (Program.prototype.toString):
857         (Program):
858         * WebGPUShadingLanguageRI/RemoveTypeArguments.js: Removed.
859         * WebGPUShadingLanguageRI/ResolveNames.js: Update to work with types aggregated into arrays.
860         (resolveNamesInTypes):
861         * WebGPUShadingLanguageRI/ResolveOverloadImpl.js: Resolve the type overload for types with typeArguments.
862         * WebGPUShadingLanguageRI/ResolveTypeDefs.js: Update to work with types aggregated into arrays.
863         (resolveTypeDefsInTypes):
864         * WebGPUShadingLanguageRI/Rewriter.js: TypeRefs and Native/Vector types can have typeArguments.
865         (Rewriter.prototype.visitTypeRef):
866         (Rewriter.prototype.visitVectorType):
867         (Rewriter):
868         * WebGPUShadingLanguageRI/SPIRV.html:
869         * WebGPUShadingLanguageRI/StandardLibrary.js: Matches Intrinsics.
870         (bool.operator):
871         * WebGPUShadingLanguageRI/StatementCloner.js: Native types can have typeArguments.
872         (StatementCloner.prototype.visitNativeType):
873         * WebGPUShadingLanguageRI/SynthesizeDefaultConstructorOperator.js: Vector types need constructors too.
874         (synthesizeDefaultConstructorOperator.FindAllTypes.prototype.visitVectorType):
875         (synthesizeDefaultConstructorOperator.FindAllTypes):
876         (synthesizeDefaultConstructorOperator):
877         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js: No reason to distinguish between wrapping and instantiating a TypeRef.
878         (synthesizeStructAccessors.createTypeRef):
879         * WebGPUShadingLanguageRI/Test.html:
880         * WebGPUShadingLanguageRI/Test.js:
881         * WebGPUShadingLanguageRI/TypeOverloadResolutionFailure.js: Copied from Tools/WebGPUShadingLanguageRI/ResolveTypeDefs.js.
882         (TypeOverloadResolutionFailure):
883         (TypeOverloadResolutionFailure.prototype.get type):
884         (TypeOverloadResolutionFailure.prototype.get reason):
885         (TypeOverloadResolutionFailure.prototype.toString):
886         * WebGPUShadingLanguageRI/TypeRef.js:
887         (TypeRef.wrap):
888         (TypeRef.prototype.resolve): Figure out which item in the possibleOverloads array matches this.
889         (TypeRef.prototype.toString):
890         (TypeRef):
891         (TypeRef.instantiate): Deleted.
892         * WebGPUShadingLanguageRI/UnificationContext.js: We need to give literals a chance to assume their preferred type. This
893         adds this facility back into the compiler (it was previously deleted).
894         (UnificationContext.prototype.verify):
895         * WebGPUShadingLanguageRI/VectorType.js: Vector types have type arguments.
896         (VectorType):
897         (VectorType.prototype.get elementType):
898         (VectorType.prototype.get numElements):
899         (VectorType.prototype.get numElementsValue):
900         (VectorType.prototype.toString):
901         * WebGPUShadingLanguageRI/Visitor.js: Iterate over the typeArguments.
902         (Visitor.prototype.visitTypeRef):
903         (Visitor.prototype.visitNativeType):
904         (Visitor.prototype.visitVectorType):
905         (Visitor):
906         * WebGPUShadingLanguageRI/index.html:
907
908 2018-08-23  Wenson Hsieh  <wenson_hsieh@apple.com>
909
910         [Attachment Support] Attachment elements don't appear in drag images on macOS
911         https://bugs.webkit.org/show_bug.cgi?id=188823
912         <rdar://problem/43616378>
913
914         Reviewed by Tim Horton.
915
916         Adjusts a couple of existing tests to additionally verify that the drag image generated when dragging an
917         attachment element in macOS is not completely transparent.
918
919         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
920         (isCompletelyTransparent):
921         (TestWebKitAPI::TEST):
922
923 2018-08-23  Jonathan Bedard  <jbedard@apple.com>
924
925         Explain test name matching in run-api-tests help
926         https://bugs.webkit.org/show_bug.cgi?id=188280
927
928         Reviewed by Ryosuke Niwa.
929
930         Improve the run-api-tests help message to explain how test
931         name matching works.
932
933         * Scripts/webkitpy/api_tests/run_api_tests.py:
934         (parse_args):
935         * Scripts/webkitpy/port/base.py:
936         (Port):
937         (Port.path_to_api_test_binaries): Make binary names a globally accessible array.
938         * Scripts/webkitpy/port/win.py:
939         (WinPort):
940         (WinPort.path_to_api_test_binaries): Ditto.
941
942 2018-08-23  Youenn Fablet  <youenn@apple.com>
943
944         Use "wpt serve" to launch WPT server
945         https://bugs.webkit.org/show_bug.cgi?id=188848
946
947         Reviewed by Ryosuke Niwa.
948
949         Use "wpt serve" provided by WPT instead of using our custom launcher.
950         This simplifies things and will avoid future breakage.
951         Further simplify web_platform_test_server.py by removing no longer needed actions.
952         - Do not copy files but use alias
953         - Do not kill main pid, which leaves subprocesses alive, use interrupt instead.
954         - Stop enumerating subprocess pids.
955
956         * Scripts/webkitpy/common/system/executive_mock.py:
957         (MockExecutive.interrupt):
958         * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py: Removed.
959         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
960         (WebPlatformTestServer.__init__):
961         (WebPlatformTestServer.ports_to_forward):
962         (WebPlatformTestServer._prepare_config):
963         (WebPlatformTestServer._spawn_process):
964         (WebPlatformTestServer._stop_running_server):
965
966 2018-08-23  Jonathan Bedard  <jbedard@apple.com>
967
968         run-api-tests: Add --webkit-only, --webcore-only and --webkit-legacy-only options to run WebKit, WebCore and WebKitLegacy tests 
969         https://bugs.webkit.org/show_bug.cgi?id=188262
970
971         Reviewed by Ryosuke Niwa.
972
973         * Scripts/webkitpy/api_tests/run_api_tests.py:
974         (parse_args):
975
976 2018-08-22  Wenson Hsieh  <wenson_hsieh@apple.com>
977
978         [Attachment Support] Support dragging attachment elements out as files on macOS
979         https://bugs.webkit.org/show_bug.cgi?id=181294
980         <rdar://problem/36298801>
981
982         Reviewed by Tim Horton.
983
984         Add DragAndDropSimulator support for intercepting calls to -beginDraggingSessionWithitems:event:source:. This
985         enables us to write API tests for macOS that exercise the attachment SPI in combination with dragging attachment
986         elements.
987
988         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
989         (-[TestWKWebView attachmentElementMidPoint]):
990
991         Add a helper method local to this test suite that grabs the midpoint (in client coordinates) or the first
992         attachment element in the document.
993
994         (TestWebKitAPI::TEST):
995
996         Add a new API test to verify that dragging an attachment element on macOS produces file providers which may be
997         used to write attachment data to a path on disk. Additionally, refactor an existing API test,
998         MoveAttachmentElementAsIconByDragging, so that it runs on both iOS and macOS, to test the ability to move
999         attachment elements around in a document by using drag and drop.
1000
1001         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
1002         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
1003         (-[DragAndDropTestWKWebView beginDraggingSessionWithItems:event:source:]):
1004         (-[DragAndDropSimulator initWithWebViewFrame:configuration:]):
1005         (-[DragAndDropSimulator dealloc]):
1006         (-[DragAndDropSimulator runFrom:to:]):
1007         (-[DragAndDropSimulator beginDraggingSessionInWebView:withItems:source:]):
1008
1009         Begin a drag session and kick off the -continueDragSession loop. Unlike -performDragInWebView:…, which spins
1010         the main runloop until dragging ends, this version returns execution to the web view and schedules dragging
1011         updates asynchronously. This matches AppKit behavior.
1012
1013         (-[DragAndDropSimulator continueDragSession]):
1014
1015         Increment the dragging progress amount, send a drag update to the web view, and continue scheduling calls to
1016         itself until the progress reaches 1.
1017
1018         (-[DragAndDropSimulator performDragInWebView:atLocation:withImage:pasteboard:source:]):
1019         (-[DragAndDropSimulator initializeDraggingInfo:dragImage:source:]):
1020
1021         Pull out common logic for creating a new TestDraggingInfo after starting a drag.
1022
1023         (-[DragAndDropSimulator insertedAttachments]):
1024         (-[DragAndDropSimulator removedAttachments]):
1025         (-[DragAndDropSimulator draggingSession]):
1026         (-[DragAndDropSimulator receivePromisedFiles]):
1027
1028         Helper method to save promised files written to the pasteboard after a drag to the temporary directory. These
1029         files are tracked by DragAndDropSimulator and automatically cleaned up after the test finishes.
1030
1031         (-[DragAndDropSimulator endDataTransfer]):
1032
1033         Add a method stub on macOS, so that MoveAttachmentElementAsIconByDragging can be made cross-platform.
1034
1035         (-[DragAndDropSimulator _webView:didInsertAttachment:withSource:]):
1036         (-[DragAndDropSimulator _webView:didRemoveAttachment:]):
1037
1038         Implement method stubs to keep track of inserted or removed attachments while simulating a drag.
1039
1040 2018-08-22  Aditya Keerthi  <akeerthi@apple.com>
1041
1042         [iOS] Add support for the inputmode attribute
1043         https://bugs.webkit.org/show_bug.cgi?id=183621
1044
1045         Reviewed by Tim Horton.
1046
1047         Added an API test to verify that the correct UIKeyboardType is set depending on
1048         the type, inputmode, and pattern specified for an input field.
1049
1050         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
1051         (TestWebKitAPI::TEST):
1052         * TestWebKitAPI/ios/UIKitSPI.h:
1053
1054 2018-08-22  Alex Christensen  <achristensen@webkit.org>
1055
1056         Fix API test on Sierra after r235139
1057         https://bugs.webkit.org/show_bug.cgi?id=188810
1058
1059         * TestWebKitAPI/Tests/mac/LimitTitleSize.mm:
1060         (TEST):
1061
1062 2018-08-22  David Kilzer  <ddkilzer@apple.com>
1063
1064         Move files in WebCore project to match Xcode folder structure
1065         <https://webkit.org/b/188851>
1066
1067         Reviewed by Tim Horton.
1068
1069         * Scripts/extract-localizable-strings:
1070         * Scripts/update-webkit-localizable-strings:
1071         - Update to match new location of extract-localizable-strings.pl.
1072
1073 2018-08-21  Alex Christensen  <achristensen@webkit.org>
1074
1075         Roll out r235139 and r235146
1076         https://bugs.webkit.org/show_bug.cgi?id=188805
1077
1078         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1079         * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
1080
1081 2018-08-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1082
1083         [Attachment Support] Remove _WKAttachments and notify the UI client upon mainframe navigation
1084         https://bugs.webkit.org/show_bug.cgi?id=188715
1085         <rdar://problem/43541790>
1086
1087         Reviewed by Tim Horton.
1088
1089         Adds API tests to exercises cases where (1) the UI client is notified of attachment removal upon mainframe
1090         navigation, and (2) the UI client is notified of attachment removal upon web content process termination.
1091
1092         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1093         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentUpdates):
1094         (TestWebKitAPI::TEST):
1095
1096 2018-08-21  Alex Christensen  <achristensen@webkit.org>
1097
1098         Transition ResizeReversePaginatedWebView API test from WKPageLoaderClient to WKPageNavigationClient
1099         https://bugs.webkit.org/show_bug.cgi?id=188821
1100
1101         Reviewed by Simon Fraser.
1102
1103         * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
1104         (TestWebKitAPI::didLayout):
1105         (TestWebKitAPI::TEST):
1106
1107 2018-08-21  Myles C. Maxfield  <mmaxfield@apple.com>
1108
1109         [WHLSL] Call expressions shouldn't have type arguments
1110         https://bugs.webkit.org/show_bug.cgi?id=188770
1111
1112         Reviewed by Filip Pizlo.
1113
1114         Call expressions only had type arguments for casts, becuase native types can have type arguments.
1115         However, instead of putting those type arguments on the CallExpression, we should parse the casted
1116         type as a real type and not as an identifier, which puts the type arguments in the TypeRef.
1117
1118         Test: casts
1119
1120         * WebGPUShadingLanguageRI/CallExpression.js:
1121         (CallExpression):
1122         (CallExpression.prototype.get name):
1123         (CallExpression.resolve):
1124         (CallExpression.prototype.get typeArguments): Deleted.
1125         (CallExpression.prototype.becomeCast): Deleted.
1126         * WebGPUShadingLanguageRI/NameResolver.js:
1127         (NameResolver.prototype.visitCallExpression):
1128         * WebGPUShadingLanguageRI/Parse.js:
1129         (parseConstexpr):
1130         (parseTypeDef):
1131         (parseLeftOperatorCall):
1132         (parseCallExpression.let.parseArguments):
1133         (parsePossiblePrefix):
1134         (parsePossibleRelationalEquality):
1135         (parseLeftLogicalExpression):
1136         (parseIfStatement):
1137         (parseWhile):
1138         (parseFor):
1139         (parseDo):
1140         * WebGPUShadingLanguageRI/RemoveTypeArguments.js:
1141         * WebGPUShadingLanguageRI/Rewriter.js:
1142         (Rewriter.prototype.visitCallExpression):
1143
1144 2018-08-21  Alex Christensen  <achristensen@webkit.org>
1145
1146         Translate WebKit.LimitTitleSize API test into ObjC
1147         https://bugs.webkit.org/show_bug.cgi?id=188810
1148
1149         Reviewed by Andy Estes.
1150
1151         It uses WKPageLoaderClient.didReceiveTitleForFrame which has been replaced by KVO.
1152         I'm translating the test into ObjC rather than introducing a new callback to WKPageNavigationClient.
1153
1154         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1155         * TestWebKitAPI/Tests/WebKit/LimitTitleSize.cpp: Removed.
1156         * TestWebKitAPI/Tests/mac/LimitTitleSize.mm:
1157         (TEST):
1158         (-[LimitTitleSizeTestObserver observeValueForKeyPath:ofObject:change:context:]):
1159         (TestWebKitAPI::TEST): Deleted.
1160
1161 2018-08-21  Alex Christensen  <achristensen@webkit.org>
1162
1163         Remove unused shouldKeepCurrentBackForwardListItemInList check
1164         https://bugs.webkit.org/show_bug.cgi?id=188805
1165
1166         Reviewed by Andy Estes.
1167
1168         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1169         * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp: Removed.
1170
1171 2018-08-21  Alex Christensen  <achristensen@webkit.org>
1172
1173         Transition more API tests from WKPageLoaderClient to WKPageNavigationClient
1174         https://bugs.webkit.org/show_bug.cgi?id=188813
1175
1176         Reviewed by Andy Estes.
1177
1178         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayout.cpp:
1179         (TestWebKitAPI::didLayout):
1180         (TestWebKitAPI::setPageLoaderClient):
1181         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFails.cpp:
1182         (TestWebKitAPI::didFinishNavigation):
1183         (TestWebKitAPI::didLayout):
1184         (TestWebKitAPI::setPageLoaderClient):
1185         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1186         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutForImages.cpp:
1187         (TestWebKitAPI::didLayout):
1188         (TestWebKitAPI::setPageLoaderClient):
1189
1190 2018-08-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1191
1192         [Attachment Support] Augment _WKAttachment SPI to handle NSFileWrappers in addition to NSData
1193         https://bugs.webkit.org/show_bug.cgi?id=188496
1194         <rdar://problem/43216836>
1195
1196         Reviewed by Tim Horton.
1197
1198         Adjusts existing attachment API tests. See below for more detail.
1199
1200         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1201         (-[TestWKWebView synchronouslyInsertAttachmentWithFileWrapper:contentType:]):
1202         (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:]):
1203         (-[_WKAttachment synchronouslySetData:newContentType:newFilename:error:]):
1204         (-[_WKAttachment synchronouslySetFileWrapper:newContentType:error:]):
1205
1206         Move off of deprecated attachment SPI, and add new helper functions to synchronously insert a new attachment or
1207         update an existing attachment with a file wrapper.
1208
1209         (-[_WKAttachment expectRequestedDataToBe:]):
1210         (TestWebKitAPI::TEST):
1211
1212         Add a new test to verify that file-URL-backed NSFileWrappers can be used to insert and update attachment data.
1213         Also augment an existing test to check that an attachment element which has been copied and pasted within the
1214         same document has a different _WKAttachment wrapper object than its duplicate, but both _WKAttachments are
1215         backed by the same NSFileWrapper that was originally used to insert the attachment.
1216
1217         Additionally, add another macOS test to verify that dropping promised files in an attachment-element-enabled
1218         editable area inserts attachment elements into the document and notifies the UI client with the inserted
1219         attachment data.
1220
1221         (-[_WKAttachment synchronouslyRequestInfo:]): Deleted.
1222         (-[_WKAttachment synchronouslyRequestData:]): Deleted.
1223         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
1224         (-[DragAndDropSimulator _webView:didInsertAttachment:withSource:]):
1225
1226         Move off of -_webView:didInsertAttachment:.
1227
1228         (-[DragAndDropSimulator _webView:didInsertAttachment:]): Deleted.
1229
1230 2018-08-21  David Kilzer  <ddkilzer@apple.com>
1231
1232         sort-Xcode-project-file: top-level files and folders are sorted unintentionally when `mainGroup` has no name
1233         <https://webkit.org/b/188755>
1234
1235         Reviewed by Andy Estes.
1236
1237         * Scripts/sort-Xcode-project-file: Fix regular expression to
1238         make `mainGroup` name optional.
1239
1240 2018-08-21  Andy VanWagoner  <andy@vanwagoner.family>
1241
1242         Unreviewed, add myself to committers list.
1243
1244         * Scripts/webkitpy/common/config/contributors.json:
1245
1246 2018-08-21  Antti Koivisto  <antti@apple.com>
1247
1248         Allow creating WeakPtrs to const objects
1249         https://bugs.webkit.org/show_bug.cgi?id=188785
1250
1251         Reviewed by Geoffrey Garen.
1252
1253         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
1254         (TestWebKitAPI::Base::weakPtrFactory const):
1255         (TestWebKitAPI::TEST):
1256         (TestWebKitAPI::Base::weakPtrFactory): Deleted.
1257
1258 2018-08-21  Per Arne Vollan  <pvollan@apple.com>
1259
1260         [WebGL] Contexts are not updated when display configuration changed.
1261         https://bugs.webkit.org/show_bug.cgi?id=188750
1262
1263         Reviewed by Brent Fulgham.
1264
1265         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1266         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1267         (WTR::TestRunner::sendDisplayConfigurationChangedMessageForTesting):
1268         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1269         * WebKitTestRunner/TestController.cpp:
1270         (WTR::TestController::sendDisplayConfigurationChangedMessageForTesting):
1271         * WebKitTestRunner/TestController.h:
1272         * WebKitTestRunner/TestInvocation.cpp:
1273         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1274
1275 2018-08-21  John Wilander  <wilander@apple.com>
1276
1277         Make ResourceLoadObserver::logWebSocketLoading() handle websockets in detached frames
1278         https://bugs.webkit.org/show_bug.cgi?id=188757
1279         <rdar://problem/38713390>
1280
1281         Reviewed by Alex Christensen.
1282
1283         These changes add the new WebKitTestRunner function
1284         isStatisticsRegisteredAsSubresourceUnder().
1285
1286         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1287         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1288         (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
1289         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1290         * WebKitTestRunner/TestController.cpp:
1291         (WTR::TestController::isStatisticsRegisteredAsSubresourceUnder):
1292         * WebKitTestRunner/TestController.h:
1293         * WebKitTestRunner/TestInvocation.cpp:
1294         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1295
1296 2018-08-21  Alex Christensen  <achristensen@webkit.org>
1297
1298         Transition more API tests from WKPageLoaderClient to WKPageNavigationClient
1299         https://bugs.webkit.org/show_bug.cgi?id=188797
1300
1301         Reviewed by Tim Horton.
1302
1303         * TestWebKitAPI/Tests/WebKit/AboutBlankLoad.cpp:
1304         (TestWebKitAPI::didFinishNavigation):
1305         (TestWebKitAPI::TEST):
1306         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1307         * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
1308         (TestWebKitAPI::didSameDocumentNavigation):
1309         (TestWebKitAPI::TEST):
1310         (TestWebKitAPI::didSameDocumentNavigationForFrame): Deleted.
1311         * TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
1312         (TestWebKitAPI::didFailProvisionalNavigation):
1313         (TestWebKitAPI::TEST):
1314         (TestWebKitAPI::didFailProvisionalLoadWithErrorForFrame): Deleted.
1315         * TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
1316         (TestWebKitAPI::didStartProvisionalNavigation):
1317         (TestWebKitAPI::didCommitNavigation):
1318         (TestWebKitAPI::didFinishNavigation):
1319         (TestWebKitAPI::TEST):
1320         (TestWebKitAPI::didStartProvisionalLoadForFrame): Deleted.
1321         (TestWebKitAPI::didCommitLoadForFrame): Deleted.
1322         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1323         * TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
1324         (TestWebKitAPI::didStartProvisionalNavigation):
1325         (TestWebKitAPI::didCommitNavigation):
1326         (TestWebKitAPI::didFinishNavigation):
1327         (TestWebKitAPI::TEST):
1328         (TestWebKitAPI::didStartProvisionalLoadForFrame): Deleted.
1329         (TestWebKitAPI::didCommitLoadForFrame): Deleted.
1330         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1331         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
1332         (TestWebKitAPI::renderingProgressDidChange):
1333         (TestWebKitAPI::TEST):
1334         (TestWebKitAPI::didLayout): Deleted.
1335         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFrames.cpp:
1336         (TestWebKitAPI::didFinishNavigation):
1337         (TestWebKitAPI::renderingProgressDidChange):
1338         (TestWebKitAPI::setPageLoaderClient):
1339         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1340         (TestWebKitAPI::didLayout): Deleted.
1341         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
1342         (TestWebKitAPI::State::State):
1343         (TestWebKitAPI::didStartProvisionalNavigation):
1344         (TestWebKitAPI::didCommitNavigation):
1345         (TestWebKitAPI::didFinishNavigation):
1346         (TestWebKitAPI::decidePolicyForNavigationAction):
1347         (TestWebKitAPI::decidePolicyForResponse):
1348         (TestWebKitAPI::TEST):
1349         (TestWebKitAPI::didStartProvisionalLoadForFrame): Deleted.
1350         (TestWebKitAPI::didCommitLoadForFrame): Deleted.
1351         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1352         (TestWebKitAPI::decidePolicyForNewWindowAction): Deleted.
1353         * TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
1354         (TestWebKitAPI::didSameDocumentNavigation):
1355         (TestWebKitAPI::TEST):
1356         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1357         (TestWebKitAPI::didSameDocumentNavigationForFrame): Deleted.
1358         * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
1359         (TestWebKitAPI::TEST):
1360         (TestWebKitAPI::didSameDocumentNavigationForFrame): Deleted.
1361         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
1362         (TestWebKitAPI::didFinishLoad):
1363         (TestWebKitAPI::TEST):
1364         * TestWebKitAPI/Tests/WebKit/WKBundleFileHandle.cpp:
1365         (TestWebKitAPI::didFinishNavigation):
1366         (TestWebKitAPI::TEST):
1367         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1368         * TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
1369         (TestWebKitAPI::didFinishLoad):
1370         (TestWebKitAPI::TEST):
1371         * TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
1372         (WebKit2_CommandBackForwardTestWKView::SetUp):
1373         (WebKit2_CommandBackForwardTestWKView::didFinishLoadForFrame): Deleted.
1374
1375 2018-08-20  Alex Christensen  <achristensen@webkit.org>
1376
1377         Replace WKPageLoaderClient with WKPageNavigationClient in many API tests
1378         https://bugs.webkit.org/show_bug.cgi?id=188771
1379
1380         Reviewed by Tim Horton.
1381
1382         * TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
1383         (TestWebKitAPI::didFinishNavigation):
1384         (TestWebKitAPI::TEST):
1385         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1386         * TestWebKitAPI/Tests/WebKit/CookieManager.cpp:
1387         (TestWebKitAPI::didFinishNavigation):
1388         (TestWebKitAPI::TEST):
1389         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1390         * TestWebKitAPI/Tests/WebKit/DeferredViewInWindowStateChange.mm:
1391         (TestWebKitAPI::didFinishNavigation):
1392         (TestWebKitAPI::setPageLoaderClient):
1393         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1394         * TestWebKitAPI/Tests/WebKit/DidNotHandleKeyDown.cpp:
1395         (TestWebKitAPI::TEST):
1396         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1397         * TestWebKitAPI/Tests/WebKit/DidRemoveFrameFromHiearchyInPageCache.cpp:
1398         (TestWebKitAPI::didFinishNavigation):
1399         (TestWebKitAPI::setPageLoaderClient):
1400         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1401         * TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
1402         (TestWebKitAPI::didFinishNavigation):
1403         (TestWebKitAPI::setClients):
1404         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1405         * TestWebKitAPI/Tests/WebKit/Find.cpp:
1406         (TestWebKitAPI::didFinishNavigation):
1407         (TestWebKitAPI::TEST):
1408         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1409         * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
1410         (TestWebKitAPI::didFinishNavigation):
1411         (TestWebKitAPI::TEST):
1412         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1413         * TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
1414         (TestWebKitAPI::didFinishNavigation):
1415         (TestWebKitAPI::TEST):
1416         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1417         * TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
1418         (TestWebKitAPI::didFinishNavigation):
1419         (TestWebKitAPI::TEST):
1420         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1421         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
1422         (TestWebKitAPI::didFinishNavigation):
1423         (TestWebKitAPI::TEST):
1424         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1425         * TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle.cpp:
1426         (TestWebKitAPI::didFinishNavigation):
1427         (TestWebKitAPI::setPageLoaderClient):
1428         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1429         * TestWebKitAPI/Tests/WebKit/InjectedBundleBasic.cpp:
1430         (TestWebKitAPI::didFinishNavigation):
1431         (TestWebKitAPI::TEST):
1432         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1433         * TestWebKitAPI/Tests/WebKit/LimitTitleSize.cpp:
1434         (TestWebKitAPI::didFinishLoadForFrame):
1435         * TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
1436         (TestWebKitAPI::didFinishNavigation):
1437         (TestWebKitAPI::loadAlternateHTMLString):
1438         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1439         * TestWebKitAPI/Tests/WebKit/LoadCanceledNoServerRedirectCallback.cpp:
1440         (TestWebKitAPI::didFinishNavigation):
1441         (TestWebKitAPI::TEST):
1442         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1443         * TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
1444         (TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
1445         (TestWebKitAPI::didFinishLoad):
1446         * TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
1447         (TestWebKitAPI::didFinishNavigation):
1448         (TestWebKitAPI::setPageLoaderClient):
1449         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1450         * TestWebKitAPI/Tests/WebKit/MouseMoveAfterCrash.cpp:
1451         (TestWebKitAPI::didFinishNavigation):
1452         (TestWebKitAPI::setPageLoaderClient):
1453         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1454         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFails.cpp:
1455         (TestWebKitAPI::didFinishLoadForFrame):
1456         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
1457         (TestWebKitAPI::TEST):
1458         * TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
1459         (TestWebKitAPI::TEST):
1460         * TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
1461         (TestWebKitAPI::didFinishLoad):
1462         (TestWebKitAPI::TEST):
1463         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
1464         (TestWebKitAPI::didFinishNavigation):
1465         (TestWebKitAPI::setPageLoaderClient):
1466         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1467         * TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
1468         (TestWebKitAPI::didFinishNavigation):
1469         (TestWebKitAPI::setPageLoaderClient):
1470         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1471         * TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
1472         (TestWebKitAPI::didFinishNavigation):
1473         (TestWebKitAPI::TEST):
1474         (TestWebKitAPI::didFinishDocumentLoadForFrame): Deleted.
1475         * TestWebKitAPI/Tests/WebKit/SpacebarScrolling.cpp:
1476         (TestWebKitAPI::didFinishNavigation):
1477         (TestWebKitAPI::TEST):
1478         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1479         * TestWebKitAPI/Tests/WebKit/StopLoadingDuringDidFailProvisionalLoad.cpp:
1480         (TestWebKitAPI::didFailProvisionalNavigation):
1481         (TestWebKitAPI::TEST):
1482         (TestWebKitAPI::didFailProvisionalLoadWithErrorForFrame): Deleted.
1483         * TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
1484         (TestWebKitAPI::didFinishNavigation):
1485         (TestWebKitAPI::TEST):
1486         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1487         * TestWebKitAPI/Tests/WebKit/TextFieldDidBeginAndEndEditing.cpp:
1488         (TestWebKitAPI::WebKit2TextFieldBeginAndEditEditingTest::didFinishNavigation):
1489         (TestWebKitAPI::WebKit2TextFieldBeginAndEditEditingTest::setPageLoaderClient):
1490         (TestWebKitAPI::WebKit2TextFieldBeginAndEditEditingTest::didFinishLoadForFrame): Deleted.
1491         * TestWebKitAPI/Tests/WebKit/UserMessage.cpp:
1492         (TestWebKitAPI::WebKit2UserMessageRoundTripTest::didFinishNavigation):
1493         (TestWebKitAPI::WebKit2UserMessageRoundTripTest::setPageLoaderClient):
1494         (TestWebKitAPI::WebKit2UserMessageRoundTripTest::didFinishLoadForFrame): Deleted.
1495         * TestWebKitAPI/Tests/WebKit/WKPageConfiguration.cpp:
1496         (TestWebKitAPI::didFinishNavigation):
1497         (TestWebKitAPI::setPageLoaderClient):
1498         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1499         * TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
1500         (TestWebKitAPI::didFinishNavigation):
1501         (TestWebKitAPI::setPageLoaderClient):
1502         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1503         * TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
1504         (TestWebKitAPI::didFinishNavigation):
1505         (TestWebKitAPI::setPageLoaderClient):
1506         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1507         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
1508         (TestWebKitAPI::didFinishNavigation):
1509         (TestWebKitAPI::setUpClients):
1510         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1511         * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
1512         (TestWebKitAPI::didFinishNavigation):
1513         (TestWebKitAPI::setPageLoaderClient):
1514         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1515         * TestWebKitAPI/Tests/WebKit/WebArchive.cpp:
1516         (TestWebKitAPI::didFinishNavigation):
1517         (TestWebKitAPI::TEST):
1518         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1519         * TestWebKitAPI/Tests/WebKit/mac/AttributedSubstringForProposedRangeWithImage.mm:
1520         (TestWebKitAPI::didFinishNavigation):
1521         (TestWebKitAPI::TEST):
1522         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1523         * TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
1524         (TestWebKitAPI::didFinishNavigation):
1525         (TestWebKitAPI::TEST):
1526         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1527         * TestWebKitAPI/Tests/WebKit/mac/CustomBundleParameter.mm:
1528         (TestWebKitAPI::didFinishNavigation):
1529         (TestWebKitAPI::TEST):
1530         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1531         * TestWebKitAPI/Tests/WebKit/mac/EditorCommands.mm:
1532         (TestWebKitAPI::didFinishNavigation):
1533         (TestWebKitAPI::TEST):
1534         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1535         * TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
1536         (TestWebKitAPI::didFinishNavigation):
1537         (TestWebKitAPI::TEST):
1538         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1539         * TestWebKitAPI/Tests/WebKit/mac/InjectedBundleAppleEvent.cpp:
1540         (TestWebKitAPI::didFinishNavigation):
1541         (TestWebKitAPI::TEST):
1542         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1543         * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
1544         (didFinishNavigation):
1545         (TestWebKitAPI::TEST):
1546         (didFinishLoadForFrame): Deleted.
1547         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
1548         (didFinishNavigation):
1549         (TestWebKitAPI::TEST):
1550         (didFinishLoadForFrame): Deleted.
1551         * TestWebKitAPI/Tests/mac/FirstResponderScrollingPosition.mm:
1552         (TestWebKitAPI::didFinishNavigation):
1553         (TestWebKitAPI::TEST):
1554         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1555         * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
1556         (TestWebKitAPI::didFinishNavigation):
1557         (TestWebKitAPI::setPageLoaderClient):
1558         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
1559
1560 2018-08-21  Adrian Perez de Castro  <aperez@igalia.com>
1561
1562         [WPE] Update to use libwpe-1.0.0 and WPEBackend-fdo-1.0.0
1563         https://bugs.webkit.org/show_bug.cgi?id=188782
1564
1565         Reviewed by Michael Catanzaro.
1566
1567         Make the build depend on wpe-0.2, and change the Flatpak and JHBuild development
1568         environments to use version 1.0.0 of libwpe and WPEBackend-fdo.
1569
1570         * flatpak/org.webkit.WPE.yaml: Update to use libwpe and WPEBackend-fdo version 1.0.0 from
1571         release tarballs, and removed the (now unneeded) Lua and LuaJIT modules.
1572         * wpe/jhbuild.modules: Ditto.
1573
1574 2018-08-21  Michael Catanzaro  <mcatanzaro@igalia.com>
1575
1576         [Flatpak] Update to GNOME master runtime
1577         https://bugs.webkit.org/show_bug.cgi?id=188731
1578
1579         Reviewed by Philippe Normand.
1580
1581         The 3.28 runtime is pretty stale at this point. We could wait a couple weeks for the 3.30
1582         runtime, but I don't think there's any need to stick with the stable runtime when we have
1583         the ability to pin to a particular version of the master runtime. There are also several
1584         advantages to switching to the master runtime.
1585
1586         * flatpak/files/httpd-autogen.sh: Removed.
1587         * flatpak/flatpakutils.py:
1588         (WebkitFlatpak.clean_args):
1589         * flatpak/org.webkit.GTK.yaml:
1590         * flatpak/org.webkit.WebKit.yaml:
1591         * flatpak/patches/httpd-0001-configure-use-pkg-config-for-PCRE-detection.patch: Removed.
1592         * flatpak/patches/libgcrypt-0001-Use-pkg-config-to-detect-gpg-error.patch: Removed.
1593
1594 2018-08-20  Jonathan Bedard  <jbedard@apple.com>
1595
1596         WebKitTestRunner: Add watchOS entitlements
1597         https://bugs.webkit.org/show_bug.cgi?id=188758
1598
1599         Reviewed by Tim Horton.
1600
1601         watchOS needs an additional entitlement to open up a socket for on-device testing.
1602
1603         * WebKitTestRunner/Configurations/WebKitTestRunnerApp-watchOS.entitlements: Added.
1604         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
1605         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1606
1607 2018-08-20  Thomas Denney  <tdenney@apple.com>
1608
1609         [WHLSL] Remove generics from the interpreter
1610         https://bugs.webkit.org/show_bug.cgi?id=187988
1611
1612         Reviewed by Myles C. Maxfield.
1613
1614         This patch completely removes generic and protocol support from WHLSL
1615         whilst adding back any features that were originally implemented with
1616         generics.
1617
1618         Many of the changes in this patch just remove occurrences of type
1619         arguments and type parameters --- although there are some cases where
1620         they have been deliberately left in --- as well as removing tests only
1621         relevant to those features. These changes are not listed below.
1622
1623         * WebGPUShadingLanguageRI/All.js: Add/remove JS dependencies
1624         * WebGPUShadingLanguageRI/AutoWrapper.js:
1625         (AutoWrapper.prototype.visitConstexprTypeParameter): Deleted.
1626         * WebGPUShadingLanguageRI/BuiltinVectorCasts.js: Added. The built-in
1627         vectors have many constructors for different scalar and vector types.
1628         These were originally implemented with generics.
1629         * WebGPUShadingLanguageRI/BuiltinVectorEqualityOperator.js: Adds the
1630         equality operator for built-in vectors, again this was removed with
1631         generics.
1632         * WebGPUShadingLanguageRI/BuiltinVectorGetter.js: Added, as above.
1633         Built-in vectors only support the getter and setter, and not the ander.
1634         * WebGPUShadingLanguageRI/BuiltinVectorIndexGetter.js: Added.
1635         * WebGPUShadingLanguageRI/BuiltinVectorIndexSetter.js: Added.
1636         * WebGPUShadingLanguageRI/BuiltinVectorSetter.js: Added.
1637         * WebGPUShadingLanguageRI/CallExpression.js: Adds support for
1638         instantiating functions which cannot be discovered earlier in
1639         preparation because their types are absent (specifically support for the
1640         operator &[] for array references and the length operator for array
1641         references). Previously support for these was implemented with generics.
1642         (CallExpression.resolve):
1643         (CallExpression.prototype.resolve):
1644         (CallExpression.prototype._resolveByInstantiation):
1645         (CallExpression.prototype._resolveToOperatorAnderIndexer):
1646         (CallExpression.prototype._resolveToOperatorLength):
1647         (CallExpression.prototype.resolveToOverload):
1648         (CallExpression.prototype.becomeCast):
1649         (CallExpression.prototype.toString):
1650         (CallExpression):
1651         * WebGPUShadingLanguageRI/CallExpressionTypeArgumentResolver.js: Added.
1652         We support syntax like vector<int, 2>(a, b) for constructing vectors;
1653         this new preparation step resolves them to specific constructors.
1654         * WebGPUShadingLanguageRI/CallFunction.js:
1655         * WebGPUShadingLanguageRI/Checker.js:
1656         * WebGPUShadingLanguageRI/ConstexprFolder.js:
1657         * WebGPUShadingLanguageRI/CreateLiteralType.js:
1658         * WebGPUShadingLanguageRI/ExpressionFinder.js:
1659         * WebGPUShadingLanguageRI/FlattenProtocolExtends.js: Removed.
1660         * WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js:
1661         * WebGPUShadingLanguageRI/Func.js:
1662         * WebGPUShadingLanguageRI/FuncDef.js:
1663         * WebGPUShadingLanguageRI/FuncInstantiator.js: Deleted.
1664         * WebGPUShadingLanguageRI/InferTypesForCall.js: Removed usage of type arguments.
1665         * WebGPUShadingLanguageRI/Inline.js: Remove use of FuncInstantiator.
1666         * WebGPUShadingLanguageRI/Inliner.js: Ditto.
1667         * WebGPUShadingLanguageRI/Intrinsics.js:
1668         * WebGPUShadingLanguageRI/Lexer.js:
1669         * WebGPUShadingLanguageRI/LiteralTypeChecker.js:
1670         * WebGPUShadingLanguageRI/NameContext.js:
1671         (NameContext.prototype.add):
1672         (NameContext.prototype.get let):
1673         (NameContext.underlyingThings.prototype.else):
1674         (NameContext.prototype.resolveFuncOverload):
1675         * WebGPUShadingLanguageRI/NameFinder.js:
1676         * WebGPUShadingLanguageRI/NameResolver.js:
1677         (NameResolver.prototype.visitFunc):
1678         (NameResolver.prototype.visitFuncDef):
1679         (NameResolver.prototype.visitTypeDef):
1680         (NameResolver.prototype.visitStructType):
1681         (NameResolver.prototype.visitTypeRef):
1682         (NameResolver.prototype.visitCallExpression):
1683         (NameResolver.prototype.visitVectorType):
1684         (NameResolver):
1685         (NameResolver.prototype._visitTypeParametersAndBuildNameContext): Deleted.
1686         (NameResolver.prototype.visitProtocolDecl): Deleted.
1687         * WebGPUShadingLanguageRI/NativeFunc.js:
1688         (NativeFunc):
1689         * WebGPUShadingLanguageRI/NativeFuncInstance.js: Deleted.
1690         * WebGPUShadingLanguageRI/NativeType.js:
1691         (NativeType):
1692         (NativeType.prototype.get name):
1693         (NativeType.prototype.toString):
1694         (NativeType.prototype.get typeParameters): Deleted.
1695         (NativeType.prototype.instantiate): Deleted.
1696         * WebGPUShadingLanguageRI/Node.js:
1697         (Node.prototype.commit):
1698         (Node):
1699         (Node.prototype.substitute): Deleted.
1700         (Node.prototype.substituteToUnification): Deleted.
1701         * WebGPUShadingLanguageRI/OperatorAnderIndex.js: Added, previously
1702         implemented with generics.
1703         * WebGPUShadingLanguageRI/OperatorArrayRefLength.js: Ditto.
1704         * WebGPUShadingLanguageRI/OperatorBool.js: Ditto.
1705         * WebGPUShadingLanguageRI/Parse.js: Removed everything related to
1706         generics and protocols.
1707         * WebGPUShadingLanguageRI/Prepare.js: Added new stages.
1708         * WebGPUShadingLanguageRI/Program.js:
1709         (Program):
1710         (Program.prototype.get types):
1711         (Program.prototype.add):
1712         (Program.prototype.get protocols): Deleted.
1713         * WebGPUShadingLanguageRI/ProtocolDecl.js: Removed.
1714         * WebGPUShadingLanguageRI/ProtocolRef.js: Removed.
1715         * WebGPUShadingLanguageRI/RecursiveTypeChecker.js:
1716         * WebGPUShadingLanguageRI/ResolveCallExpressionsWithTypeArguments.js: Added.
1717         * WebGPUShadingLanguageRI/ResolveNames.js:
1718         * WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
1719         * WebGPUShadingLanguageRI/ResolveTypeDefs.js:
1720         (resolveTypeDefsInProtocols): Deleted.
1721         * WebGPUShadingLanguageRI/Rewriter.js: Changes for new classes.
1722         * WebGPUShadingLanguageRI/SPIRV.html:
1723         * WebGPUShadingLanguageRI/SPIRVCodegen.js:
1724         * WebGPUShadingLanguageRI/StandardLibrary.js: Replace old generic features.
1725         * WebGPUShadingLanguageRI/StatementCloner.js: Changes for new classes.
1726         (StructLayoutBuilder):
1727         * WebGPUShadingLanguageRI/StructType.js:
1728         * WebGPUShadingLanguageRI/SwizzleOp.js:
1729         (SwizzleOp):
1730         (SwizzleOp.prototype.get baseTypeName):
1731         (SwizzleOp.prototype.toString):
1732         (SwizzleOp.functions.):
1733         (SwizzleOp.functions):
1734         (SwizzleOp.prototype.instantiateImplementation):
1735         (SwizzleOp.allSwizzleOperators.): Deleted.
1736         (SwizzleOp.allSwizzleOperators): Deleted.
1737         * WebGPUShadingLanguageRI/SynthesizeArrayOperatorLength.js: Added,
1738         previously implemented with generics.
1739         * WebGPUShadingLanguageRI/SynthesizeCopyConstructorOperator.js: Ditto.
1740         * WebGPUShadingLanguageRI/SynthesizeDefaultConstructorOperator.js: Ditto.
1741         * WebGPUShadingLanguageRI/SynthesizeEnumFunctions.js: Ditto.
1742         * WebGPUShadingLanguageRI/SynthesizeOperatorBool.js: Ditto.
1743         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
1744         (synthesizeStructAccessors.setupImplementationData):
1745         (synthesizeStructAccessors.createFieldType):
1746         (synthesizeStructAccessors.createTypeRef):
1747         (synthesizeStructAccessors.setupAnder):
1748         (synthesizeStructAccessors):
1749         (synthesizeStructAccessors.createTypeParameters): Deleted.
1750         (synthesizeStructAccessors.): Deleted.
1751         * WebGPUShadingLanguageRI/Test.html:
1752         * WebGPUShadingLanguageRI/Test.js: Removed redundant tests and added new
1753         tests for changed language features.
1754         * WebGPUShadingLanguageRI/Type.js:
1755         * WebGPUShadingLanguageRI/TypeDef.js:
1756         * WebGPUShadingLanguageRI/TypeDefResolver.js:
1757         * WebGPUShadingLanguageRI/TypeParameterRewriter.js: Removed.
1758         * WebGPUShadingLanguageRI/TypeRef.js:
1759         * WebGPUShadingLanguageRI/TypeVariable.js: Removed.
1760         * WebGPUShadingLanguageRI/UnificationContext.js:
1761         * WebGPUShadingLanguageRI/VectorType.js: Added.
1762         * WebGPUShadingLanguageRI/Visitor.js: Changes for new classes.
1763         * WebGPUShadingLanguageRI/WSL.md: Removed description of
1764         generics/protocols.
1765         * WebGPUShadingLanguageRI/WrapChecker.js:
1766         (WrapChecker):
1767         (WrapChecker.visitConstexprTypeParameter): Deleted.
1768         (WrapChecker.prototype.visitFuncParameter): Deleted.
1769         (WrapChecker.prototype.visitTypeVariable): Deleted.
1770         * WebGPUShadingLanguageRI/index.html:
1771
1772 2018-08-20  Thomas Denney  <tdenney@apple.com>
1773
1774         Added Thomas Denney to contributors.json.
1775         https://bugs.webkit.org/show_bug.cgi?id=188525
1776
1777         Reviewed by Myles C. Maxfield.
1778
1779         * Scripts/webkitpy/common/config/contributors.json:
1780
1781 2018-08-20  Bernhard M. Wiedemann  <bwiedemann@suse.de>
1782
1783         [GTK] Sort inspector GResource manifest to ensure reproducible builds
1784         https://bugs.webkit.org/show_bug.cgi?id=188738
1785
1786         Reviewed by Michael Catanzaro.
1787
1788         * glib/generate-inspector-gresource-manifest.py:
1789         (get_filenames): sort list of input files
1790
1791 2018-08-20  Wenson Hsieh  <wenson_hsieh@apple.com>
1792
1793         [iOS] Paste is missing from callout bar when pasteboard only contains custom data
1794         https://bugs.webkit.org/show_bug.cgi?id=184271
1795         <rdar://problem/39256708>
1796
1797         Reviewed by Andy Estes.
1798
1799         This API test is failing when run against older macOS builds, where custom pasteboard
1800         data is not enabled by default.
1801
1802         * TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:
1803         (TestWebKitAPI::TEST):
1804
1805 2018-08-20  Claudio Saavedra  <csaavedra@igalia.com>
1806
1807         Add WPE Debug configuration to the flakiness dashboard
1808         https://bugs.webkit.org/show_bug.cgi?id=188743
1809
1810         Reviewed by Michael Catanzaro.
1811
1812         * TestResultServer/static-dashboards/builders.jsonp:
1813         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
1814
1815 2018-08-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1816
1817         [GLIB] Add API to throw exceptions using printf formatted strings
1818         https://bugs.webkit.org/show_bug.cgi?id=188698
1819
1820         Reviewed by Michael Catanzaro.
1821
1822         Add cases to test the new API.
1823
1824         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
1825         (createFormattedError):
1826         (createCustomFormattedError):
1827         (testJSCExceptions):
1828
1829 2018-08-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1830
1831         [GLIB] Complete the JSCException API
1832         https://bugs.webkit.org/show_bug.cgi?id=188695
1833
1834         Reviewed by Michael Catanzaro.
1835
1836         Add cases to test the new API.
1837
1838         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
1839         (testJSCCheckSyntax):
1840         (createCustomError):
1841         (testJSCExceptions):
1842
1843 2018-08-18  Wenson Hsieh  <wenson_hsieh@apple.com>
1844
1845         [iOS] Paste is missing from callout bar when pasteboard only contains custom data
1846         https://bugs.webkit.org/show_bug.cgi?id=184271
1847         <rdar://problem/39256708>
1848
1849         Reviewed by Ryosuke Niwa.
1850
1851         Add a new API test to verify that on both iOS and macOS, copied custom pasteboard data can only be pasted in a
1852         matching origin. Additionally verify that on iOS, the web view is capable of performing the "paste:" selector.
1853
1854         * TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:
1855         (TestWebKitAPI::TEST):
1856         (imagePath): Deleted.
1857         (writeTypesAndDataToPasteboard): Deleted.
1858         (setUpWebView): Deleted.
1859         (markupString): Deleted.
1860
1861         Make this test file no longer exclusive to macOS.
1862
1863         * TestWebKitAPI/cocoa/TestWKWebView.h:
1864         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1865         (-[TestWKWebView synchronouslyLoadHTMLString:baseURL:]):
1866
1867         Tweak this helper to also take in a `baseURL`. Defaults to using the TestWebKitAPI bundle resource URL.
1868
1869         (-[TestWKWebView synchronouslyLoadHTMLString:]):
1870
1871 2018-08-17  Jonathan Bedard  <jbedard@apple.com>
1872
1873         Add back --wtf-only to run-api-tests
1874         https://bugs.webkit.org/show_bug.cgi?id=187893
1875         <rdar://problem/42483983>
1876
1877         Reviewed by Aakash Jain.
1878
1879         When doing WTF development, it is not necessary to build or run all of the API
1880         tests. Generally, if a user has specified a specific binary (or binaries) that
1881         they are interested in testing, it is not necessary to check all API test binaries.
1882
1883         * Scripts/webkitpy/api_tests/manager.py:
1884         (Manager._collect_tests): Only use the binaries matching the program arguments
1885         when collecting tests.
1886         (Manager._binaries_for_arguments): Generate a list of binaries which match the
1887         program arguments.
1888         (Manager.run): Pass a list binaries to check.
1889         * Scripts/webkitpy/api_tests/run_api_tests.py:
1890         (parse_args):
1891         * Scripts/webkitpy/port/base.py:
1892         (Port.check_api_test_build): If the caller specifies which API test binaries it
1893         requires, only check the ones specified.
1894         (Port.path_to_api_test_binaries): Allow the caller to only build the WTF API tests.
1895         (Port._build_api_tests): Allow the caller to only build the WTF API tests.
1896         * Scripts/webkitpy/port/win.py:
1897         (WinPort.path_to_api_test_binaries):
1898
1899 2018-08-17  Jer Noble  <jer.noble@apple.com>
1900
1901         REGRESSION (234743) Timeouts in TestWebKitAPI.PreferredAudioBufferSize.AudioWithWebAudio and TestWebKitAPI.PreferredAudioBufferSize.WebAudio
1902         https://bugs.webkit.org/show_bug.cgi?id=188470
1903         <rdar://problem/43144969>
1904
1905         Reviewed by Alex Christensen.
1906
1907         On a loaded server, the WebContent process may send the "playing" message before the
1908         UIProcess has a chance to register a listener for that message. Restructure the tests
1909         so that the listener is registered before the page is loaded.
1910
1911         * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
1912         (PreferredAudioBufferSize::runPlayingTestWithPageNamed):
1913         (TEST_F):
1914
1915 2018-08-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1916
1917         [macOS] [WK2] Add infrastructure to test receiving file promises on drop
1918         https://bugs.webkit.org/show_bug.cgi?id=188583
1919
1920         Reviewed by Andy Estes.
1921
1922         Enable testing file promise drop handling on the WebKit2 port of macOS by introducing a subclass of
1923         NSFilePromiseReceiver and implementing `-enumerateDraggingItemsWithOptions:forView:…` on TestDraggingInfo (the
1924         concrete NSDraggingInfo implementation used by DragAndDropSimulator) using the mock file receiver. Also
1925         introduces 3 new macOS tests. See below for more details.
1926
1927         A large portion of this logic is ported over from DumpRenderTree testing infrastructure added in r229297. In a
1928         future patch, we should introduce a way to write code common to both API tests, WebKitTestRunner and
1929         DumpRenderTree, and make this code shared among all three testing harnesses.
1930
1931         Tests:  DragAndDropTests.DragImageElementIntoFileUpload
1932                 DragAndDropTests.DragPromisedImageFileIntoFileUpload
1933                 DragAndDropTests.DragImageFileIntoFileUpload
1934
1935         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1936         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
1937         (TEST):
1938
1939         Drive-by fix: Replace NSMakePoint with CGPointMake.
1940
1941         * TestWebKitAPI/Tests/WebKitCocoa/image-and-file-upload.html:
1942
1943         Add a new test page consisting of an image and a "file upload" area that updates exercises DataTransfer API to
1944         load the dropped image.
1945
1946         * TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm:
1947         (waitForConditionWithLogging):
1948
1949         Add a helper function to wait for a condition to evaluate to true. To make failures more informative,
1950         additionally add a mechanism to log a warning message after a given timeout, if the condition has yet to be met.
1951
1952         (TEST):
1953
1954         Add new tests to exercise a few cases of file upload in WebKit, including: (1) dragging from an image element,
1955         (2) dragging files written to the pasteboard as promises, and (3) files written to the pasteboard as file URLs.
1956
1957         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
1958
1959         Surface the new functionality provided by the file promise receiver mock via two new methods on
1960         DragAndDropSimulator to (1) write files as file promises to the pasteboard, and (2) write files as file paths
1961         directly to the pasteboard.
1962
1963         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
1964         (-[DragAndDropSimulator performDragInWebView:atLocation:withImage:pasteboard:source:]):
1965         (-[DragAndDropSimulator externalPromisedFiles]):
1966         (getFilePathsAndTypeIdentifiers):
1967         (-[DragAndDropSimulator writePromisedFiles:]):
1968         (-[DragAndDropSimulator writeFiles:]):
1969         * TestWebKitAPI/mac/TestDraggingInfo.h:
1970         * TestWebKitAPI/mac/TestDraggingInfo.mm:
1971         (-[TestDraggingInfo initWithDragAndDropSimulator:]):
1972         (-[TestDraggingInfo filePromiseReceivers]):
1973         (-[TestDraggingInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
1974
1975         Implement this by invoking the given block with a TestFilePromiseReceiver. While all other classes are
1976         unhandled by this testing code, WebKit only calls into this with [NSFilePromiseReceiver class], this is
1977         currently sufficient for testing purposes.
1978
1979         * TestWebKitAPI/mac/TestFilePromiseReceiver.h: Copied from Tools/TestWebKitAPI/mac/TestDraggingInfo.h.
1980         * TestWebKitAPI/mac/TestFilePromiseReceiver.mm: Added.
1981         (-[TestFilePromiseReceiver initWithPromisedTypeIdentifiers:dragAndDropSimulator:]):
1982         (-[TestFilePromiseReceiver fileTypes]):
1983         (-[TestFilePromiseReceiver fileNames]):
1984         (-[TestFilePromiseReceiver dealloc]):
1985         (-[TestFilePromiseReceiver draggingSource]):
1986         (-[TestFilePromiseReceiver setDraggingSource:]):
1987         (fileNameWithNumericSuffix):
1988         (copyFile):
1989
1990         Add a helper to copy a file into a destination directory. Used to implement the main functionality of our
1991         NSFilePromiseReceiver subclass, which copies the files specified by test code into the directory determined by
1992         WebKit.
1993
1994         (-[TestFilePromiseReceiver receivePromisedFilesAtDestination:options:operationQueue:reader:]):
1995
1996 2018-08-16  Alex Christensen  <achristensen@webkit.org>
1997
1998         Add entitlement to MiniBrowser to allow it to communicate with com.apple.Safari.SafeBrowsing.Service
1999         https://bugs.webkit.org/show_bug.cgi?id=188677
2000
2001         Reviewed by Tim Horton.
2002
2003         * MiniBrowser/MiniBrowser.entitlements:
2004         SSBLookupContext lookUpURL:completionHandler: fails to communicate with its service without this entitlement
2005         on released operating systems.  See <rdar://problem/42749777>
2006
2007 2018-08-16  Jer Noble  <jer.noble@apple.com>
2008
2009         Add option to run-api-tests to force running of DISABLED tests.
2010         https://bugs.webkit.org/show_bug.cgi?id=188674
2011
2012         Reviewed by Joseph Pecoraro.
2013
2014         * Scripts/webkitpy/api_tests/run_api_tests.py:
2015         (parse_args):
2016         * Scripts/webkitpy/api_tests/runner.py:
2017         (Runner.command_for_port):
2018         (_Worker._run_single_test):
2019
2020 2018-08-16  Aakash Jain  <aakash_jain@apple.com>
2021
2022         [ews-build] Separate queues for Builders and Testers - macOS High Sierra
2023         https://bugs.webkit.org/show_bug.cgi?id=188540
2024
2025         Reviewed by Lucas Forschler.
2026
2027         * BuildSlaveSupport/ews-build/config.json: Splitted few macOS queues into builders and testers. 
2028
2029 2018-08-16  Aakash Jain  <aakash_jain@apple.com>
2030
2031         [ews-build] Add build steps ArchiveTestResults, UploadTestResults and ExtractTestResults
2032         https://bugs.webkit.org/show_bug.cgi?id=188666
2033
2034         Reviewed by Lucas Forschler.
2035
2036         * BuildSlaveSupport/ews-build/steps.py:
2037         (ArchiveTestResults): Build step to Archive the test results.
2038         (UploadTestResults): Build step to upload the archive.
2039         (ExtractTestResults): Build step to unzip the archive on server and generate a link.
2040         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
2041         (ExpectMasterShellCommand): Copied from other similar internal code.
2042
2043 2018-08-16  Aakash Jain  <aakash_jain@apple.com>
2044
2045         [ews-build] Separate queues for Builders and Testers - macOS Sierra
2046         https://bugs.webkit.org/show_bug.cgi?id=188516
2047
2048         Reviewed by Lucas Forschler.
2049
2050         * BuildSlaveSupport/ews-build/config.json: Splitted macOS Sierra Release queues into builders and testers.
2051         * BuildSlaveSupport/ews-build/factories.py: Used appropriate base classes for builders and testers.
2052
2053 2018-08-16  Basuke Suzuki  <Basuke.Suzuki@sony.com>
2054
2055         [Win][DumpRenderTree] Remove error message for duplicated tests.
2056         https://bugs.webkit.org/show_bug.cgi?id=188662
2057
2058         Reviewed by Per Arne Vollan.
2059
2060         This was added to track down an issue where the same tests appeared
2061         to be run multiple times. This turned out to not be the case.
2062         See https://bugs.webkit.org/show_bug.cgi?id=166760 .
2063
2064         * DumpRenderTree/win/DumpRenderTree.cpp:
2065         (runTest):
2066
2067 2018-08-16  Alex Christensen  <achristensen@webkit.org>
2068
2069         Re-introduce assertion removed in r234890
2070         https://bugs.webkit.org/show_bug.cgi?id=188611
2071
2072         Reviewed by Geoffrey Garen.
2073
2074         * TestWebKitAPI/Tests/WTF/Vector.cpp:
2075         (TestWebKitAPI::TEST):
2076
2077 2018-08-16  Jer Noble  <jer.noble@apple.com>
2078
2079         Add Experimental Feature support for SourceBuffer.changeType()
2080         https://bugs.webkit.org/show_bug.cgi?id=188626
2081         <rdar://problem/43356021>
2082
2083         Reviewed by Eric Carlson.
2084
2085         * DumpRenderTree/mac/DumpRenderTree.mm:
2086         (enableExperimentalFeatures):
2087         (resetWebPreferencesToConsistentValues):
2088         * WebKitTestRunner/TestController.cpp:
2089         (WTR::TestController::resetPreferencesToConsistentValues):
2090
2091 2018-08-16  Aditya Keerthi  <akeerthi@apple.com>
2092
2093         Support drag-and-drop for input[type=color]
2094         https://bugs.webkit.org/show_bug.cgi?id=188464
2095
2096         Reviewed by Wenson Hsieh.
2097
2098         Added five cross-platform API tests, to verify that dragging and dropping with
2099         color inputs changes the value of the drop target if and only if both inputs are
2100         enabled. Also tests that the change and input events are fired when changing the
2101         value of a color input through drag and drop. 
2102
2103         Additionally, added a macOS-specific test to verify that dropping an item with
2104         NSColorPboardType changes the value of the color input.
2105
2106         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2107         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
2108         (TestWebKitAPI::TEST):
2109         * TestWebKitAPI/Tests/WebKitCocoa/color-drop.html: Added.
2110         * TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm:
2111         (TestWebKitAPI::TEST):
2112
2113 2018-08-16  Antti Koivisto  <antti@apple.com>
2114
2115         Use OptionSet for ActivityState::Flags
2116         https://bugs.webkit.org/show_bug.cgi?id=188554
2117
2118         Reviewed by Brent Fulgham.
2119
2120         * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
2121         (TestWebKitAPI::TEST):
2122
2123 2018-08-16  Carlos Garcia Campos  <cgarcia@igalia.com>
2124
2125         [GTK] MiniBrowser: web view doesn't get the focus when new window is created
2126         https://bugs.webkit.org/show_bug.cgi?id=188546
2127
2128         Reviewed by Michael Catanzaro.
2129
2130         When a new window is created, the first widget of the windo is getting the focus, the toolbar in this case. We
2131         always want the WebView to grab the focus. In case of new empty tab, we want to the URL bar to be focused
2132         instead. This was causing failures in WebDriver tests that create a popup window with an input element that is
2133         filled with send keys command. The input element is marked as focused in the DOM, but the actual focused widget
2134         is the toolbar, so key events are sent to the toolbar instead of the web view.
2135
2136         * MiniBrowser/gtk/BrowserWindow.c:
2137         (webViewCreate):
2138         (newTabCallback):
2139         (openPrivateWindow):
2140         (browser_window_get_or_create_web_view_for_automation):
2141
2142 2018-08-16  Carlos Garcia Campos  <cgarcia@igalia.com>
2143
2144         Unreviewed. Fix WebDriver tests after r234839.
2145
2146         New pytest requires to autoinstall attrs too.
2147
2148         * Scripts/webkitpy/thirdparty/__init__.py:
2149         (AutoinstallImportHook._install_pytest):
2150
2151 2018-08-15  Ansh Shukla  <ansh_shukla@apple.com>
2152
2153         NSURLAuthenticationMethodOAuth challenges are surfaced to clients in -didReceiveAuthenticationChallenge as NSURLAuthenticationMethodDefault
2154         https://bugs.webkit.org/show_bug.cgi?id=186870
2155         <rdar://problem/41314410>
2156
2157         Reviewed by Alex Christensen.
2158
2159         * WebKitTestRunner/TestController.cpp:
2160         (WTR::toString):
2161         (WTR::TestController::canAuthenticateAgainstProtectionSpace): Expose type of authentication challenge so we can test OAuth.
2162         (WTR::TestController::didReceiveAuthenticationChallenge):
2163
2164 2018-08-15  Ben Richards  <benton_richards@apple.com>
2165
2166         We should cache the compiled sandbox profile in a data vault
2167         https://bugs.webkit.org/show_bug.cgi?id=184991
2168
2169         Reviewed by Ryosuke Niwa.
2170
2171         Added trace points for sandbox initialization
2172
2173         * Tracing/SystemTracePoints.plist:
2174
2175 2018-08-15  Ryan Haddad  <ryanhaddad@apple.com>
2176
2177         Unreviewed, rolling out r234870.
2178
2179         The test introduced with this change is a flaky failure.
2180
2181         Reverted changeset:
2182
2183         "NSURLAuthenticationMethodOAuth challenges are surfaced to
2184         clients in -didReceiveAuthenticationChallenge as
2185         NSURLAuthenticationMethodDefault"
2186         https://bugs.webkit.org/show_bug.cgi?id=186870
2187         https://trac.webkit.org/changeset/234870
2188
2189 2018-08-15  Jonathan Bedard  <jbedard@apple.com>
2190
2191         WebKitTestRunner should support watch devices
2192         https://bugs.webkit.org/show_bug.cgi?id=188570
2193
2194         Reviewed by Alex Christensen.
2195
2196         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
2197
2198 2018-08-15  Wenson Hsieh  <wenson_hsieh@apple.com>
2199
2200         [Attachment SPI] Remove attachment display mode options
2201         https://bugs.webkit.org/show_bug.cgi?id=188596
2202
2203         Reviewed by Dan Bernstein.
2204
2205         Remove API tests and API test helpers for verifying the behavior of in-place media attachment elements.
2206
2207         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2208         (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:]):
2209         (TestWebKitAPI::TEST):
2210         (testVideoData): Deleted.
2211         (displayOptionsWithMode): Deleted.
2212         (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:options:]): Deleted.
2213
2214 2018-08-14  Devin Rousso  <drousso@apple.com>
2215
2216         Unreviewed, change my emails.
2217
2218         * Scripts/webkitpy/common/config/contributors.json:
2219         * Scripts/webkitpy/common/config/watchlist:
2220
2221 2018-08-14  Saam barati  <sbarati@apple.com>
2222
2223         HashMap<Ref<P>, V> asserts when V is not zero for its empty value
2224         https://bugs.webkit.org/show_bug.cgi?id=188582
2225
2226         Reviewed by Sam Weinig.
2227
2228         * TestWebKitAPI/Tests/WTF/HashMap.cpp:
2229         (TestWebKitAPI::TEST):
2230
2231 2018-08-14  Zalan Bujtas  <zalan@apple.com>
2232
2233         [LFC][Floating] Add support for negative clearance.
2234         https://bugs.webkit.org/show_bug.cgi?id=188555
2235
2236         Reviewed by Simon Fraser.
2237
2238         * LayoutReloaded/misc/LFC-passing-tests.txt:
2239
2240 2018-08-14 Sihui Liu <sihui_liu@apple.com>
2241
2242         Crash in WebKit::filterPreloadHSTSEntry via NetworkProcess::getHostNamesWithHSTSCache
2243         https://bugs.webkit.org/show_bug.cgi?id=188576
2244         <rdar://problem/43148977>
2245
2246         Reviewed by Alex Christensen.
2247
2248         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2249         * TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm: Added.
2250         (TEST):
2251
2252 2018-08-14  Alex Christensen  <achristensen@webkit.org>
2253
2254         isValidCSSSelector is unsafe to be called from a non-main thread
2255         https://bugs.webkit.org/show_bug.cgi?id=188581
2256         <rdar://problem/40517358>
2257
2258         Reviewed by Sam Weinig.
2259
2260         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
2261         (TestWebKitAPI::InMemoryCompiledContentExtension::create):
2262         (TestWebKitAPI::checkCompilerError):
2263
2264 2018-08-14  Ansh Shukla  <ansh_shukla@apple.com>
2265
2266         NSURLAuthenticationMethodOAuth challenges are surfaced to clients in -didReceiveAuthenticationChallenge as NSURLAuthenticationMethodDefault
2267         https://bugs.webkit.org/show_bug.cgi?id=186870
2268         <rdar://problem/41314410>
2269
2270         Reviewed by Alex Christensen.
2271
2272         * WebKitTestRunner/TestController.cpp:
2273         (WTR::toString):
2274         (WTR::TestController::canAuthenticateAgainstProtectionSpace): Expose type of authentication challenge so we can test OAuth.
2275         (WTR::TestController::didReceiveAuthenticationChallenge):
2276
2277 2018-08-14  Fujii Hironori  <Hironori.Fujii@sony.com>
2278
2279         [webkitpy][Win] LayoutTests: test names should be Unix style, separated by slash not backslash
2280         https://bugs.webkit.org/show_bug.cgi?id=187973
2281
2282         Reviewed by Alex Christensen.
2283
2284         In LayoutTests, test names have been canonicalized in Unix style
2285         since Bug 63597, for example 'fast/css/001.html'. But Bug 179219,
2286         Bug 179572, Bug 180660, and Bug 181814 have changed to use
2287         os.path.seq instead of slash if Windows Python is used.
2288
2289         Revert parts of those changes. Change relative_test_filename to
2290         return a slash-separated test name as chromium_win.py used to do.
2291
2292         This change fixes all 41 test-webkitpy failures in WinCairo port.
2293
2294         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
2295         (TestExpectationParser._parse_line): Do not convert test names with normpath.
2296         * Scripts/webkitpy/port/base.py:
2297         (Port.normalize_test_name): Use TEST_PATH_SEPARATOR instead of os.path.sep.
2298         (Port.relative_test_filename): Replace self.host.filesystem.sep with self.TEST_PATH_SEPARATOR.
2299         (Port.abspath_for_test): Replace self.TEST_PATH_SEPARATOR with self.host.filesystem.sep.
2300         * Scripts/webkitpy/port/driver.py:
2301         (Driver): Use '/' instead of os.sep.
2302         * Scripts/webkitpy/port/win.py:
2303         (WinCairoPort): Do not override TEST_PATH_SEPARATOR.
2304
2305 2018-08-14  Aakash Jain  <aakash_jain@apple.com>
2306
2307         [ews-build] Add build step to run WK1 layout-test
2308         https://bugs.webkit.org/show_bug.cgi?id=188498
2309
2310         Reviewed by Lucas Forschler.
2311
2312         * BuildSlaveSupport/ews-build/steps.py:
2313         (RunWebKit1Tests): Class to run WebKit1Tests.
2314         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
2315
2316 2018-08-14  Patrick Griffis  <pgriffis@igalia.com>
2317
2318         [Flatpak] Fix --cmakeargs
2319         https://bugs.webkit.org/show_bug.cgi?id=188567
2320
2321         Reviewed by Michael Catanzaro.
2322
2323         * flatpak/flatpakutils.py:
2324         (WebkitFlatpak.setup_dev_env):
2325
2326 2018-08-14  Darshan Kadu  <dkadu@igalia.com>
2327
2328         Enhancement request: Make export-w3c-test-changes add the PR to "See Also" links
2329         https://bugs.webkit.org/show_bug.cgi?id=186140
2330
2331         Reviewed by Youenn Fablet.
2332
2333         Added an optional parameter see_also to post_comment_to_bug function and used it for adding see_also variable's content in "See Also"
2334         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
2335         (Bugzilla.post_comment_to_bug):
2336         Modified mock for see_also parameter
2337         * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
2338         (MockBugzilla.post_comment_to_bug):
2339         Made following unit tests to have see_also in bug comment
2340         * Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:
2341         * Scripts/webkitpy/tool/bot/sheriff_unittest.py:
2342         (SheriffTest.test_post_blame_comment_on_bug):
2343         * Scripts/webkitpy/tool/commands/applywatchlistlocal_unittest.py:
2344         * Scripts/webkitpy/tool/commands/queues_unittest.py:
2345         * Scripts/webkitpy/tool/commands/upload_unittest.py:
2346         * Scripts/webkitpy/tool/steps/applywatchlist_unittest.py:
2347         * Scripts/webkitpy/w3c/test_exporter.py:
2348         (WebPlatformTestExporter.make_pull_request):
2349         * Scripts/webkitpy/w3c/test_exporter_unittest.py:
2350         (TestExporterTest.MockBugzilla.post_comment_to_bug):
2351         (TestExporterTest.test_export):
2352
2353 2018-08-14  Aakash Jain  <aakash_jain@apple.com>
2354
2355         [ews-build] Add support for max_builds parameter for workers
2356         https://bugs.webkit.org/show_bug.cgi?id=188531
2357
2358         Reviewed by Lucas Forschler.
2359
2360         * BuildSlaveSupport/ews-build/loadConfig.py:
2361         (loadBuilderConfig): Added support for max_builds.
2362
2363 2018-08-14  Zalan Bujtas  <zalan@apple.com>
2364
2365         [LFC][Floating] Adjust vertical position with non-collapsing previous sibling margin.
2366         https://bugs.webkit.org/show_bug.cgi?id=188543
2367
2368         Reviewed by Antti Koivisto.
2369
2370         * LayoutReloaded/misc/LFC-passing-tests.txt:
2371
2372 2018-08-14  Carlos Garcia Campos  <cgarcia@igalia.com>
2373
2374         Unreviewed. Fix WebDriver tests after r234839.
2375
2376         New pytest requires to autoinstall more_itertools and six too.
2377
2378         * Scripts/webkitpy/thirdparty/__init__.py:
2379         (AutoinstallImportHook._install_pytest):
2380
2381 2018-08-14  Tomas Popela  <tpopela@redhat.com>
2382
2383         [GTK] Minibrowser: Add labels for buttons
2384         https://bugs.webkit.org/show_bug.cgi?id=188549
2385
2386         Reviewed by Carlos Garcia Campos.
2387
2388         So they are accessible easier (i.e. while testing WebKitGTK+ through Minibrowser in Dogtail).
2389
2390         * MiniBrowser/gtk/BrowserWindow.c:
2391         (webViewIsLoadingChanged):
2392         (browserWindowSetupEditorToolbar):
2393         (browser_window_init):
2394
2395 2018-08-14  Carlos Garcia Campos  <cgarcia@igalia.com>
2396
2397         Unreviewed. Fix WebDriver tests after r234839.
2398
2399         New pytest requires to autoinstall atomicwrites too.
2400
2401         * Scripts/webkitpy/thirdparty/__init__.py:
2402         (AutoinstallImportHook._install_pytest):
2403
2404 2018-08-14  Carlos Garcia Campos  <cgarcia@igalia.com>
2405
2406         Unreviewed. Fix WebDriver tests after r234839.
2407
2408         New pytest requires to autoinstall pluggy and funcsigs too.
2409
2410         * Scripts/webkitpy/thirdparty/__init__.py:
2411         (AutoinstallImportHook._install_pytest):
2412
2413 2018-08-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2414
2415         Unreviewed. Update W3C WebDriver imported tests.
2416
2417         Bump pytest version to 3.6.2.
2418
2419         * Scripts/webkitpy/thirdparty/__init__.py:
2420         (AutoinstallImportHook._install_pytest):
2421
2422 2018-08-13  Thomas Denney  <tdenney@apple.com>
2423
2424         Allow the substring 'me' in contributor names and email addresses
2425         https://bugs.webkit.org/show_bug.cgi?id=188538
2426
2427         Reviewed by Tim Horton.
2428
2429         A test didn't permit the string "me" in email addresses or names of contributors.
2430
2431         * Scripts/webkitpy/common/config/committers_unittest.py:
2432         (CommittersTest.test_contributors_by_fuzzy_match):
2433
2434 2018-08-13  Commit Queue  <commit-queue@webkit.org>
2435
2436         Unreviewed, rolling out r234812.
2437         https://bugs.webkit.org/show_bug.cgi?id=188536
2438
2439         broke the build (Requested by ThomasDenney on #webkit).
2440
2441         Reverted changeset:
2442
2443         "Added Thomas Denney to contributors.json."
2444         https://bugs.webkit.org/show_bug.cgi?id=188525
2445         https://trac.webkit.org/changeset/234812
2446
2447 2018-08-13  Sihui Liu  <sihui_liu@apple.com>
2448
2449         Avoid timeout resulted from calling waitUntilDone when test is not running
2450         https://bugs.webkit.org/show_bug.cgi?id=188389
2451
2452         Reviewed by Chris Dumez.
2453
2454         If test is not running, we should not set the waitUntilDone flag, or it may cause subsequent tests timeout.
2455
2456         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2457         (WTR::TestRunner::waitUntilDone):
2458
2459 2018-08-13  Wenson Hsieh  <wenson_hsieh@apple.com>
2460
2461         [WK2] [macOS] Implement a mechanism to test drag and drop
2462         https://bugs.webkit.org/show_bug.cgi?id=181898
2463         <rdar://problem/39181698>
2464
2465         Reviewed by Simon Fraser.
2466
2467         Implements the currently stubbed DragAndDropSimulator on macOS, and introduces a new API test for r227266. See
2468         comments below for more detail.
2469
2470         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2471         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm: Copied from Tools/TestWebKitAPI/mac/DragAndDropSimulatorMac.mm.
2472
2473         Introduce a file for cross-platform drag and drop tests, currently for iOS and macOS. Additionally add a test
2474         for r227266, which was fixed earlier this year but could not be tested due to a lack of testing mechanism on
2475         macOS in WebKit2.
2476
2477         (TEST):
2478         * TestWebKitAPI/Tests/WebKitCocoa/full-page-dropzone.html: Added.
2479
2480         Minor tweaks to this test page to add "dragover" and "drop" event handlers.
2481
2482         * TestWebKitAPI/Tests/WebKitCocoa/image-in-link-and-input.html:
2483         * TestWebKitAPI/Tests/WebKitCocoa/link-in-iframe-and-input.html: Added.
2484
2485         Add a new test page that includes a link embedded within an iframe below a plain text input.
2486
2487         * TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm: Added.
2488         (TEST):
2489         * TestWebKitAPI/Tests/mac/LegacyDragAndDropTests.mm: Renamed from Tools/TestWebKitAPI/Tests/mac/DragAndDropPasteboardTests.mm.
2490
2491         Move only existing WebKit2 macOS drag and drop test (DragAndDropPasteboardTests.NumberOfValidItemsForDrop) out
2492         of DragAndDropPasteboardTests.mm and into a new file, DragAndDropTestsMac.mm. Additionally, rename
2493         DragAndDropPasteboardTests to LegacyDragAndDropTests, since it now only contains two legacy WebView tests for
2494         drag and drop.
2495
2496         (+[FrameLoadCompletionListener listenerWithCompletionBlock:]):
2497         (-[FrameLoadCompletionListener initWithCompletionBlock:]):
2498         (-[FrameLoadCompletionListener webView:didFinishLoadForFrame:]):
2499         (-[DragSource draggingSourceOperationMaskForLocal:]):
2500         (-[DragInfo initWithImage:offset:pasteboard:source:destinationWindow:]):
2501         (-[DragInfo lastMousePosition]):
2502         (-[DragInfo setLastMousePosition:]):
2503         (-[DragInfo draggingDestinationWindow]):
2504         (-[DragInfo draggingSourceOperationMask]):
2505         (-[DragInfo draggingLocation]):
2506         (-[DragInfo draggedImageLocation]):
2507         (-[DragInfo draggedImage]):
2508         (-[DragInfo draggingPasteboard]):
2509         (-[DragInfo draggingSource]):
2510         (-[DragInfo draggingSequenceNumber]):
2511         (-[DragInfo slideDraggedImageTo:]):
2512         (-[DragInfo namesOfPromisedFilesDroppedAtDestination:]):
2513         (-[DragInfo draggingFormation]):
2514         (-[DragInfo setDraggingFormation:]):
2515         (-[DragInfo animatesToDestination]):
2516         (-[DragInfo setAnimatesToDestination:]):
2517         (-[DragInfo numberOfValidItemsForDrop]):
2518         (-[DragInfo setNumberOfValidItemsForDrop:]):
2519         (-[DragInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
2520         (-[DragInfo springLoadingHighlight]):
2521         (-[DragInfo resetSpringLoading]):
2522         (TestWebKitAPI::getTestImage):
2523         (TestWebKitAPI::webViewAfterPerformingDragOperation):
2524         (TestWebKitAPI::TEST):
2525         * TestWebKitAPI/Tests/mac/full-page-dropzone.html: Removed.
2526         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
2527
2528         Flesh out some of the DragAndDropSimulator API for macOS, exposing (among other things) the drag pasteboard,
2529         the current NSDraggingInfo, the initial location of the drag image, and the drag image itself.
2530
2531         * TestWebKitAPI/cocoa/TestWKWebView.h:
2532         * TestWebKitAPI/cocoa/TestWKWebView.mm:
2533         (-[TestWKWebView mouseDownAtPoint:simulatePressure:]):
2534         (-[TestWKWebView mouseUpAtPoint:]):
2535         (-[TestWKWebView mouseMoveToPoint:withFlags:]):
2536         (-[TestWKWebView sendClicksAtPoint:numberOfClicks:]):
2537         (-[TestWKWebView mouseEnterAtPoint:]):
2538         (-[TestWKWebView mouseExitAtPoint:]):
2539         (-[TestWKWebView mouseDragToPoint:]):
2540         (-[TestWKWebView _mouseEventWithType:atLocation:]):
2541         (-[TestWKWebView _mouseEventWithType:atLocation:flags:timestamp:clickCount:]):
2542
2543         Add TestWKWebView helpers to send MouseMove, MouseEnter and MouseDrag NSEvents to the web view. Additionally,
2544         rename parameter names to these helpers to make it more obvious that these locations are all in NSWindow
2545         coordinates.
2546
2547         (-[TestWKWebView typeCharacter:]):
2548
2549         Drive-by style fix: put this opening brace on the beginning of the next line.
2550
2551         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
2552         (-[DragAndDropSimulator initWithWebViewFrame:]):
2553         (-[DragAndDropSimulator initWithWebViewFrame:configuration:]):
2554         (-[DragAndDropSimulator webView]):
2555
2556         Small iOS DragAndDropSimulator adjustments for new DragAndDropSimulator interfaces.
2557
2558         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
2559         (-[DragAndDropTestWKWebView initWithFrame:configuration:simulator:]):
2560
2561         Introduce a WKWebView subclass for testing drag and drop that overrides `-dragImage:at:offset:…`, and instead
2562         allows DragAndDropSimulator to take over the drag.
2563
2564         (-[DragAndDropTestWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]):
2565
2566         Override this entry point into drag and drop code, and instead call out to the DragAndDropSimulator to
2567         coordinate the drag.
2568
2569         (-[DragAndDropTestWKWebView waitForPendingMouseEvents]):
2570
2571         Helper method to wait for the web process to finish handling all in-flight mouse events.
2572
2573         (defaultExternalDragImage):
2574
2575         Set this image as the default drag image when simulating an incoming drag session from outside of the web view.
2576
2577         (-[DragAndDropSimulator initWithWebViewFrame:]):
2578         (-[DragAndDropSimulator initWithWebViewFrame:configuration:]):
2579         (-[DragAndDropSimulator flipAboutXAxisInHostWindow:]):
2580
2581         Helper method to flip a given point about the X axis of the window.
2582
2583         (-[DragAndDropSimulator locationInViewForCurrentProgress]):
2584
2585         Map a progress value (between 0 and 1) to a drag location.
2586
2587         (-[DragAndDropSimulator initialProgressForMouseDrag]):
2588
2589         Determines the initial progress value when initiation a drag in web content. This is the initial progress
2590         required to ensure that the first mouse drag event exceeds the drag distance hysteresis and causes any drag
2591         (if applicable) to begin.
2592
2593         (-[DragAndDropSimulator runFrom:to:]):
2594         (-[DragAndDropSimulator performDragInWebView:atLocation:withImage:pasteboard:source:]):
2595
2596         Helper to coordinate drag updates in both the cases where we're simulating a drag session entering from outside
2597         of the web view, and in the case where we've initiated a drag from the web view itself.
2598
2599         (-[DragAndDropSimulator webView]):
2600         (-[DragAndDropSimulator setExternalDragPasteboard:]):
2601         (-[DragAndDropSimulator externalDragPasteboard]):
2602
2603         Just like its iOS counterpart (setExternalItemProviders:), setting an external drag pasteboard on macOS puts the
2604         DragAndDropSimulator in a mode that simulates a drag coming in from outside the web view, using the given
2605         pasteboard.
2606
2607         (-[DragAndDropSimulator setExternalDragImage:]):
2608         (-[DragAndDropSimulator externalDragImage]):
2609
2610         May be optionally set when specifying an external drag pasteboard to specify the drag image used. If no external
2611         drag image is specified, falls back to the default image returned by `defaultExternalDragImage()`.
2612
2613         (-[DragAndDropSimulator draggingInfo]):
2614         (-[DragAndDropSimulator willEndDraggingHandler]):
2615         (-[DragAndDropSimulator setWillEndDraggingHandler:]):
2616
2617         Hook to allow tests to run logic right before performing the drop (if the current drag operation is not none) or
2618         ending the drag session without performing a drag operation.
2619
2620         (-[DragAndDropSimulator initWithWebView:]): Deleted.
2621         (-[DragAndDropSimulator dealloc]): Deleted.
2622         (-[DragAndDropSimulator phase]): Deleted.
2623         * TestWebKitAPI/mac/TestDraggingInfo.h: Copied from Tools/TestWebKitAPI/mac/DragAndDropSimulatorMac.mm.
2624         * TestWebKitAPI/mac/TestDraggingInfo.mm: Added.
2625
2626         Mock object conforming to NSDraggingInfo that is passed to WKWebView when invoking -draggingUpdated:,
2627         -draggingEntered: and -draggingExited:.
2628
2629         (-[TestDraggingInfo draggingPasteboard]):
2630         (-[TestDraggingInfo setDraggingPasteboard:]):
2631         (-[TestDraggingInfo draggingSource]):
2632         (-[TestDraggingInfo setDraggingSource:]):
2633         (-[TestDraggingInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
2634         (-[TestDraggingInfo draggingDestinationWindow]):
2635         (-[TestDraggingInfo draggedImage]):
2636         (-[TestDraggingInfo setDraggedImage:]):
2637         (-[TestDraggingInfo slideDraggedImageTo:]):
2638         (-[TestDraggingInfo namesOfPromisedFilesDroppedAtDestination:]):
2639         (-[TestDraggingInfo resetSpringLoading]):
2640
2641         Empty method stubs, to be implemented in the future as needed.
2642
2643 2018-08-13  Thomas Denney  <tdenney@apple.com>
2644
2645         Added Thomas Denney to contributors.json.
2646         https://bugs.webkit.org/show_bug.cgi?id=188525
2647
2648         Reviewed by Myles C. Maxfield.
2649
2650         * Scripts/webkitpy/common/config/contributors.json:
2651
2652 2018-08-13  Antti Koivisto  <antti@apple.com>
2653
2654         Meaning of OptionSet::contains is unclear when used with OptionSet argument
2655         https://bugs.webkit.org/show_bug.cgi?id=188501
2656
2657         Reviewed by Anders Carlsson.
2658
2659         * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
2660         (TestWebKitAPI::TEST):
2661
2662 2018-08-13  Commit Queue  <commit-queue@webkit.org>
2663
2664         Unreviewed, rolling out r234747.
2665         https://bugs.webkit.org/show_bug.cgi?id=188524
2666
2667         plugin processes crash on launch (Requested by smfr on
2668         #webkit).
2669
2670         Reverted changeset:
2671
2672         "We should cache the compiled sandbox profile in a data vault"
2673         https://bugs.webkit.org/show_bug.cgi?id=184991
2674         https://trac.webkit.org/changeset/234747
2675
2676 2018-08-13  Wenson Hsieh  <wenson_hsieh@apple.com>
2677
2678         [iOS] Dragging a non-editable text selection into a plain text input inserts HTML markup
2679         https://bugs.webkit.org/show_bug.cgi?id=188485
2680         <rdar://problem/43168784>
2681
2682         Reviewed by Tim Horton.
2683
2684         Add a new API test to verify that dropping selected non-editable rich text into a textarea inserts text as
2685         expected, rather than markup.
2686
2687         It's somewhat interesting to note that this particular use case isn't exercised by any existing tests; the
2688         closest test is DragAndDropTests.ContentEditableToTextarea, which drags a rich text selection from a
2689         contenteditable element to a text area. However, due to logic in `DragController::concludeEditDrag` that handles
2690         drag and drop across editable content differently than drag and drop from non-editable to editable content, the
2691         bug that is fixed here doesn't surface in that existing test.
2692
2693         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2694         * TestWebKitAPI/Tests/WebKitCocoa/selected-text-and-textarea.html: Added.
2695         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2696         (TestWebKitAPI::TEST):
2697
2698 2018-08-13  Alex Christensen  <achristensen@webkit.org>
2699
2700         Use a 1-byte enum class for TextDirection
2701         https://bugs.webkit.org/show_bug.cgi?id=188350
2702
2703         Reviewed by Simon Fraser.
2704
2705         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
2706         (TestWebKitAPI::TEST_F):
2707         * TestWebKitAPI/Tests/WebCore/StringWithDirection.cpp:
2708         (WebCore::operator<<):
2709         (TestWebKitAPI::TEST):
2710         * TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
2711         (TEST_F):
2712
2713 2018-08-13  Zalan Bujtas  <zalan@apple.com>
2714
2715         [LFC][Floating] Add basic clearance support
2716         https://bugs.webkit.org/show_bug.cgi?id=188492
2717
2718         Reviewed by Antti Koivisto.
2719
2720         * LayoutReloaded/misc/LFC-passing-tests.txt:
2721
2722 2018-08-12  Zalan Bujtas  <zalan@apple.com>
2723
2724         [LFC] Float prev/next sibling should prevent top/bottom margin collapsing with parent.
2725         https://bugs.webkit.org/show_bug.cgi?id=188487
2726
2727         Reviewed by Antti Koivisto.
2728
2729         * LayoutReloaded/misc/LFC-passing-tests.txt:
2730
2731 2018-08-11  Aakash Jain  <aakash_jain@apple.com>
2732
2733         [ews-build] Separate queues for Builders and Testers - iOS
2734         https://bugs.webkit.org/show_bug.cgi?id=188396
2735
2736         Reviewed by Lucas Forschler.
2737
2738         * BuildSlaveSupport/ews-build/config.json: Splitted iOS queues into builders and testers.
2739         Also added ews121 and ews122 to match with current EWS configuration.
2740         * BuildSlaveSupport/ews-build/factories.py:
2741         (TestsFactory): Base classes for various Test factories.
2742         (TestsFactory.getProduct): Download and extract the archive.
2743
2744 2018-08-10  Daniel Bates  <dabates@apple.com>
2745
2746         webkit-patch setup-git-clone should set Git core editor to commit-log-editor
2747         https://bugs.webkit.org/show_bug.cgi?id=188473
2748
2749         Reviewed by Ryosuke Niwa.
2750
2751         Have "webkit-patch setup-git-clone" set the Git core editor to "perl Tools/Scripts/commit-log-editor --regenerate-log"
2752         so that the Git commit message is generated from the ChangeLog for developers that manually
2753         generate their ChangeLog using prepare-ChangeLog.
2754
2755         * Scripts/webkitpy/tool/commands/setupgitclone.py:
2756         (SetupGitClone.execute):
2757
2758 2018-08-10  Truitt Savell  <tsavell@apple.com>
2759
2760         Unreviewed, rolling out r234749.
2761
2762         Caused all perf tests to fail in Sierra
2763
2764         Reverted changeset:
2765
2766         "[webkitpy][Win] LayoutTests: test names should be Unix style,
2767         separated by slash not backslash"
2768         https://bugs.webkit.org/show_bug.cgi?id=187973
2769         https://trac.webkit.org/changeset/234749
2770
2771 2018-08-10  David Fenton  <david_fenton@apple.com>
2772
2773         Timeouts in TestWebKitAPI.PreferredAudioBufferSize.AudioWithWebAudio and TestWebKitAPI.PreferredAudioBufferSize.WebAudio.
2774         https://bugs.webkit.org/show_bug.cgi?id=188470.
2775
2776         Unreviewed test gardening, disabling the tests.
2777
2778         * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
2779         (TEST_F):
2780
2781 2018-08-10  Joseph Pecoraro  <pecoraro@apple.com>
2782
2783         Eliminate remaining instances of "ElCapitan" from LayoutTests / Tools
2784         https://bugs.webkit.org/show_bug.cgi?id=188458
2785
2786         Reviewed by Alex Christensen.
2787
2788         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
2789         (TestExpectationParser):
2790         * TestResultServer/static-dashboards/flakiness_dashboard.js:
2791
2792 2018-08-09  Fujii Hironori  <Hironori.Fujii@sony.com>
2793
2794         [webkitpy][Win] LayoutTests: test names should be Unix style, separated by slash not backslash
2795         https://bugs.webkit.org/show_bug.cgi?id=187973
2796
2797         Reviewed by Alex Christensen.
2798
2799         In LayoutTests, test names have been canonicalized in Unix style
2800         since Bug 63597, for example 'fast/css/001.html'. But, Bug 179219,
2801         Bug 179572, Bug 180660 and Bug 181814 have changed to use
2802         os.path.seq instead of slash if Windows Python is used.
2803
2804         Revert parts of those changes. Change relative_test_filename to
2805         return a slash sperated test name as well as chromium_win.py used
2806         to do.
2807
2808         This change fixes all 41 test-webkitpy failures in WinCairo port.
2809
2810         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
2811         (TestExpectationParser._parse_line): Do not convert a test name by using normpath.
2812         * Scripts/webkitpy/port/base.py:
2813         (Port.normalize_test_name): Use TEST_PATH_SEPARATOR instead of os.path.sep.
2814         (Port.relative_test_filename): Replace self.host.filesystem.sep with self.TEST_PATH_SEPARATOR.
2815         (Port.abspath_for_test): Split test_name with TEST_PATH_SEPARATOR.
2816         * Scripts/webkitpy/port/driver.py:
2817         (Driver): Use '/' instead of os.sep.
2818         * Scripts/webkitpy/port/win.py:
2819         (WinCairoPort): Do not override TEST_PATH_SEPARATOR.
2820
2821 2018-08-09  Thomas Denney  <tdenney@apple.com>
2822
2823         [WHLSL] Add individual test durations to output
2824         https://bugs.webkit.org/show_bug.cgi?id=188448
2825
2826         Reviewed by Myles C. Maxfield.
2827
2828         * WebGPUShadingLanguageRI/Test.js: Add timing output.
2829
2830 2018-08-09  Ben Richards  <benton_richards@apple.com>
2831
2832         We should cache the compiled sandbox profile in a data vault
2833         https://bugs.webkit.org/show_bug.cgi?id=184991
2834
2835         Reviewed by Ryosuke Niwa.
2836
2837         Added trace points for sandbox initialization
2838
2839         * Tracing/SystemTracePoints.plist:
2840
2841 2018-08-09  Jer Noble  <jer.noble@apple.com>
2842
2843         Video playback is using more power
2844         https://bugs.webkit.org/show_bug.cgi?id=188452
2845         <rdar://problem/42298937>
2846
2847         Reviewed by Eric Carlson.
2848
2849         * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
2850         (PreferredAudioBufferSize::createView):
2851         (PreferredAudioBufferSize::preferredAudioBufferSize const):
2852         (TEST_F):
2853
2854 2018-08-09  Alex Christensen  <achristensen@webkit.org>
2855
2856         REGRESSION(234640) Loading stalls in environments without SafariSafeBrowsing framework
2857         https://bugs.webkit.org/show_bug.cgi?id=188453
2858         <rdar://problem/43102553>
2859
2860         Reviewed by Chris Dumez
2861
2862         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
2863         (TEST):
2864         (+[NullLookupContext sharedLookupContext]):
2865         (TestWebKitAPI::TEST): Deleted.
2866
2867 2018-08-09  Alex Christensen  <achristensen@webkit.org>
2868
2869         WKURLSchemeHandler crashes when sent errors with sync XHR
2870         https://bugs.webkit.org/show_bug.cgi?id=188358
2871
2872         Reviewed by Chris Dumez.
2873
2874         * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
2875         (-[SyncErrorScheme webView:startURLSchemeTask:]):
2876         (-[SyncErrorScheme webView:stopURLSchemeTask:]):
2877         (-[SyncErrorScheme webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2878
2879 2018-08-09  Per Arne Vollan  <pvollan@apple.com>
2880
2881         REGRESSION(r234652): fast/scrolling/rtl-scrollbars-animation-property.html is failing
2882         https://bugs.webkit.org/show_bug.cgi?id=188397
2883
2884         Reviewed by Tim Horton.
2885
2886         After r234652, [NSScroller preferredScrollerStyle] is called in the UI process, and we need to set the same
2887         user defaults related to scrollbars in the UI process as we do in the WebProcess.
2888
2889         * WebKitTestRunner/mac/main.mm:
2890         (setDefaultsToConsistentValuesForTesting):
2891
2892 2018-08-09  Wenson Hsieh  <wenson_hsieh@apple.com>
2893
2894         [iOS WK2] Rename and refactor DataInteractionTests and DataInteractionSimulator
2895         https://bugs.webkit.org/show_bug.cgi?id=188439
2896
2897         Reviewed by Andy Estes and Megan Gardner.
2898
2899         Refactor DataInteractionSimulator (currently used for drag and drop testing on iOS) so that it exists across
2900         macOS and iOS, and rename it to DragAndDropSimulator. Additionally, rename DataInteractionTests to
2901         DragAndDropTests.
2902
2903         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2904         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2905         (TestWebKitAPI::TEST):
2906         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm: Renamed from Tools/TestWebKitAPI/Tests/ios/DataInteractionTests.mm.
2907         (testIconImage):
2908         (testZIPArchive):
2909         (-[UIItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
2910         (-[TestWKWebView editorContainsImageElement]):
2911         (-[TestWKWebView editorValue]):
2912         (makeCGRectValue):
2913         (checkCGRectIsEqualToCGRectWithLogging):
2914         (checkSelectionRectsWithLogging):
2915         (checkRichTextTypePrecedesPlainTextType):
2916         (checkFirstTypeIsPresentAndSecondTypeIsMissing):
2917         (checkTypeIdentifierIsRegisteredAtIndex):
2918         (checkEstimatedSize):
2919         (checkSuggestedNameAndEstimatedSize):
2920         (checkStringArraysAreEqual):
2921         (checkDragCaretRectIsContainedInRect):
2922         (checkJSONWithLogging):
2923         (testIconImageData):
2924         (runTestWithTemporaryTextFile):
2925         (runTestWithTemporaryFolder):
2926         (TestWebKitAPI::TEST):
2927         (TestWebKitAPI::setUpTestWebViewForDataTransferItems):
2928         (TestWebKitAPI::testDragAndDropOntoTargetElements):
2929         (TestWebKitAPI::testIconImageData):
2930         * TestWebKitAPI/cocoa/DragAndDropSimulator.h: Renamed from Tools/TestWebKitAPI/ios/DataInteractionSimulator.h.
2931         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm: Renamed from Tools/TestWebKitAPI/ios/DataInteractionSimulator.mm.
2932         (-[WKWebView dropInteractionDelegate]):
2933         (-[WKWebView dragInteractionDelegate]):
2934         (-[WKWebView dropInteraction]):
2935         (-[WKWebView dragInteraction]):
2936         (-[MockDragDropSession initWithItems:location:window:allowMove:]):
2937         (-[MockDragDropSession allowsMoveOperation]):
2938         (-[MockDragDropSession isRestrictedToDraggingApplication]):
2939         (-[MockDragDropSession hasItemsConformingToTypeIdentifiers:]):
2940         (-[MockDragDropSession canLoadObjectsOfClass:]):
2941         (-[MockDragDropSession canLoadObjectsOfClasses:]):
2942         (-[MockDragDropSession items]):
2943         (-[MockDragDropSession setItems:]):
2944         (-[MockDragDropSession addItems:]):
2945         (-[MockDragDropSession locationInView:]):
2946         (-[MockDropSession initWithProviders:location:window:allowMove:]):
2947         (-[MockDropSession isLocal]):
2948         (-[MockDropSession progress]):
2949         (-[MockDropSession setProgressIndicatorStyle:]):
2950         (-[MockDropSession progressIndicatorStyle]):
2951         (-[MockDropSession operationMask]):
2952         (-[MockDropSession localDragSession]):
2953         (-[MockDropSession hasItemsConformingToTypeIdentifier:]):
2954         (-[MockDropSession canCreateItemsOfClass:]):
2955         (-[MockDropSession loadObjectsOfClass:completion:]):
2956         (-[MockDragSession initWithWindow:allowMove:]):
2957         (-[MockDragSession localOperationMask]):
2958         (-[MockDragSession externalOperationMask]):
2959         (-[MockDragSession session]):
2960         (-[MockDragSession localContext]):
2961         (-[MockDragSession setLocalContext:]):
2962         (dragAndDropEventNames):
2963         (-[DragAndDropSimulatorApplication _cancelAllTouches]):
2964         (-[DragAndDropSimulator initWithWebView:]):
2965         (-[DragAndDropSimulator dealloc]):
2966         (-[DragAndDropSimulator _resetSimulatedState]):
2967         (-[DragAndDropSimulator observedEventNames]):
2968         (-[DragAndDropSimulator simulateAllTouchesCanceled:]):
2969         (-[DragAndDropSimulator runFrom:to:]):
2970         (-[DragAndDropSimulator runFrom:to:additionalItemRequestLocations:]):
2971         (-[DragAndDropSimulator finalSelectionRects]):
2972         (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
2973         (-[DragAndDropSimulator _enqueuePendingAdditionalItemRequestLocations]):
2974         (-[DragAndDropSimulator _sendQueuedAdditionalItemRequest]):
2975         (-[DragAndDropSimulator _advanceProgress]):
2976         (-[DragAndDropSimulator _currentLocation]):
2977         (-[DragAndDropSimulator _scheduleAdvanceProgress]):
2978         (-[DragAndDropSimulator sourceItemProviders]):
2979         (-[DragAndDropSimulator externalItemProviders]):
2980         (-[DragAndDropSimulator setExternalItemProviders:]):
2981         (-[DragAndDropSimulator phase]):
2982         (-[DragAndDropSimulator liftPreviews]):
2983         (-[DragAndDropSimulator lastKnownDragCaretRect]):
2984         (-[DragAndDropSimulator waitForInputSession]):
2985         (-[DragAndDropSimulator insertedAttachments]):
2986         (-[DragAndDropSimulator removedAttachments]):
2987         (-[DragAndDropSimulator endDataTransfer]):
2988         (-[DragAndDropSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
2989         (-[DragAndDropSimulator _webView:willUpdateDataInteractionOperationToOperation:forSession:]):
2990         (-[DragAndDropSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
2991         (-[DragAndDropSimulator _webView:showCustomSheetForElement:]):
2992         (-[DragAndDropSimulator _webView:willPerformDropWithSession:]):
2993         (-[DragAndDropSimulator _webView:didInsertAttachment:]):
2994         (-[DragAndDropSimulator _webView:didRemoveAttachment:]):
2995         (-[DragAndDropSimulator _webView:focusShouldStartInputSession:]):
2996         (-[DragAndDropSimulator _webView:didStartInputSession:]):
2997         * TestWebKitAPI/ios/UIKitSPI.h:
2998         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm: Added.
2999         (-[DragAndDropSimulator initWithWebView:]):
3000         (-[DragAndDropSimulator dealloc]):
3001         (-[DragAndDropSimulator runFrom:to:]):
3002         (-[DragAndDropSimulator insertedAttachments]):
3003         (-[DragAndDropSimulator removedAttachments]):
3004
3005 2018-08-09  Sihui Liu  <sihui_liu@apple.com>
3006
3007         REGRESSION (r232083): WKWebView loses first-party cookies on iOS
3008         https://bugs.webkit.org/show_bug.cgi?id=188443
3009         <rdar://problem/42991584>
3010
3011         Reviewed by Chris Dumez.
3012
3013         Skip WebKit.WKHTTPCookieStoreWithoutProcessPool on iOS.
3014
3015         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
3016
3017 2018-08-09  Ross Kirsling  <ross.kirsling@sony.com>
3018
3019         Unreviewed follow-up fix for r234720.
3020
3021         * Scripts/webkitpy/bindings/main.py:
3022         (BindingsTests.close_and_remove):
3023         (BindingsTests.main):
3024         Return to the original approach, since this seems to be the simplest cross-platform solution.
3025
3026 2018-08-09  Ali Juma  <ajuma@chromium.org>
3027
3028         Import WPTs for IntersectionObserver
3029         https://bugs.webkit.org/show_bug.cgi?id=188416
3030
3031         Reviewed by Simon Fraser.
3032
3033         Enable IntersectionObserver in DumpRenderTree. 
3034
3035         * DumpRenderTree/mac/DumpRenderTree.mm:
3036         (enableExperimentalFeatures):
3037         (setWebPreferencesForTestOptions):
3038         * WebKitTestRunner/TestController.cpp:
3039         (WTR::TestController::resetPreferencesToConsistentValues):
3040
3041 2018-08-08  Ross Kirsling  <ross.kirsling@sony.com>
3042
3043         run-bindings-tests is not Win32-compatible
3044         https://bugs.webkit.org/show_bug.cgi?id=188424
3045
3046         Reviewed by Fujii Hironori.
3047
3048         * Scripts/webkitpy/bindings/main.py:
3049         (BindingsTests.main):
3050         Stop leaking file descriptors.
3051         (See https://www.logilab.org/blogentry/17873 for details, though the solution here is even simpler.)
3052
3053 2018-08-08  Alex Christensen  <achristensen@webkit.org>
3054
3055         Fix possible null dereference in WebBackForwardList::restoreFromState
3056         https://bugs.webkit.org/show_bug.cgi?id=188418
3057         <rdar://problem/42531726>
3058
3059         Reviewed by Chris Dumez.
3060
3061         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
3062         (TestWebKitAPI::TEST):
3063
3064 2018-08-08  Ross Kirsling  <ross.kirsling@sony.com>
3065
3066         run-builtins-generator-tests does not correctly handle CRLFs from stderr
3067         https://bugs.webkit.org/show_bug.cgi?id=188392
3068
3069         Reviewed by Fujii Hironori.
3070
3071         Background:
3072         file.write converts LF to os.linesep, so if the input string contains CRLF, we end up writing CRCRLF to the file.
3073
3074         * Scripts/webkitpy/common/system/executive.py:
3075         (Executive.run_command):
3076         Normalize CRLF to LF in decoded stdout/stderr data, so that we don't return consumers a platform-specific string.
3077
3078 2018-08-08  Aditya Keerthi  <akeerthi@apple.com>
3079
3080         Unreviewed, add myself to committers list.
3081
3082         * Scripts/webkitpy/common/config/contributors.json:
3083
3084 2018-08-08  Commit Queue  <commit-queue@webkit.org>
3085
3086         Unreviewed, rolling out r234314, r234320, and r234321.
3087         https://bugs.webkit.org/show_bug.cgi?id=188414
3088
3089         Caused email sign in issue (Requested by ryanhaddad on
3090         #webkit).
3091
3092         Reverted changesets:
3093
3094         "Remove unused WKNavigationDelegatePrivate
3095         decidePolicyForNavigationAction SPI"
3096         https://bugs.webkit.org/show_bug.cgi?id=188077
3097         https://trac.webkit.org/changeset/234314
3098
3099         "Fix API tests after r234314"
3100         https://bugs.webkit.org/show_bug.cgi?id=188077
3101         https://trac.webkit.org/changeset/234320
3102
3103         "Fix API tests after r234314"
3104         https://bugs.webkit.org/show_bug.cgi?id=188077
3105         https://trac.webkit.org/changeset/234321
3106
3107 2018-08-08  Wenson Hsieh  <wenson_hsieh@apple.com>
3108
3109         [iOS] fast/events/ios/contenteditable-autocapitalize.html is a flaky failure
3110         https://bugs.webkit.org/show_bug.cgi?id=188401
3111         <rdar://problem/32542300>
3112
3113         Reviewed by Ryosuke Niwa.
3114
3115         When run individually, fast/events/ios/contenteditable-autocapitalize.html passes consistently; however, when
3116         run right after another layout test that finishes while the keyboard is shown, this test sometimes fails. This
3117         is because each of the three steps of this test ends when UIScriptController's `didHideKeyboardCallback` is
3118         invoked, and if the keyboard only begins to dismiss after the previous test completes, we have a race. When the
3119         keyboard finishes dismissing after the UI script is evaluated, it will trigger UI script completion early and
3120         skip over one of the steps in the layout test, resulting in a text diff failure.
3121
3122         To fix this, add a mechanism in WebKitTestRunner to wait until the keyboard is dismissed (with a short timeout)
3123         as a part of resetting test controller state, before moving on to the next layout test.
3124
3125         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
3126         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3127         (-[TestRunnerWKWebView didStartFormControlInteraction]):
3128         (-[TestRunnerWKWebView didEndFormControlInteraction]):
3129
3130         Use these hooks to keep track of whether the previous test is presenting any form input UI.
3131
3132         (-[TestRunnerWKWebView isInteractingWithFormControl]):
3133         * WebKitTestRunner/ios/TestControllerIOS.mm:
3134         (WTR::handleKeyboardWillHideNotification):
3135         (WTR::handleKeyboardDidHideNotification):
3136         (WTR::TestController::platformInitialize):
3137         (WTR::TestController::platformDestroy):
3138
3139         Register during initialization (and unregister during teardown) for keyboard hiding notifications, to keep track
3140         of when the keyboard dismissal animation ends.
3141
3142         (WTR::TestController::platformResetStateToConsistentValues):
3143
3144         Make a couple of tweaks here: (1) if form input UI is being shown, tell the web view to resign first responder,
3145         which causes the field to lose focus. (2) If necessary, wait for the current keyboard dismissal animation to
3146         finish. This includes any keyboard dismissal animations triggered as a result of step (1).
3147
3148 2018-08-05  Darin Adler  <darin@apple.com>
3149
3150         [Cocoa] More tweaks and refactoring to prepare for ARC
3151         https://bugs.webkit.org/show_bug.cgi?id=188245
3152
3153         Reviewed by Dan Bernstein.
3154
3155         * DumpRenderTree/TestNetscapePlugIn/PluginObject.h: Use const void* for a
3156         CFTypeRef instead of void*.
3157
3158         * DumpRenderTree/TestNetscapePlugIn/PluginObjectMac.mm:
3159         (createCoreAnimationLayer): Use CFBridgingRetain.
3160
3161         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
3162         (AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Use bridging casts.
3163         (AccessibilityUIElement::textMarkerRangeForElement): Ditto.
3164         (AccessibilityUIElement::selectedTextMarkerRange): Ditto.
3165         (AccessibilityUIElement::textMarkerRangeLength): Ditto.
3166         (AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute): Ditto.
3167         (AccessibilityUIElement::indexForTextMarker): Ditto.
3168         (AccessibilityUIElement::textMarkerForIndex): Ditto.
3169         (AccessibilityUIElement::isTextMarkerValid): Ditto.
3170         (AccessibilityUIElement::previousTextMarker): Ditto.
3171         (AccessibilityUIElement::nextTextMarker): Ditto.
3172         (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
3173         (createJSStringRef): Ditto.
3174         (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
3175         (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
3176         (AccessibilityUIElement::textMarkerRangeForMarkers): Ditto.
3177         (AccessibilityUIElement::startTextMarkerForTextMarkerRange): Ditto.
3178         (AccessibilityUIElement::endTextMarkerForTextMarkerRange): Ditto.
3179         (AccessibilityUIElement::endTextMarkerForBounds): Ditto.
3180         (AccessibilityUIElement::startTextMarkerForBounds): Ditto.
3181         (AccessibilityUIElement::textMarkerForPoint): Ditto.
3182         (AccessibilityUIElement::accessibilityElementForTextMarker): Ditto.
3183         (AccessibilityUIElement::startTextMarker): Ditto.
3184         (AccessibilityUIElement::endTextMarker): Ditto.
3185         (AccessibilityUIElement::setSelectedVisibleTextRange): Ditto.
3186         (AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker): Ditto.
3187         (AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker): Ditto.
3188         (AccessibilityUIElement::previousWordStartTextMarkerForTextMarker): Ditto.
3189         (AccessibilityUIElement::nextWordEndTextMarkerForTextMarker): Ditto.
3190         (AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker): Ditto.
3191         (AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker): Ditto.
3192         (AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker): Ditto.
3193         (AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker): Ditto.
3194         (AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker): Ditto.
3195         (AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker): Ditto.
3196
3197         * DumpRenderTree/mac/DumpRenderTree.mm:
3198         (resetWebPreferencesToConsistentValues): Use bridging cast.
3199         (dumpFramesAsText): Ditto.
3200         (dumpBackForwardListForAllWindows): Use a modern for loop instead of
3201         CFArray functions to iterate the array.
3202         (dump): Use bridging cast.
3203         (runTest): Ditto.
3204
3205         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
3206         (+[LocalPasteboard alloc]): Use class_createInstance instead of NSAllocateObject.
3207         (toUTI): Return a RetainPtr<CFStringRef>.
3208         (-[LocalPasteboard types]): Use the above and bridging casts.
3209         (-[LocalPasteboard availableTypeFromArray:]): Ditto.
3210         (-[LocalPasteboard setData:forType:]): Ditto.
3211         (-[LocalPasteboard dataForType:]): Ditto.
3212         (-[LocalPasteboard setPropertyList:forType:]): Use NSPropertyListSerialization
3213         instead of CFPropertyList.
3214         (-[LocalPasteboard setString:forType:]): Use NSString method instead of
3215         CFStringCreateExternalRepresentation.
3216
3217         * DumpRenderTree/mac/MockGeolocationProvider.h: Put CFTypeRef in a HashSet
3218         instead of an Objective-C object pointer type.
3219         * DumpRenderTree/mac/MockGeolocationProvider.mm:
3220         (-[MockGeolocationProvider registerWebView:]): Update for above.
3221         (-[MockGeolocationProvider unregisterWebView:]): Ditto.
3222         (-[MockGeolocationProvider timerFired]): Ditto.
3223
3224         * DumpRenderTree/mac/MockWebNotificationProvider.h: Use CFTypeRef in
3225         HashMap and HashSet instead of an Objective-C object pointer type.
3226         * DumpRenderTree/mac/MockWebNotificationProvider.mm:
3227         (-[MockWebNotificationProvider registerWebView:]): Update for above.
3228         (-[MockWebNotificationProvider unregisterWebView:]): Ditto.
3229         (-[MockWebNotificationProvider showNotification:fromWebView:]): Ditto.
3230         (-[MockWebNotificationProvider cancelNotification:]): Ditto.
3231         (-[MockWebNotificationProvider simulateWebNotificationClick:]): Ditto.
3232
3233         * DumpRenderTree/mac/ObjCPlugin.m:
3234         (-[JSObjC retainObject:]): Use CFRetain instead of -[NSObject retain].
3235
3236         * DumpRenderTree/mac/TestRunnerMac.mm:
3237         (TestRunner::addDisallowedURL): Use bridging cast.
3238         (TestRunner::applicationCacheDiskUsageForOrigin): Ditto.
3239         (TestRunner::clearApplicationCacheForOrigin): Ditto.
3240         (originsArrayToJS): Ditto.
3241         (TestRunner::copyDecodedHostName): Ditto.
3242         (TestRunner::copyEncodedHostName): Ditto.
3243         (TestRunner::queueLoad): Ditto.
3244         (TestRunner::setDomainRelaxationForbiddenForURLScheme): Ditto.
3245         (TestRunner::setMockGeolocationPositionUnavailableError): Ditto.
3246         (TestRunner::setUserStyleSheetLocation): Ditto.
3247         (TestRunner::setValueForUser): Ditto.
3248         (TestRunner::overridePreference): Ditto.
3249         (TestRunner::execCommand): Ditto.
3250         (TestRunner::findString): Ditto.
3251         (TestRunner::isCommandEnabled): Ditto.
3252         (TestRunner::addOriginAccessWhitelistEntry): Ditto.
3253         (TestRunner::removeOriginAccessWhitelistEntry): Ditto.
3254         (TestRunner::addUserScript): Ditto.
3255         (TestRunner::addUserStyleSheet): Ditto.
3256         (TestRunner::evaluateInWebInspector): Ditto.
3257         (TestRunner::evaluateScriptInIsolatedWorld): Ditto.
3258         (TestRunner::authenticateSession): Ditto.
3259         (TestRunner::grantWebNotificationPermission): Ditto.
3260         (TestRunner::denyWebNotificationPermission): Ditto.
3261         * TestRunnerShared/cocoa/LayoutTestSpellChecker.mm:
3262         (-[LayoutTestSpellChecker setResultsFromJSObject:inContext:]): Ditto.
3263
3264         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
3265         (WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Use bridging cast.
3266         (WTR::AccessibilityUIElement::textMarkerRangeForElement): Ditto.
3267         (WTR::AccessibilityUIElement::previousTextMarker): Ditto.
3268         (WTR::AccessibilityUIElement::nextTextMarker): Ditto.
3269         (WTR::AccessibilityUIElement::textMarkerRangeForMarkers): Ditto.
3270         (WTR::AccessibilityUIElement::selectedTextMarkerRange): Ditto.
3271         (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange): Ditto.
3272         (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange): Ditto.
3273         (WTR::AccessibilityUIElement::endTextMarkerForBounds): Ditto.
3274         (WTR::AccessibilityUIElement::startTextMarkerForBounds): Ditto.
3275         (WTR::AccessibilityUIElement::textMarkerForPoint): Ditto.
3276         (WTR::AccessibilityUIElement::textMarkerForIndex): Ditto.
3277         (WTR::AccessibilityUIElement::startTextMarker): Ditto.
3278         (WTR::AccessibilityUIElement::endTextMarker): Ditto.
3279         (WTR::AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker): Ditto.
3280         (WTR::AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker): Ditto.
3281         (WTR::AccessibilityUIElement::previousWordStartTextMarkerForTextMarker): Ditto.
3282         (WTR::AccessibilityUIElement::nextWordEndTextMarkerForTextMarker): Ditto.
3283         (WTR::AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker): Ditto.
3284         (WTR::AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker): Ditto.
3285         (WTR::AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker): Ditto.
3286         (WTR::AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker): Ditto.
3287         (WTR::AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker): Ditto.
3288         (WTR::AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker): Ditto.
3289
3290         * WebKitTestRunner/PlatformMac.cmake: Added WebKitTestRunnerWindow.h and .mm files.
3291         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Ditto.
3292
3293         * WebKitTestRunner/mac/EventSenderProxy.mm: Add include of WebKitTestRunnerWindow.h
3294         so we can use the type and know it inherits from NSWindow.
3295
3296         * WebKitTestRunner/mac/PlatformWebViewMac.mm: Add include of WebKitTestRunnerWindow.h
3297         so we can use the type and know it inherits from NSWindow. Moved WebKitTestRunnerWindow
3298         class into a separate file.
3299         (WTR::PlatformWebView::keyWindow): Call +[WebKitTestRunnerWindow _WTR_keyWindow]
3300         instead of have a second copy of the implementation.
3301
3302         * WebKitTestRunner/mac/WebKitTestRunnerEvent.mm: Add include of WebKitTestRunnerWindow.h
3303         so we can use the type and know it inherits from NSWindow. Also removed "using namespace".
3304         (+[WebKitTestRunnerEvent mouseLocation]): Updated for above.
3305
3306         * WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:
3307         (+[LocalPasteboard alloc]): Use class_createInstance instead of NSAllocateObject.
3308         (-[LocalPasteboard availableTypeFromArray:]): Use modern for loop.
3309         (-[LocalPasteboard setData:forType:]): Reordered method to be a tiny bit more efficient.
3310         (-[LocalPasteboard setPropertyList:forType:]): Use NSPropertyListSerialization
3311         instead of CFPropertyList.
3312         (-[LocalPasteboard setString:forType:]): Use NSString method instead of
3313         CFStringCreateExternalRepresentation.
3314
3315         * WebKitTestRunner/mac/WebKitTestRunnerWindow.h: Moved declaration of
3316         WebKitTestRunnerWindow here so it can be included by files that need to know
3317         what the type is and that it inherits from NSWindow.
3318
3319         * WebKitTestRunner/mac/WebKitTestRunnerWindow.mm: Added. Moved implementation here.
3320         (+[WebKitTestRunnerWindow _WTR_keyWindow]): Use modern for loop instead of the old,
3321         messier implementation.
3322
3323 2018-08-07  Alex Christensen  <achristensen@webkit.org>
3324
3325         Add a test for using SafeBrowsing
3326         https://bugs.webkit.org/show_bug.cgi?id=188290
3327
3328         Reviewed by Chris Dumez.
3329
3330         Swizzle out SSBLookupContext to write tests for how WebKit responds when it responds in different ways.
3331         We don't do anything with its results in WebKit yet, but when we do I'll add the expected behavior to this test.
3332
3333         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3334         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm: Added.
3335         (-[SafeBrowsingDelegate webView:didFinishNavigation:]):
3336         (TestWebKitAPI::TEST):
3337
3338 2018-08-07  Lucas Forschler  <lforschler@apple.com>
3339
3340         If there's a Radar in the ChangeLog, webkit-patch upload/create-bug should put the radar in the bug and set InRadar
3341         https://bugs.webkit.org/show_bug.cgi?id=188235
3342
3343         Reviewed by Daniel Bates, Kocsen Chung, and Aakash Jain.
3344
3345         * Scripts/webkitpy/common/checkout/changelog.py: 
3346         (ChangeLogEntry): Teach the ChangeLog tools how to parse a radar_id
3347         * Scripts/webkitpy/common/checkout/changelog_unittest.py: Test out the new _parse_radar_id functionality
3348         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
3349         (Bugzilla.add_keyword_to_bug): Add logic to add keywords using the changeform
3350         * Scripts/webkitpy/tool/commands/upload.py:
3351         (Upload): Teach the upload step how to add radar information when creating a new bug.
3352         * Scripts/webkitpy/tool/steps/__init__.py:
3353         * Scripts/webkitpy/tool/steps/addradar.py: Added.
3354         (AddRadar):
3355         (AddRadar.run): Contains the logic to add the radar information to bugzilla.
3356         * Scripts/webkitpy/tool/steps/createbug.py:
3357         (CreateBug.run): set a "created_new_bug" state when creating a new bugzilla bug.
3358
3359 2018-08-07  Wenson Hsieh  <wenson_hsieh@apple.com>
3360
3361         Post-review feedback after r234614.
3362         https://bugs.webkit.org/show_bug.cgi?id=188322
3363         <rdar://problem/42455270>
3364
3365         Reviewed by Sam Weinig.
3366
3367         Use std::round instead of roundl — there's no reason to go from double to long double precision when rounding.
3368
3369         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
3370         (rounded):
3371
3372 2018-08-07  Don Olmstead  <don.olmstead@sony.com>
3373
3374         [MiniBrowser][Win] Allow selection of recent user agents
3375         https://bugs.webkit.org/show_bug.cgi?id=188371
3376
3377         Reviewed by Fujii Hironori.
3378
3379         Updates the user agent spoofing strings to the latest released
3380         versions and adds Microsoft Edge's user agent.
3381
3382         Moves the menu item selection to the common base class, BrowserWindow
3383         to support user agent spoofing in a WebKitLegacyBrowserWindow and
3384         WebKitBrowserWindow.
3385
3386         * MiniBrowser/win/BrowserWindow.cpp: Added.
3387         (BrowserWindow::setUserAgent):
3388         * MiniBrowser/win/BrowserWindow.h:
3389         * MiniBrowser/win/CMakeLists.txt:
3390         * MiniBrowser/win/MainWindow.cpp:
3391         (MainWindow::toggleMenuItem):
3392         * MiniBrowser/win/MiniBrowserLib.rc:
3393         * MiniBrowser/win/MiniBrowserLibResource.h:
3394         * MiniBrowser/win/WebKitBrowserWindow.cpp:
3395         * MiniBrowser/win/WebKitBrowserWindow.h:
3396         * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
3397         (WebKitLegacyBrowserWindow::setUserAgent):
3398         * MiniBrowser/win/WebKitLegacyBrowserWindow.h:
3399
3400 2018-08-07  Yusuke Suzuki  <utatane.tea@gmail.com>
3401
3402         Unreviewed, add a new address to my configuration
3403
3404         * Scripts/webkitpy/common/config/contributors.json:
3405
3406 2018-08-06  David Quesada  <david_quesada@apple.com>
3407
3408         webkitdirs.pm should default to iPhone SE for 64-bit testing
3409         https://bugs.webkit.org/show_bug.cgi?id=188361
3410
3411         Reviewed by Daniel Bates.
3412
3413         Use iPhone SE as the default iOS Simulator device type. This corresponds to the change to webkitpy in r234467.
3414
3415         * Scripts/webkitdirs.pm:
3416         (findOrCreateSimulatorForIOSDevice):
3417         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3418         (parse_args):
3419             Update the help text for --device-type to reflect the new default device.
3420
3421 2018-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
3422
3423         [iOS] Caret disappears after resigning and becoming first responder if active focus state is retained
3424         https://bugs.webkit.org/show_bug.cgi?id=188322
3425         <rdar://problem/42455270>
3426
3427         Reviewed by Tim Horton.
3428
3429         Fixes an API test added in r234600, which had incorrect test expectations — namely, the width of the caret rect
3430         was not in content view coordinates, unlike the x, y, and height.
3431
3432         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
3433         (rounded):
3434         (-[TestWKWebView waitForCaretViewFrameToBecome:]):
3435         (-[TestWKWebView waitForSelectionViewRectsToBecome:]):
3436         (TestWebKitAPI::TEST):
3437
3438 2018-08-06  Ryan Haddad  <ryanhaddad@apple.com>
3439
3440         Unreviewed, rolling out r234569.
3441
3442         Breaks internal builds.
3443
3444         Reverted changeset:
3445
3446         "We should cache the compiled sandbox profile in a data vault"
3447         https://bugs.webkit.org/show_bug.cgi?id=184991
3448         https://trac.webkit.org/changeset/234569
3449
3450 2018-08-06  Fujii Hironori  <Hironori.Fujii@sony.com>
3451
3452         [Win][DLLLauncher] Remove --highDPI switch
3453         https://bugs.webkit.org/show_bug.cgi?id=188255
3454
3455         Reviewed by Yusuke Suzuki.
3456
3457         Bug 149417 has added `--highDPI` switch to make MiniBrowser DPI
3458         aware. But, Bug 158733 has made MiniBrowser always DPI aware. It
3459         became useless since the change. Remove the switch.
3460
3461         This change fixes the issue all dump render tree tests are failing
3462         in WinCairo port if high DPI display is connected.
3463
3464         * MiniBrowser/win/Common.cpp:
3465         (parseCommandLine): Removed `--highDPI` switch.
3466         * win/DLLLauncher/DLLLauncherMain.cpp:
3467         (wWinMain): Do not call SetProcessDPIAware.
3468         (shouldUseHighDPI): Deleted.
3469
3470 2018-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
3471
3472         [iOS] Tests that try to interact with the QuickType bar time out on iOS 11+
3473         https://bugs.webkit.org/show_bug.cgi?id=188335
3474         <rdar://problem/32542437> and <rdar://problem/32542433>
3475
3476         Reviewed by Tim Horton.
3477
3478         Remove a UIScriptController helper method that attempted to wait for QuickType buttons to appear, and then send
3479         touch events to the buttons. These were only used for the two tests which this patch refactors. See the
3480         LayoutTests ChangeLog for more detail.
3481
3482         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3483         (WTR::UIScriptController::selectTextCandidateAtIndex): Deleted.
3484         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3485         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3486         (WTR::UIScriptController::selectTextCandidateAtIndex): Deleted.
3487         (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex): Deleted.
3488         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3489         * TestRunnerShared/spi/UIKitTestSPI.h:
3490
3491         Remove an internal class declaration that is now unnecessary.
3492
3493         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3494         (WTR::UIScriptController::selectTextCandidateAtIndex): Deleted.
3495         (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex): Deleted.
3496
3497 2018-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
3498
3499         [iOS] Caret disappears after resigning and becoming first responder if active focus state is retained
3500         https://bugs.webkit.org/show_bug.cgi?id=188322
3501         <rdar://problem/42455270>
3502
3503         Reviewed by Tim Horton.
3504
3505         Adds plumbing in UIScriptController to grab the start and end selection handle rects for use in the new layout
3506         test. Also adds new API tests to verify that when a web view resigns first responder, both caret and range
3507         selection views are hidden, and when first responder status is restored, both caret and range selection views
3508         are made visible again.
3509
3510         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3511         (WTR::UIScriptController::selectionStartGrabberViewRect const):
3512         (WTR::UIScriptController::selectionEndGrabberViewRect const):
3513         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3514         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3515         (WTR::UIScriptController::selectionStartGrabberViewRect const):
3516         (WTR::UIScriptController::selectionEndGrabberViewRect const):
3517         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3518         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
3519         (-[TestWKWebView waitForCaretViewFrameToBecome:]):
3520         (-[TestWKWebView waitForSelectionViewRectsToBecome:]):
3521         (webViewWithAutofocusedInput):
3522
3523         Pull out some common logic for creating a web view that allows programmatic focus to present the keyboard, and
3524         immediately loading a web page with an autofocusing text field.
3525
3526         (TestWebKitAPI::TEST):
3527         * TestWebKitAPI/cocoa/TestWKWebView.h:
3528         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3529         (-[TestWKWebView caretViewRectInContentCoordinates]):
3530         (-[TestWKWebView selectionViewRectsInContentCoordinates]):
3531         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3532         (WTR::UIScriptController::selectionStartGrabberViewRect const):
3533         (WTR::UIScriptController::selectionEndGrabberViewRect const):
3534
3535 2018-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
3536
3537         [iOS] Layout tests that send HID events cause WebKitTestRunner to crash on recent SDKs
3538         https://bugs.webkit.org/show_bug.cgi?id=188334
3539         <rdar://problem/40630074>
3540
3541         Reviewed by Tim Horton.
3542
3543         To mark the end of previously dispatched IOHID events, HIDEventGenerator currently sends a vendor-defined event
3544         and stores the completion callback ID for the previously dispatched events as vendor-defined data. When this
3545         vendor-defined marker event is handled by the application, we then read the callback ID back from the event, map
3546         it to a completion block, and invoke the completion block to signal that the previous HID event has been
3547         processed.
3548
3549         This callback ID is an unsigned, so we tell IOKit that we need `sizeof(unsigned)` (4 bytes) to store it. On
3550         shipping software, IOKit clamps this to a minimum of 8 bytes, i.e. `sizeof(CFIndex)`. When we later call
3551         IOHIDEventGetIntegerValue to read the value of our vendor-defined data as a CFIndex, we get our expected
3552         callback ID because the buffer was clamped to 8 bytes.
3553
3554         However, on recent iOS SDKs that contain the fix for <rdar://problem/20082284>, IOKit no longer clamps the size
3555         of the vendor-defined data buffer to 8 bytes. This means that when we try to use IOHIDEventGetIntegerValue to
3556         read our callback ID back, we end up getting a CFIndex where the lower 4 bytes are the callback ID we wrote, and
3557         the upper 4 bytes are garbage. In the case where any of these upper 4 bytes are non-zero, we fail to map the
3558         callback ID to a completion handler, and so we never finish dispatching the HID event, causing an exception to
3559         be thrown.
3560
3561         To fix this, we adjust callback ID to be a CFIndex, which matches IOHIDEventGetIntegerValue's return type.
3562
3563         * WebKitTestRunner/ios/HIDEventGenerator.mm:
3564         (+[HIDEventGenerator nextEventCallbackID]):
3565         (-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]):
3566
3567         Also refactor a bit of `-_sendMarkerHIDEventWithCompletionBlock:` by using auto and move semantics.
3568
3569 2018-08-03  Ben Richards  <benton_richards@apple.com>
3570
3571         We should cache the compiled sandbox profile in a data vault
3572         https://bugs.webkit.org/show_bug.cgi?id=184991
3573
3574         Reviewed by Ryosuke Niwa.
3575
3576         Added trace points for sandbox initialization
3577
3578         * Tracing/SystemTracePoints.plist:
3579
3580 2018-08-03  David Fenton  <david_fenton@apple.com>
3581
3582         Unreviewed, rolling out r234517.
3583
3584         Caused API test failures on iOS
3585
3586         Reverted changeset:
3587
3588         "[Cocoa] setCookie API fails to set session cookies for
3589         defaultDataStore if processPool created but not used"
3590         https://bugs.webkit.org/show_bug.cgi?id=188209
3591         https://trac.webkit.org/changeset/234517
3592
3593 2018-08-03  Ben Richards  <benton_richards@apple.com>
3594
3595         Add configuration for automatic process pre-warming
3596         https://bugs.webkit.org/show_bug.cgi?id=187108
3597
3598         Reviewed by Ryosuke Niwa.
3599
3600         Added new test case for setting maximum prewarmed process count and updated test case for process swap on navigation to set the maximum prewarmed process count to be 1 where relevant.
3601
3602         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3603         * TestWebKitAPI/Tests/WebKitCocoa/InitialWarmedProcessUsed.mm:
3604         (TEST):
3605         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3606         * TestWebKitAPI/Tests/WebKitCocoa/SetMaximumPrewarmedProcessCount.mm:
3607         (TEST):
3608
3609 2018-08-03  Aakash Jain  <aakash_jain@apple.com>
3610
3611         [ews-build] Add build step to Check Patch Relevance
3612         https://bugs.webkit.org/show_bug.cgi?id=188295
3613
3614         Reviewed by Lucas Forschler.
3615
3616         * BuildSlaveSupport/ews-build/steps.py:
3617         (CheckPatchRelevance): Added step to check patch relevance.
3618         (CheckPatchRelevance._patch_is_relevant): Checks if the patch is relevant.
3619         (CheckPatchRelevance._get_patch): Retrieves the patch from buildbot.
3620         (CheckPatchRelevance._addToLog): Add the log message.
3621         (CheckPatchRelevance.start):
3622         * BuildSlaveSupport/ews-build/factories.py: Added CheckPatchRelevance step appropriately.
3623
3624 2018-08-03  Jer Noble  <jer.noble@apple.com>
3625
3626         Unreviewed gardening; r234534 changed the policy for what audio session is set when a
3627         media element is paused. Updating the test to reflect the new policy.
3628
3629         * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
3630         (TestWebKitAPI::TEST):
3631
3632 2018-08-03  Zalan Bujtas  <zalan@apple.com>
3633
3634         [LFC][Floating] Now that the document renderer belongs to "complicated cases", adjust viewport stretching.
3635         https://bugs.webkit.org/show_bug.cgi?id=188306
3636
3637         Reviewed by Antti Koivisto.
3638
3639         * LayoutReloaded/misc/LFC-passing-tests.txt:
3640
3641 2018-08-03  Carlos Garcia Campos  <cgarcia@igalia.com>
3642
3643         [WPE] Use the new key mapper API from WPEBackend
3644         https://bugs.webkit.org/show_bug.cgi?id=188216
3645
3646         Reviewed by Žan Doberšek.
3647
3648         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
3649         (WTR::EventSenderProxy::keyDown): Use wpe_input_xkb_context_get_entries_for_key_code() to get the hardware key
3650         code.
3651         * wpe/backends/WindowViewBackend.cpp:
3652         (WPEToolingBackends::WindowViewBackend::WindowViewBackend):
3653         (WPEToolingBackends::WindowViewBackend::handleKeyEvent):
3654         (WPEToolingBackends::WindowViewBackend::modifiers const):
3655         * wpe/backends/WindowViewBackend.h:
3656
3657 2018-08-03  Carlos Garcia Campos  <cgarcia@igalia.com>
3658
3659         [WPE] Implement MouseEvent.buttons
3660         https://bugs.webkit.org/show_bug.cgi?id=187998
3661
3662         Reviewed by Žan Doberšek.
3663
3664         Pass modifiers to mouse events.
3665
3666         * WebKitTestRunner/EventSenderProxy.h:
3667         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
3668         (WTR::senderButtonToWPEButton):
3669         (WTR::modifierForButton):
3670         (WTR::EventSenderProxy::mouseDown):
3671         (WTR::EventSenderProxy::mouseUp):
3672         (WTR::EventSenderProxy::mouseMoveTo):
3673         (WTR::EventSenderProxy::mouseScrollBy):
3674         (WTR::wkEventModifiersToWPE):
3675         (WTR::wpeKeySymForKeyRef):
3676         (WTR::EventSenderProxy::keyDown):
3677         (WTR::EventSenderProxy::prepareAndDispatchTouchEvent):
3678         * wpe/backends/WindowViewBackend.cpp:
3679         (WPEToolingBackends::WindowViewBackend::handleKeyEvent):
3680         (WPEToolingBackends::WindowViewBackend::modifiers const):
3681         * wpe/backends/WindowViewBackend.h:
3682
3683 2018-08-03  Carlos Garcia Campos  <cgarcia@igalia.com>
3684
3685         [WPE] Use WPE key symbols and new API instead of xkbcommon and the key mapper
3686         https://bugs.webkit.org/show_bug.cgi?id=188093
3687
3688         Reviewed by Žan Doberšek.
3689
3690         * MiniBrowser/wpe/main.cpp: Use WPE key symbols.
3691         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
3692         (WTR::wpeKeySymForKeyRef): Use WPE key symbols and wpe_unicode_to_key_code().
3693         (WTR::EventSenderProxy::keyDown): Do not set unicode char to the event since it was removed.
3694         * flatpak/org.webkit.WPE.yaml: Bump WPEBackend and WPEBackend-fdo versions.
3695         * wpe/backends/WindowViewBackend.cpp:
3696         (WPEToolingBackends::WindowViewBackend::handleKeyEvent): Do not set unicode char to the event since it was removed.
3697         * wpe/jhbuild.modules: Bump WPEBackend and WPEBackend-fdo versions.
3698
3699 2018-08-02  Nan Wang  <n_wang@apple.com>
3700
3701         AX: [iOS] add support to return the attributed string under the element
3702         https://bugs.webkit.org/show_bug.cgi?id=188276
3703         <rdar://problem/42872357>
3704
3705         Reviewed by Chris Fleizach.
3706
3707         * DumpRenderTree/AccessibilityUIElement.cpp:
3708         (attributedStringForElementCallback):
3709         (AccessibilityUIElement::getJSClass):
3710         * DumpRenderTree/AccessibilityUIElement.h:
3711         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
3712         (AccessibilityUIElement::attributedStringForElement):
3713         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
3714         (WTR::AccessibilityUIElement::attributedStringForElement):
3715         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
3716         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
3717         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
3718         (WTR::AccessibilityUIElement::attributedStringForElement):
3719
3720 2018-08-02  Ryan Haddad  <ryanhaddad@apple.com>
3721
3722         Skip API test DataInteractionTests.CustomActionSheetPopover on current SDKs.
3723         https://bugs.webkit.org/show_bug.cgi?id=175204
3724
3725         Unreviewed test gardening.
3726
3727         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3728
3729 2018-08-02  Sihui Liu  <sihui_liu@apple.com>
3730
3731         [Cocoa] setCookie API fails to set session cookies for defaultDataStore if processPool created but not used
3732         https://bugs.webkit.org/show_bug.cgi?id=188209
3733
3734         Reviewed by Geoffrey Garen.
3735
3736         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
3737         (TEST):
3738
3739 2018-08-02  Dan Bernstein  <mitz@apple.com>
3740
3741         Fixed WebKit.AttrStyle timing out on build.webkit.org.
3742
3743         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.html: Changed from a URL that requires network
3744           access to one that doesn’t.
3745         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.mm:
3746         (TEST): Updated expected value.
3747
3748 2018-08-02  Wenson Hsieh  <wenson_hsieh@apple.com>
3749
3750         [iOS] Keyboard becomes unresponsive after pressing delete while pressing down on a character key with accents
3751         https://bugs.webkit.org/show_bug.cgi?id=188251
3752         <rdar://problem/37842108>
3753
3754         Reviewed by Tim Horton.
3755
3756         Adds a new API test to verify that clients (in this case, UIKit) is allowed to invoke
3757         -handleKeyWebEvent:withCompletionHandler: within the completion block of a prior invocation.
3758
3759         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3760         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm: Added.
3761         (TestWebKitAPI::TEST):
3762         * TestWebKitAPI/Tests/ios/TestInputDelegate.h: Added.
3763
3764         Pull some logic used to force an input session to start out from an existing API test file
3765         (WKWebViewAutofillTests) and into a separate helper class that is used by both the existing API tests and the
3766         new keyboard input test.
3767
3768         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
3769         (-[AutofillTestView initWithFrame:]):
3770         (TestWebKitAPI::TEST):
3771         (-[TestInputDelegate init]): Deleted.
3772         (-[TestInputDelegate _webView:focusShouldStartInputSession:]): Deleted.
3773         * TestWebKitAPI/ios/UIKitSPI.h:
3774
3775         Add some UIKit SPI utilized by the new API test.
3776
3777 2018-08-01  Dan Bernstein  <mitz@apple.com>
3778
3779         Optionally expose Attr::style to JavaScript
3780         https://bugs.webkit.org/show_bug.cgi?id=188226
3781         <rdar://problem/42818113>
3782
3783         Reviewed by Darin Adler.
3784
3785         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3786         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.html: Added.
3787         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.mm: Added.
3788         (TEST):
3789
3790 2018-08-02  David Fenton  <david_fenton@apple.com>
3791
3792         Unreviewed, rolling out r234489.
3793
3794         Caused 50+ crashes and 60+ API failures on iOS
3795
3796         Reverted changeset:
3797
3798         "[WTF] Rename String::format to String::deprecatedFormat"
3799         https://bugs.webkit.org/show_bug.cgi?id=188191
3800         https://trac.webkit.org/changeset/234489
3801
3802 2018-08-01  Ross Kirsling  <ross.kirsling@sony.com>
3803
3804         TestWTF.WTF_NeverDestroyed.Construct output differs for MSVC in Debug mode
3805         https://bugs.webkit.org/show_bug.cgi?id=188244
3806
3807         Reviewed by Daniel Bates.
3808
3809         Follow-up to r234179. MSVC chooses not to inline the lambda in Debug mode. 
3810
3811         * TestWebKitAPI/Tests/WTF/NeverDestroyed.cpp:
3812
3813 2018-08-01  Tomas Popela  <tpopela@redhat.com>
3814
3815         [WTF] Rename String::format to String::deprecatedFormat
3816         https://bugs.webkit.org/show_bug.cgi?id=188191
3817
3818         Reviewed by Darin Adler.
3819
3820         It should be replaced with string concatenation.
3821
3822         * DumpRenderTree/win/DumpRenderTree.cpp:
3823         (applicationId):
3824         (main):
3825         * TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
3826         (TestWebKitAPI::Util::createURLForResource):
3827         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3828         (WTR::cacheTestRunnerCallback):
3829         * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
3830         (WTR::AccessibilityNotificationHandler::connectAccessibilityCallbacks):
3831         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3832         (WTR::AccessibilityUIElement::attributedStringForRange):
3833         (WTR::AccessibilityUIElement::url):
3834         (WTR::stringAtOffset):
3835         * WebKitTestRunner/TestController.cpp:
3836         (WTR::TestController::didReceiveAuthenticationChallenge):
3837         (WTR::TestController::downloadDidFail):
3838         (WTR::originUserVisibleName):
3839         (WTR::userMediaOriginHash):
3840         (WTR::TestController::didNavigateWithNavigationData):
3841         (WTR::TestController::didPerformClientRedirect):
3842         (WTR::TestController::didPerformServerRedirect):
3843         (WTR::TestController::didUpdateHistoryTitle):
3844
3845 2018-08-01  Nan Wang  <n_wang@apple.com>
3846
3847         AX: AOM: Add ARIA IDL Attribute Reflection
3848         https://bugs.webkit.org/show_bug.cgi?id=184676
3849         <rdar://problem/39476882>
3850
3851         Reviewed by Chris Fleizach.
3852
3853         * DumpRenderTree/mac/DumpRenderTree.mm:
3854         (enableExperimentalFeatures):
3855         * WebKitTestRunner/TestController.cpp:
3856         (WTR::TestController::resetPreferencesToConsistentValues):
3857
3858 2018-08-01  Jonathan Bedard  <jbedard@apple.com>
3859
3860         Use iPhone SE as the default simulated device
3861         https://bugs.webkit.org/show_bug.cgi?id=188227
3862
3863         Reviewed by Aakash Jain.
3864
3865         * Scripts/webkitpy/port/ios_simulator.py:
3866         (IOSSimulatorPort):
3867
3868 2018-08-01  Commit Queue  <commit-queue@webkit.org>
3869
3870         Unreviewed, rolling out r234443 and r234445.
3871         https://bugs.webkit.org/show_bug.cgi?id=188224
3872
3873         Revision caused 3 api failures across all platforms.
3874         (Requested by Truitt on #webkit).
3875
3876         Reverted changesets:
3877
3878         "Add configuration for automatic process pre-warming"
3879         https://bugs.webkit.org/show_bug.cgi?id=187108
3880         https://trac.webkit.org/changeset/234443
3881
3882         "Add configuration for automatic process pre-warming"
3883         https://bugs.webkit.org/show_bug.cgi?id=187108
3884         https://trac.webkit.org/changeset/234445
3885
3886 2018-07-31  Ben Richards  <benton_richards@apple.com>
3887
3888         Add configuration for automatic process pre-warming
3889         https://bugs.webkit.org/show_bug.cgi?id=187108
3890
3891         Reviewed by Ryosuke Niwa.
3892
3893         Added new test case for setting maximum prewarmed process count and updated test case for process swap on navigation to set the maximum prewarmed process count to be 1 where relevant.
3894
3895         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3896         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3897         * TestWebKitAPI/Tests/WebKitCocoa/SetMaximumPrewarmedProcessCount.mm: Added.
3898         (TEST):
3899
3900 2018-07-31  John Wilander  <wilander@apple.com>
3901
3902         Resource Load Statistics: Remove partitioned cookies for reduced complexity, lower memory footprint, and ability to support more platforms
3903         https://bugs.webkit.org/show_bug.cgi?id=188109
3904         <rdar://problem/42664391>
3905
3906         Reviewed by Brent Fulgham, Chris Dumez, and Alex Christensen.
3907
3908         This patch removes cookie partitioning which reduces the model to just
3909         blocked cookies (in third-party contexts) and first-party cookie access.
3910
3911         Several of the changes are renaming to reflect that there are no more
3912         cookie partitions.
3913
3914         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3915            Removed or renamed functions to reflect that there are no more
3916            partitioned cookies.
3917         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3918         (WTR::InjectedBundle::didReceiveMessageToPage):
3919         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3920         (WTR::TestRunner::statisticsUpdateCookieBlocking):
3921         (WTR::TestRunner::statisticsCallDidSetBlockCookiesForHostCallback):
3922         (WTR::TestRunner::setCookieStoragePartitioningEnabled): Deleted.
3923         (WTR::TestRunner::setStatisticsHasHadNonRecentUserInteraction): Deleted.
3924         (WTR::TestRunner::setStatisticsTimeToLiveCookiePartitionFree): Deleted.
3925         (WTR::TestRunner::statisticsUpdateCookiePartitioning): Deleted.
3926         (WTR::TestRunner::statisticsSetShouldPartitionCookiesForHost): Deleted.
3927         (WTR::TestRunner::statisticsCallDidSetPartitionOrBlockCookiesForHostCallback): Deleted.
3928         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3929         * WebKitTestRunner/TestController.cpp:
3930         (WTR::TestController::statisticsUpdateCookieBlocking):
3931         (WTR::TestController::setStatisticsHasHadNonRecentUserInteraction): Deleted.
3932         (WTR::TestController::setStatisticsTimeToLiveCookiePartitionFree): Deleted.
3933         (WTR::TestController::statisticsUpdateCookiePartitioning): Deleted.
3934         (WTR::TestController::statisticsSetShouldPartitionCookiesForHost): Deleted.
3935         * WebKitTestRunner/TestController.h:
3936         * WebKitTestRunner/TestInvocation.cpp:
3937         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3938         (WTR::TestInvocation::didSetBlockCookiesForHost):
3939         (WTR::TestInvocation::didSetHasHadUserInteraction):
3940         (WTR::TestInvocation::didSetPartitionOrBlockCookiesForHost): Deleted.
3941         (WTR::TestInvocation::didSetHasHadNonRecentUserInteraction): Deleted.
3942         * WebKitTestRunner/TestInvocation.h:
3943         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3944         (WTR::initializeWebViewConfiguration):
3945
3946 2018-07-31  Alex Christensen  <achristensen@webkit.org>
3947
3948         Build fix.  Remove unused variable.
3949
3950         * TestWebKitAPI/Tests/WebCore/TransformationMatrix.cpp:
3951         (TestWebKitAPI::TEST):
3952         transform was never used. It was introduced in r205871
3953         Apparently I'm the first one to build in a certain configuration that found it.
3954
3955 2018-07-31  Fujii Hironori  <Hironori.Fujii@sony.com>
3956
3957         server_process.py should print returncode in debug log if the process crashed
3958         https://bugs.webkit.org/show_bug.cgi?id=188160
3959
3960         Reviewed by Konstantin Tokarev.
3961
3962         * Scripts/webkitpy/port/server_process.py:
3963         (ServerProcess.has_crashed): Put self._proc.returncode into the debug log message.
3964
3965 2018-07-31  Tomas Popela  <tpopela@redhat.com>
3966
3967         [WTF] String::formatWithArguments() is unused
3968         https://bugs.webkit.org/show_bug.cgi?id=187955
3969
3970         Reviewed by Darin Adler.
3971
3972         Remove tests for WTF::String::formatWithArguments() as it's unused and
3973         we are removing it.
3974
3975         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
3976
3977 2018-07-30  Aakash Jain  <aakash_jain@apple.com>
3978
3979         [ews-build] Fix typo in builder name for Bindings-tests-EWS.
3980
3981         * BuildSlaveSupport/ews-build/config.json: Changed 'tests' to 'Tests' to make it consistent with
3982         other builders.
3983
3984 2018-07-30 Aakash Jain  <aakash_jain@apple.com>
3985
3986         [ews-build] Add support for API tests in OpenSource EWS
3987         https://bugs.webkit.org/show_bug.cgi?id=188156
3988
3989         Reviewed by Lucas Forschler.
3990
3991         * BuildSlaveSupport/ews-build/config.json:
3992         * BuildSlaveSupport/ews-build/factories.py:
3993         (BuildFactory.__init__): Added triggers parameter.
3994         (BuildFactory): If trigger is defined, create and upload archive and trigger appropriate queues.
3995         (BuildFactory.propertiesToPassToTriggers): Pass all the required properties to triggered queue.
3996         (APITestsFactory): Factory for running API tests.
3997         * BuildSlaveSupport/ews-build/steps.py:
3998         (ConfigureBuild.start): Set the property only if property is defined in config.json. Also set the 
3999         source of the property.
4000
4001 2018-07-30  Aakash Jain  <aakash_jain@apple.com>
4002
4003         [ews-build] loadConfig should ensure that the triggers are valid
4004         https://bugs.webkit.org/show_bug.cgi?id=188134
4005
4006         Reviewed by Lucas Forschler.
4007
4008         * BuildSlaveSupport/ews-build/loadConfig.py:
4009         (checkValidBuilder): Added a check to ensure that the builder doesn't refernce non-existing scheduler.
4010         (checkValidSchedulers): Ensures that the scheduler is not un-used.
4011         * BuildSlaveSupport/ews-build/loadConfig_unittest.py: Updated unit-tests.
4012
4013 2018-07-27  Michael Catanzaro  <mcatanzaro@igalia.com>
4014
4015         Unreviewed, fix typo in test expectations and mark another test as timing out
4016
4017         * TestWebKitAPI/glib/TestExpectations.json:
4018
4019 2018-07-27  Michael Catanzaro  <mcatanzaro@igalia.com>
4020
4021         More unreviewed GTK test gardening
4022
4023         * TestWebKitAPI/glib/TestExpectations.json:
4024
4025 2018-07-27  Simon Fraser  <simon.fraser@apple.com>
4026
4027         Be more conservative with compositing layer creation when memory is low
4028         https://bugs.webkit.org/show_bug.cgi?id=187866
4029         rdar://problem/42366345
4030
4031         Reviewed by Zalan Bujtas.
4032         
4033         When process physical footprint is above a fraction of the jetsam limit, be more conservative in making
4034         compositing layers. We avoid compositing for these situations:
4035         1. Layers with 3D transforms which are affine (like translateZ(0)).
4036         2. Layers with will-change
4037         3. Layers for canvases (other than WebGL/WebGPU)
4038         
4039         We reuse some macOS code in MemoryPressureHandler() but choose different thresholds for iOS,
4040         falling into "conservative mode" at 50% of jetsam limit, and "strict mode" at 65%.
4041         Compositing chooses to be more conservative in either "conservative" or "strict" memory modes.
4042         
4043         Plumb through a "compositingPolicyOverride" both so that on-device testing isn't
4044         flakily falling into a different mode, and so that we can impose the conservative
4045         mode for testing.
4046
4047         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
4048         (WTR::InjectedBundlePage::prepare):
4049
4050 2018-07-27  Michael Catanzaro  <mcatanzaro@igalia.com>
4051
4052         Unreviewed GTK test gardening
4053
4054         * TestWebKitAPI/glib/TestExpectations.json:
4055
4056 2018-07-27  Alex Christensen  <achristensen@webkit.org>
4057
4058         Fix API tests after r234314
4059         https://bugs.webkit.org/show_bug.cgi?id=188077
4060
4061         Make API tests use new delegate method.
4062
4063         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
4064         (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
4065         (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
4066
4067 2018-07-27  Alex Christensen  <achristensen@webkit.org>
4068
4069         Fix API tests after r234314
4070         https://bugs.webkit.org/show_bug.cgi?id=188077
4071
4072         Make API tests use new delegate method.
4073
4074         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
4075         (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
4076         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
4077         (-[AsyncAutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
4078         (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
4079         (-[PopUpPoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
4080         (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
4081         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
4082         (-[AsyncAutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
4083         (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
4084         (-[PopUpPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
4085
4086 2018-07-26  Andy VanWagoner  <andy@vanwagoner.family>
4087
4088         [INTL] Remove INTL sub-feature compile flags
4089         https://bugs.webkit.org/show_bug.cgi?id=188081
4090
4091         Reviewed by Michael Catanzaro.
4092
4093         * Scripts/webkitperl/FeatureList.pm:
4094         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
4095
4096 2018-07-26  Chris Dumez  <cdumez@apple.com>
4097
4098         Loading a file URL and then issuing a reload right away causes the load to fail due to sandboxing
4099         https://bugs.webkit.org/show_bug.cgi?id=188078
4100         <rdar://problem/42562493>
4101
4102         Reviewed by Geoff Garen.
4103
4104         Add API test coverage. It exercises the right code path but unfortunately is not yet a regression
4105         test because TestWebKitAPI does not appear to be sandboxed (rdar://problem/42638129).
4106
4107         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4108         * TestWebKitAPI/Tests/WebKitCocoa/LoadFileThenReload.mm: Added.
4109         (-[LoadFileThenReloadDelegate webView:didFinishNavigation:]):
4110         (-[LoadFileThenReloadDelegate webView:didFailProvisionalNavigation:withError:]):
4111         (-[LoadFileThenReloadDelegate webView:didFailNavigation:withError:]):
4112         (TEST):
4113
4114 2018-07-26  Aaron Chu  <aaron_chu@apple.com>
4115
4116         Add Aaron Chu as a committer to contributors.json
4117         https://bugs.webkit.org/show_bug.cgi?id=188066
4118
4119         Unreviwed. Added myself as committer.
4120
4121         * Scripts/webkitpy/common/config/contributors.json:
4122
4123 2018-07-26  Aakash Jain  <aakash_jain@apple.com>
4124
4125         [ews-build] Add build step to run API Tests
4126         https://bugs.webkit.org/show_bug.cgi?id=188079
4127
4128         Reviewed by Lucas Forschler.
4129
4130         * BuildSlaveSupport/ews-build/steps.py:
4131         (TestWithFailureCount): Common class for various tests with failure count.
4132         (TestWithFailureCount.start): Configure Buildbot's logobserver.
4133         (TestWithFailureCount.commandComplete): Updates the failure count.
4134         (TestWithFailureCount.evaluateCommand): Set the step status appropriately.
4135         (TestWithFailureCount.getResultSummary): Set the step summary appropriately.
4136         (RunAPITests): Build step to run API tests.
4137         (RunAPITests.countFailures): Count the failures by parsing the output.
4138         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
4139
4140 2018-07-26  Ross Kirsling  <ross.kirsling@sony.com>
4141
4142         String(View) should have a splitAllowingEmptyEntries function instead of a flag parameter
4143         https://bugs.webkit.org/show_bug.cgi?id=187963
4144
4145         Reviewed by Alex Christensen.
4146
4147         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
4148         Add tests for String::split and String::splitAllowingEmptyEntries.
4149
4150         * TestWebKitAPI/Tests/WTF/StringView.cpp:
4151         * WebKitTestRunner/TestController.cpp:
4152         (WTR::updateTestOptionsFromTestHeader):
4153         Update split/splitAllowingEmptyEntries usage.
4154
4155 2018-07-26  Commit Queue  <commit-queue@webkit.org>
4156
4157         Unreviewed, rolling out r234181 and r234189.
4158         https://bugs.webkit.org/show_bug.cgi?id=188075
4159
4160         These are not needed right now (Requested by thorton on
4161         #webkit).