1 2018-12-10 Jonathan Bedard <jbedard@apple.com>
3 webkitpy: Ref tests don't respect platform specific expectations
4 https://bugs.webkit.org/show_bug.cgi?id=192515
5 <rdar://problem/46564839>
7 Reviewed by Lucas Forschler.
9 * Scripts/webkitpy/port/base.py:
10 (Port._expected_baselines_for_suffixes): Accept multiple suffixes so ref tests can use this function.
11 (Port.expected_baselines): Move implementation to _expected_baselines_for_suffixes.
12 (Port.expected_filename): Remove irrelevant FIXME, code clean-up.
13 (Port.reference_files): Instead of just searching a single directory, use _expected_baselines_for_suffixes to
14 search all platform expectations as well.
15 * Scripts/webkitpy/port/base_unittest.py:
16 (test_ref_tests_platform_directory):
18 2018-12-10 Chris Dumez <cdumez@apple.com>
20 Add SPI to allow the client to set the user-agent at main frame level, from the UIProcess
21 https://bugs.webkit.org/show_bug.cgi?id=192509
22 <rdar://problem/46500832>
24 Reviewed by Alex Christensen.
26 Add API test coverage.
28 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
29 (-[DataMappingSchemeHandler addMappingFromURLString:toData:]):
30 (-[DataMappingSchemeHandler webView:startURLSchemeTask:]):
31 (-[DataMappingSchemeHandler webView:stopURLSchemeTask:]):
32 (-[CustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
33 (-[CustomUserAgentDelegate webView:didFinishNavigation:]):
35 2018-12-10 Wenson Hsieh <wenson_hsieh@apple.com>
37 [iOS] Caret is obscured by finger when dragging over an editable element
38 https://bugs.webkit.org/show_bug.cgi?id=192499
39 <rdar://problem/46570101>
41 Reviewed by Tim Horton.
43 Augment some existing API tests to check that the `precise` flag is either on or off on `UIDropProposal`.
45 * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
46 * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
47 * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
48 (-[DragAndDropSimulator _resetSimulatedState]):
49 (-[DragAndDropSimulator lastKnownDropProposal]):
51 Rename `currentDropProposal` to `lastKnownDropProposal`, and expose it as a readonly property.
53 (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
54 (-[DragAndDropSimulator _advanceProgress]):
55 (-[DragAndDropSimulator setShowCustomActionSheetBlock:]):
56 (-[DragAndDropSimulator showCustomActionSheetBlock]):
57 (-[DragAndDropSimulator setConvertItemProvidersBlock:]):
58 (-[DragAndDropSimulator convertItemProvidersBlock]):
59 (-[DragAndDropSimulator setOverridePerformDropBlock:]):
60 (-[DragAndDropSimulator overridePerformDropBlock]):
61 (-[DragAndDropSimulator setOverrideDragUpdateBlock:]):
62 (-[DragAndDropSimulator overrideDragUpdateBlock]):
63 (-[DragAndDropSimulator setDropCompletionBlock:]):
64 (-[DragAndDropSimulator dropCompletionBlock]):
66 Refactor these properties to return and take normal Objective-C blocks, rather than `BlockPtr`s. However, use
67 `BlockPtr` instance variables to manage the lifetimes of these blocks.
69 (-[DragAndDropSimulator _webView:willUpdateDropProposalToProposal:forSession:]):
70 (-[DragAndDropSimulator _webView:willUpdateDataInteractionOperationToOperation:forSession:]): Deleted.
72 Update this to use the new WebKit delegate hook for overriding the drop proposal.
74 2018-12-10 Michael Catanzaro <mcatanzaro@igalia.com>
76 [WPE][GTK] run-minibrowser improperly creates webkit-flatpak environment
77 https://bugs.webkit.org/show_bug.cgi?id=190241
79 Reviewed by Carlos Garcia Campos.
81 run-minibrowser calls into webkit-flatpak to check if a flatpak environment is available.
82 Currently this actually creates the directories needed for the flatpak environment. Fix it.
84 * flatpak/flatpakutils.py:
85 (WebkitFlatpak.clean_args):
88 2018-12-10 Michael Catanzaro <mcatanzaro@igalia.com>
90 [GTK] Don't use the slice allocator
91 https://bugs.webkit.org/show_bug.cgi?id=192360
93 Reviewed by Carlos Garcia Campos.
95 * MiniBrowser/gtk/main.c:
96 (aboutDataRequestFree):
97 (aboutDataRequestNew):
99 2018-12-10 Tim Horton <timothy_horton@apple.com>
101 WKWebView should support custom tintColor
102 https://bugs.webkit.org/show_bug.cgi?id=192518
103 <rdar://problem/37243261>
105 Reviewed by Wenson Hsieh.
107 * TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm:
108 (TestWebKitAPI::TEST):
109 Add a test that tintColor affects UITextInputTraits' interaction colors.
111 2018-12-09 Wenson Hsieh <wenson_hsieh@apple.com>
113 [iOS] DragAndDropTests.RespectsExternalSourceFidelityRankings is flaky
114 https://bugs.webkit.org/show_bug.cgi?id=192524
116 Reviewed by Ryosuke Niwa.
118 This test started failing on certain builds of iOS where UIKit now attempts to reveal the selection by scrolling
119 (see <rdar://problem/28300343>). This API test simulates two drops from external sources, both from the point
120 (300, 400) to (100, 300) in window coordinates. On these aforementioned builds of iOS, what happens is that the
121 first drop inserts text that overflows the editable region by an enormous amount, which creates an extremely
122 wide selection rect and increases the width of the document; revealing this selection causes the web view to
123 scroll horizontally, such that the second attempt to simulate a drag from (300, 400) to (100, 300) fails, since
124 these window coordinates no longer correspond to the drop destination element in the document.
126 To fix this test, we simply mark the drop destination as `overflow: hidden` to ensure that we don't try and
127 scroll horizontally after the first drop.
129 * TestWebKitAPI/Tests/WebKitCocoa/autofocus-contenteditable.html:
131 2018-12-08 Daniel Bates <dabates@apple.com>
133 Fix lldb_webkit.py following r238771
134 (https://bugs.webkit.org/show_bug.cgi?id=190234)
136 Substitute WTFURLProvider for WebCoreURLProvider in one call site that was inadvertently
139 * lldb/lldb_webkit.py:
140 (WebCoreDocumentProvider.url):
142 2018-12-07 Aakash Jain <aakash_jain@apple.com>
144 [ews-build] check-patch-relevance failure should not mark the overall build as failure
145 https://bugs.webkit.org/show_bug.cgi?id=192510
147 Reviewed by Lucas Forschler.
149 * BuildSlaveSupport/ews-build/steps.py:
150 (CheckPatchRelevance.start):
152 2018-12-07 Chris Dumez <cdumez@apple.com>
154 ProcessSwap.UseSessionCookiesAfterProcessSwapInPrivateBrowsing API test is failing
155 https://bugs.webkit.org/show_bug.cgi?id=192362
156 <rdar://problem/46460360>
158 Reviewed by Ryosuke Niwa.
160 Move the call to _setCookieAcceptPolicy *after* we've constructed a WKWebView and thus
161 *after* we know for sure we have a network process to communicate the policy to.
162 This should address the failures on iOS.
164 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
166 2018-12-07 Jiewen Tan <jiewen_tan@apple.com>
168 Add keychain access entitlement to WebKitTestRunnerApp
169 https://bugs.webkit.org/show_bug.cgi?id=192489
170 <rdar://problem/45057952>
172 Reviewed by Alexey Proskuryakov.
174 * WebKitTestRunner/Configurations/WebKitTestRunnerApp-iOS.entitlements:
176 2018-12-07 Saam Barati <sbarati@apple.com>
178 WKWebProcessPlugInLoadDelegate should have API for saying which rendering events it wants to listen for
179 https://bugs.webkit.org/show_bug.cgi?id=192473
181 Reviewed by Andy Estes.
183 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
184 * TestWebKitAPI/Tests/WebKitCocoa/RenderingProgress.mm: Added.
185 (-[DidFirstMeaningfulPaintRemoteObject didFirstMeaningfulPaint]):
187 * TestWebKitAPI/Tests/WebKitCocoa/RenderingProgressPlugIn.mm: Added.
188 (-[RenderingProgressPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
189 (-[RenderingProgressPlugIn webProcessPlugInBrowserContextControllerRenderingProgressEvents:]):
190 (-[RenderingProgressPlugIn webProcessPlugInBrowserContextController:renderingProgressDidChange:]):
191 * TestWebKitAPI/Tests/WebKitCocoa/RenderingProgressProtocol.h: Added.
193 2018-12-07 Jonathan Bedard <jbedard@apple.com>
195 REGRESSION: run-webkit-tests may fail when using booted simulators (Follow-up fix)
196 https://bugs.webkit.org/show_bug.cgi?id=192470
197 <rdar://problem/46532001>
199 Unreviewed infrastructure fix.
201 * Scripts/webkitpy/port/device_port.py:
202 (DevicePort.setup_test_run): Check that the number of initialized devices matches the
203 number of child processes.
205 2018-12-07 Aakash Jain <aakash_jain@apple.com>
207 [ews-app] Send bug id as a build property
208 https://bugs.webkit.org/show_bug.cgi?id=192494
210 Reviewed by Lucas Forschler.
212 * BuildSlaveSupport/ews-app/ews/fetcher.py:
213 (BugzillaPatchFetcher.fetch):
215 2018-12-07 Aakash Jain <aakash_jain@apple.com>
217 [ews-build] Builds should have a link to patch and bug
218 https://bugs.webkit.org/show_bug.cgi?id=192492
220 Reviewed by Lucas Forschler.
222 * BuildSlaveSupport/ews-build/steps.py:
223 (ConfigureBuild.add_patch_id_url): Method to add Patch URL.
224 (ConfigureBuild.add_bug_id_url): Method to add Bug URL.
225 (ConfigureBuild.getPatchURL): Method to get Patch URL.
226 (ConfigureBuild.getBugURL): Method to get Bug URL.
228 2018-12-07 Aakash Jain <aakash_jain@apple.com>
230 [ews-app] Configure logfile for ews-app logs
231 https://bugs.webkit.org/show_bug.cgi?id=192493
233 Reviewed by Lucas Forschler.
235 * BuildSlaveSupport/ews-app/ews/__init__.py:
237 2018-12-07 Aakash Jain <aakash_jain@apple.com>
239 Style queue exception on some security bugs
240 https://bugs.webkit.org/show_bug.cgi?id=190793
242 Reviewed by Lucas Forschler.
244 * Scripts/webkitpy/tool/steps/applywatchlist.py:
245 (ApplyWatchList.run):
247 2018-12-07 Wenson Hsieh <wenson_hsieh@apple.com>
249 [Attachment Support] Cloned attachment elements lose their unique identifiers
250 https://bugs.webkit.org/show_bug.cgi?id=192483
252 Reviewed by Tim Horton.
254 Introduce a new API test.
256 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
257 (TestWebKitAPI::TEST):
259 2018-12-06 Jonathan Bedard <jbedard@apple.com>
261 Consecutive DumpRenderTree crashes are happening again on WinCairo BuildBots since r238903
262 https://bugs.webkit.org/show_bug.cgi?id=192486
264 Unreviewed infrastructure fix.
266 WinCairo bots define WEBKIT_TEST_CHILD_PROCESSES to run less processes due to RAM restrictions.
268 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
269 (_set_up_derived_options):
271 2018-12-06 David Kilzer <ddkilzer@apple.com>
273 Injected bundle for WebKitTestRunner leaks WKTypeRef objects
274 <https://webkit.org/b/192481>
275 <rdar://problem/46539059>
277 Reviewed by Simon Fraser.
280 - Fixes leaks in various injected bundle methods that return +1
281 retained WKTypeRef objects via pointer.
282 - Asserts the returned object is the expected WKTypeRef.
283 - Replaces 0 with nullptr in many places.
285 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
286 (WTR::InjectedBundle::didCreatePage):
287 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
288 (WTR::TestRunner::shouldDumpPixels const):
289 (WTR::TestRunner::whatToDump const):
290 (WTR::TestRunner::shouldWaitUntilDone const):
291 (WTR::TestRunner::shouldDumpFrameLoadCallbacks):
292 (WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
293 (WTR::TestRunner::clearDidReceiveServerRedirectForProvisionalNavigation):
294 (WTR::TestRunner::secureEventInputIsEnabled const):
295 (WTR::TestRunner::isStatisticsPrevalentResource):
296 (WTR::TestRunner::isStatisticsVeryPrevalentResource):
297 (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
298 (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
299 (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
300 (WTR::TestRunner::isStatisticsHasHadUserInteraction):
301 (WTR::TestRunner::isStatisticsGrandfathered):
302 (WTR::TestRunner::statisticsProcessStatisticsAndDataRecords):
303 (WTR::TestRunner::statisticsUpdateCookieBlocking):
304 (WTR::TestRunner::statisticsSubmitTelemetry):
305 (WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
306 (WTR::TestRunner::statisticsClearThroughWebsiteDataRemoval):
307 (WTR::TestRunner::statisticsResetToConsistentState):
308 (WTR::TestRunner::getAllStorageAccessEntries):
309 (WTR::TestRunner::hasDOMCache):
310 (WTR::TestRunner::domCacheSize):
311 (WTR::TestRunner::injectUserScript):
312 (WTR::TestRunner::keyExistsInKeychain):
314 2018-12-06 Jonathan Bedard <jbedard@apple.com>
316 REGRESSION: run-webkit-tests may fail when using booted simulators
317 https://bugs.webkit.org/show_bug.cgi?id=192470
318 <rdar://problem/46532001>
320 Reviewed by Lucas Forschler.
322 * Scripts/webkitpy/layout_tests/controllers/manager.py:
323 (Manager.run): Logging uses the number of child processes to print out information about how efficiently tests
324 were sharded after the fact. This number is the most meaningful if it is the maximum number of child processes used.
325 * Scripts/webkitpy/port/base.py:
326 (Port.max_child_processes): By default, Ports do not support running on any specific kind of device.
327 * Scripts/webkitpy/port/device_port.py:
328 (DevicePort.default_child_processes): Rather than using the currently initialized devices as a proxy for how many
329 child processes are being used, check the device manager every time. Regardless of which devices are attached or
330 available, iOS cannot boot watchOS devices and vice-versa. dedicated_simulators is not a known argument to
331 device_count_for_type, use use_booted_simulator instead.
332 (DevicePort.max_child_processes): Simulators can boot more devices than what is specified by device_count_for_type,
333 but, if no devices are available, then max_child_processes should return 0 even for simulators.
334 * Scripts/webkitpy/port/ios_device_unittest.py:
336 (IOSDeviceTest.test_max_child_processes):
337 * Scripts/webkitpy/port/ios_simulator_unittest.py:
339 (IOSSimulatorTest.test_max_child_processes):
340 * Scripts/webkitpy/port/port_testcase.py:
342 (PortTestCase.test_max_child_processes):
343 * Scripts/webkitpy/port/watch_simulator_unittest.py:
344 (WatchSimulatorTest):
345 (WatchSimulatorTest.test_max_child_processes):
347 2018-12-06 Jonathan Bedard <jbedard@apple.com>
349 webkitpy: Ignore case when comparing device types (Follow-up fix)
350 https://bugs.webkit.org/show_bug.cgi?id=192409
351 <rdar://problem/46491558>
355 * Scripts/webkitpy/xcode/device_type_unittest.py:
356 (DeviceTypeTest.test_comparison_lower_case):
357 (DeviceTypeTest.test_comparsion_lower_case): Deleted.
359 2018-12-06 Jonathan Bedard <jbedard@apple.com>
361 webkitpy: Create device given lower-case DeviceType
362 <https://bugs.webkit.org/show_bug.cgi?id=192472>
363 <rdar://problem/46532650>
365 Reviewed by Lucas Forschler.
367 * Scripts/webkitpy/xcode/simulated_device.py:
368 (SimulatedDeviceManager._get_device_identifier_for_type): Comparing simctl device identifiers with DeviceTypes
369 should be letter-case agnostic.
370 * Scripts/webkitpy/xcode/simulated_device_unittest.py:
371 (test_lower_case_device_type):
373 2018-12-06 Wenson Hsieh <wenson_hsieh@apple.com>
375 [iOS] WKWebView should match UITextView behavior when editing text with an RTL keyboard
376 https://bugs.webkit.org/show_bug.cgi?id=187554
377 <rdar://problem/42075638>
379 Reviewed by Tim Horton.
381 Add support for simulating the keyboard input mode in layout tests using UIScriptController, as well as a new
382 `TestOption` to make the web view editable.
384 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
385 (WTR::UIScriptController::setKeyboardInputModeIdentifier):
386 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
387 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
388 (WTR::UIScriptController::setKeyboardInputModeIdentifier):
389 * TestRunnerShared/UIScriptContext/UIScriptController.h:
390 * WebKitTestRunner/PlatformWebView.h:
391 * WebKitTestRunner/TestController.cpp:
392 (WTR::updateTestOptionsFromTestHeader):
393 * WebKitTestRunner/TestController.h:
394 (WTR::TestController::overriddenKeyboardInputMode const):
395 * WebKitTestRunner/TestOptions.h:
396 (WTR::TestOptions::hasSameInitializationOptions const):
397 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
398 (WTR::TestController::platformCreateWebView):
399 * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
400 (WTR::PlatformWebView::setEditable):
401 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
402 (WTR::PlatformWebView::setEditable):
403 * WebKitTestRunner/ios/TestControllerIOS.mm:
404 (WTR::TestController::platformResetStateToConsistentValues):
405 (WTR::swizzleCurrentInputMode):
406 (WTR::TestController::setKeyboardInputModeIdentifier):
408 Swizzle out several `UIKeyboardInputModeController` methods in order to convince UIKit that the user has
409 selected a `UIKeyboardInputMode` corresponding to the given identifier. The call to
410 `-prepareKeyboardInputModeFromPreferences:` is also necessary on iOS 12 in order to update cached writing
411 direction state in UIKit.
413 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
414 (WTR::UIScriptController::setKeyboardInputModeIdentifier):
415 * WebKitTestRunner/mac/PlatformWebViewMac.mm:
416 (WTR::PlatformWebView::setEditable):
417 * WebKitTestRunner/win/PlatformWebViewWin.cpp:
418 (WTR::PlatformWebView::setEditable):
419 * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
420 (WTR::PlatformWebView::setEditable):
422 2018-12-05 Wenson Hsieh <wenson_hsieh@apple.com>
424 [Cocoa] Share ClassMethodSwizzler and InstanceMethodSwizzler between TestWebKitAPI and WebKitTestRunner
425 https://bugs.webkit.org/show_bug.cgi?id=192437
427 Reviewed by Tim Horton.
429 * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
430 * TestRunnerShared/cocoa/ClassMethodSwizzler.h: Renamed from Tools/TestWebKitAPI/ClassMethodSwizzler.h.
431 * TestRunnerShared/cocoa/ClassMethodSwizzler.mm: Renamed from Tools/TestWebKitAPI/ClassMethodSwizzler.mm.
432 (ClassMethodSwizzler::ClassMethodSwizzler):
433 (ClassMethodSwizzler::~ClassMethodSwizzler):
434 * TestRunnerShared/cocoa/InstanceMethodSwizzler.h: Renamed from Tools/TestWebKitAPI/cocoa/InstanceMethodSwizzler.h.
435 * TestRunnerShared/cocoa/InstanceMethodSwizzler.mm: Renamed from Tools/TestWebKitAPI/cocoa/InstanceMethodSwizzler.mm.
436 (InstanceMethodSwizzler::InstanceMethodSwizzler):
437 (InstanceMethodSwizzler::~InstanceMethodSwizzler):
439 Move these swizzling helper classes into TestRunnerShared.
441 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
442 * TestWebKitAPI/Tests/WebKitCocoa/LocalStorageClear.mm:
443 * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
445 * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewDefaultNavigationDelegate.mm:
446 * TestWebKitAPI/cocoa/TestWKWebView.mm:
447 (-[TestWKWebView initWithFrame:configuration:addToWindow:]):
449 Remove namespacing around ClassMethodSwizzler and InstanceMethodSwizzler in a few API tests.
451 * TestWebKitAPI/mac/TestFontOptions.mm:
452 * WebKitTestRunner/TestController.h:
453 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
454 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
455 (WTR::ClassMethodSwizzler::ClassMethodSwizzler): Deleted.
456 (WTR::ClassMethodSwizzler::~ClassMethodSwizzler): Deleted.
458 Remove this duplicate implementation of ClassMethodSwizzler in WebKitTestRunner.
460 2018-12-05 Jonathan Bedard <jbedard@apple.com>
462 webkitpy: Clean-up apple_additions
463 https://bugs.webkit.org/show_bug.cgi?id=192413
464 <rdar://problem/46493491>
466 Reviewed by Lucas Forschler.
468 After the addition of watchOS, some functions which were originally iOS specific were
469 generalized to include all devices.
471 * Scripts/webkitpy/port/ios_device.py:
472 (IOSDevicePort._driver_class): Replace iOS specific call with generalized device call.
473 (IOSDevicePort.path_to_crash_logs): Ditto.
474 (IOSDevicePort.clean_up_test_run): Ditto.
476 2018-12-05 Jonathan Bedard <jbedard@apple.com>
478 webkitpy: Ignore case when comparing device types
479 https://bugs.webkit.org/show_bug.cgi?id=192409
480 <rdar://problem/46491558>
482 Reviewed by Lucas Forschler.
484 This allows DeviceTypes constructed with lowercase strings to correctly compare
485 against DeviceTypes coming from the simulator runtime.
487 * Scripts/webkitpy/xcode/device_type.py:
489 (DeviceType.__contains__):
490 * Scripts/webkitpy/xcode/device_type_unittest.py:
492 (DeviceTypeTest.test_comparsion_lower_case):
494 2018-12-05 Jonathan Bedard <jbedard@apple.com>
496 webkitpy: Sort tests by associated device type
497 https://bugs.webkit.org/show_bug.cgi?id=192161
498 <rdar://problem/46345392>
500 Reviewed by Lucas Forschler.
502 Sort tests by device type and make an effort to run each specified device type.
503 Do not run tests if their specified device is not available.
505 * Scripts/webkitpy/common/system/platforminfo.py:
506 (PlatformInfo.is_watchos): Add watchos bits to platform info.
507 (PlatformInfo._determine_os_name): Ditto.
508 * Scripts/webkitpy/layout_tests/controllers/manager.py:
509 (Manager.run): Assign each test a device type. Then, generate a list of
510 device types to sequentially iterate through. Note that a test will run
511 on the first device which matches.
512 (Manager._end_test_run): Handle the case where no devices are available and no
514 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
515 (_set_up_derived_options): Manage child processes in manager.
516 * Scripts/webkitpy/port/base.py:
518 (Port.default_child_processes): Accept additional arguments.
519 (Port.max_child_processes): Add upper limit for number of child processes.
520 * Scripts/webkitpy/port/device_port.py:
522 (DevicePort._device_type_with_version): Adds version to the DeviceType.
523 (DevicePort.default_child_processes): Allows default_child_processes to be
524 attached to a device type.
525 (DevicePort.max_child_processes): Add upper limit to the maximum number of child processes.
526 (DevicePort.setup_test_run): Use _device_type_with_version.
527 * Scripts/webkitpy/port/ios_device.py:
529 (IOSDevicePort.default_child_processes): Deleted.
530 * Scripts/webkitpy/port/ios_simulator.py:
531 (IOSSimulatorPort.default_child_processes): Deleted.
532 (IOSSimulatorPort.check_sys_deps): Deleted.
533 * Scripts/webkitpy/port/mac.py:
534 (MacPort.default_child_processes): Accept additional arguments.
535 * Scripts/webkitpy/port/test.py:
536 * Scripts/webkitpy/port/watch_device.py:
538 (WatchDevicePort.default_child_processes): Deleted.
539 * Scripts/webkitpy/port/watch_simulator.py:
540 (WatchSimulatorPort.default_child_processes): Deleted.
541 (WatchSimulatorPort.check_sys_deps): Deleted.
542 * Scripts/webkitpy/xcode/simulated_device.py:
543 (SimulatedDeviceManager):
544 (SimulatedDeviceManager.device_count_for_type): Count the number of devices
545 available for a specific device type.
547 2018-12-05 Devin Rousso <drousso@apple.com>
549 Unreviewed, add myself to some watch lists.
551 * Scripts/webkitpy/common/config/watchlist:
553 2018-12-05 Alicia Boya García <aboya@igalia.com>
555 [MSE][GStreamer] Remove the AppendPipeline state machine
556 https://bugs.webkit.org/show_bug.cgi?id=192204
558 Reviewed by Xabier Rodriguez-Calvar.
560 Updated AbortableTaskQueue tests:
562 Added test: AbortedBySyncTaskHandler.
564 Renamed test: AbortDuringSyncTask -> AbortBeforeSyncTaskRun (in
565 order to avoid confusion with the new test).
567 Added checks for the correct destruction of response objects.
569 * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
570 (TestWebKitAPI::FancyResponse::FancyResponse):
571 (TestWebKitAPI::FancyResponse::~FancyResponse):
572 (TestWebKitAPI::TEST):
574 2018-12-04 Chris Dumez <cdumez@apple.com>
576 ProcessSwap.UseSessionCookiesAfterProcessSwapInPrivateBrowsing API test is failing
577 https://bugs.webkit.org/show_bug.cgi?id=192362
579 Reviewed by Alex Christensen.
581 Set the cookie policy to Accept to make sure the cookies are saved.
583 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
585 2018-12-04 Michael Catanzaro <mcatanzaro@igalia.com>
587 [WPE][GTK] Update GLib
588 https://bugs.webkit.org/show_bug.cgi?id=191222
590 Reviewed by Žan Doberšek.
592 When I try running API tests locally, they crash with:
594 GLib-GIO-WARNING **: unknown schema extension 'd'
596 We need to update our old glib to support the 'd' value type, otherwise schemas that may
597 exist on the host using this type will cause instant crashes.
599 Also, switch the GLib build to use meson. This requires updating meson as well.
601 * gtk/jhbuild.modules:
602 * gtk/patches/glib-cast-function-type.patch: Removed.
603 * gtk/patches/glib-gtester-do-not-consider-skipped-tests-as-failures.patch: Removed.
604 * wpe/jhbuild.modules:
605 * wpe/patches/glib-cast-function-type.patch: Removed.
606 * wpe/patches/glib-revert-wakeup-changes.patch: Removed.
608 2018-12-04 Aakash Jain <aakash_jain@apple.com>
610 [ews-app] Run BugzillaPatchFetcher periodically
611 https://bugs.webkit.org/show_bug.cgi?id=192241
613 Reviewed by Lucas Forschler.
615 * BuildSlaveSupport/ews-app/ews/__init__.py:
616 * BuildSlaveSupport/ews-app/ews/apps.py:
617 (EwsConfig.ready): This method is called by Django on startup.
618 * BuildSlaveSupport/ews-app/ews/fetcher.py:
619 (FetchLoop): Class which invokes BugzillaPatchFetcher every 60s.
621 2018-12-04 Jonathan Bedard <jbedard@apple.com>
623 webkitpy: Support unicode in MeteredStream
624 https://bugs.webkit.org/show_bug.cgi?id=192260
626 Reviewed by Aakash Jain.
628 It's possible that the test runner returns unicode characters to be logged when
629 running layout tests.
631 * Scripts/webkitpy/layout_tests/views/metered_stream.py:
632 (MeteredStream.write): Print message without attempting to encode/decode it.
633 * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
634 (RegularTest.test_unicode):
636 2018-12-04 Keith Rollin <krollin@apple.com>
638 Update scripts for generating .xcfilelist files
639 https://bugs.webkit.org/show_bug.cgi?id=192081
640 <rdar://problem/46312290>
642 Reviewed by Brent Fulgham.
644 The initial pass at generate-xcfilelists (a script for
645 creating/updating the .xcfilelist files needed for various Generate
646 Foo Source build phases in Xcode) only generated the .xcfilelist files
647 that held the output files; it did not generate the list of input
648 files. As well, for the sources generated by DerivedSources.make
649 makefiles, the script accomplished this via the implementation of a
650 convention in the makefile that allowed the printing of these output
651 files when invoked with the 'print_all_generated_files' target. Use of
652 this convention is inconvenient and error-prone.
654 The script is now updated to address both of these issues. First, it
655 generates for the input and output sets of files. Second, it does away
656 with the convention in the DerivedSources.make makefiles and instead
657 works from the dependency output information printed when `make` is
658 invoked with --debug. This second part is implemented in the new
659 script extract-dependencies-from-makefile.
661 * Scripts/extract-dependencies-from-makefile: Added.
668 (Parser.printInputs):
669 (Parser.printOutputs):
672 * Scripts/generate-xcfilelists:
674 2018-12-04 Carlos Eduardo Ramalho <cadubentzen@gmail.com>
677 https://bugs.webkit.org/show_bug.cgi?id=178900
679 Reviewed by Michael Catanzaro.
681 Add gtk-doc to WPE port. This patch tries to reuse as much code from
682 WebKitGTK+ as possible.
684 * gtkdoc/generate-gtkdoc: Renamed from Tools/gtk/generate-gtkdoc.
685 (get_gtkdoc_module_paths): Add GDK and GTK only if building for GTK.
686 (prepare_environment_for_gtkdoc_generation):
687 (build_gtkdoc_for_wpe): Code to generate doc for WPE.
688 (build_gtkdoc_for_wkgtk): Code to generate doc for WebKitGTK+. Moved from main.
689 * gtkdoc/gtkdoc.py: Renamed from Tools/gtk/gtkdoc.py.
690 (GTKDoc.__init__): Initialized required variables according to pylint.
691 (GTKDoc.api_missing_documentation):
692 * wpe/install-dependencies: Add gtkdoc dependency.
694 2018-12-04 Carlos Garcia Campos <cgarcia@igalia.com>
696 [SOUP] Move URLSoup back to WebCore after r238771
697 https://bugs.webkit.org/show_bug.cgi?id=192306
699 Reviewed by Michael Catanzaro.
701 Include GUniquePtrSoup from WebCore again.
703 * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
705 2018-12-03 Carlos Garcia Campos <cgarcia@igalia.com>
707 [GTK] Bump freetype, fontconfig, harfbuzz, cairo and icu in jhbuild
708 https://bugs.webkit.org/show_bug.cgi?id=192310
710 Reviewed by Michael Catanzaro.
712 Update those dependencies to their latest stable versions.
714 * gtk/jhbuild.modules:
716 2018-12-03 Tomas Popela <tpopela@redhat.com>
718 [GTK] Can't run MiniBrowser due to missing python2-yaml
719 https://bugs.webkit.org/show_bug.cgi?id=192308
721 Reviewed by Michael Catanzaro.
723 * gtk/install-dependencies:
725 2018-12-03 Chris Dumez <cdumez@apple.com>
727 Regression(PSON) Google OAuth is broken in private sessions
728 https://bugs.webkit.org/show_bug.cgi?id=192337
729 <rdar://problem/46353558>
731 Reviewed by Alex Christensen.
733 Add API test coverage.
735 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
736 * TestWebKitAPI/Tests/WebKitCocoa/GetSessionCookie.html: Added.
737 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
738 * TestWebKitAPI/Tests/WebKitCocoa/SetSessionCookie.html: Added.
740 2018-12-03 Chris Dumez <cdumez@apple.com>
742 [PSON] Request by the client to process-swap is ignored if the window has an opener
743 https://bugs.webkit.org/show_bug.cgi?id=192267
744 <rdar://problem/46386886>
746 Reviewed by Brady Eidson.
748 Add API test coverage.
750 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
752 2018-12-03 Keith Rollin <krollin@apple.com>
754 Add .xcfilelist files
755 https://bugs.webkit.org/show_bug.cgi?id=192082
756 <rdar://problem/46312533>
758 Reviewed by Brent Fulgham.
760 Add .xcfilelist files for Generate Derived Sources and Generate
761 Unified Sources build phases in Xcode. These are just being staged for
762 now; they'll be added to the Xcode projects later.
764 * DumpRenderTree/DerivedSources-input.xcfilelist: Added.
765 * DumpRenderTree/DerivedSources-output.xcfilelist: Added.
766 * WebKitTestRunner/DerivedSources-input.xcfilelist: Added.
767 * WebKitTestRunner/DerivedSources-output.xcfilelist: Added.
769 2018-12-03 Alex Christensen <achristensen@webkit.org>
771 Add WKWebProcessPlugInLoadDelegate SPI willStartProvisionalLoadForFrame with a completion handler
772 https://bugs.webkit.org/show_bug.cgi?id=192272
774 Reviewed by Brady Eidson.
776 * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenPlugIn.mm:
777 (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:willStartProvisionalLoadForFrame:completionHandler:]):
778 (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didCommitLoadForFrame:]):
780 2018-12-03 Wenson Hsieh <wenson_hsieh@apple.com>
782 [iOSMac] Unable to upload non-image files using drag and drop in WKWebView
783 https://bugs.webkit.org/show_bug.cgi?id=192283
784 <rdar://problem/46399461>
786 Reviewed by Ryosuke Niwa.
788 Add a new API test to check that an item provider which contains plain text data and a file URL (but is not
789 marked as an attachment) is still treated as an attachment upon drop. Furthermore, verify that "text/uri-list"
790 does not expose the actual file URL written to the item provider.
792 Additionally, rebaseline an existing API test to remove an extraneous "text/uri-list" type that appears in
793 `DataTransfer.types`, but whose data is inaccessible via `getData` anyways.
795 * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
797 2018-12-01 Don Olmstead <don.olmstead@sony.com>
799 Cleanup WebKit Features
800 https://bugs.webkit.org/show_bug.cgi?id=192262
802 Reviewed by Michael Catanzaro.
804 Removes obsolete ENABLE options and variable names. Syncs the option's
805 descriptions with what is present in WebKitFeatures.cmake. Sorts the
806 options based on the associated define.
808 * Scripts/webkitperl/FeatureList.pm:
810 2018-12-01 Chris Dumez <cdumez@apple.com>
812 [PSON] process-swapping may occur even though opener has handle to openee
813 https://bugs.webkit.org/show_bug.cgi?id=192277
815 Reviewed by Antti Koivisto.
817 Add API test coverage.
819 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
821 2018-12-01 Jonathan Bedard <jbedard@apple.com>
823 Unreviewed, rolling out r238764.
825 Breaks existing layout tests
829 "webkitpy: Support unicode in MeteredStream"
830 https://bugs.webkit.org/show_bug.cgi?id=192260
831 https://trac.webkit.org/changeset/238764
833 2018-12-01 Yusuke Suzuki <yusukesuzuki@slowstart.org>
835 Move URL tests from TestWebKitAPI to TestWTF
836 https://bugs.webkit.org/show_bug.cgi?id=192275
838 Reviewed by Keith Miller.
840 Since URL is moved from WebCore to WTF, we also move tests for them from TestWebKitAPI (TestWebCore) to TestWTF.
841 But we still have some tests in TestWebCore since only WebCore implements TextEncoding. That part is now decoupled
842 from URLParser tests and new URLParserTextEncoding.cpp is created.
844 * TestWebKitAPI/CMakeLists.txt:
845 * TestWebKitAPI/PlatformGTK.cmake:
846 * TestWebKitAPI/PlatformWPE.cmake:
847 * TestWebKitAPI/PlatformWin.cmake:
848 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
849 * TestWebKitAPI/Tests/WTF/URL.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/URL.cpp.
850 (TestWebKitAPI::TEST_F):
851 * TestWebKitAPI/Tests/WTF/URLParser.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp.
852 (TestWebKitAPI::TEST_F):
853 * TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm.
854 (TestWebKitAPI::TEST):
855 * TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp: Added.
856 (TestWebKitAPI::ExpectedParts::isInvalid const):
858 (TestWebKitAPI::insertTabAtLocation):
859 (TestWebKitAPI::invalidParts):
860 (TestWebKitAPI::checkURL):
861 (TestWebKitAPI::TEST_F):
863 2018-11-30 Zalan Bujtas <zalan@apple.com>
865 Unreviewed LFC passing test list update.
867 * LayoutReloaded/misc/LFC-passing-tests.txt:
869 2018-11-30 Alex Christensen <achristensen@webkit.org>
871 Move URL from WebCore to WTF
872 https://bugs.webkit.org/show_bug.cgi?id=190234
874 Reviewed by Keith Miller.
876 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
877 * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
878 * TestWebKitAPI/Tests/WebCore/URL.cpp:
879 (TestWebKitAPI::createURL):
880 (TestWebKitAPI::TEST_F):
881 * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
882 (TestWebKitAPI::checkURL):
883 (TestWebKitAPI::checkRelativeURL):
884 (TestWebKitAPI::checkURLDifferences):
885 (TestWebKitAPI::checkRelativeURLDifferences):
886 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
887 * TestWebKitAPI/Tests/WebCore/YouTubePluginReplacement.cpp:
888 * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
889 (TestWebKitAPI::originalDataAsString):
890 (TestWebKitAPI::userVisibleString):
891 (TestWebKitAPI::literalURL):
892 (TestWebKitAPI::TEST):
893 * TestWebKitAPI/Tests/WebKitCocoa/LoadAlternateHTMLString.mm:
895 * TestWebKitAPI/Tests/WebKitCocoa/LoadInvalidURLRequest.mm:
897 * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
898 * TestWebKitAPI/Tests/mac/LoadInvalidURLRequest.mm:
899 (-[LoadInvalidURLWebFrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
900 * TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm:
901 * TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
902 (TestWebKitAPI::Util::createURLForResource):
903 * lldb/lldb_webkit.py:
904 (__lldb_init_module):
905 (WTFURL_SummaryProvider):
907 (WebCoreURL_SummaryProvider): Deleted.
908 (WebCoreURLProvider): Deleted.
909 (WebCoreURLProvider.__init__): Deleted.
910 (WebCoreURLProvider.to_string): Deleted.
912 2018-11-30 Jonathan Bedard <jbedard@apple.com>
914 webkitpy: Support unicode in MeteredStream
915 https://bugs.webkit.org/show_bug.cgi?id=192260
917 Reviewed by Stephanie Lewis.
919 It's possible that the test runner returns unicode characters to be logged when
920 running layout tests.
922 * Scripts/webkitpy/layout_tests/views/metered_stream.py:
923 (MeteredStream.write): Message written to metered stream should be unicode.
924 * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
925 (RegularTest.test_unicode):
927 2018-11-30 Jonathan Bedard <jbedard@apple.com>
929 REGRESSION (r238749): run-api-tests dies with AttributeError: 'IOSSimulatorPort' object has no attribute 'DEFAULT_DEVICE_CLASS'
930 https://bugs.webkit.org/show_bug.cgi?id=192257
931 <rdar://problem/46384671>
933 Reviewed by Stephanie Lewis.
935 Follow-up fix for r238749.
937 * Scripts/webkitpy/api_tests/manager.py:
938 (Manager._initialize_devices): Use DEFAULT_DEVICE_TYPE instead of DEFAULT_DEVICE_CLASS.
940 2018-11-30 Chris Dumez <cdumez@apple.com>
942 [PSON] We are sometimes swapping processes even though there is an opened window with an opener link to us
943 https://bugs.webkit.org/show_bug.cgi?id=192242
945 Reviewed by Geoffrey Garen.
947 Add API test coverage.
949 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
951 2018-11-30 Don Olmstead <don.olmstead@sony.com>
953 Rename ENABLE_SUBTLE_CRYPTO to ENABLE_WEB_CRYPTO
954 https://bugs.webkit.org/show_bug.cgi?id=192197
956 Reviewed by Jiewen Tan.
958 * Scripts/webkitperl/FeatureList.pm:
959 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
961 2018-11-30 Dean Jackson <dino@apple.com>
963 Add first-class support for .mjs files in jsc binary
964 https://bugs.webkit.org/show_bug.cgi?id=192190
965 <rdar://problem/46375715>
967 Reviewed by Keith Miller.
969 Add .mjs files to the regexp looking for all JS files.
971 * Scripts/run-jsc-stress-tests:
973 2018-11-30 Jonathan Bedard <jbedard@apple.com>
975 webkitpy: Use DeviceType instead of str to represent device class
976 https://bugs.webkit.org/show_bug.cgi?id=192160
977 <rdar://problem/46344845>
979 Rubber-stamped by Aakash Jain.
981 * Scripts/webkitpy/layout_tests/controllers/manager.py:
982 (Manager._custom_device_for_test): Use DeviceTypes instead of strings to represent device type.
983 (Manager._set_up_run): Do not set _options.device_class, use device_type instead of device_class.
984 (Manager.run): Use device_type instead of device_class.
985 (Manager._print_expectations_for_subset): Ditto.
986 (Manager.print_expectations): Ditto.
987 * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
988 (ManagerTest.test_uses_custom_device): Use DeviceType and actual device definition.
989 * Scripts/webkitpy/layout_tests/views/printing.py:
990 (Printer.print_workers_and_shards): Outputting the device suffix doesn't really help, and means
991 device type needs to be passed around.
992 * Scripts/webkitpy/port/apple.py:
993 (ApplePort.setup_test_run): Use device_type instead of device_class.
994 * Scripts/webkitpy/port/base.py:
996 (Port.setup_test_run): Use device_type instead of device_class.
997 * Scripts/webkitpy/port/device_port.py:
999 (DevicePort.setup_test_run): Receive device_type as DeviceType object.
1000 (DevicePort._create_devices): Deleted.
1001 * Scripts/webkitpy/port/gtk.py:
1002 (GtkPort.setup_test_run): Use device_type instead of device_class.
1003 * Scripts/webkitpy/port/ios.py:
1005 * Scripts/webkitpy/port/ios_simulator.py:
1007 (IOSSimulatorPort.__init__): Deleted.
1008 (IOSSimulatorPort._set_device_class): Deleted.
1009 * Scripts/webkitpy/port/test.py:
1010 * Scripts/webkitpy/port/watch.py:
1012 * Scripts/webkitpy/port/watch_simulator.py:
1013 (WatchSimulatorPort):
1014 (WatchSimulatorPort.__init__): Deleted.
1015 (WatchSimulatorPort._set_device_class): Deleted.
1016 * Scripts/webkitpy/port/win.py:
1017 (WinPort.setup_test_run): Use device_type instead of device_class.
1018 * Scripts/webkitpy/xcode/simulated_device.py:
1019 (SimulatedDeviceManager._disambiguate_device_type): Using the existing devices for this is
1020 a problem if no such device exists yet. Use the _device_identifier_to_name dictionary instead
1021 since this should have hardware types in the device names.
1023 2018-11-30 David Quesada <david_quesada@apple.com>
1025 -[WKProcessPool _downloadURLRequest:] should allow specifying the initiating web view
1026 https://bugs.webkit.org/show_bug.cgi?id=192212
1027 rdar://problem/46363706
1029 Reviewed by Alex Christensen.
1031 * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
1032 (-[DownloadProgressTestRunner startDownload:expectedLength:]):
1034 2018-11-30 Zalan Bujtas <zalan@apple.com>
1036 [LFC][BFC] Compute min/maxHeight margins only when they are needed.
1037 https://bugs.webkit.org/show_bug.cgi?id=192223
1039 Reviewed by Antti Koivisto.
1041 * LayoutReloaded/misc/LFC-passing-tests.txt:
1043 2018-11-30 Zalan Bujtas <zalan@apple.com>
1045 [LFC][BFC][MarginCollapsing] Do not use computed display box values for border and padding
1046 https://bugs.webkit.org/show_bug.cgi?id=192214
1048 Reviewed by Antti Koivisto.
1050 * LayoutReloaded/misc/LFC-passing-tests.txt:
1052 2018-11-30 Thibault Saunier <tsaunier@igalia.com>
1054 [GTK][MiniBrowser] Handle Device Info permission requests
1055 https://bugs.webkit.org/show_bug.cgi?id=191585
1057 Reviewed by Carlos Garcia Campos.
1059 * MiniBrowser/gtk/BrowserTab.c:
1060 (permissionRequestDataNew):
1061 (permissionRequestDataFree):
1062 (permissionRequestDialogResponse):
1063 (decidePermissionRequest):
1064 (browserTabConstructed):
1066 2018-11-30 Carlos Garcia Campos <cgarcia@igalia.com>
1068 Unreviewed GTK+ gardening. Stop running tests without complex text enforced
1070 We have enforced complex text in GTK+ for one release cycle without noticing any major issue nor performance
1073 * WebKitTestRunner/gtk/main.cpp:
1076 2018-11-29 Wenson Hsieh <wenson_hsieh@apple.com>
1078 REGRESSION (r238635): Dragging a text selection within WKWebView causes the selection highlight to get into a bad state
1079 https://bugs.webkit.org/show_bug.cgi?id=192165
1080 <rdar://problem/46346682>
1082 Reviewed by Daniel Bates.
1084 Fixes 11 API tests that started failing or timing out after r238635. See below for more details.
1086 * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
1087 (TestWebKitAPI::webViewForEditActionTesting):
1088 (TestWebKitAPI::webViewForEditActionTestingWithPageNamed):
1090 Ensure that the web view becomes first responder before executing edit actions.
1092 * TestWebKitAPI/Tests/WebKitCocoa/autofocus-contenteditable.html:
1093 * TestWebKitAPI/Tests/WebKitCocoa/contenteditable-and-textarea.html:
1095 Tweak these tests to allow selected content to overflow the width of the web view. Without this change,
1096 ContentEditableToContentEditable and ContentEditableToTextarea will sometimes fail because the content causes
1097 the body to scroll horizontally, so we miss the drop destination.
1099 * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
1100 (loadTestPageAndEnsureInputSession):
1102 Add a new helper to load a test page with a given name, become first responder, and wait until an input session
1103 starts. Use this in various drag and drop tests to reduce code duplication.
1105 * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
1106 * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
1107 (-[DragAndDropSimulator initWithWebView:]):
1108 (-[DragAndDropSimulator _resetSimulatedState]):
1109 (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
1110 (-[DragAndDropSimulator _advanceProgress]):
1112 To more accurately emulate UIKit behavior, begin focus preservation when starting a drag, and attempt to clear
1113 the focus preservation token when the drag session ends. This allows us to simulate and test the scenario that
1114 regressed with r238635.
1116 (-[DragAndDropSimulator ensureInputSession]):
1117 (-[DragAndDropSimulator _webView:didStartInputSession:]):
1118 (-[DragAndDropSimulator waitForInputSession]): Deleted.
1120 Refactored into -ensureInputSession. Instead of assuming that an input session has not yet been started, simply
1121 wait for an input session to start if needed.
1123 * TestWebKitAPI/ios/UIKitSPI.h:
1125 Add a new SPI declaration.
1127 2018-11-29 Tim Horton <timothy_horton@apple.com>
1129 Inform clients when editable image attachment backing data changes
1130 https://bugs.webkit.org/show_bug.cgi?id=192206
1131 <rdar://problem/46350277>
1133 Reviewed by Wenson Hsieh.
1135 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1136 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1137 (-[AttachmentUpdateObserver init]):
1138 (-[AttachmentUpdateObserver dataInvalidated]):
1139 (-[AttachmentUpdateObserver _webView:didInvalidateDataForAttachment:]):
1140 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentInvalidation):
1141 (webViewForTestingAttachments):
1142 (TestWebKitAPI::forEachViewInHierarchy):
1143 (TestWebKitAPI::findEditableImageCanvas):
1144 (TestWebKitAPI::drawSquareInEditableImage):
1145 (TestWebKitAPI::TEST):
1146 * TestWebKitAPI/ios/PencilKitTestSPI.h: Added.
1147 Add a test ensuring that we get an invalidation callback when an editable image is changed.
1149 2018-11-29 Fujii Hironori <Hironori.Fujii@sony.com>
1151 REGRESSION(r238445)[Buildbot] Unknown builder 'GTK Linux 32-bit Release' in scheduler 'trunk'
1152 https://bugs.webkit.org/show_bug.cgi?id=192143
1154 Reviewed by Philippe Normand.
1156 Buildbot can't start since r238445.
1158 > Configuration Errors:
1159 > Unknown builder 'GTK Linux 32-bit Release' in scheduler 'trunk'
1160 > Unknown builder 'GTK Linux ARM Release' in scheduler 'trunk'
1162 * BuildSlaveSupport/build.webkit.org-config/config.json: Removed deprecated builders.
1164 2018-11-29 David Quesada <david_quesada@apple.com>
1166 Add SPI to publish NSProgress on active downloads
1167 https://bugs.webkit.org/show_bug.cgi?id=192021
1168 rdar://problem/44405661
1170 Reviewed by Alex Christensen.
1172 Add API tests to exercise the progress-publishing functionality in a variety of scenarios.
1174 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1175 * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm: Added.
1176 (+[DownloadProgressTestProtocol registerProtocolForTestRunner:]):
1177 (+[DownloadProgressTestProtocol unregisterProtocol]):
1178 (+[DownloadProgressTestProtocol canInitWithRequest:]):
1179 (+[DownloadProgressTestProtocol canonicalRequestForRequest:]):
1180 (+[DownloadProgressTestProtocol requestIsCacheEquivalent:toRequest:]):
1181 (-[DownloadProgressTestProtocol startLoading]):
1182 (-[DownloadProgressTestProtocol stopLoading]):
1183 (-[DownloadProgressTestRunner init]):
1184 (-[DownloadProgressTestRunner startLoadingWithProtocol:]):
1185 (-[DownloadProgressTestRunner tearDown]):
1186 (-[DownloadProgressTestRunner _didGetProgress:]):
1187 (-[DownloadProgressTestRunner _didLoseProgress]):
1188 (-[DownloadProgressTestRunner subscribeAndWaitForProgress]):
1189 (-[DownloadProgressTestRunner waitToLoseProgress]):
1190 (-[DownloadProgressTestRunner startDownload:expectedLength:]):
1191 (-[DownloadProgressTestRunner publishProgress]):
1192 (-[DownloadProgressTestRunner receiveData:]):
1193 (-[DownloadProgressTestRunner finishDownloadTask]):
1194 (-[DownloadProgressTestRunner failDownloadTask]):
1195 (-[DownloadProgressTestRunner waitForDownloadDidCreateDestination]):
1196 (-[DownloadProgressTestRunner waitForDownloadFinished]):
1197 (-[DownloadProgressTestRunner waitForDownloadCanceled]):
1198 (-[DownloadProgressTestRunner waitForDownloadFailed]):
1199 (-[DownloadProgressTestRunner waitForUpdatedCompletedUnitCount]):
1200 (-[DownloadProgressTestRunner observeValueForKeyPath:ofObject:change:context:]):
1201 (-[DownloadProgressTestRunner webView:decidePolicyForNavigationResponse:decisionHandler:]):
1202 (-[DownloadProgressTestRunner webView:decidePolicyForNavigationAction:decisionHandler:]):
1203 (-[DownloadProgressTestRunner _downloadDidStart:]):
1204 (-[DownloadProgressTestRunner _download:didCreateDestination:]):
1205 (-[DownloadProgressTestRunner _downloadDidFinish:]):
1206 (-[DownloadProgressTestRunner _downloadDidCancel:]):
1207 (-[DownloadProgressTestRunner _download:didFailWithError:]):
1208 (-[DownloadProgressTestRunner _download:decideDestinationWithSuggestedFilename:completionHandler:]):
1211 2018-11-29 Alexey Proskuryakov <ap@apple.com>
1213 Exception in bot watcher's dashboard if a hidden platform in no longer configured for display
1214 https://bugs.webkit.org/show_bug.cgi?id=185527
1216 Reviewed by Aakash Jain.
1218 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
1219 (updateHiddenPlatforms):
1221 2018-11-29 Zalan Bujtas <zalan@apple.com>
1223 [LFC][BFC][Quirk] Body and html height stretching.
1224 https://bugs.webkit.org/show_bug.cgi?id=192154
1226 Reviewed by Antti Koivisto.
1228 * LayoutReloaded/misc/LFC-passing-tests.txt:
1230 2018-11-29 Jonathan Bedard <jbedard@apple.com>
1232 webkitpy: Unify device creation
1233 https://bugs.webkit.org/show_bug.cgi?id=192158
1234 <rdar://problem/46344757>
1236 Reviewed by Lucas Forschler.
1238 * Scripts/webkitpy/port/device_port.py:
1240 (DevicePort.setup_test_run): Use DEVICE_MANAGER to create devices based on the specified device class.
1241 * Scripts/webkitpy/port/ios.py:
1242 (IOSPort): Add DEFAULT_DEVICE_CLASS.
1243 * Scripts/webkitpy/port/ios_device.py:
1245 (IOSDevicePort._create_devices): Deleted.
1246 * Scripts/webkitpy/port/ios_simulator.py:
1247 (IOSSimulatorPort._create_devices): Deleted.
1248 * Scripts/webkitpy/port/watch.py:
1249 (WatchPort): Add DEFAULT_DEVICE_CLASS.
1250 * Scripts/webkitpy/port/watch_device.py:
1252 (WatchDevicePort._create_devices): Deleted.
1253 * Scripts/webkitpy/port/watch_simulator.py:
1254 (WatchSimulatorPort._create_devices): Deleted.
1255 * Scripts/webkitpy/xcode/device_type_unittest.py:
1256 (DeviceTypeTest.test_from_string): Test that DeviceTypes without hardware types can be constructed
1259 2018-11-29 Jonathan Bedard <jbedard@apple.com>
1261 EWS iOS-sim bots sometimes fails to shutdown simulator
1262 https://bugs.webkit.org/show_bug.cgi?id=191864
1264 Reviewed by Aakash Jain.
1266 * Scripts/webkitpy/xcode/simulated_device.py:
1267 (SimulatedDevice._shut_down): Increase time to wait for simulated device to
1268 shut down, ignore exit code indicating a device is already shut down.
1270 2018-11-29 Jonathan Bedard <jbedard@apple.com>
1272 webkitpy: Unify ios_version/watchos_version code
1273 https://bugs.webkit.org/show_bug.cgi?id=192153
1274 <rdar://problem/46343642>
1276 Reviewed by Lucas Forschler.
1278 Treating watchOS and iOS versions differently makes it harder to share code between the similar ports.
1280 * Scripts/webkitpy/port/device_port.py:
1282 (DevicePort.device_version): Added.
1283 * Scripts/webkitpy/port/ios.py:
1284 (IOSPort.default_baseline_search_path): Use device_version() instead of ios_version().
1285 (IOSPort.ios_version): Deleted.
1286 * Scripts/webkitpy/port/ios_device.py:
1287 (IOSDevicePort.device_version): Renamed from ios_version().
1288 (IOSDevicePort.ios_version): Deleted.
1289 * Scripts/webkitpy/port/ios_simulator.py:
1290 (IOSSimulatorPort.device_version): Renamed from ios_version().
1291 (IOSSimulatorPort.default_child_processes.booted_ios_devices_filter): Use device_version() instead of ios_version().
1292 (IOSSimulatorPort._create_devices): Ditto.
1293 (IOSSimulatorPort.check_sys_deps): Ditto.
1294 (IOSSimulatorPort.ios_version): Deleted.
1295 * Scripts/webkitpy/port/watch.py:
1296 (WatchPort.default_baseline_search_path): Use device_version() instead of watchos_version().
1297 (WatchPort.watchos_version): Deleted.
1298 * Scripts/webkitpy/port/watch_device.py:
1299 (WatchDevicePort.device_version): Renamed from watchos_version().
1300 (WatchDevicePort.watchos_version): Deleted.
1301 * Scripts/webkitpy/port/watch_simulator.py:
1302 (WatchSimulatorPort.device_version): Renamed from watchos_version().
1303 (WatchSimulatorPort.default_child_processes.filter_booted_watchos_devices): Use device_version() instead of watchos_version().
1304 (WatchSimulatorPort._create_devices): Ditto.
1305 (WatchSimulatorPort.check_sys_deps): Ditto.
1306 (WatchSimulatorPort.watchos_version): Deleted.
1308 2018-11-28 Wenson Hsieh <wenson_hsieh@apple.com>
1310 [iOSMac] Dropping text selections from web content into editable elements crashes the web process
1311 https://bugs.webkit.org/show_bug.cgi?id=192113
1312 <rdar://problem/46323701>
1314 Reviewed by Ryosuke Niwa.
1316 Add a test to verify that, when dropping an item with both "com.apple.webarchive" and "public.utf8-plain-text"
1317 representations, the higher fidelity web archive data is used when handling the drop.
1319 * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
1321 2018-11-28 Aakash Jain <aakash_jain@apple.com>
1323 [ews-app] Fetch bugs from Bugzilla and submit to Buildbot
1324 https://bugs.webkit.org/show_bug.cgi?id=191947
1326 Reviewed by Lucas Forschler.
1328 * BuildSlaveSupport/ews-app/ews/fetcher.py: Added.
1330 2018-11-28 Alex Christensen <achristensen@webkit.org>
1332 Fix iOS API test after r238585
1333 https://bugs.webkit.org/show_bug.cgi?id=192022
1335 * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1337 On iOS, a safe browsing warning over a WKWebView with frame of {0, 0, 0, 0} has a size of {0, 0}, which is fine.
1338 The test was added to catch a bug on Mac platforms, so testing it only on Mac will catch any regression.
1340 2018-11-28 Aakash Jain <aakash_jain@apple.com>
1342 [ews-app] Configure python logging
1343 https://bugs.webkit.org/show_bug.cgi?id=192005
1345 Reviewed by Lucas Forschler.
1347 * BuildSlaveSupport/ews-app/ews/__init__.py: Configured logging.
1349 2018-11-28 Keith Rollin <krollin@apple.com>
1351 Update generate-{derived,unified}-sources scripts to support generating .xcfilelist files
1352 https://bugs.webkit.org/show_bug.cgi?id=192031
1353 <rdar://problem/46286816>
1355 Reviewed by Alex Christensen.
1357 The Generate Derived Sources and Generate Unified Sources build phases
1358 in Xcode need to have their inputs and outputs specified. This
1359 specification will come in the form of .xcfilelist files that will be
1360 attached to these build phases. There is one .xcfilelist file that
1361 lists the input file and one that lists the output files. As part of
1362 this work, the various generate-{derived,unified}-sources scripts that
1363 are executed in these Generate build phases are modified to help in
1364 the creation of these .xcfilelist files. In particular, they can now
1365 be invoked with command-line parameters. These parameters are then
1366 used to alter the normal execution of these scripts, causing them to
1367 produce the .xcfilelist files as opposed to actually generating the
1368 files that are listed in those files.
1370 * DumpRenderTree/Scripts/generate-derived-sources.sh:
1371 * WebKitTestRunner/Scripts/generate-derived-sources.sh:
1373 2018-11-28 Keith Rollin <krollin@apple.com>
1375 Revert print_all_generated_files work in r238008; tighten up target specifications
1376 https://bugs.webkit.org/show_bug.cgi?id=192025
1377 <rdar://problem/46284301>
1379 Reviewed by Alex Christensen.
1381 In r238008, I added a facility for DerivedSources.make makefiles to
1382 print out the list of files that they generate. This output was used
1383 in the generation of .xcfilelist files used to specify the output of
1384 the associated Generate Derived Sources build phases in Xcode. This
1385 approach worked, but it meant that people would need to follow a
1386 specific convention to keep this mechanism working.
1388 Instead of continuing this approach, I'm going to implement a new
1389 facility based on the output of `make` when passed the -d flag (which
1390 prints dependency information). This new mechanism is completely
1391 automatic and doesn't need maintainers to follow a convention. To that
1392 end, remove most of the work performed in r238008 that supports the
1393 print_all_generated_files target.
1395 At the same time, it's important for the sets of targets and their
1396 dependencies to be complete and correct. Therefore, also include
1397 changes to bring those up-to-date. As part of that, you'll see
1398 prevalent use of a particular technique. Here's an example:
1406 BYTECODE_FILES_PATTERNS = $(subst .,%,$(BYTECODE_FILES))
1408 all : $(BYTECODE_FILES)
1410 $(BYTECODE_FILES_PATTERNS): $(wildcard $(JavaScriptCore)/generator/*.rb) $(JavaScriptCore)/bytecode/BytecodeList.rb
1413 These lines indicate a set of generated files (those specified in
1414 BYTECODE_FILES). These files are generated by the BytecodeList.rb
1415 tool. But, as opposed to the normal rule where a single foo.output is
1416 generated by foo.input plus some additional dependencies, this rule
1417 produces multiple output files from a tool whose connection to the
1418 output files is not immediately clear. A special approach is needed
1419 where a single rule produces multiple output files. The normal way to
1420 implement this is to use an .INTERMEDIATE target. However, we used
1421 this approach in the past and ran into a problem with it, addressing
1422 it with an alternate approach in r210507. The above example shows this
1423 approach. The .'s in the list of target files are replaced with %'s,
1424 and the result is used as the left side of the dependency rule.
1426 * DumpRenderTree/DerivedSources.make:
1427 * WebKitTestRunner/DerivedSources.make:
1429 2018-11-28 Aakash Jain <aakash_jain@apple.com>
1431 [ews-app] Add support to get list of Bugzilla patches needing review
1432 https://bugs.webkit.org/show_bug.cgi?id=191942
1434 Reviewed by Lucas Forschler.
1436 * BuildSlaveSupport/ews-app/ews/common/bugzilla.py:
1437 (Bugzilla.get_list_of_patches_needing_reviews): Get list of patches needing review.
1438 (BugzillaBeautifulSoup.fetch_attachment_ids_from_review_queue): Copied from Tools/Scripts/webkitpy/common/net/bugzilla/bugzilla.py
1439 (BugzillaBeautifulSoup._load_query): Ditto.
1440 (BugzillaBeautifulSoup._parse_attachment_ids_request_query): Ditto.
1442 2018-11-28 Daniel Bates <dabates@apple.com>
1444 [iOS] Page not defocused when Find-in-page becomes first responder
1445 https://bugs.webkit.org/show_bug.cgi?id=192084
1446 <rdar://problem/46146777>
1448 Reviewed by Tim Horton.
1450 Add tests for both Mac and iOS to ensure that when finding a string on the page
1451 that we do not start an input session if a match is found in an <input> and the
1452 WKWebView is not the first responder.
1454 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1455 * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFindString.mm: Added.
1456 (-[WKWebViewFindStringInputDelegate _webView:didStartInputSession:]):
1457 (-[WKWebViewFindStringFindDelegate findString]):
1458 (-[WKWebViewFindStringFindDelegate _webView:didCountMatches:forString:]):
1459 (-[WKWebViewFindStringFindDelegate _webView:didFindMatches:forString:withMatchIndex:]):
1460 (-[WKWebViewFindStringFindDelegate _webView:didFailToFindString:]):
1463 (viewIsFirstResponder):
1464 (TestWebKitAPI::TEST):
1465 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
1466 (WTR::PlatformWebView::PlatformWebView): Make the view the first responder before the
1467 window key. This matches the ordering used in PlatformWebView::focus(). No behavior change.
1469 2018-11-28 Aakash Jain <aakash_jain@apple.com>
1471 [ews-app] Add BeautifulSoup
1472 https://bugs.webkit.org/show_bug.cgi?id=191994
1474 Reviewed by Lucas Forschler.
1476 * BuildSlaveSupport/ews-app/ews/thirdparty: Added.
1477 * BuildSlaveSupport/ews-app/ews/thirdparty/BeautifulSoup.py: Added.
1478 * BuildSlaveSupport/ews-app/ews/thirdparty/__init__.py: Added.
1480 2018-11-28 Aakash Jain <aakash_jain@apple.com>
1482 [ews-app] Add support to download Patch from Bugzilla
1483 https://bugs.webkit.org/show_bug.cgi?id=191943
1485 Reviewed by Lucas Forschler.
1487 * BuildSlaveSupport/ews-app/ews/common/bugzilla.py: Added.
1488 (Bugzilla.retrieve_attachment): Retreives the attachment from Bugzilla and saves to disk.
1489 (Bugzilla._fetch_attachment_json):
1490 (Bugzilla.file_path_for_patch):
1491 * BuildSlaveSupport/ews-app/ews/common/util.py: Added.
1492 (fetch_data_from_url): Method to fetch data from given url.
1493 * BuildSlaveSupport/ews-app/ews/config.py:
1495 2018-11-28 Aakash Jain <aakash_jain@apple.com>
1497 [ews-app] Add methods to update Patch fields
1498 https://bugs.webkit.org/show_bug.cgi?id=191931
1500 Reviewed by Lucas Forschler.
1502 * BuildSlaveSupport/ews-app/ews/models/patch.py:
1503 (Patch.set_sent_to_buildbot):
1505 (Patch.set_obsolete):
1507 2018-11-28 Yongjun Zhang <yongjun_zhang@apple.com>
1509 Allow WebKit clients to specify a minimum effective width for layout.
1510 https://bugs.webkit.org/show_bug.cgi?id=191499
1511 <rdar://problem/45362678>
1513 Reviewed by Wenson Hsieh.
1515 Allow UIScriptController to set WKWebView's minimum effective width with a new `setMinimumEffectiveWidth` method.
1517 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1518 (WTR::UIScriptController::setMinimumEffectiveWidth):
1519 * DumpRenderTree/mac/UIScriptControllerMac.mm:
1520 (WTR::UIScriptController::setViewScale):
1521 (WTR::UIScriptController::setMinimumEffectiveWidth):
1522 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1523 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1524 (WTR::UIScriptController::setMinimumEffectiveWidth):
1525 * TestRunnerShared/UIScriptContext/UIScriptController.h:
1526 * WebKitTestRunner/UIScriptControllerCocoa.mm:
1527 (WTR::UIScriptController::setMinimumEffectiveWidth):
1528 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1529 (WTR::TestController::cocoaResetStateToConsistentValues):
1531 2018-11-28 Lucas Forschler <lforschler@apple.com>
1533 Fix webkitbot hi command.
1534 https://bugs.webkit.org/show_bug.cgi?id=192080
1536 Reviewed by Alexey Proskuryakov.
1538 * Scripts/webkitpy/tool/bot/irc_command.py:
1541 2018-11-28 Zalan Bujtas <zalan@apple.com>
1543 [LFC][Quirk] Use non-collapsed vertical margin values when the container is stretched to the size of the ICB.
1544 https://bugs.webkit.org/show_bug.cgi?id=192078
1546 Reviewed by Antti Koivisto.
1548 * LayoutReloaded/misc/LFC-passing-tests.txt:
1550 2018-11-28 Zalan Bujtas <zalan@apple.com>
1552 [LFC] Add support for quirk container's collapsing top margin in quirks mode.
1553 https://bugs.webkit.org/show_bug.cgi?id=192070
1555 Reviewed by Antti Koivisto.
1557 * LayoutReloaded/misc/LFC-passing-tests.txt:
1559 2018-11-28 Thibault Saunier <tsaunier@igalia.com>
1561 [WebRTC][GStreamer] Make sure to have the default microphone on the top of the list
1562 https://bugs.webkit.org/show_bug.cgi?id=192026
1564 Reviewed by Philippe Normand.
1566 Otherwise we might end up picking a useless one in some applications
1567 (not sure what those application do though).
1569 GStreamer patch proposed as https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/merge_requests/34/diffs
1571 * flatpak/org.webkit.CommonModules.yaml:
1572 * gstreamer/jhbuild.modules:
1573 * gstreamer/patches/gst-plugins-good-0014-pulse-Mark-default-devices-as-default.patch: Added.
1575 2018-11-28 Tomas Popela <tpopela@redhat.com>
1577 [GTK] Silence compilation warnings in glib unittests
1578 https://bugs.webkit.org/show_bug.cgi?id=192009
1580 Reviewed by Michael Catanzaro.
1582 Mark the destructor as virtual.
1584 * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1587 2018-11-27 Mark Lam <mark.lam@apple.com>
1589 ENABLE_FAST_JIT_PERMISSIONS should be false for iosmac.
1590 https://bugs.webkit.org/show_bug.cgi?id=192055
1591 <rdar://problem/46288783>
1593 Reviewed by Saam Barati.
1595 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1597 2018-11-27 Alex Christensen <achristensen@webkit.org>
1599 Make synchronous IPC introduced in r237267 asynchronous
1600 https://bugs.webkit.org/show_bug.cgi?id=190757
1602 Reviewed by Chris Dumez.
1604 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1606 2018-11-27 Jonathan Bedard <jbedard@apple.com>
1608 webkitpy: Add watchOS ports
1609 https://bugs.webkit.org/show_bug.cgi?id=191974
1610 <rdar://problem/46251051>
1612 Reviewed by Aakash Jain.
1614 * Scripts/webkitpy/port/factory.py:
1615 (PortFactory): Add WatchDevice and WatchSimulator ports.
1616 * Scripts/webkitpy/port/watch.py: Added.
1617 (WatchPort): Base class for watchOS ports.
1618 * Scripts/webkitpy/port/watch_device.py: Added.
1619 (WatchDevicePort): Class for running layout tests on a watchOS device.
1620 * Scripts/webkitpy/port/watch_simulator.py: Added.
1621 (WatchSimulatorPort): Class for running layout tests on a watchOS simulator.
1622 * Scripts/webkitpy/port/watch_simulator_unittest.py: Added.
1623 (WatchSimulatorTest):
1624 * Scripts/webkitpy/port/watch_testcase.py: Added.
1627 2018-11-27 Alex Christensen <achristensen@webkit.org>
1629 Safe browsing warning text needs to be visible on High Sierra
1630 https://bugs.webkit.org/show_bug.cgi?id=192022
1632 Reviewed by Tim Horton.
1634 * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1637 2018-11-27 Wenson Hsieh <wenson_hsieh@apple.com>
1639 Unreviewed, fix the watchOS engineering build
1641 Disable a newly added API test, since DDScannerResult is unavailable on watchOS.
1643 * TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
1645 2018-11-27 Chris Dumez <cdumez@apple.com>
1647 Regression(PSON) crash under WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame()
1648 https://bugs.webkit.org/show_bug.cgi?id=191983
1649 <rdar://problem/46246863>
1651 Reviewed by Geoffrey Garen.
1653 Add API test coverage.
1655 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1657 2018-11-27 Aakash Jain <aakash_jain@apple.com>
1659 [ews-app] Add support to communicate with Buildbot (Follow-up fix)
1660 https://bugs.webkit.org/show_bug.cgi?id=191935
1661 <rdar://problem/46262314>
1663 Unreviewed infrastructure fix.
1665 * BuildSlaveSupport/ews-app/ews/common/buildbot.py:
1666 (Buildbot.send_patch_to_buildbot):
1668 2018-11-26 Wenson Hsieh <wenson_hsieh@apple.com>
1670 [Cocoa] No way for clients to tell whether the content view is in the responder chain when the web view is
1671 https://bugs.webkit.org/show_bug.cgi?id=169212
1672 <rdar://problem/30899656>
1674 Reviewed by Tim Horton.
1676 Add an API test to exercise the behavior of `-_contentViewIsFirstResponder` when an embedded text input becomes
1677 and resigns first responder.
1679 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1680 * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFirstResponderTests.mm: Added.
1681 (-[FirstResponderTestingView initWithFrame:]):
1682 (-[FirstResponderTestingView inputField]):
1683 (TestWebKitAPI::TEST):
1685 2018-11-26 Fujii Hironori <Hironori.Fujii@sony.com>
1687 [CMake] Remove ENABLE_ACCESSIBILITY CMake variable
1688 https://bugs.webkit.org/show_bug.cgi?id=191831
1690 Reviewed by Michael Catanzaro.
1692 * WebKitTestRunner/CMakeLists.txt:
1694 2018-11-26 Tim Horton <timothy_horton@apple.com>
1696 Insert <attachment> elements under editable images to make their backing data accessible
1697 https://bugs.webkit.org/show_bug.cgi?id=191844
1698 <rdar://problem/30900149>
1700 Reviewed by Simon Fraser.
1702 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1703 (WTR::UIScriptController::attachmentInfo):
1704 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1705 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1706 (WTR::UIScriptController::attachmentInfo):
1707 * TestRunnerShared/UIScriptContext/UIScriptController.h:
1708 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1709 (WTR::UIScriptController::attachmentInfo):
1710 Add a UIScriptController mechanism to retrieve information about
1713 2018-11-26 Aakash Jain <aakash_jain@apple.com>
1715 [ews-app] Add support to communicate with Buildbot
1716 https://bugs.webkit.org/show_bug.cgi?id=191935
1718 Reviewed by Lucas Forschler.
1720 * BuildSlaveSupport/ews-app/ews/common/__init__.py: Added.
1721 * BuildSlaveSupport/ews-app/ews/common/buildbot.py: Added.
1723 2018-11-26 Jonathan Bedard <jbedard@apple.com>
1725 webkitpy: Race condition in ServerProcess tests
1726 https://bugs.webkit.org/show_bug.cgi?id=191989
1727 <rdar://problem/45536844>
1729 Reviewed by Lucas Forschler.
1731 Serializing these tests to prevent the race conditions.
1733 * Scripts/webkitpy/port/server_process_unittest.py:
1734 (TestServerProcess.serial_test_basic):
1735 (TestServerProcess.serial_test_read_after_process_exits):
1736 (TestServerProcess.serial_test_process_crashing):
1737 (TestServerProcess.serial_test_process_crashing_no_data):
1738 (TestServerProcess.test_basic): Deleted.
1739 (TestServerProcess.test_read_after_process_exits): Deleted.
1740 (TestServerProcess.test_process_crashing): Deleted.
1741 (TestServerProcess.test_process_crashing_no_data): Deleted.
1743 2018-11-26 Aakash Jain <aakash_jain@apple.com>
1745 [ews-app] Add field in Patch object to indicate if it has been sent to Buildbot
1746 https://bugs.webkit.org/show_bug.cgi?id=191929
1748 Reviewed by Lucas Forschler.
1750 * BuildSlaveSupport/ews-app/ews/models/patch.py:
1751 (Patch): Added sent_to_buildbot field.
1752 (Patch.is_patch_sent_to_buildbot): Checks if the patch has been sent to Buildbot.
1754 2018-11-26 Aakash Jain <aakash_jain@apple.com>
1756 [ews-app] Add a config file
1757 https://bugs.webkit.org/show_bug.cgi?id=191933
1759 Reviewed by Lucas Forschler.
1761 * BuildSlaveSupport/ews-app/ews/config.py: Added.
1763 2018-11-26 Aakash Jain <aakash_jain@apple.com>
1765 [ews-app] Add methods to save patch to database
1766 https://bugs.webkit.org/show_bug.cgi?id=191928
1768 Reviewed by Lucas Forschler.
1770 * BuildSlaveSupport/ews-app/ews/models/patch.py:
1771 (Patch.save_patch): Method to save the patch to database.
1772 (Patch.save_patches): Method to save multiple patches to database.
1773 (Patch.is_valid_patch_id): Checks if the patch id is valid.
1774 (Patch.is_existing_patch_id): Checks if the patch id already exists in database.
1776 2018-11-26 Alex Christensen <achristensen@webkit.org>
1778 Rename WKWebView._safeBrowsingWarningForTesting to _safeBrowsingWarning to use it for more than testing
1779 https://bugs.webkit.org/show_bug.cgi?id=191981
1781 Reviewed by Tim Horton.
1783 * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1787 2018-11-26 Daniel Bates <dabates@apple.com>
1789 REGRESSION (r237738): Command Down Arrow doesn't scroll to the end of a page anymore
1790 https://bugs.webkit.org/show_bug.cgi?id=191967
1791 <rdar://problem/45976390>
1793 Reviewed by Tim Horton.
1795 Add more test infrastructure to dispatch key up events.
1797 * WebKitTestRunner/ios/HIDEventGenerator.h:
1798 * WebKitTestRunner/ios/HIDEventGenerator.mm:
1799 (createHIDKeyEvent): Renamed from createHIDKeyDownEvent() and modified to take a boolean as
1800 to whether to create an event for a key down or key up.
1801 (createHIDKeyDownEvent): Deleted; renamed to createHIDKeyEvent().
1802 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1803 (WTR::createUIPhysicalKeyboardEvent): Added. Convenience function to create a UIPhysicalKeyboardEvent.
1804 (WTR::UIScriptController::keyDown): Modified to dispatch a key up event in addition to dispatching
1807 2018-11-26 Aakash Jain <aakash_jain@apple.com>
1809 [ews-app] Set Foreign Keys in EWS Django app models
1810 https://bugs.webkit.org/show_bug.cgi?id=191790
1812 Reviewed by Lucas Forschler.
1814 * BuildSlaveSupport/ews-app/ews/models/builds.py: Set Foreign Key.
1815 * BuildSlaveSupport/ews-app/ews/models/steps.py: Ditto.
1817 2018-11-26 Aakash Jain <aakash_jain@apple.com>
1819 [ews-app] Do not store patch content in database
1820 https://bugs.webkit.org/show_bug.cgi?id=191788
1822 Reviewed by Lucas Forschler.
1824 * BuildSlaveSupport/ews-app/ews/models/patch.py: Removed content field.
1826 2018-11-26 Jonathan Bedard <jbedard@apple.com>
1828 webkitpy: Retry app installation on watchOS simulators (Follow-up fix)
1829 https://bugs.webkit.org/show_bug.cgi?id=191769
1830 <rdar://problem/46139850>
1832 Unreviewed infrastructure fix.
1834 * Scripts/webkitpy/xcode/simulated_device.py:
1835 (SimulatedDevice): Increase retry attempts.
1837 2018-11-26 Daniel Bates <dabates@apple.com>
1839 Move testRunner.toggleCapsLock() to uiController
1840 https://bugs.webkit.org/show_bug.cgi?id=191972
1842 Reviewed by Tim Horton.
1844 Move testRunner.toggleCapsLock() to uiController as uiController is the preferred JavaScript
1845 object for UI test functions. Having this functionality be on uiController makes it an
1846 asynchronous function naturally and complements use of onkeydown, onkeyup listeners to know
1847 when the Caps Lock key event is dispatched. It also facilitates its use directly as part of
1848 scripts with other uiController functions invocations that are passed in a single invocation
1849 of testRunner.runUIScript().
1851 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1852 (WTR::UIScriptController::toggleCapsLock):
1853 * DumpRenderTree/mac/UIScriptControllerMac.mm:
1854 (WTR::UIScriptController::toggleCapsLock):
1855 Added stub functions that invoke the callback. We do not support toggling caps lock in Legacy
1856 WebKit at the moment. Legacy WebKit reads the caps lock key state directly from the OS. Modern
1857 WebKit caches the caps lock state in the WebProcess as a natural side effect of the fact that
1858 the UIProcess is the only process capable of querying the caps lock key state from the OS and
1859 hence the UIProcess must send over this state to the WebProcess.
1861 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl: Add IDL for new function.
1862 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1863 (WTR::UIScriptController::toggleCapsLock): Added empty implementation for ports non-Cocoa ports.
1864 * TestRunnerShared/UIScriptContext/UIScriptController.h:
1866 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1867 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1868 (WTR::TestRunner::toggleCapsLock): Deleted.
1869 * WebKitTestRunner/InjectedBundle/TestRunner.h:
1870 * WebKitTestRunner/TestController.h:
1871 * WebKitTestRunner/TestInvocation.cpp:
1872 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1873 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1874 (WTR::TestController::toggleCapsLock): Deleted; moved to UIScriptController::toggleCapsLock().
1875 Removed logic to handle testRunner.toggleCapsLock().
1877 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1878 (WTR::UIScriptController::toggleCapsLock): Add stub function that invokes the callback
1879 and a FIXME comment that explains that we will implement this function in <https://bugs.webkit.org/show_bug.cgi?id=191815>.
1880 * WebKitTestRunner/mac/UIScriptControllerMac.mm:
1881 (WTR::UIScriptController::toggleCapsLock): Moved the implementation from TestController::toggleCapsLock().
1883 2018-11-26 Brent Fulgham <bfulgham@apple.com>
1885 [Win] Reduce the use of WKSI library calls: CoreAnimation
1886 https://bugs.webkit.org/show_bug.cgi?id=191777
1887 <rdar://problem/46140542>
1889 Reviewed by Zalan Bujtas.
1891 Update the Windows build of WebKit to refer to the SPI headers, rather than WebKitSystemInterface.
1892 Move a small amount of glue code from WKSI to WebCore, and remove any includes or link
1893 directives for WebKitSystemInterface.lib.
1895 * TestWebKitAPI/PlatformWin.cmake:
1897 2018-11-25 Zalan Bujtas <zalan@apple.com>
1899 [LFC][IFC] Use float box's margin box to adjust the line constraints.
1900 https://bugs.webkit.org/show_bug.cgi?id=191961
1902 Reviewed by Antti Koivisto.
1904 * LayoutReloaded/misc/LFC-passing-tests.txt:
1906 2018-11-25 Zalan Bujtas <zalan@apple.com>
1908 Unreviewed test fix after r238467.
1910 * TestWebKitAPI/Tests/WTF/ListHashSet.cpp:
1911 (TestWebKitAPI::TEST):
1913 2018-11-25 Wenson Hsieh <wenson_hsieh@apple.com>
1915 Unreviewed, fix the internal iOS 12 build after r238471
1917 * TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
1920 2018-11-25 Tim Horton <timothy_horton@apple.com>
1922 Make it possible to insert editable images with a gesture
1923 https://bugs.webkit.org/show_bug.cgi?id=191937
1925 Reviewed by Wenson Hsieh.
1927 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1928 (WTR::UIScriptController::drawSquareInEditableImage):
1929 If the canvas already has a drawing, draw a new stroke on top of it
1930 instead of removing the existing stroke.
1932 2018-11-24 Wenson Hsieh <wenson_hsieh@apple.com>
1934 [Cocoa] Add WKWebView SPI to trigger and remove data detection
1935 https://bugs.webkit.org/show_bug.cgi?id=191918
1936 <rdar://problem/36185051>
1938 Reviewed by Tim Horton.
1940 Add an API test to exercise the new WebKit SPI.
1942 * TestWebKitAPI/DataDetectorsCoreSPI.h: Added.
1943 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1944 * TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
1945 (-[WKWebView synchronouslyDetectDataWithTypes:]):
1946 (-[WKWebView synchronouslyRemoveDataDetectedLinks]):
1948 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1949 (TestWebKitAPI::TEST):
1950 (-[TestWKWebView tagsInBody]): Deleted.
1951 (-[TestWKWebView expectElementTagsInOrder:]): Deleted.
1952 (-[TestWKWebView expectElementCount:tagName:]): Deleted.
1953 (-[TestWKWebView expectElementTag:toComeBefore:]): Deleted.
1955 Rename this from `-expectElementCount:tagName:` to `-expectElementCount:querySelector:`.
1957 * TestWebKitAPI/Tests/WebKitCocoa/data-detectors.html: Added.
1959 Add a new test page containing some content that can be data detected.
1961 * TestWebKitAPI/cocoa/TestWKWebView.h:
1962 * TestWebKitAPI/cocoa/TestWKWebView.mm:
1963 (-[WKWebView tagsInBody]):
1964 (-[WKWebView expectElementTagsInOrder:]):
1965 (-[WKWebView expectElementCount:querySelector:]):
1966 (-[WKWebView expectElementTag:toComeBefore:]):
1968 Move some testing helper functions from WKAttachmentTests to a testing category on WKWebView. This allows us to
1969 use `-expectElementCount:querySelector:` in tests outside of WKAttachmentTests.
1971 (-[WKWebView objectByEvaluatingJavaScript:]):
1972 (-[WKWebView objectByEvaluatingJavaScriptWithUserGesture:]):
1973 (-[WKWebView stringByEvaluatingJavaScript:]):
1975 Move some common helper functions from TestWKWebView to a testing category on WKWebView.
1977 (-[TestWKWebView objectByEvaluatingJavaScript:]): Deleted.
1978 (-[TestWKWebView objectByEvaluatingJavaScriptWithUserGesture:]): Deleted.
1979 (-[TestWKWebView stringByEvaluatingJavaScript:]): Deleted.
1981 2018-11-23 Sam Weinig <sam@webkit.org>
1983 Add raw pointer overloads to ListHashSet via SmartPtr specialized functions
1984 https://bugs.webkit.org/show_bug.cgi?id=191936
1986 Reviewed by Zalan Bujtas.
1988 Adds tests for raw pointer overloads in ListHashSet.
1990 * TestWebKitAPI/Tests/WTF/HashSet.cpp:
1991 * TestWebKitAPI/Tests/WTF/ListHashSet.cpp:
1993 2018-11-23 Wenson Hsieh <wenson_hsieh@apple.com>
1995 Enable drag and drop support for iOSMac
1996 https://bugs.webkit.org/show_bug.cgi?id=191818
1997 <rdar://problem/43907454>
1999 Reviewed by Dean Jackson.
2001 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2003 2018-11-23 Zalan Bujtas <zalan@apple.com>
2005 [LFC][IFC] Add support for variable height runs.
2006 https://bugs.webkit.org/show_bug.cgi?id=191925
2008 Reviewed by Antti Koivisto.
2010 * LayoutReloaded/misc/LFC-passing-tests.txt:
2012 2018-11-23 Alberto Garcia <berto@igalia.com>
2014 [GTK] [WPE] Tools/Platform{GTK,WPE}.cmake files missing from the tarballs
2015 https://bugs.webkit.org/show_bug.cgi?id=191923
2017 Add Tools/PlatformGTK.cmake and Tools/PlatformWPE.cmake to their
2018 respective tarballs.
2020 Reviewed by Carlos Garcia Campos.
2022 * gtk/manifest.txt.in:
2023 * wpe/manifest.txt.in:
2025 2018-11-22 Chris Dumez <cdumez@apple.com>
2027 Regression(r238353) Load sometimes hangs when navigating back after a cross-site navigation
2028 https://bugs.webkit.org/show_bug.cgi?id=191914
2030 Reviewed by Ryosuke Niwa.
2032 Add API test coverage.
2034 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2036 2018-11-22 Zalan Bujtas <zalan@apple.com>
2038 [LFC][IFC] Offset formatting context root runs with horizontal margins.
2039 https://bugs.webkit.org/show_bug.cgi?id=191900
2041 Reviewed by Antti Koivisto.
2043 * LayoutReloaded/misc/LFC-passing-tests.txt:
2045 2018-11-22 Philippe Normand <pnormand@igalia.com>
2047 [GTK] Remove unmaintained bots
2048 https://bugs.webkit.org/show_bug.cgi?id=191467
2050 Reviewed by Alex Christensen.
2052 The Linux 32-bits and ARM build-slaves are no longer maintained
2053 and have been failing for months, so get rid of them.
2055 * BuildSlaveSupport/build.webkit.org-config/config.json:
2056 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
2058 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2060 2018-11-22 Thibault Saunier <tsaunier@igalia.com>
2062 [Flatpak] Do not disable signals when running "usual" commands
2063 https://bugs.webkit.org/show_bug.cgi?id=190679
2065 Reviewed by Philippe Normand.
2067 Otherwise <ctr>c doesn't work while compiling. It is not the best fix
2068 as there are cases we want to let only children receive signals, but
2069 it is not clear how to determine when (when running gdb, we still
2072 * flatpak/flatpakutils.py:
2073 (WebkitFlatpak.run_in_sandbox):
2075 2018-11-21 Wenson Hsieh <wenson_hsieh@apple.com>
2077 [Cocoa] [WebKit2] Add support for replacing find-in-page text matches
2078 https://bugs.webkit.org/show_bug.cgi?id=191786
2079 <rdar://problem/45813871>
2081 Reviewed by Ryosuke Niwa.
2083 * MiniBrowser/mac/WK2BrowserWindowController.m:
2084 (-[WK2BrowserWindowController setFindBarView:]):
2086 Fix a bug in MiniBrowser that prevents AppKit from displaying the "All" button in the find bar after checking
2087 the "Replace" option.
2089 * TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm:
2091 Add an API test to exercise find-and-replace API using WKWebView.
2095 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2096 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2097 (WTR::findOptionsFromArray):
2098 (WTR::TestRunner::findString):
2099 (WTR::TestRunner::findStringMatchesInPage):
2100 (WTR::TestRunner::replaceFindMatchesAtIndices):
2102 Add TestRunner hooks to simulate find-in-page and replace.
2104 * WebKitTestRunner/InjectedBundle/TestRunner.h:
2106 2018-11-21 Zalan Bujtas <zalan@apple.com>
2108 [LFC][IFC] Horizontal margins should be considered as non-breakable space
2109 https://bugs.webkit.org/show_bug.cgi?id=191894
2111 Reviewed by Antti Koivisto.
2113 * LayoutReloaded/misc/LFC-passing-tests.txt:
2115 2018-11-21 Zalan Bujtas <zalan@apple.com>
2117 [LFC][IFC] Border should be considered as non-breakable space
2118 https://bugs.webkit.org/show_bug.cgi?id=191891
2120 Reviewed by Antti Koivisto.
2122 * LayoutReloaded/misc/LFC-passing-tests.txt:
2124 2018-11-21 Zalan Bujtas <zalan@apple.com>
2126 [LFC][IFC] Take nonBreakableStart/End into use.
2127 https://bugs.webkit.org/show_bug.cgi?id=191873
2129 Reviewed by Antti Koivisto.
2131 * LayoutReloaded/misc/LFC-passing-tests.txt:
2133 2018-11-20 Jeff Miller <jeffm@apple.com>
2135 Return nullptr immediately if the key doesn't exist in the HashMap.
2136 https://bugs.webkit.org/show_bug.cgi?id=191841
2138 Reviewed by Chris Dumez.
2140 Add a test that would crash prior to the fix for this bug.
2142 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2143 * TestWebKitAPI/Tests/WebKitCocoa/WKNSDictionaryEmptyDictionaryCrash.mm: Added.
2144 (TestWebKitAPI::TEST):
2146 2018-11-19 Alex Christensen <achristensen@webkit.org>
2148 Add SPI to disable JIT in a WKWebView
2149 https://bugs.webkit.org/show_bug.cgi?id=191822
2150 <rdar://problem/28119360>
2152 Reviewed by Geoffrey Garen.
2154 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2155 * TestWebKitAPI/Tests/WebKitCocoa/DisableJIT.mm: Added.
2158 2018-11-19 Basuke Suzuki <basuke.suzuki@sony.com>
2160 [Curl] Add API for CertificateInfo.
2161 https://bugs.webkit.org/show_bug.cgi?id=191647
2163 Reviewed by Alex Christensen.
2165 Added test for new WKCertificateInfo API.
2167 * TestWebKitAPI/PlatformWin.cmake:
2168 * TestWebKitAPI/Tests/WebKit/curl/Certificates.cpp: Added.
2169 (TestWebKitAPI::Curl::makeCertificateInfo):
2170 (TestWebKitAPI::Curl::isSamePEM):
2171 (TestWebKitAPI::Curl::TEST):
2173 2018-11-19 Wenson Hsieh <wenson_hsieh@apple.com>
2175 Unreviewed, fix the internal iOS debug build after r238380
2177 UICalloutBar should only be declared when the public (non-internal) SDK is used to build WebKit; otherwise, we
2178 end up with duplicate declarations of UICalloutBar.
2180 * TestWebKitAPI/ios/UIKitSPI.h:
2182 2018-11-19 David Quesada <david_quesada@apple.com>
2184 EXC_BAD_ACCESS when invoking a DownloadProxy's destination decision handler after the download has been canceled
2185 https://bugs.webkit.org/show_bug.cgi?id=191762
2186 rdar://problem/46151509
2188 Reviewed by Dean Jackson.
2190 * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
2191 Enable the Download API test on iOS, since the platform supports downloads. All the
2192 tests pass already, except for one which was written using AppKit-specific code:
2193 TEST(_WKDownload, RedirectedDownload):
2194 Use a more platform-agnostic approach to starting the download in this API test.
2195 Instead of manually triggering an NSMenu item to download a file from a link, the
2196 test will simulate a user-initiated click on the link, and the navigation delegate
2197 will direct the web view to start a download based on the link's navigation action.
2198 Additionally, remove the manual creation of a new NSWindow. TestWKWebView makes its
2200 TEST(_WKDownload, DownloadCanceledWhileDecidingDestination):
2201 Add an API test _WKDownload.DownloadCanceledWhileDecidingDestination to simulate the
2202 conditions that would trigger this crash - handling a download's -decideDestination…
2203 delegate call by canceling the download, waiting for the UI process to be notified
2204 that the download has been canceled, and calling the decision handler. This should
2206 (-[CancelDownloadWhileDecidingDestinationDelegate _downloadDidFinish:]):
2207 (-[CancelDownloadWhileDecidingDestinationDelegate _download:didFailWithError:]):
2208 (-[CancelDownloadWhileDecidingDestinationDelegate _downloadDidCancel:]):
2209 (-[CancelDownloadWhileDecidingDestinationDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
2210 (-[UIDownloadAsFileTestDelegate _webView:contextMenu:forElement:]): Deleted.
2211 * TestWebKitAPI/cocoa/TestWKWebView.h:
2212 * TestWebKitAPI/cocoa/TestWKWebView.mm:
2213 (-[TestWKWebView objectByEvaluatingJavaScriptWithUserGesture:]):
2214 Add a user-initated version of -objectByEvaluatingJavaScript:. This is needed in
2215 order to maintain the behavior of the RedirectedDownload test, which verifies the
2216 state of the _WKDownload.wasUserInitiated property.
2218 2018-11-19 Wenson Hsieh <wenson_hsieh@apple.com>
2220 [iOS Debug] Assertion failure in NSComparisonResult UIContentSizeCategoryCompareToCategory()
2221 https://bugs.webkit.org/show_bug.cgi?id=190401
2222 <rdar://problem/45195285>
2224 Reviewed by Dean Jackson.
2226 Work around sporadic UIKit assertions when running API tests that may present a UICalloutBar. Currently, UIKit
2227 asks for the `UIApp`’s `-preferredContentSizeCategory` when showing or laying out the callout bar. However,
2228 TestWebKitAPI lacks a UIApp altogether, and forcing one to be initialized via `UIApplicationInstantiateSingleton`
2229 causes numerous other UIKit and WebKit assertions to be hit.
2231 In lieu of TestWebKitAPI becoming a real UI application (see https://webkit.org/b/175204), simply don't allow
2232 the callout bar to be initialized in TestWKWebView-based API tests. This encompasses all API tests which
2233 have some chance of causing the callout bar to be shown by making a ranged text selections during the test.
2235 * TestWebKitAPI/cocoa/TestWKWebView.mm:
2236 (suppressUICalloutBar):
2237 (-[TestWKWebView initWithFrame:configuration:addToWindow:]):
2238 * TestWebKitAPI/ios/UIKitSPI.h:
2240 2018-11-19 Fujii Hironori <Hironori.Fujii@sony.com>
2242 REGRESSION(r238016)[GTK][TestWebKitAPI][Ninja] TestJSC can't compile "Bytecodes.h: No such file or directory"
2243 https://bugs.webkit.org/show_bug.cgi?id=191692
2245 Reviewed by Michael Catanzaro.
2247 r238016 added a new #include, and requires JSC's derived headers
2248 to be copied into the forwarding header directory.
2250 WEBKIT_MAKE_FORWARDING_HEADERS is using POST_BUILD event to copy
2251 derived headers to the forwarding header directory. This is done
2252 after linking JSC library.
2254 GTK port has TestJSC which has a dependency to JSC static library.
2255 And, this dependency is a link time dependency which means
2256 compiling source files of TestJSC starts before the POST_BUILD
2257 event of JSC. Thus, required header can't be found.
2259 Add an intermediate target between TestJSC and JavaScriptCore to
2260 ensure derived headers are copied into the forwarding header
2263 * TestWebKitAPI/PlatformGTK.cmake: Added a new custom target pre-TestJSC.
2264 * TestWebKitAPI/PlatformWPE.cmake: Ditto.
2266 2018-11-19 Alejandro G. Castro <alex@igalia.com>
2268 [GTK][WPE] Solve some issues in the enumerateDevices code
2269 https://bugs.webkit.org/show_bug.cgi?id=191832
2271 Reviewed by Carlos Garcia Campos.
2273 * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
2274 (serverCallback): Make all the Strings with HTML code static.
2275 (testWebsiteDataDeviceIdHashSalt): Change the webView settings in
2277 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
2278 (WebViewTest::initializeWebView): Remove the initialization of the
2279 webView settings, we now do it in the specific test.
2281 2018-11-18 Chris Dumez <cdumez@apple.com>
2283 [PSON] Received an invalid message "WebPageProxy.DidPerformClientRedirect" from the web process
2284 https://bugs.webkit.org/show_bug.cgi?id=191828
2286 Reviewed by Antti Koivisto.
2288 Add API test coverage.
2290 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2291 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2292 * TestWebKitAPI/Tests/WebKitCocoa/client-side-redirect.html: Added.
2294 2018-11-17 Wenson Hsieh <wenson_hsieh@apple.com>
2296 [iOS] Remove all usages of UIItemProvider, UIItemProviderReading, and related classes
2297 https://bugs.webkit.org/show_bug.cgi?id=191819
2299 Reviewed by Dan Bernstein.
2301 Replace UIItemProvider (and related classes) with NSItemProvider.
2303 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2305 * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2306 (-[NSItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
2308 Replace usages of this deprecated method with `-registerDataRepresentationForTypeIdentifier:visibility:loadHandler:`.
2310 (checkEstimatedSize):
2311 (checkSuggestedNameAndEstimatedSize):
2312 (TestWebKitAPI::TEST):
2313 (-[UIItemProvider registerDataRepresentationForTypeIdentifier:withData:]): Deleted.
2314 * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
2315 * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
2316 (-[MockDragDropSession canLoadObjectsOfClass:]):
2317 (-[MockDragDropSession canLoadObjectsOfClasses:]):
2318 (-[MockDropSession initWithProviders:location:window:allowMove:]):
2319 (-[MockDropSession canCreateItemsOfClass:]):
2320 (-[DragAndDropSimulator _advanceProgress]):
2321 (-[DragAndDropSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
2322 (-[DragAndDropSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
2323 * TestWebKitAPI/ios/UIKitSPI.h:
2325 2018-11-17 Chris Dumez <cdumez@apple.com>
2327 ASSERTION FAILED: m_messageReceivers.contains(...) under ViewGestureController removeMessageReceiver
2328 https://bugs.webkit.org/show_bug.cgi?id=191734
2329 <rdar://problem/46151497>
2331 Reviewed by Ryosuke Niwa.
2333 Add API test coverage.
2335 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2337 2018-11-17 Zalan Bujtas <zalan@apple.com>
2339 [LFC][IFC] InlineFormattingState::addDetachingRule should accumulate rules.
2340 https://bugs.webkit.org/show_bug.cgi?id=191801
2342 Reviewed by Antti Koivisto.
2344 * LayoutReloaded/misc/LFC-passing-tests.txt:
2346 2018-11-17 Jer Noble <jer.noble@apple.com>
2348 Regression(r233865): Causes synchronous IPC in the middle of layout
2349 https://bugs.webkit.org/show_bug.cgi?id=188307
2350 <rdar://problem/42807306>
2352 Reviewed by Eric Carlson.
2354 Follow-up test fix for r238322:
2356 In ExitFullscreenOnEnterPiP.ElementFullScreen, explicitly make the video
2357 element in element fullscreen the "main content" by playing the video during
2358 a user gesture; only "main content" videos will cause fullscreen mode to exit
2359 when that element is taken into PiP.
2361 In FullscreenZoomInitialFrame.WebKit, the WebView is not visible, so the Page
2362 is considered hidden, and fullscreen is not allowed when the WebView is hidden.
2363 Make the WebView visible by ordering the test window on-screen.
2365 * TestWebKitAPI/Tests/WebKitCocoa/ExitFullscreenOnEnterPiP.html:
2366 * TestWebKitAPI/Tests/WebKitCocoa/ExitFullscreenOnEnterPiP.mm:
2367 (TestWebKitAPI::TEST):
2368 * TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
2369 (TestWebKitAPI::FullscreenZoomInitialFrame::runTest):
2371 2018-11-16 Alex Christensen <achristensen@webkit.org>
2373 Tweak _showSafeBrowsingWarningWithTitle SPI
2374 https://bugs.webkit.org/show_bug.cgi?id=191799
2376 Reviewed by Wenson Hsieh.
2378 * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
2381 2018-11-16 Ryosuke Niwa <rniwa@webkit.org>
2383 REGRESSION (r238294): TestWebKitAPI.WKNavigation.ProcessCrashDuringCallback failing on iOS
2384 https://bugs.webkit.org/show_bug.cgi?id=191783
2386 Reviewed by Chris Dumez.
2388 Allow either WKErrorWebContentProcessTerminated or WKErrorWebViewInvalidated since the test
2389 is closing WebView, thereby invalidating the view, which is racing with the process termination.
2391 * TestWebKitAPI/Tests/WebKitCocoa/WebContentProcessDidTerminate.mm:
2394 2018-11-16 Chris Dumez <cdumez@apple.com>
2396 ProcessSwap.DisableForInspector API test is failing
2397 https://bugs.webkit.org/show_bug.cgi?id=191798
2399 Reviewed by Joseph Pecoraro.
2401 We support process swapping when Web Inspector is shown now so update the
2402 API test accordingly.
2404 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2406 2018-11-16 Ryan Haddad <ryanhaddad@apple.com>
2408 Update buildbot dashboard after Windows 7/10 updates
2409 https://bugs.webkit.org/show_bug.cgi?id=191219
2411 Reviewed by Alexey Proskuryakov.
2413 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
2414 (BubbleQueueServer):
2415 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
2416 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
2418 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
2419 (table.queue-grid tr.platform td.logo::before):
2420 (table.queue-grid tr.platform.windows-10 td.logo::before):
2421 (table.queue-grid tr.platform.wincairo-windows-10 td.logo::before):
2422 (table.queue-grid tr.platform.windows-7 td.logo::before):
2423 (table.queue-grid tr.platform.wincairo-windows-10 img.logo):
2425 2018-11-16 Chris Dumez <cdumez@apple.com>
2427 Regression(PSON) WebKit.GeolocationTransitionToHighAccuracy API test is timing out
2428 https://bugs.webkit.org/show_bug.cgi?id=191789
2430 Reviewed by Alex Christensen.
2432 Relate the 2 test pages so they use the same process since WKContextSetMaximumNumberOfProcesses()
2433 SPI no longer works with PSON / Process prewarming.
2435 * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
2436 (TestWebKitAPI::TEST):
2438 2018-11-16 Jonathan Bedard <jbedard@apple.com>
2440 webkitpy: Retry app installation on watchOS simulators
2441 https://bugs.webkit.org/show_bug.cgi?id=191769
2442 <rdar://problem/46139850>
2444 Reviewed by Aakash Jain.
2446 * Scripts/webkitpy/xcode/simulated_device.py:
2447 (SimulatedDevice.install_app): Retry app installations.
2449 2018-11-16 Zalan Bujtas <zalan@apple.com>
2451 Add DidFirstMeaningfulPaint milestone.
2452 https://bugs.webkit.org/show_bug.cgi?id=191754
2454 Reviewed by Simon Fraser.
2456 * TestWebKitAPI/CMakeLists.txt:
2457 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2458 * TestWebKitAPI/Tests/WebKit/FirstMeaningfulPaintMilestone.cpp: Added.
2459 (TestWebKitAPI::didReachMilestone):
2460 (TestWebKitAPI::setPageLoaderClient):
2461 (TestWebKitAPI::TEST):
2462 * TestWebKitAPI/Tests/WebKit/FirstMeaningfulPaintMilestone_Bundle.cpp: Copied from Source/WebKit/UIProcess/API/C/WKPageRenderingProgressEvents.h.
2463 (TestWebKitAPI::FirstMeaningfulPaintMilestoneTest::FirstMeaningfulPaintMilestoneTest):
2464 (TestWebKitAPI::FirstMeaningfulPaintMilestoneTest::didCreatePage):
2466 2018-11-16 Takashi Komori <Takashi.Komori@sony.com>
2468 [WinCairo][WebKitTestRunner] Test contents window is displayed while testing.
2469 https://bugs.webkit.org/show_bug.cgi?id=191593
2471 Reviewed by Alex Christensen.
2473 Hide TestRunner window and taskbar button.
2475 * WebKitTestRunner/win/PlatformWebViewWin.cpp:
2476 (WTR::PlatformWebView::PlatformWebView):
2477 (WTR::PlatformWebView::windowSnapshotImage):
2479 2018-11-16 Alex Christensen <achristensen@webkit.org>
2481 Add API to disable safe browsing checks
2482 https://bugs.webkit.org/show_bug.cgi?id=191610
2484 Reviewed by Dean Jackson.
2486 * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
2490 (simpleURL): Deleted.
2492 2018-11-16 Zalan Bujtas <zalan@apple.com>
2494 [LFC][IFC] Add support for out-of-flow positioned boxes
2495 https://bugs.webkit.org/show_bug.cgi?id=191726
2497 Reviewed by Antti Koivisto.
2499 * LayoutReloaded/misc/LFC-passing-tests.txt:
2501 2018-11-15 Myles C. Maxfield <mmaxfield@apple.com>
2503 WKPreferencesSetFontSmoothingLevel doesn't actually do anything
2504 https://bugs.webkit.org/show_bug.cgi?id=191708
2506 Reviewed by Simon Fraser.
2508 Delete the symbol because no one calls it and it doesn't do anything
2510 * TestWebKitAPI/Tests/WebKit/WKPreferences.cpp:
2511 (TestWebKitAPI::TEST):
2512 * WebKitTestRunner/TestController.cpp:
2513 (WTR::TestController::resetPreferencesToConsistentValues):
2515 2018-11-15 Truitt Savell <tsavell@apple.com>
2517 Unreviewed, rolling out r238244.
2519 Caused High Sierra test runs to fail early with 50 crashes and
2520 casued 25 API failures.
2524 "[css-logical] Implement flow-relative margin, padding and
2526 https://bugs.webkit.org/show_bug.cgi?id=188697
2527 https://trac.webkit.org/changeset/238244
2529 2018-11-15 Aakash Jain <aakash_jain@apple.com>
2531 Increase EWS lock timeout to 3 hours
2532 https://bugs.webkit.org/show_bug.cgi?id=191705
2534 Reviewed by Alexey Proskuryakov.
2536 * QueueStatusServer/config/queues.py: Increased EWS lock timeout to 3 hours.
2538 2018-11-15 Chris Dumez <cdumez@apple.com>
2540 IndexedDB.IndexedDBTempFileSize API test times out with process prewarming enabled
2541 https://bugs.webkit.org/show_bug.cgi?id=191671
2542 <rdar://problem/46086062>
2544 Reviewed by Alex Christensen.
2546 Add API test coverage.
2548 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2549 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
2552 2018-11-15 Oriol Brufau <obrufau@igalia.com>
2554 [css-logical] Implement flow-relative margin, padding and border shorthands
2555 https://bugs.webkit.org/show_bug.cgi?id=188697
2557 Reviewed by Simon Fraser and Antti Koivisto.
2559 * DumpRenderTree/TestOptions.cpp:
2560 (TestOptions::TestOptions):
2561 * DumpRenderTree/TestOptions.h:
2562 * DumpRenderTree/mac/DumpRenderTree.mm:
2563 (setWebPreferencesForTestOptions):
2564 Allow tests to enable the CSSLogicalEnabled flag in WK1.
2566 * Scripts/webkitpy/style/checkers/jsonchecker.py:
2567 (JSONCSSPropertiesChecker.check_codegen_properties):
2568 Allow CSS property definitions to have a 'runtime-flag' parameter which
2569 disables the property when the specified runtime flag is disabled.
2571 2018-11-15 Timothy Hatcher <timothy@apple.com>
2573 REGRESSION (r238212): WebKit.BackgroundColor* API test failures.
2574 https://bugs.webkit.org/show_bug.cgi?id=191697
2575 rdar://problem/46098570
2577 Reviewed by Dean Jackson.
2579 * TestWebKitAPI/Tests/mac/BackgroundColor.mm:
2580 (TestWebKitAPI::TEST): Updated for new default background color.
2582 2018-11-15 Jonathan Bedard <jbedard@apple.com>
2584 webkitpy: Check for specific process instead of using data migrator (Follow-up fix)
2585 https://bugs.webkit.org/show_bug.cgi?id=191551
2586 <rdar://problem/45993156>
2588 Reviewed by Aakash Jain.
2590 * Scripts/webkitpy/xcode/simulated_device.py:
2591 (SimulatedDevice.is_usable): Use software_variant instead of software_version for watchOS.
2593 2018-11-15 Daniel Bates <dabates@apple.com>
2595 [iOS] Shift + Tab does not focus previous field
2596 https://bugs.webkit.org/show_bug.cgi?id=191596
2597 <rdar://problem/45892053>
2599 Reviewed by Wenson Hsieh.
2601 Add infrastructure to support testing a key down event with modifiers by creating
2602 and dispatching a UIEvent. This infrastructure replaces the previous mechanism in
2603 Tools/WebKitTestRunner/ios/HIDEventGenerator.mm to generate a IOHIDEvent for a
2604 keydown as it did not support creating an event with modifier key state that would
2605 be recognized by UIKit.
2607 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2608 (WTR::UIScriptController::keyDown):
2609 (WTR::UIScriptController::keyDownUsingHardwareKeyboard): Deleted.
2610 (WTR::UIScriptController::keyUpUsingHardwareKeyboard): Deleted.
2611 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2612 Add function uiController.keyDown() that takes a character that represents a keyboard key
2613 and an array of modifier keys. The behavior of this function is analogous to eventSender.keyDown().
2614 Remove functions uiController.keyDownUsingHardwareKeyboard() and uiController.keyUpUsingHardwareKeyboard()
2615 as the former is replaced by uiController.keyDown() and the latter was never used.
2617 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2618 (WTR::UIScriptController::keyDown): Added.
2619 (WTR::UIScriptController::keyUpUsingHardwareKeyboard): Deleted.
2620 (WTR::UIScriptController::keyDownUsingHardwareKeyboard): Deleted.
2621 * TestRunnerShared/UIScriptContext/UIScriptController.h:
2622 * WebKitTestRunner/ios/HIDEventGenerator.h:
2623 * WebKitTestRunner/ios/HIDEventGenerator.mm:
2624 (createHIDKeyDownEvent): Added.
2625 (-[HIDEventGenerator keyDown:completionBlock:]): Deleted.
2626 (-[HIDEventGenerator keyUp:completionBlock:]): Deleted.
2627 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2628 (WTR::arrayLength): Added.
2629 (WTR::parseModifier): Added.
2630 (WTR::parseModifierArray): Added.
2631 (WTR::UIScriptController::keyDown):
2632 (WTR::UIScriptController::keyDownUsingHardwareKeyboard): Deleted.
2633 (WTR::UIScriptController::keyUpUsingHardwareKeyboard): Deleted.
2635 2018-11-15 Keith Rollin <krollin@apple.com>
2637 Delete old .xcfilelist files
2638 https://bugs.webkit.org/show_bug.cgi?id=191669
2639 <rdar://problem/46081994>
2641 Reviewed by Chris Dumez.
2643 .xcfilelist files were created and added to the Xcode project files in
2644 https://trac.webkit.org/changeset/238008/webkit. However, they caused
2645 build issues and they were removed from the Xcode projects in
2646 https://trac.webkit.org/changeset/238055/webkit. This check-in removes
2647 the files from the repository altogether. They'll ultimately be
2648 replaced with new files with names that indicate whether the
2649 associated files are inputs to the Run Script phase or are files
2650 created by the Run Script phase.
2652 * DumpRenderTree/DerivedSources.xcfilelist: Removed.
2653 * WebKitTestRunner/DerivedSources.xcfilelist: Removed.
2655 2018-11-14 Zalan Butjas <zalan@apple.com>
2657 [LFC][IFC] Add support for in-flow positioned inline boxes.
2658 https://bugs.webkit.org/show_bug.cgi?id=191672
2660 Reviewed by Antti Koivisto.
2662 * LayoutReloaded/misc/LFC-passing-tests.txt:
2664 2018-11-14 Keith Rollin <krollin@apple.com>
2666 Move scripts for Derived and Unified Sources to external files
2667 https://bugs.webkit.org/show_bug.cgi?id=191670
2668 <rdar://problem/46082278>
2670 Reviewed by Keith Miller.
2672 Move the scripts in the Generate Derived Sources and Generate Unified
2673 Sources Run Script phases from the Xcode projects to external shell
2674 script files. Then invoke those scripts from the Run Script phases.
2675 This refactoring is being performed to support later work that will
2676 invoke these scripts in other contexts.
2678 The scripts were maintained as-is when making the move. I did a little
2679 reformatting and added 'set -e' to the top of each file, but that's
2682 * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2683 * DumpRenderTree/Scripts/generate-derived-sources.sh: Added.
2684 * WebKitTestRunner/Scripts/generate-derived-sources.sh: Added.
2685 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2687 2018-11-14 Chris Dumez <cdumez@apple.com>
2689 WebKit.DecidePolicyForNavigationActionForHyperlinkThatRedirects API fails when PSON is enabled
2690 https://bugs.webkit.org/show_bug.cgi?id=191640
2692 Reviewed by Alex Christensen.
2694 Add API test coverage.
2696 * TestWebKitAPI/Tests/WebKitCocoa/DecidePolicyForNavigationAction.mm:
2697 (runDecidePolicyForNavigationActionForHyperlinkThatRedirects):
2700 2018-11-14 Chris Dumez <cdumez@apple.com>
2702 REGRESSION (r238115): [iOS] TestWebKitAPI.ProcessSwap.NavigateToInvalidURL is failing
2703 https://bugs.webkit.org/show_bug.cgi?id=191660
2705 Reviewed by Ryosuke Niwa.
2707 The test tries to navigate to an invalid URL and makes sure that we do not process swap
2708 for such load. The test was inherently racing because it was doing:
2709 <body onload="setTimeout(() => alert('DONE'), 0); location.href = 'http://A=a%B=b'">
2711 Its load event handler tries to navigate to 'http://A=a%B=b' and sets a 0 timer to
2712 log an alert, which causes the API test to keep going and check that we did not swap
2713 process. The issue is that a 0 timer may not be sufficient to trigger the load, as
2714 the policy decision is asynchronous and relies on the UIProcess responding to it.
2716 To address the issue, the test now waits for the next policy decision, spins the
2717 run loop and then makes sure we did not swap process. It no longer relies on a message
2720 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2721 (-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2723 2018-11-14 Chris Dumez <cdumez@apple.com>
2725 WebKit.WebsiteDataStoreCustomPaths API test is failing when enabling process prewarming
2726 https://bugs.webkit.org/show_bug.cgi?id=191638
2728 Reviewed by Alex Christensen.
2730 Add API test coverage.
2732 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
2733 (runWebsiteDataStoreCustomPaths):
2736 2018-11-14 Alex Christensen <achristensen@webkit.org>
2738 Add SPI to show a safe browsing warning
2739 https://bugs.webkit.org/show_bug.cgi?id=191604
2741 Reviewed by Andy Estes.
2743 * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
2746 2018-11-14 Wenson Hsieh <wenson_hsieh@apple.com>
2748 [iOS] A few drag and drop tests are crashing after r238146
2749 https://bugs.webkit.org/show_bug.cgi?id=191617
2751 Reviewed by Dean Jackson.
2753 Augment these crashing tests to verify that selection commands are suppressed during drop over editable elements
2754 via more robust means. These tests currently hit an assertion when revealing the callout bar too early, because
2755 TestWebKitAPI is not a UI application (see <https://webkit.org/b/190401>).
2757 Instead of relying on this other bug, directly ask the text input whether it is suppressing selection commands
2758 during a drop, and remember the answer via DragAndDropSimulator.
2760 * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2761 (TestWebKitAPI::TEST):
2763 Add to the existing tests that started failing after r238146.
2765 * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
2766 * TestWebKitAPI/cocoa/TestWKWebView.h:
2767 * TestWebKitAPI/cocoa/TestWKWebView.mm:
2768 (-[TestWKWebView textInputContentView]):
2769 * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
2770 (-[DragAndDropSimulator _resetSimulatedState]):
2771 (-[DragAndDropSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
2772 * TestWebKitAPI/ios/UIKitSPI.h:
2774 2018-11-14 Wenson Hsieh <wenson_hsieh@apple.com>
2776 [Cocoa] [WebKit2] Hook up some more editing actions (-pasteAndMatchStyle:, -makeTextWritingDirectionNatural:)
2777 https://bugs.webkit.org/show_bug.cgi?id=191605
2778 <rdar://problem/45813991>
2780 Reviewed by Dean Jackson.
2782 Adds two new API tests to exercise -_pasteAndMatchStyle: and -makeTextWritingDirectionNatural:.
2784 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2785 (-[TestWKWebView _synchronouslyExecuteEditCommand:argument:]): Deleted.
2786 * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
2787 (TestWebKitAPI::TEST):
2788 * TestWebKitAPI/cocoa/TestWKWebView.h:
2789 * TestWebKitAPI/cocoa/TestWKWebView.mm:
2791 Pull `-_synchronouslyExecuteEditCommand:argument:` out of WKAttachmentTests and into shared code, in a new
2792 category on WKWebView declared in TestWKWebView. Also, fix an unrelated typo in a nearby category.
2794 (-[WKWebView _synchronouslyExecuteEditCommand:argument:]):
2795 * TestWebKitAPI/ios/UIKitSPI.h:
2797 2018-11-14 Chris Dumez <cdumez@apple.com>
2799 WebKit.ApplicationManifestBasic API test is failing when enabling PSON
2800 https://bugs.webkit.org/show_bug.cgi?id=191602
2802 Reviewed by Alex Christensen.
2804 Add API test coverage.
2806 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2808 2018-11-14 Jonathan Bedard <jbedard@apple.com>
2810 webkitpy: Refactor port code for devices
2811 https://bugs.webkit.org/show_bug.cgi?id=191568
2812 <rdar://problem/46005821>
2814 Reviewed by Alex Christensen.
2816 watchOS and iOS device ports share many characteristics in testing, mostly due
2817 to the fact that both are devices.
2819 * Scripts/webkitpy/port/device_port.py: Added.
2820 (DevicePort): Add base class that all simulated/physical device ports share.
2821 (DevicePort.__init__):
2822 (DevicePort.driver_cmd_line_for_logging): Moved from iOS port.
2823 (DevicePort._generate_all_test_configurations): Ditto.
2824 (DevicePort.child_processes): Ditto.
2825 (DevicePort.driver_name): Ditto.
2826 (DevicePort.target_host): Generalize worker access to attached devices and
2827 simulated devices based on the device manager.
2828 (DevicePort.devices): Return a list of all devices associated with this port.
2829 (DevicePort._create_devices):
2830 (DevicePort._build_driver_flags): Moved from iOSSimulatorPort/iOSDevicePort.
2831 (DevicePort._install): Moved from iOS port.
2832 (DevicePort.setup_test_run): Ditto.
2833 (DevicePort.clean_up_test_run): Ditto.
2834 (DevicePort.did_spawn_worker): Ditto.
2835 (DevicePort.setup_environ_for_server): Ditto.
2836 * Scripts/webkitpy/port/ios.py:
2838 (IOSPort._device_for_worker_number_map): Replaced by DevicePort.devices().
2839 (IOSPort.driver_cmd_line_for_logging): Moved to DevicePort.
2840 (IOSPort.driver_name): Ditto.
2841 (IOSPort._generate_all_test_configurations): Ditto.
2842 (IOSPort.child_processes): Ditto.
2843 (IOSPort._testing_device): Ditto.
2844 (IOSPort.target_host): Ditto.
2845 (IOSPort._create_devices): Ditto.
2846 (IOSPort.setup_test_run): Ditto.
2847 (IOSPort.clean_up_test_run): Ditto.
2848 (IOSPort.did_spawn_worker): Ditto.
2849 * Scripts/webkitpy/port/ios_device.py:
2850 (IOSDevicePort): IOSDevicePort uses a device manager from apple_additions.
2851 (IOSDevicePort._look_for_all_crash_logs_in_log_dir): Use DevicePort.devices().
2852 (IOSDevicePort._get_crash_log): Ditto.
2853 (IOSDevicePort.ios_version): Ditto.
2854 (IOSDevicePort._create_devices): Ditto.
2855 (IOSDevicePort._device_for_worker_number_map): Replaced by DevicePort.devices().
2856 (IOSSimulatorPort._build_driver_flags): Moved to DevicePort.
2857 * Scripts/webkitpy/port/ios_device_unittest.py:
2858 (IOSDeviceTest.test_get_crash_log):
2859 * Scripts/webkitpy/port/ios_simulator.py:
2860 (IOSSimulatorPort): IOSSimulatorPort uses the SimulatedDeviceManager.
2861 (IOSSimulatorPort._create_devices): Clean up logging statement.
2862 (IOSSimulatorPort.setup_environ_for_server): Some of environment set-up is shared
2864 (IOSSimulatorPort._device_for_worker_number_map): Replaced by DevicePort.devices().
2865 (IOSSimulatorPort._build_driver_flags): Moved to DevicePort.
2866 * Scripts/webkitpy/port/ios_simulator_unittest.py:
2867 (IOSSimulatorTest.test_32bit):
2868 (IOSSimulatorTest.test_64bit):
2870 2018-11-14 Chris Dumez <cdumez@apple.com>
2872 WebKit.WKHTTPCookieStoreWithoutProcessPool API test is failing with process prewarming is enabled
2873 https://bugs.webkit.org/show_bug.cgi?id=191624
2875 Reviewed by Alex Christensen.
2877 Add API test coverage.
2879 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
2880 (runWKHTTPCookieStoreWithoutProcessPool):
2883 2018-11-13 Jiewen Tan <jiewen_tan@apple.com>
2885 [WebAuthN] Support CTAP HID authenticators on macOS
2886 https://bugs.webkit.org/show_bug.cgi?id=188623
2887 <rdar://problem/43353777>
2889 Reviewed by Brent Fulgham and Chris Dumez.
2891 This patch adds support for the mock testing and entitlements to allow minibrowser to talk
2894 * MiniBrowser/MiniBrowser.entitlements:
2895 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2896 (WTR::TestRunner::setWebAuthenticationMockConfiguration):
2898 2018-11-13 Ryosuke Niwa <rniwa@webkit.org>
2900 WebKit.GeolocationTransitionToLowAccuracy API crashes when enabling PSON
2901 https://bugs.webkit.org/show_bug.cgi?id=191616
2903 Reviewed by Chris Dumez.
2905 The crash was caused by WKView in autorelease pool invoking stopUpdatingCallback after
2906 GeolocationTransitionToLowAccuracyStateTracker in the stack had been destroyed,
2907 resulting in the use-after-free.
2909 Made the tests more robust by clearing geolocation provider before exiting each test
2910 since we can't really prevent WKView from entering an autorelease pool.
2912 Also made WebKit.GeolocationTransitionToLowAccuracy wait for the success callback
2913 instead of simply the end of the navigation so that the test would continue to work
2914 even if a web content process was created for the second web view (lowAccuracyWebView)
2916 * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
2917 (TestWebKitAPI::setupGeolocationProvider): Moved "*" to match the WebKit coding style guideline.
2918 (TestWebKitAPI::clearGeolocationProvider): Added.
2919 (TestWebKitAPI::runJavaScriptAlert): Added.
2920 (TestWebKitAPI::didFinishNavigation): Deleted.
2921 * TestWebKitAPI/Tests/WebKit/geolocationWatchPosition.html:
2923 2018-11-13 Chris Dumez <cdumez@apple.com>
2925 WKProcessPool.InitialWarmedProcessUsed API is failing with PSON enabled
2926 https://bugs.webkit.org/show_bug.cgi?id=191618
2928 Reviewed by Ryosuke Niwa.
2930 Update API test to explicitly disable automatic process prewarning since it is testing
2933 * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
2936 2018-11-13 Chris Dumez <cdumez@apple.com>
2938 Several Service Worker API tests are failing when enabling PSON
2939 https://bugs.webkit.org/show_bug.cgi?id=191619
2941 Reviewed by Youenn Fablet.
2943 Update tests to use _webProcessCountIgnoringPrewarmed instead of _webProcessCount so that they are
2944 not impacted by process prewarming.
2946 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2948 2018-11-13 Wenson Hsieh <wenson_hsieh@apple.com>
2950 [iOS] Do not show selection UI for editable elements with opacity near zero
2951 https://bugs.webkit.org/show_bug.cgi?id=191442
2952 <rdar://problem/45958625>
2954 Reviewed by Simon Fraser.
2956 Add a couple of new testing helpers to UIScriptController.
2958 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2959 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2960 (WTR::UIScriptController::textSelectionRangeRects const):
2961 (WTR::UIScriptController::selectionCaretViewRect const):
2962 (WTR::UIScriptController::selectionRangeViewRects const):
2963 * TestRunnerShared/UIScriptContext/UIScriptController.h:
2964 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2965 (WTR::UIScriptController::textSelectionRangeRects const):
2967 Rename `selectionRangeViewRects` to `textSelectionRangeRects`. This allows us to draw a distinction between
2968 `textSelectionRangeRects`/`textSelectionCaretRect`, which retrieve information about selection rects known
2969 to the text interaction assistant, and `selectionCaretViewRect`/`selectionRangeViewRects`, which retrieve the
2970 actual frames of the selection views used to draw overlaid selection UI. This difference is important in the
2971 new layout tests added in this patch, which only suppress caret rendering (i.e. selection views remain hidden).
2973 Also, drive-by fix a leaked `NSMutableArray`.
2975 (WTR::UIScriptController::selectionStartGrabberViewRect const):
2976 (WTR::UIScriptController::selectionEndGrabberViewRect const):
2977 (WTR::UIScriptController::selectionCaretViewRect const):
2978 (WTR::UIScriptController::selectionRangeViewRects const):
2980 Testing helpers to grab the frames of caret and selection views, in WKContentView's coordinate space. These
2981 rects are also clamped to WKContentView bounds.
2983 2018-11-13 Daniel Bates <dabates@apple.com>
2985 Consolidate WebKit UIKitSPI.h and UIKitTestSPI.h
2986 https://bugs.webkit.org/show_bug.cgi?id=173341
2987 <rdar://problem/32752890>
2989 Reviewed by Simon Fraser.
2991 There is little value to making a distinction between forward declarations
2992 of UIKit SPI needed in the WebKit layer and just for testing. Moreover,
2993 the contents of these two headers can conflict with each other following
2994 r218275 as DumpRenderTree includes both headers. Instead we should remove
2995 UIKitTestSPI.h and have WebKitTestRunner include the WebKit variant, UIKitSPI.h.
2997 * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2998 * DumpRenderTree/mac/DumpRenderTree.mm:
2999 * TestRunnerShared/spi/UIKitTestSPI.h: Removed.
3000 * WebKitTestRunner/Configurations/Base.xcconfig:
3001 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3002 * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3003 * WebKitTestRunner/ios/GeneratedTouchesDebugWindow.mm:
3004 * WebKitTestRunner/ios/HIDEventGenerator.h:
3005 * WebKitTestRunner/ios/HIDEventGenerator.mm:
3006 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3007 * WebKitTestRunner/ios/TestControllerIOS.mm:
3008 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3009 * WebKitTestRunner/ios/mainIOS.mm:
3011 2018-11-13 Takashi Komori <Takashi.Komori@sony.com>
3013 Remove WebKitTestRunnerLib's build warnings.
3014 https://bugs.webkit.org/show_bug.cgi?id=191580
3016 Reviewed by Fujii Hironori.
3018 Include cmakeconfig.h in precompiled header.
3020 * WebKitTestRunner/WebKitTestRunnerPrefix.h:
3022 2018-11-12 Darshan Kadu <darsh7807@gmail.com>
3024 Implement Cache API support for WPE/GTK
3025 https://bugs.webkit.org/show_bug.cgi?id=178316
3027 Reviewed by Michael Catanzaro.
3029 Called WKWebsiteDataStoreSetCacheStoragePerOriginQuota function to set the cache limit to 400 * 1200
3030 on all the platforms in TestController.cpp. Also, removed the setCacheStoragePerOriginQuota call from TestControllerCocoa.mm
3032 * WebKitTestRunner/TestController.cpp:
3033 (WTR::TestController::generatePageConfiguration):
3034 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3035 (WTR::initializeWebViewConfiguration):
3037 2018-11-12 Christopher Reid <chris.reid@sony.com>
3039 [Curl] Reject entire cookie if the domain fails a tailmatch.
3040 https://bugs.webkit.org/show_bug.cgi?id=191406
3042 Reviewed by Youenn Fablet.
3044 Added unittests for Curl cookie implementation.
3046 * TestWebKitAPI/Tests/WebCore/curl/Cookies.cpp:
3047 (TestWebKitAPI::Curl::CurlCookies::RejectTailmatchFailureDomain):
3049 2018-11-12 Alex Christensen <achristensen@webkit.org>
3051 [iOS] Implement safe browsing in WebKit
3052 https://bugs.webkit.org/show_bug.cgi?id=191441
3054 Reviewed by Tim Horton.
3056 * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
3057 (checkTitleAndClick):
3060 2018-11-12 Basuke Suzuki <basuke.suzuki@sony.com>
3062 [Curl] Add API Test for Curl cookie backend.
3063 https://bugs.webkit.org/show_bug.cgi?id=191493
3065 Reviewed by Youenn Fablet.
3067 Add unit test to TestWebCore.
3069 * TestWebKitAPI/PlatformWin.cmake:
3070 * TestWebKitAPI/Tests/WebCore/curl/Cookies.cpp: Added.
3072 2018-11-12 Tim Horton <timothy_horton@apple.com>
3074 Make it possible to edit images inline
3075 https://bugs.webkit.org/show_bug.cgi?id=191352
3076 <rdar://problem/30107985>
3078 Reviewed by Dean Jackson.
3080 * WebKitTestRunner/TestController.cpp:
3081 (WTR::updateTestOptionsFromTestHeader):
3082 * WebKitTestRunner/TestOptions.h:
3083 (WTR::TestOptions::hasSameInitializationOptions const):
3084 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3085 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3086 (WTR::TestController::platformCreateWebView):
3087 Add a test option to enable editable images.
3089 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3090 (WTR::UIScriptController::drawSquareInEditableImage):
3091 (WTR::UIScriptController::numberOfStrokesInEditableImage):
3092 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3093 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3094 (WTR::UIScriptController::drawSquareInEditableImage):
3095 (WTR::UIScriptController::numberOfStrokesInEditableImage):
3096 * TestRunnerShared/UIScriptContext/UIScriptController.h:
3097 * TestRunnerShared/spi/PencilKitTestSPI.h: Added.
3098 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3099 (WTR::findEditableImageCanvas):
3100 (WTR::UIScriptController::drawSquareInEditableImage):
3101 (WTR::UIScriptController::numberOfStrokesInEditableImage):
3102 Add the ability to draw on a PKCanvasView that is a subview of the WKWebView,
3103 and also to retrieve the number of strokes currently on the PKCanvasView.
3104 Currently this just takes the first canvas; we might need to make it
3105 take an identifier or something in the future if we need tests with multiple
3106 canvases. The indirect testing mechanism is required because PKCanvasView
3107 can currently not actually paint its strokes in the Simulator.
3109 2018-11-12 Ryan Haddad <ryanhaddad@apple.com>
3111 [MediaStream] Screen capture should be an experimental feature on OSX only
3112 https://bugs.webkit.org/show_bug.cgi?id=191552
3114 Unreviewed test gardening.
3116 * TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMedia.mm: Only run these tests on macOS.
3118 2018-11-12 Don Olmstead <don.olmstead@sony.com>
3120 Shipped PNGs include bad profiles: iCCP: known incorrect sRGB profile
3121 https://bugs.webkit.org/show_bug.cgi?id=189230
3122 <rdar://problem/44050379>
3124 Reviewed by Joseph Pecoraro.
3126 Runs all png images through zopflipng. This results in a smaller file
3127 size and takes care of this issue as a byproduct.
3129 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/images/favicon-green.png:
3130 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/images/favicon-red.png:
3131 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/ElCapitan.png:
3132 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/ElCapitan@2x.png:
3133 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/GTK.png:
3134 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/GTK@2x.png:
3135 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra.png:
3136 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra@2x.png:
3137 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS10.png:
3138 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS10@2x.png:
3139 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS10Simulator.png:
3140 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS10Simulator@2x.png:
3141 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11.png:
3142 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11@2x.png:
3143 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator.png:
3144 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator@2x.png:
3145 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12.png:
3146 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12@2x.png:
3147 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12Simulator.png:
3148 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12Simulator@2x.png:
3149 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9.png:
3150 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9@2x.png:
3151 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9Simulator.png:
3152 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9Simulator@2x.png:
3153 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOSDevice.png:
3154 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOSDevice@2x.png:
3155 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOSSimulator.png:
3156 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOSSimulator@2x.png:
3157 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Mavericks.png:
3158 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Mavericks@2x.png:
3159 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Mojave.png:
3160 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Mojave@2x.png:
3161 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/MountainLion.png:
3162 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/MountainLion@2x.png:
3163 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/PlatformRing.png:
3164 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/PlatformRing@2x.png:
3165 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Sierra.png:
3166 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Sierra@2x.png:
3167 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WPE.png:
3168 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WPE@2x.png:
3169 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows10.png:
3170 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows10@2x.png:
3171 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows7.png:
3172 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows7@2x.png:
3173 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows8.png:
3174 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows8@2x.png:
3175 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WindowsXP.png:
3176 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WindowsXP@2x.png:
3177 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Yosemite.png:
3178 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Yosemite@2x.png:
3180 2018-11-12 Tim Horton <timothy_horton@apple.com>
3182 Modernize WebKit Tools Xcode projects for localization's sake
3183 https://bugs.webkit.org/show_bug.cgi?id=191495
3185 Reviewed by Alexey Proskuryakov.
3187 * ContentExtensionTester/ContentExtensionTester.xcodeproj/project.pbxproj:
3188 * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
3189 * EditingHistory/EditingHistory.xcodeproj/project.pbxproj:
3190 * FontWithFeatures/FontWithFeatures.xcodeproj/project.pbxproj:
3191 * ImageDiff/ImageDiff.xcodeproj/project.pbxproj:
3192 * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
3193 * MobileMiniBrowser/MobileMiniBrowser.xcodeproj/project.pbxproj:
3194 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3195 * WebEditingTester/WebEditingTester.xcodeproj/project.pbxproj:
3196 * WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj:
3197 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3198 * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj:
3199 These are less important because they're not localized, but since
3200 I made the style checker complain, it now complains any time anyone
3201 touches any of these projects... so upgrade them.
3203 2018-11-12 Jonathan Bedard <jbedard@apple.com>
3205 webkitpy: Check for specific process instead of using data migrator
3206 https://bugs.webkit.org/show_bug.cgi?id=191551
3207 <rdar://problem/45993156>
3209 Rubber-stamped by Aakash Jain.
3211 It's possible for the data migrator process to be stuck, but for a simulator to be
3212 usable. Use device-specific processes to detect when a device is usable.
3214 * Scripts/webkitpy/xcode/simulated_device.py:
3215 (SimulatedDeviceManager._wait_until_device_is_usable):
3216 (SimulatedDeviceManager):
3217 (SimulatedDeviceManager.initialize_devices): Explicitly wait until a device is usable
3218 since this implies that a device is booted.
3219 (SimulatedDeviceManager.swap): Ditto.
3220 (SimulatedDevice.is_usable): Check that a device is booted and that a device-specific
3221 process indicating the device is usable can be found.
3222 (SimulatedDeviceManager.wait_until_data_migration_is_done): Deleted.
3223 * Scripts/webkitpy/xcode/simulated_device_unittest.py: Update simctl_json so that
3224 it triggers the logic in is_usable()
3226 2018-11-12 Takashi Komori <Takashi.Komori@sony.com>
3228 Resurrect WebKitTestRunner for Windows port
3229 https://bugs.webkit.org/show_bug.cgi?id=189257
3231 Reviewed by Fujii Hironori.
3233 Implement WebKitTestRunner for WinCairo.
3235 * PlatformWin.cmake:
3236 * Scripts/build-webkittestrunner:
3237 * WebKitTestRunner/CMakeLists.txt:
3238 * WebKitTestRunner/EventSenderProxy.h:
3239 * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
3240 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
3241 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
3242 * WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp:
3243 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
3245 (WTR::InjectedBundlePage::dumpDOMAsWebArchive):
3246 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3247 (WTR::TestRunner::TestRunner):
3248 * WebKitTestRunner/InjectedBundle/TestRunner.h:
3249 * WebKitTestRunner/InjectedBundle/win/AccessibilityControllerWin.cpp: Added.
3250 (WTR::AccessibilityController::resetToConsistentState):
3251 (WTR::AccessibilityController::accessibleElementById):
3252 (WTR::AccessibilityController::platformName):
3253 (WTR::AccessibilityController::rootElement):
3254 (WTR::AccessibilityController::focusedElement):
3255 (WTR::AccessibilityController::addNotificationListener):
3256 (WTR::AccessibilityController::removeNotificationListener):
3257 * WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp: Added.
3258 (WTR::AccessibilityUIElement::AccessibilityUIElement):
3259 (WTR::AccessibilityUIElement::~AccessibilityUIElement):
3260 (WTR::AccessibilityUIElement::isEqual):
3261 (WTR::AccessibilityUIElement::getChildren):
3262 (WTR::AccessibilityUIElement::getChildrenWithRange):
3263 (WTR::AccessibilityUIElement::childrenCount):
3264 (WTR::AccessibilityUIElement::elementAtPoint):
3265 (WTR::AccessibilityUIElement::indexOfChild):
3266 (WTR::AccessibilityUIElement::childAtIndex):
3267 (WTR::AccessibilityUIElement::linkedUIElementAtIndex):
3268 (WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
3269 (WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
3270 (WTR::AccessibilityUIElement::ariaControlsElementAtIndex):
3271 (WTR::AccessibilityUIElement::disclosedRowAtIndex):
3272 (WTR::AccessibilityUIElement::rowAtIndex):
3273 (WTR::AccessibilityUIElement::selectedChildAtIndex const):
3274 (WTR::AccessibilityUIElement::selectedChildrenCount const):
3275 (WTR::AccessibilityUIElement::selectedRowAtIndex):
3276 (WTR::AccessibilityUIElement::titleUIElement):
3277 (WTR::AccessibilityUIElement::parentElement):
3278 (WTR::AccessibilityUIElement::disclosedByRow):
3279 (WTR::AccessibilityUIElement::attributesOfLinkedUIElements):
3280 (WTR::AccessibilityUIElement::attributesOfDocumentLinks):
3281 (WTR::AccessibilityUIElement::attributesOfChildren):
3282 (WTR::AccessibilityUIElement::allAttributes):
3283 (WTR::AccessibilityUIElement::stringAttributeValue):
3284 (WTR::AccessibilityUIElement::numberAttributeValue):
3285 (WTR::AccessibilityUIElement::uiElementArrayAttributeValue const):
3286 (WTR::AccessibilityUIElement::rowHeaders const):
3287 (WTR::AccessibilityUIElement::columnHeaders const):
3288 (WTR::AccessibilityUIElement::uiElementAttributeValue const):
3289 (WTR::AccessibilityUIElement::boolAttributeValue):
3290 (WTR::AccessibilityUIElement::isAttributeSettable):
3291 (WTR::AccessibilityUIElement::isAttributeSupported):
3292 (WTR::AccessibilityUIElement::parameterizedAttributeNames):
3293 (WTR::AccessibilityUIElement::role):
3294 (WTR::AccessibilityUIElement::subrole):
3295 (WTR::AccessibilityUIElement::roleDescription):
3296 (WTR::AccessibilityUIElement::computedRoleString):
3297 (WTR::AccessibilityUIElement::title):
3298 (WTR::AccessibilityUIElement::description):
3299 (WTR::AccessibilityUIElement::orientation const):
3300 (WTR::AccessibilityUIElement::stringValue):
3301 (WTR::AccessibilityUIElement::language):
3302 (WTR::AccessibilityUIElement::helpText const):
3303 (WTR::AccessibilityUIElement::x):
3304 (WTR::AccessibilityUIElement::y):
3305 (WTR::AccessibilityUIElement::width):
3306 (WTR::AccessibilityUIElement::height):
3307 (WTR::AccessibilityUIElement::clickPointX):
3308 (WTR::AccessibilityUIElement::clickPointY):
3309 (WTR::AccessibilityUIElement::intValue const):
3310 (WTR::AccessibilityUIElement::minValue):
3311 (WTR::AccessibilityUIElement::maxValue):
3312 (WTR::AccessibilityUIElement::valueDescription):
3313 (WTR::AccessibilityUIElement::insertionPointLineNumber):
3314 (WTR::AccessibilityUIElement::isPressActionSupported):
3315 (WTR::AccessibilityUIElement::isIncrementActionSupported):
3316 (WTR::AccessibilityUIElement::isDecrementActionSupported):
3317 (WTR::AccessibilityUIElement::isEnabled):
3318 (WTR::AccessibilityUIElement::isRequired const):
3319 (WTR::AccessibilityUIElement::isFocused const):
3320 (WTR::AccessibilityUIElement::isSelected const):
3321 (WTR::AccessibilityUIElement::isSelectedOptionActive const):
3322 (WTR::AccessibilityUIElement::isExpanded const):
3323 (WTR::AccessibilityUIElement::isChecked const):
3324 (WTR::AccessibilityUIElement::isIndeterminate const):
3325 (WTR::AccessibilityUIElement::hierarchicalLevel const):
3326 (WTR::AccessibilityUIElement::speakAs):
3327 (WTR::AccessibilityUIElement::ariaIsGrabbed const):
3328 (WTR::AccessibilityUIElement::ariaDropEffects const):
3329 (WTR::AccessibilityUIElement::lineForIndex):
3330 (WTR::AccessibilityUIElement::rangeForLine):
3331 (WTR::AccessibilityUIElement::rangeForPosition):
3332 (WTR::AccessibilityUIElement::boundsForRange):
3333 (WTR::AccessibilityUIElement::stringForRange):
3334 (WTR::AccessibilityUIElement::attributedStringForRange):
3335 (WTR::AccessibilityUIElement::attributedStringRangeIsMisspelled):
3336 (WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
3337 (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
3338 (WTR::AccessibilityUIElement::selectTextWithCriteria):
3339 (WTR::AccessibilityUIElement::attributesOfColumnHeaders):
3340 (WTR::AccessibilityUIElement::attributesOfRowHeaders):
3341 (WTR::AccessibilityUIElement::attributesOfColumns):
3342 (WTR::AccessibilityUIElement::attributesOfRows):
3343 (WTR::AccessibilityUIElement::attributesOfVisibleCells):
3344 (WTR::AccessibilityUIElement::attributesOfHeader):
3345 (WTR::AccessibilityUIElement::rowCount):
3346 (WTR::AccessibilityUIElement::columnCount):
3347 (WTR::AccessibilityUIElement::indexInTable):
3348 (WTR::AccessibilityUIElement::rowIndexRange):
3349 (WTR::AccessibilityUIElement::columnIndexRange):
3350 (WTR::AccessibilityUIElement::cellForColumnAndRow):
3351 (WTR::AccessibilityUIElement::horizontalScrollbar const):
3352 (WTR::AccessibilityUIElement::verticalScrollbar const):
3353 (WTR::AccessibilityUIElement::selectedTextRange):
3354 (WTR::AccessibilityUIElement::setSelectedTextRange):
3355 (WTR::AccessibilityUIElement::increment):
3356 (WTR::AccessibilityUIElement::decrement):
3357 (WTR::AccessibilityUIElement::showMenu):
3358 (WTR::AccessibilityUIElement::press):
3359 (WTR::AccessibilityUIElement::setSelectedChild const):
3360 (WTR::AccessibilityUIElement::setSelectedChildAtIndex const):
3361 (WTR::AccessibilityUIElement::removeSelectionAtIndex const):
3362 (WTR::AccessibilityUIElement::clearSelectedChildren const):
3363 (WTR::AccessibilityUIElement::accessibilityValue const):
3364 (WTR::AccessibilityUIElement::documentEncoding):
3365 (WTR::AccessibilityUIElement::documentURI):
3366 (WTR::AccessibilityUIElement::url):
3367 (WTR::AccessibilityUIElement::addNotificationListener):
3368 (WTR::AccessibilityUIElement::removeNotificationListener):
3369 (WTR::AccessibilityUIElement::isFocusable const):
3370 (WTR::AccessibilityUIElement::isSelectable const):
3371 (WTR::AccessibilityUIElement::isMultiSelectable const):
3372 (WTR::AccessibilityUIElement::isVisible const):
3373 (WTR::AccessibilityUIElement::isOffScreen const):
3374 (WTR::AccessibilityUIElement::isCollapsed const):
3375 (WTR::AccessibilityUIElement::isIgnored const):
3376 (WTR::AccessibilityUIElement::isSingleLine const):
3377 (WTR::AccessibilityUIElement::isMultiLine const):
3378 (WTR::AccessibilityUIElement::hasPopup const):
3379 (WTR::AccessibilityUIElement::takeFocus):
3380 (WTR::AccessibilityUIElement::takeSelection):
3381 (WTR::AccessibilityUIElement::addSelection):
3382 (WTR::AccessibilityUIElement::removeSelection):
3383 (WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker):
3384 (WTR::AccessibilityUIElement::textMarkerRangeForElement):
3385 (WTR::AccessibilityUIElement::textMarkerRangeLength):
3386 (WTR::AccessibilityUIElement::previousTextMarker):
3387 (WTR::AccessibilityUIElement::nextTextMarker):
3388 (WTR::AccessibilityUIElement::stringForTextMarkerRange):
3389 (WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
3390 (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
3391 (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
3392 (WTR::AccessibilityUIElement::endTextMarkerForBounds):
3393 (WTR::AccessibilityUIElement::startTextMarkerForBounds):
3394 (WTR::AccessibilityUIElement::textMarkerForPoint):
3395 (WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
3396 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRange):
3397 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
3398 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute):
3399 (WTR::AccessibilityUIElement::indexForTextMarker):
3400 (WTR::AccessibilityUIElement::isTextMarkerValid):
3401 (WTR::AccessibilityUIElement::textMarkerForIndex):
3402 (WTR::AccessibilityUIElement::startTextMarker):
3403 (WTR::AccessibilityUIElement::endTextMarker):
3404 (WTR::AccessibilityUIElement::setSelectedVisibleTextRange):
3405 (WTR::AccessibilityUIElement::scrollToMakeVisible):
3406 (WTR::AccessibilityUIElement::scrollToGlobalPoint):
3407 (WTR::AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
3408 (WTR::AccessibilityUIElement::supportedActions const):
3409 (WTR::AccessibilityUIElement::pathDescription const):
3410 (WTR::AccessibilityUIElement::mathPostscriptsDescription const):
3411 (WTR::AccessibilityUIElement::mathPrescriptsDescription const):
3412 (WTR::AccessibilityUIElement::classList const):
3413 (WTR::AccessibilityUIElement::characterAtOffset):
3414 (WTR::AccessibilityUIElement::wordAtOffset):
3415 (WTR::AccessibilityUIElement::lineAtOffset):
3416 (WTR::AccessibilityUIElement::sentenceAtOffset):
3417 * WebKitTestRunner/InjectedBundle/win/ActivateFontsWin.cpp: Copied from Tools/WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp.
3418 (WTR::activateFonts):
3419 (WTR::installFakeHelvetica):
3420 (WTR::uninstallFakeHelvetica):
3421 * WebKitTestRunner/InjectedBundle/win/InjectedBundleWin.cpp: Copied from Tools/WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp.
3422 (WTR::InjectedBundle::platformInitialize):
3423 * WebKitTestRunner/InjectedBundle/win/TestRunnerInjectedBundlePrefix.cpp: Added.
3424 * WebKitTestRunner/InjectedBundle/win/TestRunnerInjectedBundlePrefix.h: Copied from Tools/WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp.
3425 * WebKitTestRunner/InjectedBundle/win/TestRunnerWin.cpp: Copied from Tools/WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp.
3426 (WTR::TestRunner::pathToLocalResource):
3427 (WTR::TestRunner::inspectorTestStubURL):
3428 (WTR::TestRunner::invalidateWaitToDumpWatchdogTimer):
3429 (WTR::TestRunner::platformInitialize):
3430 (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
3431 (WTR::TestRunner::installFakeHelvetica):
3432 * WebKitTestRunner/PlatformWebView.h:
3433 * WebKitTestRunner/PlatformWin.cmake: Added.
3434 * WebKitTestRunner/TestController.cpp:
3435 (WTR::TestController::resetStateToConsistentValues):
3436 (WTR::createTestURL):
3437 * WebKitTestRunner/TestInvocation.cpp:
3438 * WebKitTestRunner/WebKitTestRunnerPrefix.h:
3439 * WebKitTestRunner/win/EventSenderProxyWin.cpp: Added.
3440 (WTR::EventSenderProxy::EventSenderProxy):
3441 (WTR::EventSenderProxy::~EventSenderProxy):
3442 (WTR::EventSenderProxy::mouseDown):
3443 (WTR::EventSenderProxy::mouseUp):
3444 (WTR::EventSenderProxy::mouseMoveTo):
3445 (WTR::EventSenderProxy::mouseScrollBy):
3446 (WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
3447 (WTR::EventSenderProxy::continuousMouseScrollBy):
3448 (WTR::EventSenderProxy::leapForward):
3449 (WTR::EventSenderProxy::keyDown):
3450 * WebKitTestRunner/win/PlatformWebViewWin.cpp: Added.
3451 (WTR::registerWindowClass):
3452 (WTR::PlatformWebView::PlatformWebView):
3453 (WTR::PlatformWebView::~PlatformWebView):
3454 (WTR::PlatformWebView::resizeTo):
3455 (WTR::PlatformWebView::page):
3456 (WTR::PlatformWebView::focus):
3457 (WTR::PlatformWebView::windowFrame):
3458 (WTR::PlatformWebView::setWindowFrame):
3459 (WTR::PlatformWebView::didInitializeClients):
3460 (WTR::PlatformWebView::addChromeInputField):
3461 (WTR::PlatformWebView::removeChromeInputField):
3462 (WTR::PlatformWebView::addToWindow):
3463 (WTR::PlatformWebView::removeFromWindow):
3464 (WTR::PlatformWebView::setWindowIsKey):
3465 (WTR::PlatformWebView::makeWebViewFirstResponder):
3466 (WTR::generateCairoSurfaceFromBitmap):
3467 (WTR::PlatformWebView::windowSnapshotImage):
3468 (WTR::PlatformWebView::changeWindowScaleIfNeeded):
3469 (WTR::PlatformWebView::setNavigationGesturesEnabled):
3470 (WTR::PlatformWebView::forceWindowFramesChanged):
3471 (WTR::PlatformWebView::drawsBackground const):
3472 (WTR::PlatformWebView::setDrawsBackground):
3473 * WebKitTestRunner/win/TestControllerWin.cpp: Added.
3474 (WTR::exceptionFilter):
3475 (WTR::runRunLoopUntil):
3476 (WTR::TestController::notifyDone):
3477 (WTR::TestController::setHidden):
3478 (WTR::TestController::platformInitialize):
3479 (WTR::TestController::platformPreferences):
3480 (WTR::TestController::platformDestroy):
3482 (WTR::TestController::platformInitializeContext):
3483 (WTR::TestController::platformRunUntil):
3484 (WTR::TestController::platformDidCommitLoadForFrame):
3485 (WTR::TestController::initializeInjectedBundlePath):
3486 (WTR::TestController::initializeTestPluginDirectory):
3487 (WTR::TestController::runModal):
3488 (WTR::TestController::platformContext):
3489 (WTR::TestController::platformLibraryPathForTesting):
3490 (WTR::TestController::platformConfigureViewForTest):
3491 (WTR::TestController::platformResetPreferencesToConsistentValues):
3492 (WTR::TestController::updatePlatformSpecificTestOptionsForTest const):
3493 * WebKitTestRunner/win/WebKitTestRunnerPrefix.cpp: Added.
3494 * WebKitTestRunner/win/main.cpp: Copied from Tools/WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp.
3495 (dllLauncherEntryPoint):
3497 2018-11-12 Alicia Boya García <aboya@igalia.com>
3499 [MSE][GStreamer] Introduce AbortableTaskQueue
3500 https://bugs.webkit.org/show_bug.cgi?id=190902
3502 Reviewed by Xabier Rodriguez-Calvar.
3504 Tests for AbortableTaskQueue are included.
3506 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3507 * TestWebKitAPI/PlatformGTK.cmake:
3508 * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp: Added.
3509 (TestWebKitAPI::TEST):
3510 (TestWebKitAPI::FancyResponse::FancyResponse):
3511 (TestWebKitAPI::FancyResponse::operator=):
3512 (TestWebKitAPI::DeterministicScheduler::DeterministicScheduler):
3513 (TestWebKitAPI::DeterministicScheduler::ThreadContext::ThreadContext):
3514 (TestWebKitAPI::DeterministicScheduler::ThreadContext::waitMyTurn):
3515 (TestWebKitAPI::DeterministicScheduler::ThreadContext::yieldToThread):
3517 2018-11-11 Fujii Hironori <Hironori.Fujii@sony.com>
3519 run-bindings-tests is timing out in some WinCairo bots
3520 https://bugs.webkit.org/show_bug.cgi?id=191348
3522 Reviewed by Alex Christensen.
3524 BuildBot kills run-bindings-tests if it outputs nothing for 20
3525 minutes. run-bindings-tests runs very slowly in WinCairo Docker,
3526 and it takes more than 30 minutes to finish. And, Windows Python
3527 buffers the progress output.
3529 * Scripts/webkitpy/bindings/main.py:
3530 (BindingsTests.detect_changes): Call sys.stdout.flush() after the
3531 test case result is output.
3533 2018-11-11 Wenson Hsieh <wenson_hsieh@apple.com>
3535 Implement a new edit command to change the enclosing list type
3536 https://bugs.webkit.org/show_bug.cgi?id=191487
3537 <rdar://problem/45955922>
3539 Reviewed by Ryosuke Niwa.
3541 Add a new API test to verify that `-[WKWebView _changeListType:]` is hooked up to the corresponding editing
3542 command in WebCore. See the new layout test for a test that exercises more nuanced corner cases.
3544 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3545 * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
3546 (-[TestWKWebView setPosition:offset:]):
3547 (-[TestWKWebView setBase:baseOffset:extent:extentOffset:]):
3548 (TestWebKitAPI::webViewForEditActionTestingWithPageNamed):
3549 (TestWebKitAPI::TEST):
3550 * TestWebKitAPI/Tests/WebKitCocoa/editable-nested-lists.html: Added.
3552 2018-11-11 Dan Bernstein <mitz@apple.com>
3554 ProcessPoolConfiguration::copy() doesn’t copy m_customWebContentServiceBundleIdentifier
3555 https://bugs.webkit.org/show_bug.cgi?id=191514
3557 Reviewed by Geoffrey Garen.
3559 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3560 * TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm: Added.
3563 2018-11-11 Benjamin Poulain <benjamin@webkit.org>
3565 Fix a fixme: rename wtfObjcMsgSend to wtfObjCMsgSend
3566 https://bugs.webkit.org/show_bug.cgi?id=191492
3568 Reviewed by Alex Christensen.
3572 * DumpRenderTree/mac/DumpRenderTree.mm:
3573 * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
3574 * WebKitTestRunner/mac/TestControllerMac.mm:
3576 2018-11-10 Benjamin Poulain <benjamin@webkit.org>
3578 Fix a fixme: rename wtfObjcMsgSend to wtfObjCMsgSend
3579 https://bugs.webkit.org/show_bug.cgi?id=191492
3581 Reviewed by Alex Christensen.
3583 * DumpRenderTree/mac/DumpRenderTree.mm:
3584 * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
3585 * WebKitTestRunner/mac/TestControllerMac.mm:
3587 2018-11-10 Ryan Haddad <ryanhaddad@apple.com>
3589 Unreviewed, rolling out r238065.
3591 Breaks internal builds.
3595 "Make it possible to edit images inline"