don't use autoinstall to import pywebsocket but check it in WebKit directly.
[WebKit-https.git] / Tools / ChangeLog
1 2012-05-10  Takashi Toyoshima  <toyoshim@chromium.org>
2
3         don't use autoinstall to import pywebsocket but check it in WebKit directly.
4         https://bugs.webkit.org/show_bug.cgi?id=86107
5
6         Reviewed by Adam Barth.
7
8         This change removes pywebsocket from webkitpy's autoinstall list and
9         imports pywebsocket 0.7.4 directly into webkitpy/thirparty.
10
11         * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
12         (PyWebSocket._prepare_config):
13         * Scripts/webkitpy/thirdparty/__init__.py:
14         (AutoinstallImportHook.find_module):
15         (AutoinstallImportHook._install_irc):
16         * Scripts/webkitpy/thirdparty/__init___unittest.py:
17         (ThirdpartyTest.test_import_hook.MockImportHook.__init__):
18         (ThirdpartyTest.test_import_hook.MockImportHook._install_eliza):
19         (ThirdpartyTest):
20         (ThirdpartyTest.test_import_hook):
21         * Scripts/webkitpy/thirdparty/mod_pywebsocket/COPYING: Added.
22         * Scripts/webkitpy/thirdparty/mod_pywebsocket/__init__.py: Added.
23         * Scripts/webkitpy/thirdparty/mod_pywebsocket/_stream_base.py: Added.
24         (ConnectionTerminatedException):
25         (InvalidFrameException):
26         (BadOperationException):
27         (UnsupportedFrameException):
28         (InvalidUTF8Exception):
29         (StreamBase):
30         (StreamBase.__init__):
31         (StreamBase._read):
32         (StreamBase._write):
33         (StreamBase.receive_bytes):
34         (StreamBase._read_until):
35         * Scripts/webkitpy/thirdparty/mod_pywebsocket/_stream_hixie75.py: Added.
36         (for):
37         (StreamHixie75):
38         (StreamHixie75.for):
39         (StreamHixie75.__init__):
40         (StreamHixie75.send_message):
41         (StreamHixie75._read_payload_length_hixie75):
42         (StreamHixie75.receive_message):
43         (StreamHixie75._send_closing_handshake):
44         (StreamHixie75.close_connection):
45         (StreamHixie75.send_ping):
46         * Scripts/webkitpy/thirdparty/mod_pywebsocket/_stream_hybi.py: Added.
47         (Frame):
48         (Frame.__init__):
49         (create_length_header):
50         (create_header):
51         (_build_frame):
52         (_filter_and_format_frame_object):
53         (create_binary_frame):
54         (create_text_frame):
55         (FragmentedFrameBuilder):
56         (FragmentedFrameBuilder.to):
57         (FragmentedFrameBuilder.__init__):
58         (FragmentedFrameBuilder.build):
59         (_create_control_frame):
60         (create_ping_frame):
61         (create_pong_frame):
62         (create_close_frame):
63         (StreamOptions):
64         (StreamOptions.__init__):
65         (Stream):
66         (Stream.for):
67         (Stream.__init__):
68         (Stream._receive_frame):
69         (Stream._receive_frame_as_frame_object):
70         (Stream.send_message):
71         (Stream.receive_message):
72         (Stream._send_closing_handshake):
73         (Stream.close_connection):
74         (Stream.send_ping):
75         (Stream._send_pong):
76         (Stream._drain_received_data):
77         * Scripts/webkitpy/thirdparty/mod_pywebsocket/common.py: Added.
78         (is_control_opcode):
79         (ExtensionParameter):
80         (ExtensionParameter.__init__):
81         (ExtensionParameter.name):
82         (ExtensionParameter.add_parameter):
83         (ExtensionParameter.get_parameters):
84         (ExtensionParameter.get_parameter_names):
85         (ExtensionParameter.has_parameter):
86         (ExtensionParameter.get_parameter_value):
87         * Scripts/webkitpy/thirdparty/mod_pywebsocket/dispatch.py: Added.
88         (DispatchException):
89         (DispatchException.__init__):
90         (_default_passive_closing_handshake_handler):
91         (_normalize_path):
92         (_create_path_to_resource_converter):
93         (_create_path_to_resource_converter.converter):
94         (_enumerate_handler_file_paths):
95         (_HandlerSuite):
96         (_HandlerSuite.__init__):
97         (_source_handler_file):
98         (_extract_handler):
99         (Dispatcher):
100         (Dispatcher.maintains):
101         (Dispatcher.__init__):
102         (Dispatcher.add_resource_path_alias):
103         (Dispatcher.source_warnings):
104         (Dispatcher.do_extra_handshake):
105         (Dispatcher.transfer_data):
106         (Dispatcher.passive_closing_handshake):
107         (Dispatcher.get_handler_suite):
108         (Dispatcher._source_handler_files_in_dir):
109         * Scripts/webkitpy/thirdparty/mod_pywebsocket/extensions.py: Added.
110         (ExtensionProcessorInterface):
111         (ExtensionProcessorInterface.get_extension_response):
112         (ExtensionProcessorInterface.setup_stream_options):
113         (DeflateStreamExtensionProcessor):
114         (DeflateStreamExtensionProcessor.__init__):
115         (DeflateStreamExtensionProcessor.get_extension_response):
116         (DeflateStreamExtensionProcessor.setup_stream_options):
117         (DeflateFrameExtensionProcessor):
118         (DeflateFrameExtensionProcessor.__init__):
119         (DeflateFrameExtensionProcessor.get_extension_response):
120         (DeflateFrameExtensionProcessor.setup_stream_options):
121         (DeflateFrameExtensionProcessor.setup_stream_options._OutgoingFilter):
122         (DeflateFrameExtensionProcessor.setup_stream_options._OutgoingFilter.__init__):
123         (DeflateFrameExtensionProcessor.setup_stream_options._OutgoingFilter.filter):
124         (DeflateFrameExtensionProcessor.setup_stream_options._IncomingFilter):
125         (DeflateFrameExtensionProcessor.setup_stream_options._IncomingFilter.__init__):
126         (DeflateFrameExtensionProcessor.setup_stream_options._IncomingFilter.filter):
127         (DeflateFrameExtensionProcessor.set_response_window_bits):
128         (DeflateFrameExtensionProcessor.set_response_no_context_takeover):
129         (DeflateFrameExtensionProcessor.enable_outgoing_compression):
130         (DeflateFrameExtensionProcessor.disable_outgoing_compression):
131         (DeflateFrameExtensionProcessor._outgoing_filter):
132         (DeflateFrameExtensionProcessor._incoming_filter):
133         (get_extension_processor):
134         (get_extension_processor.is):
135         * Scripts/webkitpy/thirdparty/mod_pywebsocket/handshake/__init__.py: Added.
136         (try):
137         (do_handshake):
138         * Scripts/webkitpy/thirdparty/mod_pywebsocket/handshake/_base.py: Added.
139         (AbortedByUserException):
140         (HandshakeException):
141         (HandshakeException.__init__):
142         (VersionException):
143         (VersionException.__init__):
144         (get_default_port):
145         (validate_subprotocol):
146         (parse_host_header):
147         (format_header):
148         (build_location):
149         (get_mandatory_header):
150         (validate_mandatory_header):
151         (check_request_line):
152         (check_header_lines):
153         (parse_token_list):
154         (_parse_extension_param):
155         (_parse_extension):
156         (parse_extensions):
157         (format_extensions):
158         * Scripts/webkitpy/thirdparty/mod_pywebsocket/handshake/draft75.py: Added.
159         (Handshaker):
160         (Handshaker.performs):
161         (Handshaker.__init__):
162         (Handshaker.do_handshake):
163         (Handshaker._set_resource):
164         (Handshaker._set_origin):
165         (Handshaker._set_location):
166         (Handshaker._set_subprotocol):
167         (Handshaker._set_protocol_version):
168         (Handshaker._sendall):
169         (Handshaker._send_handshake):
170         (Handshaker._check_header_lines):
171         (Handshaker._check_first_lines):
172         * Scripts/webkitpy/thirdparty/mod_pywebsocket/handshake/hybi.py: Added.
173         (compute_accept):
174         (Handshaker):
175         (Handshaker.__init__):
176         (Handshaker._validate_connection_header):
177         (Handshaker.do_handshake):
178         (Handshaker._get_origin):
179         (Handshaker._check_version):
180         (Handshaker._set_protocol):
181         (Handshaker._parse_extensions):
182         (Handshaker._validate_key):
183         (Handshaker._get_key):
184         (Handshaker._send_handshake):
185         * Scripts/webkitpy/thirdparty/mod_pywebsocket/handshake/hybi00.py: Added.
186         (Handshaker):
187         (Handshaker.__init__):
188         (Handshaker.do_handshake):
189         (Handshaker._set_resource):
190         (Handshaker._set_subprotocol):
191         (Handshaker._set_location):
192         (Handshaker._set_origin):
193         (Handshaker._set_protocol_version):
194         (Handshaker._set_challenge_response):
195         (Handshaker._get_key_value):
196         (Handshaker._get_challenge):
197         (Handshaker._send_handshake):
198         * Scripts/webkitpy/thirdparty/mod_pywebsocket/headerparserhandler.py: Added.
199         (ApacheLogHandler):
200         (ApacheLogHandler.__init__):
201         (ApacheLogHandler.emit):
202         (_configure_logging):
203         (_parse_option):
204         (_create_dispatcher):
205         (headerparserhandler):
206         * Scripts/webkitpy/thirdparty/mod_pywebsocket/http_header_util.py: Added.
207         (_is_char):
208         (_is_ctl):
209         (ParsingState):
210         (ParsingState.__init__):
211         (peek):
212         (consume):
213         (consume_string):
214         (consume_lws):
215         (consume_lwses):
216         (consume_token):
217         (consume_token_or_quoted_string):
218         (quote_if_necessary):
219         (parse_uri):
220         * Scripts/webkitpy/thirdparty/mod_pywebsocket/memorizingfile.py: Added.
221         (MemorizingFile):
222         (MemorizingFile.__init__):
223         (MemorizingFile.__getattribute__):
224         (MemorizingFile.readline):
225         (MemorizingFile.get_memorized_lines):
226         * Scripts/webkitpy/thirdparty/mod_pywebsocket/msgutil.py: Added.
227         (close_connection):
228         (send_message):
229         (receive_message):
230         (send_ping):
231         (MessageReceiver):
232         (MessageReceiver.receives):
233         (MessageReceiver.provides):
234         (MessageReceiver.should):
235         (MessageReceiver.__init__):
236         (MessageReceiver.run):
237         (MessageReceiver.receive):
238         (MessageReceiver.receive_nowait):
239         (MessageReceiver.stop):
240         (MessageSender):
241         (MessageSender.sends):
242         (MessageSender.provides):
243         (MessageSender.should):
244         (MessageSender.__init__):
245         (MessageSender.run):
246         (MessageSender.send):
247         (MessageSender.send_nowait):
248         * Scripts/webkitpy/thirdparty/mod_pywebsocket/standalone.py: Added.
249         (_StandaloneConnection):
250         (_StandaloneConnection.__init__):
251         (_StandaloneConnection.get_local_addr):
252         (_StandaloneConnection.get_remote_addr):
253         (_StandaloneConnection.write):
254         (_StandaloneConnection.read):
255         (_StandaloneConnection.get_memorized_lines):
256         (_StandaloneRequest):
257         (_StandaloneRequest.__init__):
258         (_StandaloneRequest.get_uri):
259         (_StandaloneRequest.get_method):
260         (_StandaloneRequest.is_https):
261         (_StandaloneRequest._drain_received_data):
262         (_StandaloneSSLConnection):
263         (_StandaloneSSLConnection.for):
264         (_StandaloneSSLConnection.__init__):
265         (_StandaloneSSLConnection.__getattribute__):
266         (_StandaloneSSLConnection.__setattr__):
267         (_StandaloneSSLConnection.makefile):
268         (WebSocketServer):
269         (WebSocketServer.__init__):
270         (WebSocketServer._create_sockets):
271         (WebSocketServer.server_bind):
272         (WebSocketServer.server_activate):
273         (WebSocketServer.server_close):
274         (WebSocketServer.fileno):
275         (WebSocketServer.handle_error):
276         (WebSocketServer.get_request):
277         (WebSocketServer.serve_forever):
278         (WebSocketServer.shutdown):
279         (WebSocketRequestHandler):
280         (WebSocketRequestHandler.setup):
281         (WebSocketRequestHandler.setup.SocketServer):
282         (WebSocketRequestHandler.__init__):
283         (WebSocketRequestHandler.parse_request):
284         (WebSocketRequestHandler.log_request):
285         (WebSocketRequestHandler.log_error):
286         (WebSocketRequestHandler.is_cgi):
287         (_configure_logging):
288         (_alias_handlers):
289         (_build_option_parser):
290         (ThreadMonitor):
291         (ThreadMonitor.__init__):
292         (ThreadMonitor.run):
293         (_parse_args_and_config):
294         (_main):
295         (_main.if):
296         (_main.if.__check_script):
297         * Scripts/webkitpy/thirdparty/mod_pywebsocket/stream.py: Copied from Tools/Scripts/webkitpy/thirdparty/__init___unittest.py.
298         * Scripts/webkitpy/thirdparty/mod_pywebsocket/util.py: Added.
299         (get_stack_trace):
300         (prepend_message_to_exception):
301         (__translate_interp):
302         (get_script_interp):
303         (wrap_popen3_for_win):
304         (wrap_popen3_for_win.__wrap_popen3):
305         (hexify):
306         (get_class_logger):
307         (NoopMasker):
308         (NoopMasker.__init__):
309         (NoopMasker.mask):
310         (RepeatedXorMasker):
311         (RepeatedXorMasker.__init__):
312         (RepeatedXorMasker.mask):
313         (DeflateRequest):
314         (DeflateRequest.for):
315         (DeflateRequest.__init__):
316         (DeflateRequest.__getattribute__):
317         (DeflateRequest.__setattr__):
318         (_Deflater):
319         (_Deflater.__init__):
320         (_Deflater.compress_and_flush):
321         (_Inflater):
322         (_Inflater.__init__):
323         (_Inflater.decompress):
324         (_Inflater.append):
325         (_Inflater.reset):
326         (_RFC1979Deflater):
327         (_RFC1979Deflater.that):
328         (_RFC1979Deflater.__init__):
329         (_RFC1979Deflater.filter):
330         (_RFC1979Inflater):
331         (_RFC1979Inflater.for):
332         (_RFC1979Inflater.__init__):
333         (_RFC1979Inflater.filter):
334         (DeflateSocket):
335         (DeflateSocket.for):
336         (DeflateSocket.__init__):
337         (DeflateSocket.recv):
338         (DeflateSocket.sendall):
339         (DeflateSocket.send):
340         (DeflateConnection):
341         (DeflateConnection.for):
342         (DeflateConnection.__init__):
343         (DeflateConnection.get_remote_addr):
344         (DeflateConnection.put_bytes):
345         (DeflateConnection.read):
346         (DeflateConnection.write):
347         (_is_ewouldblock_errno):
348         (drain_received_data):
349
350 2012-05-10  Raphael Kubo da Costa  <rakuco@webkit.org>
351
352         [EFL][webkitpy] Define the 'wrapper' option in EflPort instead of creating a EflDriver.
353         https://bugs.webkit.org/show_bug.cgi?id=86117
354
355         Reviewed by Adam Barth.
356
357         Simplify the code used to wrap driver calls with jhbuild: we can
358         just define the 'wrapper' option instead of having to create a
359         Driver class just for that.
360
361         * Scripts/webkitpy/layout_tests/port/efl.py:
362         (EflPort.__init__):
363         (EflPort._port_flag_for_scripts):
364
365 2012-05-10  Sheriff Bot  <webkit.review.bot@gmail.com>
366
367         Unreviewed, rolling out r116633.
368         http://trac.webkit.org/changeset/116633
369         https://bugs.webkit.org/show_bug.cgi?id=86093
370
371         Breaks EFL tests (Requested by kov on #webkit).
372
373         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
374         (DumpRenderTreeChrome::resetDefaultsToConsistentValues):
375         * DumpRenderTree/efl/EventSender.cpp:
376         (keyDownCallback):
377         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
378         (LayoutTestController::setTabKeyCyclesThroughElements):
379
380 2012-05-10  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
381
382         [EFL] Memory leaks found in EFL DRT
383         https://bugs.webkit.org/show_bug.cgi?id=85889
384
385         Reviewed by Gustavo Noronha Silva.
386
387         Fix two memory leaks in EFL's DRT by using JSRetainPtr for JSString
388         created with JSStringCreateWithUTF8CString.
389
390         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
391         (DumpRenderTreeChrome::onWindowObjectCleared):
392         * DumpRenderTree/efl/EventSender.cpp:
393         (modifiersFromJSValue):
394
395 2012-05-10  Alexander Shalamov  <alexander.shalamov@intel.com>
396
397         [EFL] LayoutTestController needs implementation of setTabKeyCyclesThroughElements
398         https://bugs.webkit.org/show_bug.cgi?id=82864
399
400         Reviewed by Gustavo Noronha Silva.
401
402         Add missing implementation for setTabKeyCyclesThroughElements to EFL's LayoutTestController
403         in order to unskip fast/events/keypress-insert-tab.html
404
405         * DumpRenderTree/efl/EventSender.cpp:
406         (keyDownCallback):
407         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
408         (LayoutTestController::setTabKeyCyclesThroughElements):
409
410 2012-05-10  Alexander Shalamov  <alexander.shalamov@intel.com>
411
412         [EFL][DRT] EventSender - set delayed event information if it was not set before
413         https://bugs.webkit.org/show_bug.cgi?id=85972
414
415         Reviewed by Gustavo Noronha Silva.
416
417         Reset delayed event information if it is missing.
418
419         * DumpRenderTree/efl/EventSender.cpp:
420         (feedOrQueueMouseEvent):
421
422 2012-05-07  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
423
424         WebPageProxy::activeURL() should return the pending API request, even when there's no main frame
425         https://bugs.webkit.org/show_bug.cgi?id=85806
426
427         The m_pendingAPIRequestURL member is used (presumably) to mask over the async
428         nature of WebKit2, so that starting a load of a URL will reflect that URL
429         immedeatly from activeURL, even if the request has not been passed over to
430         the web process yet and reflected there.
431
432         This works well, except in the case of the initial request, where the main
433         frame creation happens on the web process side and is notified back to the
434         UI process. Until we've recived the notification we don't know about the main
435         frame, and this race condition will potentially give us an empty url instead
436         of the pending request.
437
438         To solve this we always return the pending API request if it's set, even
439         when there's no mainframe yet (that we known about).
440
441         Reviewed by Simon Hausmann.
442
443         * TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:
444
445 2012-05-10  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
446
447         [EFL][DRT] Clear added user style sheets before a new testcase execution.
448         https://bugs.webkit.org/show_bug.cgi?id=84792
449
450         Reviewed Gustavo Noronha Silva.
451
452         The added user style sheets from the previous testcases are cleared in order to avoid 
453         flaky results.
454
455         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
456         (DumpRenderTreeChrome::resetDefaultsToConsistentValues):
457
458 2012-05-09  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
459
460         Move suspendAnimations to use Internals interface.
461         https://bugs.webkit.org/show_bug.cgi?id=85986
462
463         Reviewed by Ryosuke Niwa.
464
465         Remove suspendAnimations functions, because it is able to work in the 
466         cross-port way through the Internals interface
467
468         * DumpRenderTree/LayoutTestController.cpp:
469         (LayoutTestController::staticFunctions):
470         * DumpRenderTree/LayoutTestController.h:
471         (LayoutTestController):
472         * DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:
473         * DumpRenderTree/chromium/LayoutTestController.cpp:
474         (LayoutTestController::LayoutTestController):
475         * DumpRenderTree/chromium/LayoutTestController.h:
476         (LayoutTestController):
477         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
478         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
479         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
480         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
481         * DumpRenderTree/qt/LayoutTestControllerQt.h:
482         (LayoutTestController):
483         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
484         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
485
486 2012-05-09  Kent Tamura  <tkent@chromium.org>
487
488         [Chromium] Attempt to fix an Android build error.
489         https://bugs.webkit.org/show_bug.cgi?id=86045
490
491         * DumpRenderTree/DumpRenderTree.gypi:
492
493 2012-05-09  Ojan Vafai  <ojan@chromium.org>
494
495         Don't show partytime if there are non-layout test failures.
496         https://bugs.webkit.org/show_bug.cgi?id=86056
497
498         Reviewed by Dimitri Glazkov.
499
500         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
501         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers_unittests.js:
502         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/garden-o-matic.js:
503
504 2012-05-09  Hayato Ito  <hayato@chromium.org>
505
506         Improve a warning message for a reftest having an unused expectation file.
507         https://bugs.webkit.org/show_bug.cgi?id=85975
508
509         Reviewed by Adam Barth.
510
511         The current warning message is not intuitive. It might be better to update the message
512         so that it encourage users to remove unused expectation files.
513
514         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
515         (SingleTestRunner.__init__):
516
517 2012-05-09  Ojan Vafai  <ojan@chromium.org>
518
519         Change "losing test coverage" to cover all non-layout test problems in garden-o-matic
520         https://bugs.webkit.org/show_bug.cgi?id=86043
521
522         Reviewed by Adam Barth.
523
524         -Get rid of the gtest iframe.
525         -Cover all non-layout test problems. Before we wouldn't catch compile failures
526         or gtest failures since they were not on the webkit testing bots.
527         -Include the list of failing steps next to the builder name. This is a lot less
528         cluttered than you'd expect and already helped me find a compile failure early.
529
530         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders.js:
531         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders_unittests.js:
532         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
533         Delete unused map.
534         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
535         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/garden-o-matic.js:
536         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js:
537         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/failures.js:
538         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/failures_unittests.js:
539         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications.js:
540         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js:
541         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:
542
543 2012-05-09  Jessie Berlin  <jberlin@apple.com>
544
545         Crash using the new WKBundleDOMWindowExtensions APIs.
546         https://bugs.webkit.org/show_bug.cgi?id=85888
547
548         Reviewed by Brady Eidson.
549
550         Cached frames can live slightly longer than the page, but most clients unregister themselves
551         and do other cleanup in the willDestroyPage callback, making them miss the
552         willDestroyGlobalObjectForDOMWindowExtension callbacks.
553
554         The calls to willDestroyGlobalObjectForDOMWindowExtension in the DOMWindowExtensionBasic
555         test were all being invoked underneath WebPage::close. This is unrealistic. Update that test
556         to destroy the BundleDOMWindowExtensions in response to the willDestroyPage callback.
557
558         Add a test to verify that willDestroyGlobalObjectForDOMWindowExtension is being called for
559         pages that don't go into the page cache.
560
561         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
562         Add DOMWindowExtensionNoCache.cpp, DOMWindowExtensionNoCache_Bundle.cpp, simple-unload.html
563         and simple-iframe-unload.html
564
565         * TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic.cpp:
566         (TestWebKitAPI):
567         Remove the expected messages for willDestroyGlobalObjectForDOMWindowExtension.
568         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
569         Do not bother to keep track of the live extension count - all of them are expected to be
570         live until the test completes.
571         (TestWebKitAPI::TEST):
572         Fix the calls to EXPECT to pass the expected value first, and use EXPECT_WK_STREQ so that
573         message failures will be clearer.
574         * TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic_Bundle.cpp:
575         (TestWebKitAPI::DOMWindowExtensionBasic::willDestroyPage):
576         Clean up the BundleDOMWindowExtensions.
577         (TestWebKitAPI::DOMWindowExtensionBasic::willDestroyGlobalObjectForDOMWindowExtension):
578         Add an ASSERT_NOT_REACHED.
579
580         * TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionNoCache.cpp: Added.
581         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
582         Keep track of the messages received so they can be checked at the end of the test.
583         (TestWebKitAPI::TEST):
584         Navigate to uncacheable pages and back.
585         * TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionNoCache_Bundle.cpp: Copied from Tools/TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic_Bundle.cpp.
586         (DOMWindowExtensionNoCache):
587         (TestWebKitAPI::DOMWindowExtensionNoCache::DOMWindowExtensionNoCache):
588         Set up all the states for each BundleDOMWindowExtension.
589         (TestWebKitAPI::DOMWindowExtensionNoCache::frameLoadFinished):
590         Tell the UI Process about the states of the BundleDOMWindowExtensions.
591         (TestWebKitAPI::DOMWindowExtensionNoCache::sendExtensionStateMessage):
592         (TestWebKitAPI::DOMWindowExtensionNoCache::initialize):
593         (TestWebKitAPI::DOMWindowExtensionNoCache::didCreatePage):
594         (TestWebKitAPI::DOMWindowExtensionNoCache::willDestroyPage):
595         Remvoe the remaining BundleDOMWindowExtensions, send the updated state, and finish the test.
596         (TestWebKitAPI::DOMWindowExtensionNoCache::updateExtensionStateRecord):
597         (TestWebKitAPI::DOMWindowExtensionNoCache::sendBundleMessage):
598         (TestWebKitAPI::DOMWindowExtensionNoCache::globalObjectIsAvailableForFrame):
599         (TestWebKitAPI::DOMWindowExtensionNoCache::willDisconnectDOMWindowExtensionFromGlobalObject):
600         ASSERT that these pages not going into the page cache are not getting disconnected to go into
601         the page cache.
602         (TestWebKitAPI::DOMWindowExtensionNoCache::didReconnectDOMWindowExtensionToGlobalObject):
603         Ditto about getting reconnected when coming out of the page cache.
604         (TestWebKitAPI::DOMWindowExtensionNoCache::willDestroyGlobalObjectForDOMWindowExtension):
605         Tell the UI Process, update the state, and get rid of the BundleDOMWindowExtension.
606         (TestWebKitAPI::didFinishLoadForFrameCallback):
607         (TestWebKitAPI::globalObjectIsAvailableForFrameCallback):
608         (TestWebKitAPI::willDisconnectDOMWindowExtensionFromGlobalObjectCallback):
609         (TestWebKitAPI::didReconnectDOMWindowExtensionToGlobalObjectCallback):
610         (TestWebKitAPI::willDestroyGlobalObjectForDOMWindowExtensionCallback):
611
612         * TestWebKitAPI/Tests/WebKit2/simple-iframe-unload.html: Added.
613         * TestWebKitAPI/Tests/WebKit2/simple-unload.html: Added.
614
615 2012-05-09  Adam Barth  <abarth@webkit.org>
616
617         [Chromium] Android's DRT doesn't want to build WebUserMediaClientMock
618         https://bugs.webkit.org/show_bug.cgi?id=86045
619
620         Reviewed by Eric Seidel.
621
622         * DumpRenderTree/DumpRenderTree.gypi:
623
624 2012-05-09  Adam Barth  <abarth@webkit.org>
625
626         [Chromium] MockWebSpeechInputController.cpp should be guarded by ENABLE(INPUT_SPEECH)
627         https://bugs.webkit.org/show_bug.cgi?id=86041
628
629         Reviewed by Eric Seidel.
630
631         * DumpRenderTree/chromium/MockWebSpeechInputController.cpp:
632
633 2012-05-09  Adam Barth  <abarth@webkit.org>
634
635         [Chromium] Android needs to swizzle pixel dumps in order to get the same hash as other platforms
636         https://bugs.webkit.org/show_bug.cgi?id=86040
637
638         Reviewed by Kent Tamura.
639
640         * DumpRenderTree/chromium/TestShell.cpp:
641         (TestShell::dumpImage):
642
643 2012-05-09  Raphael Kubo da Costa  <rakuco@webkit.org>
644
645         [EFL] Build fix after r116464.
646
647         `ulong' is a type defined by glibc, so it is not very
648         portable. Use `unsigned long' instead.
649
650         * DumpRenderTree/efl/EventSender.cpp:
651         (DelayedEvent::DelayedEvent):
652         (DelayedEvent):
653         (leapForwardCallback):
654
655 2012-05-09  Adam Barth  <abarth@webkit.org>
656
657         [Chromium] LayoutTestController should use ENABLE guards for some features
658         https://bugs.webkit.org/show_bug.cgi?id=86030
659
660         Reviewed by Eric Seidel.
661
662         These features are disabled on OS(ANDROID) and so shouldn't be compiled
663         when the feature is off.
664
665         * DumpRenderTree/chromium/LayoutTestController.cpp:
666         (LayoutTestController::LayoutTestController):
667         * DumpRenderTree/chromium/LayoutTestController.h:
668         (LayoutTestController):
669         * DumpRenderTree/chromium/TestShell.h:
670         (TestShell):
671
672 2012-05-09  Tom Zakrajsek  <tomz@codeaurora.org>
673
674         Fix overzealous re-opened since blocked by... message
675         https://bugs.webkit.org/show_bug.cgi?id=86020
676
677         Reviewed by Adam Barth.
678
679         Changed CreateBug behavior to only re-open a blocked bug if it
680         was RESOLVED.  Also had to update the test infrastructure slightly
681         to allow for distinct mock commit revisions, so one could point
682         to a RESOLVED bug for testing while another pointed to an OPEN bug.
683
684         Also moved default created mock bug to be 60001 instead of 50004
685         which already exists as a reference mock bug.
686
687         * Scripts/webkitpy/common/checkout/checkout_mock.py:
688         (MockCheckout.__init__):
689         (MockCheckout.commit_info_for_revision):
690         * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
691         (MockBugzilla.create_bug):
692         * Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:
693         * Scripts/webkitpy/tool/commands/download_unittest.py:
694         (test_create_rollout_resolved):
695         * Scripts/webkitpy/tool/commands/queries_unittest.py:
696         (FailureReasonTest.test_blame_line_for_revision):
697         * Scripts/webkitpy/tool/steps/createbug.py:
698         (CreateBug.run):
699
700 2012-05-09  Hugo Parente Lima  <hugo.lima@openbossa.org>
701
702         Use suitable viewport values on XHTML-MP pages.
703         https://bugs.webkit.org/show_bug.cgi?id=85425
704
705         Reviewed by Kenneth Rohde Christiansen.
706
707         Enable LEGACY_VIEWPORT_ADAPTION on Qt port.
708
709         * qmake/mkspecs/features/features.prf:
710
711 2012-05-09  Jochen Eisinger  <jochen@chromium.org>
712
713         When creating a new page during a navigation, prime the initial document with the correct referrer policy
714         https://bugs.webkit.org/show_bug.cgi?id=86001
715
716         Reviewed by Adam Barth.
717
718         Store the referrer policy in the request, so the network stack can comply with it.
719
720         * DumpRenderTree/chromium/WebViewHost.cpp:
721         (WebViewHost::willSendRequest):
722
723 2012-05-09  Vivek Galatage  <vivekgalatage@gmail.com>
724
725         Remove CYGWIN=tty from environment variable as its no longer supported
726         https://bugs.webkit.org/show_bug.cgi?id=85791
727
728         The CYGWIN=tty environment variable is no longer supported from Cygwin
729         version 1.7.10. This fix avoids addition of this environment variable
730         for Cygwin versions greater than 1.7.9. For supporting older versions
731         i.e. 1.7.9 or older, the script takes care of retaining the environment
732         variable.
733
734         Reviewed by Adam Roben.
735
736         * Scripts/webkitdirs.pm:
737         (setupAppleWinEnv):
738
739 2012-05-09  Dirk Pranke  <dpranke@chromium.org>
740
741         nrwt: --skip-failing-tests should also skip flaky tests
742         https://bugs.webkit.org/show_bug.cgi?id=85941
743
744         Reviewed by Ojan Vafai.
745
746         This changes --skip-failing-tests so that we skip tests that
747         are believed to pass sometimes as well as tests that are
748         believed to always fail.
749
750         In addition, in testing this I discovered that we had lousy
751         test coverage of the details of retrying test failures and
752         --clobber-old-results, so I wrote some more tests.
753
754         * Scripts/webkitpy/layout_tests/controllers/manager.py:
755         (Manager.prepare_lists_and_print_output):
756         * Scripts/webkitpy/layout_tests/port/test.py:
757         (unit_test_list):
758         (TestPort.__init__):
759         (TestDriver.run_test):
760         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
761         (MainTest.test_skip_failing_tests):
762         (MainTest.test_retrying_and_flaky_tests):
763
764 2012-05-09  Christophe Dumez  <christophe.dumez@intel.com>
765
766         [EFL][DRT] EFL's DRT needs to support LayoutTestController.dumpIconChanges()
767         https://bugs.webkit.org/show_bug.cgi?id=84435
768
769         Reviewed by Antonio Gomes.
770
771         Catch the "icon,changed" signal on the frames in EFL's DumpRenderTree
772         to support LayoutTestController's dumpIconChanges().
773
774         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
775         (DumpRenderTreeChrome::createView):
776         (DumpRenderTreeChrome::onFrameIconChanged):
777         (DumpRenderTreeChrome::onFrameCreated):
778         * DumpRenderTree/efl/DumpRenderTreeChrome.h:
779         (DumpRenderTreeChrome):
780
781 2012-05-09  Dominik Röttsches  <dominik.rottsches@intel.com>
782
783         webkit-patch upload Fails Behind Load-balancing Proxies
784         https://bugs.webkit.org/show_bug.cgi?id=85980
785
786         Reviewed by Adam Barth.
787
788         Unchecking the login restriction to IP to allow the tool
789         to function behind load-balancing proxies that use multiple
790         outgoing IPs.
791
792         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
793         (Bugzilla.authenticate):
794
795 2012-05-09  Hao Zheng  <zhenghao@chromium.org>
796
797         [Chromium-android] Add unit test for Android layout test script (chromium_android.py)
798         https://bugs.webkit.org/show_bug.cgi?id=80852
799
800         Reviewed by Adam Barth.
801
802         Add some tests to ensure that chromium android port works to some
803         extent. Some methods is hard to test, as they rely on the actual
804         behavior on device, e.g. pushing files to device.
805
806         * Scripts/webkitpy/layout_tests/port/chromium_android.py:
807         (ChromiumAndroidPort.get_last_stacktrace): Check if dir exists.
808         * Scripts/webkitpy/layout_tests/port/chromium_android_unittest.py:
809         (ChromiumAndroidPortTest):
810         (ChromiumAndroidPortTest.test_attributes):
811         (ChromiumAndroidPortTest.test_get_last_stacktrace):
812         (ChromiumAndroidPortTest.test_get_last_stacktrace.mock_run_command_no_dir):
813         (ChromiumAndroidPortTest.test_get_last_stacktrace.mock_run_command_no_file):
814         (ChromiumAndroidPortTest.test_get_last_stacktrace.mock_run_command_non_empty):
815         (ChromiumAndroidDriverTest):
816         (ChromiumAndroidDriverTest.setUp):
817         (ChromiumAndroidDriverTest.test_get_drt_return_value):
818         (ChromiumAndroidDriverTest.test_has_crash_hint):
819         (ChromiumAndroidDriverTest.test_read_prompt):
820         (ChromiumAndroidDriverTest.test_test_shell_command):
821         (ChromiumAndroidDriverTest.test_write_command_and_read_line):
822
823 2012-05-09  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
824
825         [Qt] ORWT fails with Qt 5 and WK2.
826         https://bugs.webkit.org/show_bug.cgi?id=85968
827
828         Reviewed by Csaba Osztrogonác.
829
830         The Qt5 binary does not have a -style argument, so avoid using it.
831
832         * Scripts/old-run-webkit-tests:
833
834 2012-05-09  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
835
836         [EFL][DRT] LayoutTestController addUserScript implementation
837         https://bugs.webkit.org/show_bug.cgi?id=84718
838
839         Reviewed by Antonio Gomes.
840
841         Added implementation of addUserScript() to LayoutTestController.
842
843         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
844         (DumpRenderTreeChrome::resetDefaultsToConsistentValues): clear added user scripts
845         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
846         (LayoutTestController::addUserScript): added implementation
847
848 2012-05-09  Dan Bernstein  <mitz@apple.com>
849
850         Made build-webkit copy WebKitLibraries to the right location again after r116257
851
852         Reviewed by Mark Rowe.
853
854         * Scripts/build-webkit: Pass the built product directory to copy-webkitlibraries-to-product-directory.
855         * Scripts/copy-webkitlibraries-to-product-directory: Use the first argument, if present, as the
856         product directory.
857
858 2012-05-08  Ojan Vafai  <ojan@chromium.org>
859
860         Show the chromium non-layout test bots in garden-o-matic
861         https://bugs.webkit.org/show_bug.cgi?id=85903
862
863         Reviewed by Eric Seidel.
864
865         This is just a single-line high-level overview of the chromium non-layout test bots.
866         This means that Chromium WebKit gardeners only need to keep garden-o-matic open in
867         order to do their job.
868
869         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/garden-o-matic.js:
870         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js:
871         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:
872         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/onebar.css:
873         (#chromium-gtests iframe):
874         (#chromium-gtests):
875         (#gtest-label):
876
877 2012-05-08  Kangil Han  <kangil.han@samsung.com>
878
879         [EFL][DRT] Implement TextInputController.
880         https://bugs.webkit.org/show_bug.cgi?id=78559
881
882         Reviewed by Martin Robinson.
883
884         TextInputController has been created for an input emulation purpose in DRT.
885         However, not like other ports, EFL doesn't have it.
886         Therefore, this patch will enable EFL port to have an input emulation in DRT.
887
888         * DumpRenderTree/efl/CMakeLists.txt:
889         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
890         (DumpRenderTreeChrome::onWindowObjectCleared):
891         * DumpRenderTree/efl/TextInputController.cpp: Added.
892         (setMarkedTextCallback):
893         (hasMarkedTextCallback):
894         (markedRangeCallback):
895         (insertTextCallback):
896         (unmarkTextCallback):
897         (firstRectForCharacterRangeCallback):
898         (selectedRangeCallback):
899         (makeTextInputController):
900         * DumpRenderTree/efl/TextInputController.h: Added.
901
902 2012-04-23  Raphael Kubo da Costa  <rakuco@webkit.org>
903
904         [EFL] Pass a WTF::String directly from DRT to ewebkit when possible
905         https://bugs.webkit.org/show_bug.cgi?id=84634
906
907         Reviewed by Gustavo Noronha Silva.
908
909         Drop unnecessary const char* -> WTF::String conversions by
910         creating String objects directly in LayoutTestController out of
911         JSStringRef's and passing them to DumpRenderTreeSupportEfl.
912
913         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
914         (LayoutTestController::queueLoad):
915         (LayoutTestController::setValueForUser):
916         (LayoutTestController::findString):
917         (LayoutTestController::addUserStyleSheet):
918
919 2012-05-08  Alexander Shalamov  <alexander.shalamov@intel.com>
920
921         [EFL][DRT] EventSender needs implementation of leapForward function
922         https://bugs.webkit.org/show_bug.cgi?id=83486
923
924         Reviewed by Eric Seidel.
925
926         Implemented leapForward function in Efl's DRT. This function is required
927         to delay and queue event execution and simulate real user behavior.
928
929         * DumpRenderTree/efl/EventSender.cpp:
930         (DelayedEvent):
931         (MouseEventInfo::MouseEventInfo):
932         (MouseEventInfo):
933         (sendClick):
934         (mouseDownCallback):
935         (mouseUpCallback):
936         (mouseMoveToCallback):
937         (leapForwardCallback):
938         (mouseScrollByCallback):
939         (feedOrQueueMouseEvent):
940         (feedMouseEvent):
941         (feedQueuedMouseEvents):
942
943 2012-05-08  Ryuan Choi  <ryuan.choi@samsung.com>
944
945         [EFL][DRT] WebKit/DRT should not paint webview for the pixel tests.
946         https://bugs.webkit.org/show_bug.cgi?id=79853
947
948         Reviewed by Eric Seidel.
949
950         Screen buffer can be different from rendered results.
951         For example, WebKit/Efl just moves tiles for ewk_view_tiled when scrolling
952         contents.
953         It means that pixel tests can't check regression of ewk_view_tiled.
954
955         This patch changes a way to provide bitmap from painting webview to capturing
956         evas.
957
958         * DumpRenderTree/efl/PixelDumpSupportEfl.cpp:
959         (createBitmapContextFromWebView):
960
961 2012-05-08  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
962
963         [GTK] Memory leak in DRT EventSender.cpp
964         https://bugs.webkit.org/show_bug.cgi?id=85886
965
966         Reviewed by Martin Robinson.
967
968         Fix a memory leak in gdkModifersFromJSValue() by using JSRetainPtr for
969         JSString created with JSStringCreateWithUTF8CString.
970
971         * DumpRenderTree/gtk/EventSender.cpp:
972         (gdkModifersFromJSValue):
973
974 2012-05-08  Christophe Dumez  <christophe.dumez@intel.com>
975
976         [EFL] glib dependency needs to be updated in jhbuild
977         https://bugs.webkit.org/show_bug.cgi?id=85878
978
979         Reviewed by Martin Robinson.
980
981         Bump glib version from 2.31.8 to 2.32.2 in jhbuild.modules. This
982         addresses flakiness in media tests due to possible deadlock with the
983         following output on stderr:
984         GStreamer-WARNING **: wrong STREAM_LOCK count 0
985
986         The bug was fixed upstream by:
987         http://git.gnome.org/browse/glib/commit/?id=265f265c677bc5399dbb1cfa449cb4b915a6459f
988
989         * efl/jhbuild.modules:
990
991 2012-05-07  Alexis Menard  <alexis.menard@openbossa.org>
992
993         [Qt] Unbreak debugging of WebKit2.
994         https://bugs.webkit.org/show_bug.cgi?id=85839
995
996         Reviewed by Simon Hausmann.
997
998         When you attach GDB to a running process, it stops it.
999         http://trac.webkit.org/changeset/115958 introduced a pause() 
1000         call to wait the debugger to be attached to then continue 
1001         the execution of the WebProcess. Unfortunately the pause()
1002         function does not return unless a signal handler is called.
1003         This patch introduce an event handler to exit from the paused
1004         state when the debugger send the signal SIGCONT. The old code
1005         works with older version of GDB (<7.0) but not with newer
1006         versions where the behavior of pause() is correct.
1007
1008         * WebKitTestRunner/qt/main.cpp:
1009         (sigcontHandler):
1010         (main):
1011
1012 2012-05-08  Christophe Dumez  <christophe.dumez@intel.com>
1013
1014         [EFL][DRT] EFL's DRT does not fully support page visibility
1015         https://bugs.webkit.org/show_bug.cgi?id=85032
1016
1017         Reviewed by Antonio Gomes.
1018
1019         * DumpRenderTree/LayoutTestController.cpp:
1020         (resetPageVisibilityCallback): Fix incorrect argumentCount check.
1021         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
1022         (DumpRenderTreeChrome::resetDefaultsToConsistentValues): Properly
1023         reset page visibility setting between tests.
1024         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
1025         (LayoutTestController::setPageVisibility): Add support for "preview"
1026         visibility state.
1027
1028 2012-05-08  Gavin Peters  <gavinp@chromium.org>
1029
1030         [webkit-patch] Return meaningful results from single-result queries.
1031         https://bugs.webkit.org/show_bug.cgi?id=85367
1032
1033         Reviewed by Dirk Pranke.
1034
1035         Sometimes a quicksearch returns a single result by just redirecting to the page for that single
1036         bug. This patch hacks around that by noticing the redirect target is a single page, and constructing
1037         a result list consisting of that one bug.
1038
1039         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
1040         (BugzillaQueries._fetch_bugs_from_advanced_query):
1041
1042 2012-05-08  Gavin Peters  <gavinp@chromium.org>
1043
1044         [webkit-patch] Add new chrome-channels command to track down current chrome release channels for a committed bug.
1045         https://bugs.webkit.org/show_bug.cgi?id=85368
1046
1047         Reviewed by Eric Seidel.
1048
1049         * Scripts/webkitpy/common/config/urls.py:
1050         * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
1051         (MockBugzillaQueries.fetch_bugs_matching_quicksearch):
1052         * Scripts/webkitpy/common/net/omahaproxy.py: Added.
1053         (OmahaProxy):
1054         (OmahaProxy.__init__):
1055         (OmahaProxy.set_url):
1056         (OmahaProxy._json_url):
1057         (OmahaProxy._get_json):
1058         (OmahaProxy.get_revisions):
1059         * Scripts/webkitpy/common/net/omahaproxy_unittest.py: Added.
1060         (MockOmahaProxy):
1061         (MockOmahaProxy.__init__):
1062         (OmahaProxyTest):
1063         (OmahaProxyTest.test_get_revisions):
1064         * Scripts/webkitpy/tool/commands/__init__.py:
1065         * Scripts/webkitpy/tool/commands/bugsearch.py:
1066         (BugSearch):
1067         * Scripts/webkitpy/tool/commands/chromechannels.py: Added.
1068         (ChromeChannels):
1069         (__init__):
1070         (execute):
1071         * Scripts/webkitpy/tool/commands/chromechannels_unittest.py: Added.
1072         (MockOmahaProxy):
1073         (MockOmahaProxy.get_revisions):
1074         (TestableChromeChannels):
1075         (TestableChromeChannels.__init__):
1076         (ChromeChannelsTest):
1077         (ChromeChannelsTest.test_single_bug):
1078         (ChromeChannelsTest.test_with_query):
1079
1080 2012-05-08  Carlos Garcia Campos  <cgarcia@igalia.com>
1081
1082         Unreviewed. Fix GTK+ unit tests.
1083
1084         * gtk/common.py:
1085         (pkg_config_file_variable):
1086
1087 2012-05-08  Carlos Garcia Campos  <cgarcia@igalia.com>
1088
1089         [GTK] Google tests that time out are leaked
1090         https://bugs.webkit.org/show_bug.cgi?id=84973
1091
1092         Reviewed by Philippe Normand.
1093
1094         Move Tools/Scripts/run-gtk-tests to Tools/gtk/run-api-tests
1095         leaving run-gtk-tests as simple wrapper that runs run-api-tests in
1096         a jhbuild environment when jhbuild is available.
1097
1098         * Scripts/run-gtk-tests: Run Tools/gtk/run-api-tests directly or
1099         with jhbuild if present.
1100         * gtk/common.py:
1101         (pkg_config_file_variable): Generic function to get a variable
1102         from a pkg-config file.
1103         (prefix_of_pkg_config_file): Use pkg_config_file_variable with 'prefix'.
1104         * gtk/run-api-tests: Copied from Tools/Scripts/run-gtk-tests.
1105         (TestRunner.__init__): Use common.build_path() to get the programs path.
1106         (TestRunner._lookup_atspi2_binary): Use
1107         common.pkg_config_file_variable() to get the 'exec_prefix'.
1108         (TestRunner._start_accessibility_daemons): Use subprocess.Popen()
1109         directly instead of helper _create_process that has been removed.
1110         (TestRunner._setup_testing_environment): Use subprocess.Popen()
1111         directly instead of helper _create_process that has been
1112         removed. Use common.top_level_path() and common.build_path()
1113         instead of custom methods that have been removed too.
1114         (TestRunner._run_test_command): Use subprocess.Popen() directly
1115         instead of helper _create_process that has been removed.
1116
1117 2012-05-08  Thiago Marcos P. Santos  <thiago.santos@intel.com>
1118
1119         [EFL] [DRT] Clear extra views before setting a blank page
1120         https://bugs.webkit.org/show_bug.cgi?id=85608
1121
1122         Reviewed by Kenneth Rohde Christiansen.
1123
1124         We need to clear the extra views before setting a blank page,
1125         otherwise it will cause more events interactions and sometimes
1126         trigger a unload(). This was causing frame-crash-with-page-cache.html
1127         to leak events to the next test causing any subsequent test to
1128         fail.
1129
1130         * DumpRenderTree/efl/DumpRenderTree.cpp:
1131         (runTest):
1132         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
1133         (DumpRenderTreeChrome::clearExtraViews):
1134         (DumpRenderTreeChrome::resetDefaultsToConsistentValues):
1135         * DumpRenderTree/efl/DumpRenderTreeChrome.h:
1136         (DumpRenderTreeChrome):
1137
1138 2012-05-08  Balazs Kelemen  <kbalazs@webkit.org>
1139
1140         [Qt] X11 plugins need to be reworked for Qt5+WK1
1141         https://bugs.webkit.org/show_bug.cgi?id=80691
1142
1143         Reviewed by Simon Hausmann.
1144
1145         Implement basic windowless plugin support with Qt5.
1146
1147         * qmake/mkspecs/features/features.prf:
1148         Enable NPAPI plugins if X11 libraries are available.
1149         * qmake/mkspecs/features/functions.prf:
1150         Added a convenience function to determine availability
1151         of X11 libraries.
1152
1153 2012-05-07  Raphael Kubo da Costa  <rakuco@webkit.org>
1154
1155         [webkitpy] Remove Python 2.5-specific workaround from http_server_base.py.
1156         https://bugs.webkit.org/show_bug.cgi?id=85852
1157
1158         Reviewed by Dirk Pranke.
1159
1160         * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
1161         (HttpServerBase._is_server_running_on_all_ports): Revert the part
1162         of r89412 which was a workaround for an issue with Python 2.5 on
1163         Mac 10.5.
1164
1165 2012-05-07  Raphael Kubo da Costa  <rakuco@FreeBSD.org>
1166
1167         webkitdirs.pm: Make determineNumberOfCPUs work on FreeBSD.
1168         https://bugs.webkit.org/show_bug.cgi?id=81481
1169
1170         Reviewed by Dirk Pranke.
1171
1172         FreeBSD has the same sysctl interface present in Darwin to query
1173         the number of CPUs available, so use that too.
1174
1175         * Scripts/webkitdirs.pm:
1176         (determineNumberOfCPUs): Share the sysctl call with Darwin.
1177         (isFreeBSD): Added.
1178
1179 2012-05-07  Alexis Menard  <alexis.menard@openbossa.org>
1180
1181         Unreviewed Qt build fix in Debug.
1182
1183         We need some system includes here for getpid() to be recognized.
1184
1185         * WebKitTestRunner/qt/main.cpp:
1186
1187 2012-05-07  Ojan Vafai  <ojan@chromium.org>
1188
1189         When embedding the flakiness dashboard, hide popups when the frame is blurred.
1190         https://bugs.webkit.org/show_bug.cgi?id=85684
1191
1192         Reviewed by Dirk Pranke.
1193
1194         If you show a popup, then click elsewhere in garden-o-matic, it will now
1195         properly hide it.
1196
1197         * TestResultServer/static-dashboards/dashboard_base.js:
1198         (showPopup):
1199         * TestResultServer/static-dashboards/flakiness_dashboard.js:
1200         (showPopupForBuild):
1201         (generatePageForIndividualTests.if):
1202         (generatePageForIndividualTests):
1203         * TestResultServer/static-dashboards/flakiness_dashboard_embedded_unittests.js: Added.
1204         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
1205         * TestResultServer/static-dashboards/run-embedded-unittests.html: Added.
1206
1207 2012-05-07  Ian Vollick  <vollick@chromium.org>
1208
1209         [chromium] WebViewHost should setCompositorSurfaceReady
1210         https://bugs.webkit.org/show_bug.cgi?id=85418
1211
1212         Reviewed by James Robinson.
1213
1214         * DumpRenderTree/chromium/WebViewHost.cpp:
1215         (WebViewHost::setWebWidget):
1216
1217 2012-05-07  Jon Lee  <jonlee@apple.com>
1218
1219         WebKitTestRunner needs layoutTestController.dumpFrameLoadCallbacks
1220         https://bugs.webkit.org/show_bug.cgi?id=42331
1221         <rdar://problem/8193641>
1222
1223         Reviewed by Darin Adler.
1224
1225         This patch sets up the framework for supporting dumpFrameLoadCallbacks, as well as
1226         outputting some of the required strings. As tests become unskipped the other callbacks
1227         can be supported.
1228
1229         * WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl: Add dumpFrameLoadCallbacks()
1230         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1231         (WTR::InjectedBundle::didReceiveMessage): pass in the dictionary containing keys needed to initialize
1232         dump callbacks for the layoutTestController.
1233         (WTR::InjectedBundle::booleanForKey): Helper function to extract boolean value from key in WKDictionaryRef.
1234         Output some warning if we are trying to extract a value that is not a boolean.
1235         (WTR::InjectedBundle::beginTesting): Update to take in the dictionary passed in by the TestController.
1236         We cannot set the bits on the layoutTestController until it has been created in beginTesting().
1237         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
1238         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1239         (WTR::InjectedBundle::didReceiveMessage):
1240         (WTR):
1241         (WTR::InjectedBundle::beginTesting):
1242         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
1243         (InjectedBundle):
1244         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1245         (WTR):
1246         (WTR::dumpFrameDescriptionSuitableForTestResult): Static function similar to
1247         -[WebFrame _drt_descriptionSuitableForTestResult] in DumpRenderTree.
1248         (WTR::InjectedBundlePage::didStartProvisionalLoadForFrame): Output string.
1249         (WTR::InjectedBundlePage::didCommitLoadForFrame): Output string.
1250         (WTR::InjectedBundlePage::didFinishLoadForFrame): Output string.
1251         (WTR::InjectedBundlePage::didReceiveTitleForFrame): Output string.
1252         (WTR::InjectedBundlePage::didCancelClientRedirectForFrame): Output string.
1253         (WTR::InjectedBundlePage::willPerformClientRedirectForFrame): Output string. In WK1 it's
1254         "willPerformClientRedirectToURL" so we will have to use that value here.
1255         (WTR::InjectedBundlePage::didFinishDocumentLoadForFrame): Output string.
1256         (WTR::InjectedBundlePage::didHandleOnloadEventsForFrame): Output string.
1257         * WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
1258         (WTR::LayoutTestController::LayoutTestController): Initialize to not dump frame load callbacks.
1259         * WebKitTestRunner/InjectedBundle/LayoutTestController.h:
1260         (WTR::LayoutTestController::dumpFrameLoadCallbacks): Change to use setShouldDumpFrameLoadCallbacks.
1261         (WTR::LayoutTestController::setShouldDumpFrameLoadCallbacks): Set bit.
1262         (WTR::LayoutTestController::shouldDumpFrameLoadCallbacks): Return bit.
1263         (LayoutTestController): Added m_dumpFrameLoadCallbacks to track whether to dump the output.
1264         * WebKitTestRunner/TestInvocation.cpp:
1265         (WTR::shouldLogFrameLoadDelegates): Similar to DRT.
1266         (WTR::TestInvocation::invoke): Based on the URL loaded, set the bit in the dictionary that gets passed
1267         to the injected bundle.
1268
1269 2012-05-07  Tommy Widenflycht  <tommyw@google.com>
1270
1271         [chromium] MediaStream API: Enhance WebUserMediaClientMock and add a test for it
1272         https://bugs.webkit.org/show_bug.cgi?id=85618
1273
1274         Reviewed by Adam Barth.
1275
1276         Adding the capability to control which MediaStreamTracks actually get created,
1277         and adding a test that exercises the JS api using that capability.
1278
1279         * DumpRenderTree/chromium/WebUserMediaClientMock.cpp:
1280         (WebKit::WebUserMediaClientMock::requestUserMedia):
1281         * DumpRenderTree/chromium/WebUserMediaClientMock.h:
1282         * DumpRenderTree/chromium/WebViewHost.cpp:
1283         (WebViewHost::testMediaStreamClient):
1284         * DumpRenderTree/chromium/WebViewHost.h:
1285         (WebViewHost):
1286
1287 2012-05-07  Zan Dobersek  <zandobersek@gmail.com>
1288
1289         [Gtk] WebGL feature is not built anymore through build-webkit after r116251
1290         https://bugs.webkit.org/show_bug.cgi?id=85788
1291
1292         Reviewed by Martin Robinson.
1293
1294         Enable WebGL by default for the Gtk port. The feature is already enabled by
1295         default in configure.ac, so there's no reason it shouldn't be enabled when
1296         building through build-webkit.
1297
1298         * Scripts/webkitperl/FeatureList.pm:
1299
1300 2012-05-07  Csaba Osztrogonác  <ossy@webkit.org>
1301
1302         Unittest fix after r116288, because now there are more than 5 hit for the 'Eric' word.
1303         We have only 2 'Gavin', so it is a better choice than 'Eric' for unit testing.
1304
1305         Reviewed by Tor Arne Vestbø.
1306
1307         * Scripts/webkitpy/tool/bot/irc_command_unittest.py:
1308         (IRCCommandTest.test_whois):
1309
1310 2012-05-07  Sheriff Bot  <webkit.review.bot@gmail.com>
1311
1312         Unreviewed, rolling out r116299, r116301, and r116303.
1313         http://trac.webkit.org/changeset/116299
1314         http://trac.webkit.org/changeset/116301
1315         http://trac.webkit.org/changeset/116303
1316         https://bugs.webkit.org/show_bug.cgi?id=85795
1317
1318         Build is still broken (Requested by Ossy on #webkit).
1319
1320         * DumpRenderTree/qt/DumpRenderTree.pro:
1321         * DumpRenderTree/qt/main.cpp:
1322         (main):
1323         * QtTestPlatformPlugin/QtTestPlatformPlugin.pro: Removed.
1324         * QtTestPlatformPlugin/TestIntegration.cpp: Removed.
1325         * QtTestPlatformPlugin/TestIntegration.h: Removed.
1326         * QtTestPlatformPlugin/mac/TestFontDatabase.h: Removed.
1327         * QtTestPlatformPlugin/mac/TestFontDatabase.mm: Removed.
1328         * QtTestPlatformPlugin/mac/TestIntegrationMac.mm: Removed.
1329         * QtTestPlatformPlugin/main.cpp: Removed.
1330         * QtTestPlatformPlugin/testplatform.json: Removed.
1331         * Tools.pro:
1332         * WebKitTestRunner/Target.pri:
1333         * WebKitTestRunner/qt/main.cpp:
1334         (main):
1335
1336 2012-05-07  Balazs Kelemen  <kbalazs@webkit.org>
1337
1338         Unreviewed Qt build fix.
1339
1340         One more try to learn how to use
1341         const with a pointer array.
1342
1343         * DumpRenderTree/qt/main.cpp:
1344         (initializeTestPlatformPlugin):
1345
1346 2012-05-07  Balazs Kelemen  <kbalazs@webkit.org>
1347
1348         Unreviewed build fix after r116299.
1349
1350         * DumpRenderTree/qt/main.cpp:
1351         (initializeTestPlatformPlugin):
1352
1353 2012-05-07  Balazs Kelemen  <kbalazs@webkit.org>
1354
1355         [Qt] Add test specific platform plugin to achieve unified layout test results
1356         https://bugs.webkit.org/show_bug.cgi?id=80996
1357
1358         Reviewed by Simon Hausmann.
1359
1360         Added QtTestPlatformPlugin as a new project under Tools.
1361         This is a Qt5-ish platform plugin that can be used to tweak the
1362         platform support interfaces in order to unify layout test results.
1363         For now it only overrides the font database on Mac and redirects
1364         everything else to the real platform plugin. The font database it
1365         provides mimics the way how we set up test fonts with fontconfig on Linux.
1366         Make DumpRenderTree and WebKitTestRunner use this platform plugin.
1367
1368         * DumpRenderTree/qt/DumpRenderTree.pro:
1369         * DumpRenderTree/qt/main.cpp:
1370         (initializeTestPlatformPlugin):
1371         (main):
1372         * QtTestPlatformPlugin/QtTestPlatformPlugin.pro: Added.
1373         * QtTestPlatformPlugin/TestIntegration.cpp: Added.
1374         (TestIntegration::TestIntegration):
1375         (TestIntegration::fontDatabase):
1376         * QtTestPlatformPlugin/TestIntegration.h: Added.
1377         (TestIntegration):
1378         (TestIntegration::hasCapability):
1379         (TestIntegration::createPlatformPixmap):
1380         (TestIntegration::createPlatformWindow):
1381         (TestIntegration::createPlatformBackingStore):
1382         (TestIntegration::createPlatformOpenGLContext):
1383         (TestIntegration::createPlatformSharedGraphicsCache):
1384         (TestIntegration::guiThreadEventDispatcher):
1385         (TestIntegration::clipboard):
1386         (TestIntegration::drag):
1387         (TestIntegration::inputContext):
1388         (TestIntegration::accessibility):
1389         (TestIntegration::nativeInterface):
1390         (TestIntegration::services):
1391         (TestIntegration::styleHint):
1392         (TestIntegration::platformTheme):
1393         * QtTestPlatformPlugin/mac/TestFontDatabase.h: Added.
1394         (TestFontDatabase):
1395         * QtTestPlatformPlugin/mac/TestFontDatabase.mm: Added.
1396         (TestFontDatabase::populateFontDatabase):
1397         * QtTestPlatformPlugin/mac/TestIntegrationMac.mm: Added.
1398         (TestIntegration::fontDatabase):
1399         * QtTestPlatformPlugin/main.cpp: Added.
1400         (TestIntegrationPlugin::keys):
1401         (TestIntegrationPlugin::create):
1402         (TestIntegrationPlugin::initialize):
1403         * QtTestPlatformPlugin/testplatform.json: Added.
1404         * Tools.pro:
1405         * WebKitTestRunner/Target.pri:
1406         * WebKitTestRunner/qt/main.cpp:
1407         (main):
1408
1409 2012-05-07  Christophe Dumez  <christophe.dumez@intel.com>
1410
1411         [EFL] media/video-poster-blocked-by-willsendrequest.html is flaky
1412         https://bugs.webkit.org/show_bug.cgi?id=85609
1413
1414         Reviewed by Simon Hausmann.
1415
1416         Flakiness was caused by the fact that
1417         media/crash-closing-page-with-media-as-plugin-fallback.html and
1418         media/video-poster-blocked-by-willsendrequest.html use the same PNG
1419         file as poster attribute in the video tag. The PNG file gets cached
1420         when the first test is executed and this somehow causes the second
1421         test to fail. 
1422
1423         The flakiness was addressed by clearing the memory and page caches
1424         between tests.
1425
1426         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
1427         (DumpRenderTreeChrome::resetDefaultsToConsistentValues):
1428
1429 2012-05-07  Eric Seidel  <eric@webkit.org>
1430
1431         Add values for all features to Qt's features.pri
1432         https://bugs.webkit.org/show_bug.cgi?id=85746
1433
1434         Reviewed by Tor Arne Vestbø.
1435
1436         When generate-feature-files generates features.pri it provides a value
1437         for every possible ENABLE_.  In prepration for landing generate-feature-files
1438         it seems appropriate to add a value for all possible ENABLEs to the existing
1439         features.pri.  This lets me make sure that I'm getting them all right!
1440
1441         * qmake/mkspecs/features/features.pri:
1442
1443 2012-05-07  Adam Bergkvist  <adam.bergkvist@ericsson.com>
1444
1445         Added myself as a committer.
1446
1447         Not reviewed.
1448
1449         * Scripts/webkitpy/common/config/committers.py:
1450
1451 2012-05-07  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
1452
1453         [EFL][DRT] Implement LayoutTestController::execCommand
1454         https://bugs.webkit.org/show_bug.cgi?id=82286
1455
1456         Reviewed by Antonio Gomes.
1457
1458         Add missing implementation execCommand and isCommandEnabled to EFL's
1459         LayoutTestController. 
1460
1461         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
1462         (LayoutTestController::execCommand):
1463         (LayoutTestController::isCommandEnabled):
1464
1465 2012-05-06  Hayato Ito  <hayato@chromium.org>
1466
1467         [prepare-ChangeLog] Excludes a reference file used by reftests from test files.
1468         https://bugs.webkit.org/show_bug.cgi?id=74268
1469
1470         Reviewed by Ryosuke Niwa.
1471
1472         * Scripts/prepare-ChangeLog:
1473         (generateFileList):
1474
1475 2012-05-06  Mary Wu  <mary.wu@torchmobile.com.cn>
1476
1477         Add a contributor to committers.py
1478         https://bugs.webkit.org/show_bug.cgi?id=85761
1479
1480         Reviewed by Unreviewed.
1481
1482         Add myself to committers.py contributor.
1483
1484         * Scripts/webkitpy/common/config/committers.py:
1485
1486 2012-05-06  Dan Bernstein  <mitz@apple.com>
1487
1488         Tools part of: Building and debugging WebKit in the Xcode IDE requires a lot of setup
1489         https://bugs.webkit.org/show_bug.cgi?id=85739
1490
1491         Reviewed by Daniel Bates.
1492
1493         * Scripts/build-webkit: Moved code that copies from WebKitLibraries to the product directory
1494         from here...
1495         * Scripts/copy-webkitlibraries-to-product-directory: ...to this new script.
1496
1497 2012-05-06  Andy Estes  <aestes@apple.com>
1498
1499         Fix the build after r116246.
1500
1501         * DumpRenderTree/LayoutTestController.cpp: Remove an unused function.
1502
1503 2012-05-06  Eric Seidel  <eric@webkit.org>
1504
1505         Update several build-webkit options to match the #defines they toggle
1506         https://bugs.webkit.org/show_bug.cgi?id=85744
1507
1508         Reviewed by Adam Barth.
1509
1510         Most notable here is fixing --3d-canvas to be --webgl these days --
1511         the define was renamed 15 months ago!
1512
1513         * Scripts/webkitperl/FeatureList.pm:
1514
1515 2012-05-06  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1516
1517         [EFL] EFL's LayoutTestController setJavaScriptCanAccessClipboard implementation
1518         https://bugs.webkit.org/show_bug.cgi?id=83687
1519
1520         Reviewed by Antonio Gomes.
1521
1522         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
1523         (LayoutTestController::setJavaScriptCanAccessClipboard):
1524
1525 2012-05-06  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1526
1527         Convert isPageBoxVisible to use Internals interface.
1528         https://bugs.webkit.org/show_bug.cgi?id=85692
1529
1530         Reviewed by Darin Adler.
1531
1532         Remove isPageBoxVisible functions, because it is able to work in the
1533         cross-port way through the Internals interface.
1534
1535         * DumpRenderTree/LayoutTestController.cpp:
1536         (LayoutTestController::staticFunctions):
1537         * DumpRenderTree/LayoutTestController.h:
1538         (LayoutTestController):
1539         * DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:
1540         * DumpRenderTree/chromium/LayoutTestController.cpp:
1541         (LayoutTestController::LayoutTestController):
1542         * DumpRenderTree/chromium/LayoutTestController.h:
1543         (LayoutTestController):
1544         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
1545         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
1546         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
1547         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
1548         * DumpRenderTree/qt/LayoutTestControllerQt.h:
1549         (LayoutTestController):
1550         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
1551         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
1552
1553 2012-05-06  Tom Zakrajsek  <tomz@codeaurora.org>
1554
1555         sheriffbot isn't reopening patches after it lands rollouts
1556         https://bugs.webkit.org/show_bug.cgi?id=64418
1557
1558         Reviewed by Adam Barth.
1559
1560         * Scripts/webkitpy/tool/commands/download_unittest.py:
1561         * Scripts/webkitpy/tool/steps/createbug.py:
1562         (CreateBug.run):
1563
1564 2012-05-04  Raphael Kubo da Costa  <rakuco@webkit.org>
1565
1566         webkitpy: Use os.pathsep instead of manually finding out the path separator in NRWT.
1567         https://bugs.webkit.org/show_bug.cgi?id=85697
1568
1569         Reviewed by Eric Seidel.
1570
1571         * Scripts/new-run-webkit-tests: Instead of manually detecting whether
1572         the path separator should be ':' or ';' by checking sys.platform, rely
1573         on os.pathsep which has exactly the same information (os.pathsep is
1574         ':' for Cygwin, from what I could check in Python's sources).
1575
1576 2012-05-05  Sheriff Bot  <webkit.review.bot@gmail.com>
1577
1578         Unreviewed, rolling out r116223.
1579         http://trac.webkit.org/changeset/116223
1580         https://bugs.webkit.org/show_bug.cgi?id=85718
1581
1582         The bots need to set XDG_DATA_DIRS (Requested by rakuco on
1583         #webkit).
1584
1585         * efl/jhbuildrc:
1586         * gtk/jhbuildrc:
1587
1588 2012-05-05  Raphael Kubo da Costa  <rakuco@webkit.org>
1589
1590         [jhbuild] Do not set XDG_DATA_DIRS in jhbuildrc.
1591         https://bugs.webkit.org/show_bug.cgi?id=85717
1592
1593         Reviewed by Martin Robinson.
1594
1595         After r116209, the XDG_DATA_DIRS environment variable is now
1596         passed by webkitpy's layout_tests code to run-with-jhbuild, so
1597         instead of setting a few defaults in jhbuildrc we can now rely on
1598         the values set and really used by each system.
1599
1600         * efl/jhbuildrc:
1601         * gtk/jhbuildrc:
1602
1603 2012-05-05  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1604
1605         [Qt] Buildfix for --minimal build after r116107.
1606
1607         Reviewed by Csaba Osztrogonác.
1608
1609         * qmake/mkspecs/features/features.prf:
1610
1611 2012-05-05  Zan Dobersek  <zandobersek@gmail.com>
1612
1613         [Gtk] GtkDriver is not required anymore after r116134
1614         https://bugs.webkit.org/show_bug.cgi?id=85699
1615
1616         Reviewed by Csaba Osztrogonác.
1617
1618         Remove GtkDriver as it was replaced by the XvfbDriver and is
1619         no longer needed.
1620
1621         * Scripts/webkitpy/layout_tests/port/gtk.py:
1622
1623 2012-05-05  Zan Dobersek  <zandobersek@gmail.com>
1624
1625         Increase the display ID for the Xvfb process to use if pixel_tests argument
1626         is true rather than if pixel_tests option is present. This fixes the
1627         XvfbDriver in the same way r115825 fixed the now-redundant GtkDriver.
1628
1629         Rubber-stamped by Csaba Osztrogonác.
1630
1631         * Scripts/webkitpy/layout_tests/port/xvfbdriver.py:
1632         (XvfbDriver._start):
1633
1634 2012-05-04  Raphael Kubo da Costa  <rakuco@webkit.org>
1635
1636         webkitpy: Preserve XDG_DATA_DIRS in the environment passed to ServerProcess.
1637         https://bugs.webkit.org/show_bug.cgi?id=85694
1638
1639         Reviewed by Martin Robinson.
1640
1641         This is sort of a follow-up to r100674: $XDG_DATA_DIRS should be
1642         preserved, as it is particularly useful for Linux/Unix
1643         environments.  As a real use case, if shared-mime-info is
1644         installed into a non-trivial prefix, Glib and other libraries will
1645         have trouble to properly identify mimetypes (in ResourceResponses,
1646         for example) as the base freedesktop.org mimetype file will not be
1647         found.
1648
1649         * Scripts/webkitpy/layout_tests/port/base.py:
1650         (Port.to.setup_environ_for_server):
1651
1652 2012-05-04  Gustavo Noronha Silva  <gns@gnome.org>
1653
1654         [GTK] Simplify how libWebCoreModules is linked in, and fix WebKit2 build
1655         https://bugs.webkit.org/show_bug.cgi?id=85691
1656
1657         * GNUmakefile.am: no longer link libWebCoreModules to DumpRenderTree.
1658
1659 2012-05-04  Eric Seidel  <eric@webkit.org>
1660
1661         Make capitalization and descriptions in FeatureList.pm more consistent to make easier to autogenerate
1662         https://bugs.webkit.org/show_bug.cgi?id=85583
1663
1664         Reviewed by Daniel Bates.
1665
1666         * Scripts/webkitperl/FeatureList.pm:
1667
1668 2012-05-04  Eric Seidel  <eric@webkit.org>
1669
1670         Sort entries in FeaturesList.pm to make them easier to autogenerate
1671         https://bugs.webkit.org/show_bug.cgi?id=85584
1672
1673         Reviewed by Daniel Bates.
1674
1675         No functional changes, only sorting.
1676
1677         * Scripts/webkitperl/FeatureList.pm:
1678
1679 2012-05-04  Andy Estes  <aestes@apple.com>
1680
1681         REGRESSION (r115752): WebKit2.NewFirstVisuallyNonEmptyLayout API test times out
1682         https://bugs.webkit.org/show_bug.cgi?id=85675
1683
1684         * TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayout.cpp:
1685         (TestWebKitAPI::TEST): Disable the test.
1686
1687 2012-04-30  Jer Noble  <jer.noble@apple.com>
1688
1689         Full screen will exit during a provisional load of a non-ancestor iframe.
1690         https://bugs.webkit.org/show_bug.cgi?id=85230
1691
1692         Reviewed by Maciej Stachowiak .
1693
1694         Add support for the new UIDelegate webView:closeFullScreenWithListener: method:
1695         * DumpRenderTree/mac/UIDelegate.mm:
1696         (-[UIDelegate webView:closeFullScreenWithListener:]):
1697
1698         Add support for the new closeFullScreen injected bundle method:
1699         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1700         (WTR::InjectedBundlePage::InjectedBundlePage):
1701         (WTR::InjectedBundlePage::closeFullScreen):
1702         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
1703
1704 2012-05-04  Ojan Vafai  <ojan@chromium.org>
1705
1706         Fix test naming to be camel-case like the methods they are testing.
1707
1708         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
1709         (test):
1710
1711 2012-05-04  Ojan Vafai  <ojan@chromium.org>
1712
1713         Show the results links in the embedded flakiness dashboard
1714         https://bugs.webkit.org/show_bug.cgi?id=85660
1715
1716         Reviewed by Adam Barth.
1717
1718         Turns out these links don't add much visual noise and it's annoying
1719         to have to go to the dashboard from garden-o-matic just to view the
1720         results for a test.
1721
1722         This is useful for cases where garden-o-matic doesn't properly show the
1723         results (e.g. missing tests). If we address all those cases, then
1724         we could easily hide the results links again if we wanted to.
1725
1726         * TestResultServer/static-dashboards/flakiness_dashboard.js:
1727         (showUpdateInfoForTest):
1728         (htmlForIndividualTestOnAllBuildersWithResultsLinks):
1729         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
1730         (test):
1731
1732 2012-05-04  Dirk Pranke  <dpranke@chromium.org>
1733
1734         Revert to using chromium --test-shell mode on SL in NRWT
1735
1736         https://bugs.webkit.org/show_bug.cgi?id=83076
1737
1738         Unreviewed, build fix.
1739
1740         We seem to be seeing a lot more flakiness on the bot since
1741         I switched NRWT to "DRT" mode. We'll try reverting back and
1742         see if this helps things.
1743
1744         * Scripts/webkitpy/layout_tests/port/chromium.py:
1745         (ChromiumDriver.__init__):
1746
1747 2012-05-04  Christophe Dumez  <christophe.dumez@intel.com>
1748
1749         [EFL] Implement layoutTestController.dumpResourceResponseMIMETypes
1750         https://bugs.webkit.org/show_bug.cgi?id=84941
1751
1752         Reviewed by Martin Robinson.
1753
1754         Print MIME type detection messages in EFL's DumpRenderTree if
1755         LayoutTestController's dumpResourceResponseMIMETypes() returns true.
1756
1757         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
1758         (DumpRenderTreeChrome::onResponseReceived):
1759
1760 2012-05-04  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
1761
1762         [GTK] DRT needs an implementation of LayoutTestController::setDefersLoading and ::goBack
1763         https://bugs.webkit.org/show_bug.cgi?id=85134
1764
1765         Reviewed by Martin Robinson.
1766
1767         Add missing implementation setDefersLoading and goBack to GTK's
1768         LayoutTestController so that the test case rely on these methods
1769         can be enabled.
1770
1771         * DumpRenderTree/gtk/DumpRenderTree.cpp:
1772         (resetDefaultsToConsistentValues):
1773         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
1774         (LayoutTestController::goBack):
1775         (LayoutTestController::setDefersLoading):
1776
1777 2012-05-04  Kristóf Kosztyó  <kkristof@inf.u-szeged.hu>
1778
1779         [Qt][NRWT] Run each DRT in it's own xvfb
1780         https://bugs.webkit.org/show_bug.cgi?id=77335
1781
1782         Reviewed by Dirk Pranke.
1783
1784         * Scripts/webkitpy/layout_tests/port/gtk.py:
1785         (GtkPort._driver_class):
1786         * Scripts/webkitpy/layout_tests/port/qt.py:
1787         (QtPort._driver_class):
1788         * Scripts/webkitpy/layout_tests/port/xvfbdriver.py: Added.
1789         (XvfbDriver):
1790         (XvfbDriver._start):
1791         (XvfbDriver._start.x_filter):
1792         (XvfbDriver.stop):
1793
1794 2012-05-04  Zan Dobersek  <zandobersek@gmail.com>
1795
1796         Use destructuring assingment for the return values of the
1797         port.diff_image() method call.
1798
1799         Rubber-stamped by Dirk Pranke.
1800
1801         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
1802         (write_test_result):
1803
1804 2012-05-03  Ojan Vafai  <ojan@chromium.org>
1805
1806         Store fewer runs by default in the flakiness dashboard
1807         https://bugs.webkit.org/show_bug.cgi?id=85568
1808
1809         Reviewed by Dirk Pranke.
1810
1811         This will greatly shrink the size of the json files we load,
1812         resulting in a much faster initial load. People rarely care
1813         about more than 100 runs. For the cases they do, they can still click
1814         the show all runs checkbox to show 500 runs.
1815
1816         * TestResultServer/model/jsonresults.py:
1817
1818 2012-05-04  Christophe Dumez  <christophe.dumez@intel.com>
1819
1820         [EFL] Frame load callbacks output is missing for redirections
1821         https://bugs.webkit.org/show_bug.cgi?id=85173
1822
1823         Reviewed by Antonio Gomes.
1824
1825         Catch the new ewk_frame signals to print the expected output in case
1826         of redirections, when LayoutTestController's dumpFrameLoadCallbacks()
1827         returns true.
1828
1829         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
1830         (DumpRenderTreeChrome::createView):
1831         (DumpRenderTreeChrome::onWillSendRequest):
1832         (DumpRenderTreeChrome::onFrameCreated):
1833         (DumpRenderTreeChrome::onFrameRedirectForProvisionalLoad):
1834         (DumpRenderTreeChrome::onFrameRedirectRequested):
1835         (DumpRenderTreeChrome::onResponseReceived):
1836         * DumpRenderTree/efl/DumpRenderTreeChrome.h:
1837         (DumpRenderTreeChrome):
1838
1839 2012-05-04  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1840
1841         [Qt] Fix up warning about missing GLib/Gio/GStreamer
1842
1843         We don't actually fall back.
1844
1845         Rubber-stamped by Csaba Osztrogonác.
1846
1847         * qmake/mkspecs/features/features.prf:
1848
1849 2012-05-04  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1850
1851         [Qt] Clarify warning about missing GLib/Gio/GStreamer for media support
1852
1853         And only print it once.
1854
1855         Reviewed by Csaba Osztrogonác.
1856
1857         * qmake/mkspecs/features/features.prf:
1858
1859 2012-05-04  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1860
1861         [Qt] Clean up and split features.prf into a static list of defaults
1862
1863         The static list of feature defaults is used as a fallback for any
1864         feature that's not dynamically detected or overriden on the command
1865         line (though build-webkit or passing DEFINES+= to qmake).
1866
1867         The static list is complete, which allows for auto-generation based
1868         on Features.py (see bug https://bugs.webkit.org/show_bug.cgi?id=85456)
1869
1870         https://bugs.webkit.org/show_bug.cgi?id=85611
1871
1872         Reviewed by Simon Hausmann.
1873
1874         * Scripts/build-webkit:
1875         * Tools.pro:
1876         * qmake/mkspecs/features/features.prf:
1877         * qmake/mkspecs/features/features.pri: Added.
1878
1879 2012-05-04  Sheriff Bot  <webkit.review.bot@gmail.com>
1880
1881         Unreviewed, rolling out r116085, r116091, and r116095.
1882         http://trac.webkit.org/changeset/116085
1883         http://trac.webkit.org/changeset/116091
1884         http://trac.webkit.org/changeset/116095
1885         https://bugs.webkit.org/show_bug.cgi?id=85628
1886
1887         We are not ready with dependencies on all platform yet (mac) +
1888         problems with debug builds. (Requested by Zoltan on #webkit).
1889
1890         * qmake/mkspecs/features/features.prf:
1891
1892 2012-05-04  Christophe Dumez  <christophe.dumez@intel.com>
1893
1894         [EFL] LayoutTestController does not support overriding WebKitLoadSiteIconsKey
1895         https://bugs.webkit.org/show_bug.cgi?id=85171
1896
1897         Reviewed by Andreas Kling.
1898
1899         Implement support for overriding "WebKitLoadSiteIconsKey" setting in
1900         EFL's LayoutTestController.
1901
1902         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
1903         (DumpRenderTreeChrome::resetDefaultsToConsistentValues):
1904         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
1905         (LayoutTestController::overridePreference):
1906
1907 2012-05-03  Alexis Menard  <alexis.menard@openbossa.org>
1908
1909         [Qt] Enable fullscreen API for WebKit2.
1910         https://bugs.webkit.org/show_bug.cgi?id=85498
1911
1912         Reviewed by Simon Hausmann.
1913
1914         Enable the fullscreen API on the MiniBrowser and turn
1915         it default on WebKit2, disable it on WK1.
1916
1917         * MiniBrowser/qt/BrowserWindow.cpp:
1918         (BrowserWindow::BrowserWindow):
1919         * MiniBrowser/qt/qml/BrowserWindow.qml:
1920         * Scripts/webkitperl/FeatureList.pm:
1921         * qmake/mkspecs/features/features.prf:
1922
1923 2012-05-04  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
1924
1925         REGRESSION(r116008) old-run-webkit-tests broken
1926         https://bugs.webkit.org/show_bug.cgi?id=85597
1927
1928         Reviewed by Simon Hausmann.
1929
1930         Reinstate libraryContainsSymbol.
1931
1932         * Scripts/webkitperl/features.pm:
1933         (libraryContainsSymbol):
1934
1935 2012-05-04  Zoltan Horvath  <zoltan@webkit.org>
1936
1937         [Qt] Set WebCore imagedecoders as default and add fallback to QImageDecoder
1938         https://bugs.webkit.org/show_bug.cgi?id=80400
1939
1940         Remove WTF_USE_QT_IMAGE_DECODER macro.
1941
1942         Reviewed by Simon Hausmann.
1943
1944         * qmake/mkspecs/features/features.prf:
1945
1946 2012-05-03  Christophe Dumez  <christophe.dumez@intel.com>
1947
1948         [EFL] DRT should obey layoutTestController's addURLToRedirect()
1949         https://bugs.webkit.org/show_bug.cgi?id=82722
1950
1951         Reviewed by Maciej Stachowiak.
1952
1953         Implement support for layoutTestController's addURLToRedirect()
1954         in EFL's DRT so that it redirects properly when indicated.
1955
1956         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
1957         (DumpRenderTreeChrome::onWillSendRequest):
1958
1959 2012-05-03  Christophe Dumez  <christophe.dumez@intel.com>
1960
1961         [EFL] DRT should support LayoutTestController's willSendRequestReturnsNullOnRedirect()
1962         https://bugs.webkit.org/show_bug.cgi?id=82704
1963
1964         Reviewed by Antonio Gomes.
1965
1966         EFL's DRT needs to obey LayoutTestController's
1967         willSendRequestReturnsNullOnRedirect().
1968
1969         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
1970         (DumpRenderTreeChrome::onWillSendRequest):
1971
1972 2012-05-03  Raphael Kubo da Costa  <rakuco@webkit.org>
1973
1974         git-add-reviewer: Do not put the bug title and its URL in the same line in the commit message.
1975         https://bugs.webkit.org/show_bug.cgi?id=85570
1976
1977         Reviewed by Adam Roben.
1978
1979         The standard format of commit messages and ChangeLog entries has a
1980         short summary in the first line, followed by the bug URL in
1981         Bugzilla. Passing "%s" in the pretty format line to git-rev-list
1982         merges these two lines into a single one separated by a space
1983         character, which is not what we want.
1984
1985         Since "%s%n%n%b" is in practice "%B" (raw message), use it
1986         instead, as the first two lines do not end up being merged
1987         together.
1988
1989         * Scripts/git-add-reviewer:
1990         (writeCommitMessageToFile):
1991
1992 2012-05-03  Ojan Vafai  <ojan@chromium.org>
1993
1994         Improve UI for garden-o-matic examine view when there are fewer than 5 tests.
1995         https://bugs.webkit.org/show_bug.cgi?id=85566
1996
1997         Reviewed by Adam Barth.
1998
1999         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
2000         (.):
2001         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:
2002         (.):
2003         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/results.css:
2004
2005 2012-05-03  Raphael Kubo da Costa  <rakuco@webkit.org>
2006
2007         webkitpy: Recognize FreeBSD as a valid platform.
2008         https://bugs.webkit.org/show_bug.cgi?id=81467
2009
2010         Reviewed by Adam Barth.
2011
2012         Add PlatformInfo.is_freebsd() so that trying to use webkit-patch
2013         on FreeBSD does not raise an "unrecognized platform" exception.
2014
2015         Most of this patch contains some unit tests for the mentioned
2016         method, as currently platform-specific code is needed only on
2017         Windows.
2018
2019         * Scripts/webkitpy/common/system/platforminfo.py:
2020         (PlatformInfo.__init__):
2021         (PlatformInfo.is_freebsd):
2022         (PlatformInfo._determine_os_name):
2023         * Scripts/webkitpy/common/system/platforminfo_mock.py:
2024         (MockPlatformInfo.is_freebsd):
2025         * Scripts/webkitpy/common/system/platforminfo_unittest.py:
2026         (fake_platform):
2027         (fake_platform.FakePlatformModule.release):
2028         (TestPlatformInfo.test_real_code):
2029         (TestPlatformInfo.test_os_name_and_wrappers):
2030         (TestPlatformInfo.test_os_version):
2031         (TestPlatformInfo.test_display_name):
2032         (TestPlatformInfo.test_total_bytes_memory):
2033         (TestPlatformInfo.test_free_bytes_memory):
2034         * Scripts/webkitpy/layout_tests/port/factory.py:
2035         (PortFactory._default_port):
2036
2037 2012-05-03  Ojan Vafai  <ojan@chromium.org>
2038
2039         Make the table headers white-space:nowrap. This decreases the vertical size,
2040         which makes for more minimal embedding in garden-o-matic.
2041
2042         * TestResultServer/static-dashboards/flakiness_dashboard_tests.css:
2043         (.table-header-content *):
2044
2045 2012-05-03  Eric Seidel  <eric@webkit.org>
2046
2047         Split build-webkit's feature option list off into its own module in preparation for autogeneration
2048         https://bugs.webkit.org/show_bug.cgi?id=85548
2049
2050         Reviewed by Daniel Bates.
2051
2052         My Perl-fu is very weak.  This moves the feature option list off into a separate module
2053         file so that I can easily autogenerate just that file with the fancy new generate-feature-files command.
2054         It's a bit odd to have an array which we return out to build-webkit to modify, but it turns out
2055         not to matter.  Also, build-webkit doesn't actually use any of the variables we're using to
2056         store the results from the option parse, so those end up inaccessible from build-webkit (except by reference)
2057         which is actually cleaner.  Callers can't assume that they would get a new array every time, but someone
2058         with more Perl-fu than I could create something fancier than this if we need in the future.
2059
2060         * Scripts/build-webkit:
2061         * Scripts/webkitperl/FeatureList.pm: Added.
2062         (getFeatureOptionList):
2063
2064 2012-05-03  Dirk Pranke  <dpranke@chromium.org>
2065
2066         REGRESSION: run-webkit-tests failing on Chromium Mac
2067         https://bugs.webkit.org/show_bug.cgi?id=85459
2068
2069         Unreviewed, build fix.
2070
2071         Turns out select doesn't throw IOErrors, it has it's own kind of
2072         error :(. Trap that instead.
2073
2074         * Scripts/webkitpy/layout_tests/port/server_process.py:
2075         (ServerProcess._wait_for_data_and_update_buffers_using_select):
2076
2077 2012-05-03  Raphael Kubo da Costa  <rakuco@webkit.org>
2078
2079         [CMake] Rewrite FindCairo.cmake.
2080         https://bugs.webkit.org/show_bug.cgi?id=84895
2081
2082         Reviewed by Daniel Bates.
2083
2084         The old approach relied on pkg-config for finding Cairo (which
2085         introduced a dependency on pkg-config that could be avoided), used
2086         the LibFindMacros code that we should probably remove in the
2087         future and did not use the FindPackageHandleStandardArguments
2088         module.
2089
2090         Change all that by rewriting the module.
2091         - Use the pkg-config output optionally instead of requiring it
2092         like LibFindMacros did.
2093         - Remove the implicit dependency on FreeType which often found it
2094         the wrong way via pkg-config and without considering
2095         CMAKE_PREFIX_PATH.
2096         - Retrieve the Cairo version by looking at cairo-version.h instead
2097         of relying on pkg-config. It requires some additional code for
2098         checking if the desired version has been found, but that will not
2099         be needed once we start depending on CMake 2.8.3 or later.
2100
2101         The only downside is that FPHSA sets <UPPERCASED_NAME>_FOUND
2102         instead of <Name>_FOUND, and to keep things consistent
2103         Cairo_LIBRARIES and Cairo_INCLUDE_DIRS have become CAIRO_LIBRARIES
2104         and CAIRO_INCLUDE_DIRS.
2105
2106         * DumpRenderTree/efl/CMakeLists.txt: Use CAIRO_FOO instead of
2107         Cairo_FOO.
2108         * EWebLauncher/CMakeLists.txt: Ditto.
2109
2110 2012-05-03  Ojan Vafai  <ojan@chromium.org>
2111
2112         Fix modifier and bug sorting on the flakiness dashboard
2113         https://bugs.webkit.org/show_bug.cgi?id=85554
2114
2115         Reviewed by Dirk Pranke.
2116
2117         The sorting assumes that the column header name matches a field
2118         in the testResults object and uses that field for sorting.
2119         Filter the bugs out of the modifiers list and put them in a bugs field
2120         and only put the non-bug modifiers in the modifiers list.
2121
2122         * TestResultServer/static-dashboards/flakiness_dashboard.js:
2123         (populateExpectationsData):
2124         (htmlForSingleTestRow):
2125         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
2126
2127 2012-05-03  Ojan Vafai  <ojan@chromium.org>
2128
2129         Fix some state resetting when running unittests. HtmlForSingleTestRow
2130         was flaky.
2131
2132         * TestResultServer/static-dashboards/flakiness_dashboard.js:
2133         (htmlForSingleTestRow):
2134         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
2135         (resetGlobals):
2136
2137 2012-05-03  Raphael Kubo da Costa  <rakuco@webkit.org>
2138
2139         webkitpy: Use PlatformInfo wherever possible in the User class.
2140         https://bugs.webkit.org/show_bug.cgi?id=85549
2141
2142         Reviewed by Dirk Pranke.
2143
2144         Instead of relying on sys.platform to detect whether the current
2145         platform is a Mac, use the PlatformInfo class instead.
2146
2147         * Scripts/webkitpy/common/system/user.py:
2148         (User.__init__):
2149         (User.edit_changelog):
2150
2151 2012-05-03  Ojan Vafai  <ojan@chromium.org>
2152
2153         Remove the percent failed column from the flakiness dashboard
2154         https://bugs.webkit.org/show_bug.cgi?id=85552
2155
2156         Reviewed by Dirk Pranke.
2157
2158         This column isn't useful enough to justify the visual noise.
2159
2160         * TestResultServer/static-dashboards/flakiness_dashboard.js:
2161         (processMissingAndExtraExpectations):
2162         (tableHeaders):
2163         (htmlForSingleTestRow):
2164         (sortTests):
2165         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
2166         (test):
2167
2168 2012-05-03  Eric Seidel  <eric@webkit.org>
2169
2170         --coverage should not not use the "feature" options system in build-webkit, similarly remove special-casing for WTF_URL
2171         https://bugs.webkit.org/show_bug.cgi?id=85542
2172
2173         Reviewed by Daniel Bates.
2174
2175         Remove these last two odd-men-out, so that we can generate the default feature options
2176         for build-webkit using the new generate-feature-files command.
2177         The Mac build system has some special casing for ENABLE_ defines which gets them
2178         defined as -D on the build command, even though initially they start out as
2179         environment variables ENABLE_FOO = ENABLE_FOO.  The Feature options in build-webkit
2180         depend on this support, but it doesn't work for WTF_USE_ defines like WTF_USE_WTF_URL.
2181         I'm told that WTF_URL is not actively being worked on, so just removing it for now.
2182         It should probably come back to life as an ENABLE_, or build-webkit or the Xcode projects
2183         should be made generically smarter about these USE_WTF defines.
2184         (There is still WTF_USE_TILED_BACKING_STORE in the feature list, but it only seems
2185         used by Qt.  If someone tried build-webkit --tiled-backing-store on Mac today it
2186         would not work!)
2187
2188         * Scripts/build-webkit:
2189
2190 2012-05-03  Eric Seidel  <eric@webkit.org>
2191
2192         Remove the last bits of Leopard support from our perl scripts
2193         https://bugs.webkit.org/show_bug.cgi?id=85545
2194
2195         Reviewed by Daniel Bates.
2196
2197         Chromium still supports Leopard (for a little while yet), but AppleMacWebKit dropped
2198         Leopard support several months ago.  Remove the last bits of isLeopard() branching
2199         in our Perl scripts, since no one is using this (Chromium has never used this Perl code).
2200
2201         * Scripts/build-webkit:
2202         * Scripts/old-run-webkit-tests:
2203         (countAndPrintLeaks):
2204         (captureSavedCrashLog):
2205         * Scripts/webkitdirs.pm:
2206         (determineArchitecture):
2207         (argumentsForRunAndDebugMacWebKitApp):
2208
2209 2012-05-03  Ojan Vafai  <ojan@chromium.org>
2210
2211         [Chromium] Don't show the WebKit Linux ASAN bot on the flakiness dashboard.
2212         https://bugs.webkit.org/show_bug.cgi?id=85551
2213
2214         Reviewed by Dirk Pranke.
2215
2216         It's not uploading results and in the short term we don't plan to have it start.
2217
2218         * TestResultServer/static-dashboards/builders.js:
2219         (isChromiumWebkitTipOfTreeTestRunner):
2220         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
2221
2222 2012-05-03  Ojan Vafai  <ojan@chromium.org>
2223
2224         Show the test name in the dashboard if showChrome==false and we're showing multiple tests
2225         https://bugs.webkit.org/show_bug.cgi?id=85243
2226
2227         Reviewed by Dirk Pranke.
2228
2229         This happens for cases where a test name matches multiple tests.
2230         In practice, this only happens for virtual test suites (e.g. the canvas tests).
2231
2232         * TestResultServer/static-dashboards/flakiness_dashboard.js:
2233         (htmlForIndividualTestOnAllBuildersWithChrome):
2234         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
2235         (testHtmlForIndividualTestOnAllBuildersWithChromeNonexistant):
2236         (testHtmlForIndividualTestOnAllBuildersWithChrome):
2237         (testHtmlForIndividualTestOnAllBuildersWithChromeWebkitMaster):
2238         (testHtmlForIndividualTests):
2239
2240 2012-05-03  Ojan Vafai  <ojan@chromium.org>
2241
2242         Port the flakiness dashboard unittests to qunit
2243         https://bugs.webkit.org/show_bug.cgi?id=85544
2244
2245         Reviewed by Adam Barth.
2246
2247         * TestResultServer/static-dashboards/dashboard_base.js:
2248         (appendJSONScriptElements):
2249         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
2250         (resetGlobals):
2251         (runExpectationsTest):
2252         (test):
2253         * TestResultServer/static-dashboards/run-unittests.html: Added.
2254
2255 2012-05-03  Raphael Kubo da Costa  <rakuco@webkit.org>
2256
2257         webkitpy: Remove check for readline on Mac.
2258         https://bugs.webkit.org/show_bug.cgi?id=85547
2259
2260         Reviewed by Eric Seidel.
2261
2262         Python 2.5 is not supported by the WebKit project anymore, and
2263         Python's readline documentation does not mention the module not
2264         being available in the supported versions.
2265
2266         * Scripts/webkitpy/common/system/user.py:
2267
2268 2012-05-03  Thiago Marcos P. Santos  <thiago.santos@intel.com>
2269
2270         [NRWT] Run performance tests with lock
2271         https://bugs.webkit.org/show_bug.cgi?id=78628
2272
2273         Reviewed by Tony Chang.
2274
2275         Locking performance tests (like we do for http tests) will force them
2276         to run in serial. This reduces the load of the machine when running perf
2277         tests and minimizes the chances of the tests to fail, specially
2278         timeouts.
2279
2280         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2281         (Manager.__init__):
2282         (Manager._is_perf_test):
2283         (Manager._test_requires_lock):
2284         * Scripts/webkitpy/layout_tests/port/http_lock.py:
2285
2286 2012-05-03  Dirk Pranke  <dpranke@chromium.org>
2287
2288         Attempt to fix a crash on SL ...
2289
2290         Unreviewed, build fix.
2291
2292         It looks like we may be getting an IOError raised during
2293         select() on chromium mac, and that error isn't being caught.
2294         Pushing it into the try/catch block will hopefully catch this
2295         and allow us to see why the subprocess is crashing.
2296
2297         * Scripts/webkitpy/layout_tests/port/server_process.py:
2298         (ServerProcess._wait_for_data_and_update_buffers_using_select):
2299
2300 2012-05-02  Jon Honeycutt  <jhoneycutt@apple.com>
2301
2302         WebFrameLoaderClient::dispatchWillSendSubmitEvent() needs to be
2303         implemented for WebKit2
2304         https://bugs.webkit.org/show_bug.cgi?id=84304
2305
2306         Reviewed by Jessie Berlin.
2307
2308         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2309         Added new files to project.
2310
2311         * TestWebKitAPI/Tests/WebKit2/WillSendSubmitEvent.cpp: Added.
2312         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
2313         Look for the "DidReceiveWillSendSubmitEvent" message. The message body
2314         will be the dictionary of form control names and values passed to the
2315         injected bundle's willSendSubmitEvent handler; look for the pairs
2316         "textField" -> "text field" and "passwordField" -> "password field".
2317         Check that "hiddenField" is not included.
2318         (TestWebKitAPI::setInjectedBundleClient):
2319         (TestWebKitAPI::TEST):
2320
2321         * TestWebKitAPI/Tests/WebKit2/WillSendSubmitEvent_Bundle.cpp: Added.
2322         (TestWebKitAPI::willSendSubmitEvent):
2323         Post a message to the TestWebKitAPI process with the dictionary of form
2324         control names and values that we received.
2325         (TestWebKitAPI::WillSendSubmitEventTest::WillSendSubmitEventTest):
2326         (TestWebKitAPI::WillSendSubmitEventTest::didCreatePage):
2327         Set up the page's form client.
2328
2329         * TestWebKitAPI/Tests/WebKit2/auto-submitting-form.html: Added.
2330
2331 2012-05-03  Eric Seidel  <eric@webkit.org>
2332
2333         Remove dead code from build-webkit for working around old XCode dependency bug
2334         https://bugs.webkit.org/show_bug.cgi?id=85535
2335
2336         Reviewed by Adam Barth.
2337
2338         Xcode used to have a bug whereby it didn't notice if you changed the #defines
2339         passed on the command line to xcodebuild.  I wrote code to work around this
2340         while bringing up SVG support 5-6 years ago.  I think we can finally remove this
2341         code from build-webkit, since SVG is the only feature flag to ever use it
2342         (modern in-progress features like MathML don't seem to be using the support)
2343         an I suspect the XCode bug has long been fixed.
2344
2345         * Scripts/build-webkit:
2346         * Scripts/webkitperl/features.pm:
2347
2348 2012-05-03  Andy Estes  <aestes@apple.com>
2349
2350         InjectedBundleControllerMac.mm needs to include config.h
2351         https://bugs.webkit.org/show_bug.cgi?id=85531
2352
2353         Reviewed by Andreas Kling.
2354
2355         * TestWebKitAPI/mac/InjectedBundleControllerMac.mm:
2356
2357 2012-05-03  Raphael Kubo da Costa  <rakuco@webkit.org>
2358
2359         webkitpy: Use PlatformInfo whenever possible in server_process.py.
2360         https://bugs.webkit.org/show_bug.cgi?id=85516
2361
2362         Reviewed by Eric Seidel.
2363
2364         Eliminate direct access to sys.platform wherever possible by using
2365         PlatformInfo.is_win() instead.
2366
2367         * Scripts/webkitpy/layout_tests/port/server_process.py:
2368         (ServerProcess.__init__): Remove the executive parameter as it was
2369         not passed by any caller, obtain a SystemHost from port_obj
2370         instead.
2371         (ServerProcess._log): Style, remove extra empty line.
2372         (ServerProcess._start):
2373         (ServerProcess.stop):
2374         (ServerProcess.kill):
2375         * Scripts/webkitpy/layout_tests/port/server_process_unittest.py:
2376         (TrivialMockPort.__init__): Create a MockSystemHost used by
2377         ServerProcess.
2378         (TestServerProcess.test_broken_pipe): Test different platforms.
2379
2380 2012-05-03  Thiago Marcos P. Santos  <thiago.santos@intel.com>
2381
2382         webkitpy: Style checker broken when committing a PNG
2383         https://bugs.webkit.org/show_bug.cgi?id=85504
2384
2385         Reviewed by Dirk Pranke.
2386
2387         * Scripts/webkitpy/style/checkers/png.py:
2388         (PNGChecker.__init__):
2389
2390 2012-05-03  Philippe Normand  <pnormand@igalia.com>
2391
2392         Unreviewed, fix another call to join(), similar to the ones landed
2393         in r115975.
2394
2395         * Scripts/webkitdirs.pm:
2396         (jhbuildConfigurationChanged):
2397
2398 2012-05-03  Raphael Kubo da Costa  <rakuco@webkit.org>
2399
2400         webkitpy: Remove sys.platform accesses in CrashLogs.
2401         https://bugs.webkit.org/show_bug.cgi?id=85436
2402
2403         Reviewed by Dirk Pranke.
2404
2405         Instead of directly checking for sys.platform == 'darwin', use a
2406         SystemHost and call PlatformInfo.is_mac().
2407
2408         * Scripts/webkitpy/common/system/crashlogs.py:
2409         (CrashLogs.__init__):
2410         (CrashLogs.find_newest_log):
2411         (CrashLogs._log_directory_darwin):
2412         (CrashLogs._find_newest_log_darwin):
2413         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
2414         (CrashLogsTest.test_find_log_darwin):
2415         * Scripts/webkitpy/layout_tests/port/mac.py:
2416         (MacPort._get_crash_log):
2417         * Scripts/webkitpy/layout_tests/port/test.py:
2418         (TestDriver.run_test):
2419         * Scripts/webkitpy/tool/commands/queries.py:
2420         (execute):
2421
2422 2012-05-03  Philippe Normand  <pnormand@igalia.com>
2423
2424         [GTK] join() is wrongly used in webkitdirs.pm since r115532
2425         https://bugs.webkit.org/show_bug.cgi?id=85501
2426
2427         Reviewed by Martin Robinson.
2428
2429         * Scripts/webkitdirs.pm:
2430         (getJhbuildPath):
2431         (buildAutotoolsProject):
2432
2433 2012-05-03  Zan Dobersek  <zandobersek@gmail.com>
2434
2435         [Gtk] ImageDiff crashes when it can't open a display
2436         https://bugs.webkit.org/show_bug.cgi?id=85476
2437
2438         Reviewed by Martin Robinson.
2439
2440         Replace gdk_init() initialization call with the g_type_init()
2441         call. GdkPixbufLoader doesn't actually need the current call to be
2442         made and this change will also remove crashes when ImageDiff
2443         is started in an environment without a DISPLAY env.
2444
2445         * DumpRenderTree/gtk/ImageDiff.cpp:
2446         (main):
2447
2448 2012-05-03  Zan Dobersek  <zandobersek@gmail.com>
2449
2450         ImageDiff should be run inside a properly established environment
2451         https://bugs.webkit.org/show_bug.cgi?id=85292
2452
2453         Reviewed by Martin Robinson.
2454
2455         When creating the ImageDiff server process, pass along a freshly-set-up environment
2456         in which the process should be executed in.
2457
2458         * Scripts/webkitpy/layout_tests/port/webkit.py:
2459         (WebKitPort._start_image_diff_process):
2460
2461 2012-05-03  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2462
2463         [Qt] Allow the web process and WTR to be paused on startup
2464
2465         Makes it easier to debug the web process or run-webkit-tests -2, as you
2466         have ample time to attach gdb to the process.
2467
2468         Reviewed by Simon Hausmann.
2469
2470         * Scripts/webkitpy/layout_tests/port/qt.py:
2471         (QtPort.setup_environ_for_server):
2472         * WebKitTestRunner/qt/main.cpp:
2473         (main):
2474
2475 2012-05-03  Csaba Osztrogonác  <ossy@webkit.org>
2476
2477         Password protect "Stop build" button
2478         https://bugs.webkit.org/show_bug.cgi?id=81982
2479
2480         Reviewed by Ryosuke Niwa.
2481
2482         Only authenticated users should be able to use stopBuild, stopAllBuilds, cancelPendingBuild
2483         features to prevent killing builds on build.webkit.org by SPAM bots.
2484
2485         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2486
2487 2012-05-03  Dongwoo Im  <dw.im@samsung.com>
2488
2489         [DRT] Remove the name of parameter, visibility, from the setPageVisibility stub implementations.
2490         https://bugs.webkit.org/show_bug.cgi?id=85468
2491
2492         Reviewed by Nikolas Zimmermann.
2493
2494         * DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:
2495         (LayoutTestController::setPageVisibility): Remove the name of parameter, visibility.
2496         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
2497         (LayoutTestController::setPageVisibility): Remove the name of parameter, visibility.
2498         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
2499         (LayoutTestController::setPageVisibility): Remove the name of parameter, visibility.
2500         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
2501         (LayoutTestController::setPageVisibility): Remove the name of parameter, visibility.
2502         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
2503         (LayoutTestController::setPageVisibility): Remove the name of parameter, visibility.
2504
2505 2012-05-03  Stephanie Lewis  <slewis@apple.com>
2506
2507         https://bugs.webkit.org/show_bug.cgi?id=85450 unbounded growth of JSDOMWindowShells loading pages in the same window
2508         <rdar://problem/11320059> REGRESSION (r115083): PLT3 shows linear memory growth and gets slower with each run
2509
2510         Reviewed by Brady Eidson.
2511
2512         The API added for DOMWindowExtension, didCreateGlobalObjectForFrame, would create a global object
2513         for every world, even those that did not need the callback.  This had the side effect of creating a
2514         JSDOMWindowShell that the associated world didn't necessarily know to clean up.  Instead of creating
2515         unnecessary objects change the API to globalObjectIsAvailableForFrame and do not pass the global object
2516         in the API.  The object can be accessed later by those worlds which require it.
2517
2518         * TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic.cpp:
2519         (TestWebKitAPI):
2520         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
2521         * TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic_Bundle.cpp:
2522         (TestWebKitAPI):
2523         (DOMWindowExtensionBasic):
2524         (TestWebKitAPI::DOMWindowExtensionBasic::didCreatePage):
2525         (TestWebKitAPI::DOMWindowExtensionBasic::globalObjectIsAvailableForFrame):
2526         (TestWebKitAPI::globalObjectIsAvailableForFrameCallback):
2527
2528 2012-05-03  Nikolas Zimmermann  <nzimmermann@rim.com>
2529
2530         Not reviewed. Fix mac build, it was missing setPageVisibility/resetPageVisibility stub implementations.
2531
2532         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
2533         (LayoutTestController::resetPageVisibility):
2534         (LayoutTestController::setPageVisibility):
2535
2536 2012-05-02  Alexander Færøy  <ahf@0x90.dk>
2537
2538         Rename deviceDPI to devicePixelRatio
2539         https://bugs.webkit.org/show_bug.cgi?id=85049
2540
2541         Reviewed by Kenneth Rohde Christiansen.
2542
2543         Use 1.5 as device pixel ratio for the Qt MiniBrowser.
2544
2545         * MiniBrowser/qt/qml/BrowserWindow.qml:
2546
2547 2012-05-03  Dongwoo Im  <dw.im@samsung.com>
2548
2549         [EFL][DRT] Implement the LayoutTestController's methods related to the Page Visibility API.
2550         https://bugs.webkit.org/show_bug.cgi?id=85347
2551
2552         Reviewed by Nikolas Zimmermann.
2553
2554         * DumpRenderTree/LayoutTestController.h:
2555         (LayoutTestController):
2556         * DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:
2557         (LayoutTestController::resetPageVisibility): Not implemented.
2558         (LayoutTestController::setPageVisibility): Not implemented.
2559         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
2560         (LayoutTestController::resetPageVisibility): Reset the page visibility.
2561         (LayoutTestController::setPageVisibility): Set the page visibility.
2562         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
2563         (LayoutTestController::resetPageVisibility): Not implemented.
2564         (LayoutTestController::setPageVisibility): Not implemented.
2565         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
2566         (LayoutTestController::resetPageVisibility): Not implemented.
2567         (LayoutTestController::setPageVisibility): Not implemented.
2568         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
2569         (LayoutTestController::resetPageVisibility): Not implemented.
2570         (LayoutTestController::setPageVisibility): Not implemented.
2571         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
2572         (LayoutTestController::resetPageVisibility): Not implemented.
2573         (LayoutTestController::setPageVisibility): Not implemented.
2574
2575 2012-05-02  Sheriff Bot  <webkit.review.bot@gmail.com>
2576
2577         Unreviewed, rolling out r115918.
2578         http://trac.webkit.org/changeset/115918
2579         https://bugs.webkit.org/show_bug.cgi?id=85452
2580
2581         "Broke test-webkitpy on Apple Lion bots" (Requested by estes
2582         on #webkit).
2583
2584         * Scripts/webkitpy/common/system/crashlogs.py:
2585         (CrashLogs.__init__):
2586         (CrashLogs.find_newest_log):
2587         (CrashLogs._log_directory_darwin):
2588         (CrashLogs._find_newest_log_darwin):
2589         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
2590         (CrashLogsTest.test_find_log_darwin):
2591         * Scripts/webkitpy/layout_tests/port/mac.py:
2592         (MacPort._get_crash_log):
2593         * Scripts/webkitpy/layout_tests/port/test.py:
2594         (TestDriver.run_test):
2595         * Scripts/webkitpy/tool/commands/queries.py:
2596         (execute):
2597
2598 2012-05-02  Raphael Kubo da Costa  <rakuco@webkit.org>
2599
2600         webkitpy: Remove sys.platform accesses in CrashLogs.
2601         https://bugs.webkit.org/show_bug.cgi?id=85436
2602
2603         Reviewed by Dirk Pranke.
2604
2605         Instead of directly checking for sys.platform == 'darwin', use a
2606         SystemHost and call PlatformInfo.is_mac().
2607
2608         * Scripts/webkitpy/common/system/crashlogs.py:
2609         (CrashLogs.__init__):
2610         (CrashLogs.find_newest_log):
2611         (CrashLogs._log_directory_darwin):
2612         (CrashLogs._find_newest_log_darwin):
2613         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
2614         (CrashLogsTest.test_find_log_darwin):
2615         * Scripts/webkitpy/layout_tests/port/mac.py:
2616         (MacPort._get_crash_log):
2617         * Scripts/webkitpy/layout_tests/port/test.py:
2618         (TestDriver.run_test):
2619         * Scripts/webkitpy/tool/commands/queries.py:
2620         (execute):
2621
2622 2012-05-02  Raphael Kubo da Costa  <rakuco@webkit.org>
2623
2624         webkitpy: Special-case win32 calls in file_lock and executive.
2625         https://bugs.webkit.org/show_bug.cgi?id=85431
2626
2627         Reviewed by Dirk Pranke.
2628
2629         Simplify accesses to sys.platform by only checking if sys.platform
2630         is "win32" and removing explicit checks for the else case.
2631
2632         * Scripts/webkitpy/common/system/executive.py:
2633         (Executive.check_running_pid):
2634         * Scripts/webkitpy/common/system/file_lock.py:
2635         (FileLock._create_lock):
2636         (FileLock._remove_lock):
2637
2638 2012-05-02  Ojan Vafai  <ojan@chromium.org>
2639
2640         Remove pink from flakiness dashboard
2641         https://bugs.webkit.org/show_bug.cgi?id=85422
2642
2643         Reviewed by Dirk Pranke.
2644
2645         The pink indicates that the test doesn't match it's listing in test_expectations.txt.
2646         In practice, this just added noise and confused people.
2647
2648         * TestResultServer/static-dashboards/flakiness_dashboard.js:
2649         (htmlForSingleTestRow):
2650         (showLegend):
2651         * TestResultServer/static-dashboards/flakiness_dashboard_tests.css:
2652         (#legend-contents *):
2653         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
2654         (testHtmlForSingleTestRow):
2655
2656 2012-05-02  Gustavo Noronha Silva  <gns@gnome.org>
2657
2658         Unreviewed. Fix mistake I committed when applying review comments.
2659
2660         * jhbuild/jhbuild-wrapper: dependencies_path was getting 'Root'
2661         appended to its path, so jhbuild itself was being cloned and
2662         installed in the wrong place when using WEBKITOUTPUTDIR.
2663
2664 2012-05-02  Dirk Pranke  <dpranke@chromium.org>
2665
2666         nrwt: make ServerProcess work on chromium win
2667         https://bugs.webkit.org/show_bug.cgi?id=85333
2668
2669         Reviewed by Ojan Vafai.
2670
2671         This change implements a poor man's select() that will
2672         slow-spin doing non-blocking reads on the stdout and stderr
2673         named pipes connecting the worker to the driver. Seems to work
2674         and I have yet to see much overhead or ill effects but it
2675         probably needs more testing.
2676
2677         * Scripts/webkitpy/layout_tests/port/chromium.py:
2678         (ChromiumDriver.__init__):
2679         * Scripts/webkitpy/layout_tests/port/server_process.py:
2680         (ServerProcess._start):
2681         (ServerProcess._wait_for_data_and_update_buffers_using_select):
2682         (ServerProcess._wait_for_data_and_update_buffers_using_win32_apis):
2683         (ServerProcess):
2684         (ServerProcess._non_blocking_read_win32):
2685         (ServerProcess._read):
2686         * Scripts/webkitpy/layout_tests/port/server_process_unittest.py:
2687         (TestServerProcess.test_basic): Added.
2688
2689 2012-05-02  Raphael Kubo da Costa  <rakuco@webkit.org>
2690
2691         webkitpy: Use a SystemHost instead of PlatformInfo in the PNG checker.
2692         https://bugs.webkit.org/show_bug.cgi?id=85426
2693
2694         Reviewed by Dirk Pranke.
2695
2696         r115880 replaced the direct use of sys.platform with a
2697         PlatformInfo object. Dirk Pranke later told me SystemHost objects
2698         should be preferred, as nothing out of webkitpy.common.system
2699         should create its own PlatformInfo instances.
2700
2701         * Scripts/webkitpy/common/system/systemhost_mock.py:
2702         (MockSystemHost.__init__): Make it possible to specify a custom
2703         filesystem object.
2704         * Scripts/webkitpy/style/checkers/png.py:
2705         (PNGChecker.__init__): Accept a host object instead of a
2706         filesystem one, which is now obtained from host.
2707         (PNGChecker._config_file_path): Retrieve PlatformInfo from
2708         SystemHost.
2709         * Scripts/webkitpy/style/checkers/png_unittest.py:
2710         (PNGCheckerTest.test_init): Adjust calls to PNGChecker to its new
2711         constructor signature.
2712         (PNGCheckerTest.test_check): Ditto.
2713
2714 2012-05-02  Raphael Kubo da Costa  <rakuco@webkit.org>
2715
2716         webkitpy: Remove direct checks for sys.platform == 'darwin' in the layout test classes.
2717         https://bugs.webkit.org/show_bug.cgi?id=85424
2718
2719         Reviewed by Tony Chang.
2720
2721         We should reduce direct usage of sys.platform in webkitpy and use
2722         PlatformInfo instead.
2723
2724         * Scripts/webkitpy/layout_tests/servers/http_server.py:
2725         (Lighttpd._prepare_config): Call PlatformInfo.is_mac() instead of
2726         checking for 'darwin' directly.
2727         * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
2728         (HttpServerBase.__init__): Ditto.
2729
2730 2012-05-02  Raphael Kubo da Costa  <rakuco@webkit.org>
2731
2732         webkitpy: Remove direct sys.platform usage in run_webkit_tests_integrationtest.
2733         https://bugs.webkit.org/show_bug.cgi?id=85419
2734
2735         Reviewed by Dirk Pranke.
2736
2737         As pointed out by Dirk Pranke, a PlatformInfo is not supposed to
2738         be created directly, we should should a SystemHost instead.
2739
2740         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
2741         (MainTest.setUp): Create a SystemHost and obtain the PlatformInfo
2742         object from it instead of creating PlatformInfo directly.
2743
2744 2012-05-02  Raphael Kubo da Costa  <rakuco@webkit.org>
2745
2746         webkitpy: Remove direct sys.platform usage in run_webkit_tests_integrationtest.
2747         https://bugs.webkit.org/show_bug.cgi?id=85419
2748
2749         Rubber-stamped by Dirk Pranke.
2750
2751         Follow-up patch to r115887 which fixes some capitalization problems
2752         pointed out in comments 2 and 4.
2753
2754         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
2755         (MainTest.setUp):
2756         (MainTest.test_child_processes_2):
2757         (MainTest.test_child_processes_min):
2758         (MainTest.test_exception_raised):
2759         (MainTest.test_keyboard_interrupt):
2760
2761 2012-05-02  Raphael Kubo da Costa  <rakuco@webkit.org>
2762
2763         webkitpy: Remove direct sys.platform usage in run_webkit_tests_integrationtest.
2764         https://bugs.webkit.org/show_bug.cgi?id=85419
2765
2766         Reviewed by Dirk Pranke.
2767
2768         Another part of the work towards replacing direct sys.platform
2769         usage with PlatformInfo.
2770
2771         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
2772         (MainTest.setUp): Move the setting of SHOULD_TEST_PROCESSES
2773         here. Even though it is costlier, unittest.setUpClass was
2774         introduced in Python 2.7.
2775         (MainTest.test_child_processes_2): Use self.SHOULD_TEST_PROCESSES.
2776         (MainTest.test_child_processes_min): Ditto.
2777         (MainTest.test_exception_raised): Ditto.
2778         (MainTest.test_keyboard_interrupt): Ditto.
2779         (MainTest.test_crash_log): Check for PlatformInfo.is_mac().
2780         (MainTest.test_web_process_crash_log): Ditto, and remove duplicate
2781         check at the end.
2782         (MainTest.test_no_http_tests): Remove check for (cygwin && Python
2783         2.5.2), as we only support Python 2.6+.
2784
2785 2012-05-02  Raphael Kubo da Costa  <rakuco@webkit.org>
2786
2787         webkitpy: Remove direct sys.platform usage in the PNG checker.
2788         https://bugs.webkit.org/show_bug.cgi?id=85407
2789
2790         Reviewed by Tony Chang.
2791
2792         Work towards replacing direct sys.platform usage with
2793         PlatformInfo.
2794
2795         * Scripts/webkitpy/common/system/platforminfo_mock.py:
2796         (MockPlatformInfo.__init__): Accept os_name and os_version as
2797         arguments.
2798         * Scripts/webkitpy/style/checkers/png.py:
2799         (PNGChecker.__init__): Create a PlatformInfo object instead of
2800         using sys.platform when needed.
2801         (PNGChecker._config_file_path): Check for the current platform via
2802         PlatformInfo.
2803         * Scripts/webkitpy/style/checkers/png_unittest.py:
2804         (PNGCheckerTest.test_check): Update tests after the changes above.
2805
2806 2012-05-02  Raphael Kubo da Costa  <rakuco@webkit.org>
2807
2808         [watchlist] Update watchlist rules for EFL-related patches.
2809         http://bugs.webkit.org/show_bug.cgi?id=85160
2810
2811         Reviewed by Eric Seidel.
2812
2813         * Scripts/webkitpy/common/config/watchlist: Monitor
2814         Source/WTF/wtf/efl and LayoutTests/platform/efl as well.
2815
2816 2012-05-02  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2817
2818         Revert r115191 - "Make the web view's url property follow the active url"
2819
2820         It uncovered/caused issues in the icon-implementation that can't be
2821         easily fixed, so rolling out instead.
2822
2823         https://bugs.webkit.org/show_bug.cgi?id=77554
2824
2825         Rubber-stamped by Simon Hausmann.
2826
2827         * MiniBrowser/qt/qml/BrowserWindow.qml:
2828         * TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:
2829         (TestWebKitAPI::TEST):
2830
2831 2012-05-02  Zan Dobersek  <zandobersek@gmail.com>
2832
2833         Reftest mismatches are providing undefined diff percent in results.html
2834         https://bugs.webkit.org/show_bug.cgi?id=85283
2835
2836         Reviewed by Ojan Vafai.
2837
2838         When writing test results for a reftest mismatch, also take into account the
2839         difference percent that is produced when generating image diff. This value is
2840         then used when creating test results in the form of dictionaries, stored under
2841         the 'image_diff_percent' key. It ultimately ends up in JSON results data,
2842         providing additional information about the reftest difference.
2843
2844         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2845         (interpret_test_failures): Store the diff percent for reftest failure under the
2846         'image_diff_percent' key.
2847         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
2848         (write_test_result): Also set the new diff_percent attribute of the reftest
2849         mismatch failure to the value of the difference percent ImageDiff outputs.
2850         * Scripts/webkitpy/layout_tests/models/test_failures.py:
2851         (FailureReftestMismatch.__init__): Add the new diff_percent attribute with the
2852         default value of None.
2853         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
2854         (EndToEndTest.test_reftest_with_two_notrefs): Update the test case expected results.
2855
2856 2012-05-02  Terry Anderson  <tdanderson@chromium.org>
2857
2858         Addition of a contributor to committers.py
2859         https://bugs.webkit.org/show_bug.cgi?id=85324
2860
2861         Reviewed by Unreviewed.
2862
2863         * Scripts/webkitpy/common/config/committers.py:
2864
2865 2012-05-02  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2866
2867         [EFL] EFL's LayoutTestController overridePreference implementation
2868         https://bugs.webkit.org/show_bug.cgi?id=83007
2869
2870         Reviewed by Antonio Gomes.
2871
2872         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
2873         (DumpRenderTreeChrome::resetDefaultsToConsistentValues):
2874         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
2875         (toBool): aux function converting JSStringRef to bool
2876         (toInt): aux function converting JSStringRef to int
2877         (LayoutTestController::overridePreference): added implementation
2878
2879 2012-05-01  Raphael Kubo da Costa  <rakuco@webkit.org>
2880
2881         webkitpy: Fix sys.platform check in find_files_unittest.
2882         https://bugs.webkit.org/show_bug.cgi?id=85339
2883
2884         Reviewed by Ryosuke Niwa.
2885
2886         Follow-up to r101618 -- 'win' is not a valid sys.platform value,
2887         'win32' should be used instead. The check always returned false
2888         due to this, so assert_normalize() was never called.
2889
2890         * Scripts/webkitpy/common/find_files_unittest.py:
2891         (TestWinNormalize.test_win): Add the missing import for the
2892         FileSystem class and fix the sys.platform check.
2893
2894 2012-05-02  Zan Dobersek  <zandobersek@gmail.com>
2895
2896         [GTK] drag&drop related failures
2897         https://bugs.webkit.org/show_bug.cgi?id=84675
2898
2899         Reviewed by Philippe Normand.
2900
2901         Rather than checking options to see whether we're running pixel tests
2902         the pixel_tests argument passed to GtkDriver._start should be used as
2903         it also covers cases when pixel tests should be run because of testing
2904         reftests. This again creates different Xvfb processes with proper
2905         display IDs for a worker that's performing both ordinary and pixel
2906         tests, as was the case before changes made in r114788.
2907
2908         * Scripts/webkitpy/layout_tests/port/gtk.py:
2909         (GtkDriver._start):
2910
2911 2012-05-02  Simon Hausmann  <simon.hausmann@nokia.com>
2912
2913         [Qt] Enable device orientation/motion with Qt 5
2914
2915         Reviewed by Tor Arne Vestbø.
2916
2917         Enable device orientation/motion features with Qt 5 if Qt Sensors is available.
2918
2919         * qmake/mkspecs/features/features.prf:
2920
2921 2012-05-01  Raphael Kubo da Costa  <rakuco@webkit.org>
2922
2923         webkitpy: Remove unused platform imports.
2924         https://bugs.webkit.org/show_bug.cgi?id=85341
2925
2926         Reviewed by Eric Seidel.
2927
2928         Remove a few uses of `import platform' which were either rendered
2929         unneeded after r105931 or were never needed at all.
2930
2931         * Scripts/webkitpy/common/system/executive.py:
2932         * Scripts/webkitpy/tool/bot/flakytestreporter.py:
2933
2934 2012-05-01  Terry Anderson  <tdanderson@chromium.org>
2935
2936         [chromium] Accept four parameters when dispatching a WebInputEvent::GestureTap in chromium DRT eventSender
2937         https://bugs.webkit.org/show_bug.cgi?id=85289
2938
2939         Reviewed by Eric Seidel.
2940
2941         * DumpRenderTree/chromium/EventSender.cpp:
2942         (EventSender::gestureEvent):
2943             This change will allow for testing of WK85101. Currently
2944             no tests use the extra parameters deltaX and deltaY. Added
2945             a check for the size of |arguments|.
2946
2947 2012-05-01  Eric Seidel  <eric@webkit.org>
2948
2949         Add myself to the watchlist to watch all rendering changes, as well as sort the watchers in the list
2950         https://bugs.webkit.org/show_bug.cgi?id=85305
2951
2952         Reviewed by Adam Barth.
2953
2954         * Scripts/webkitpy/common/config/watchlist:
2955
2956 2012-05-01  Sheriff Bot  <webkit.review.bot@gmail.com>
2957
2958         Unreviewed, rolling out r115735.
2959         http://trac.webkit.org/changeset/115735
2960         https://bugs.webkit.org/show_bug.cgi?id=85314
2961
2962         cause two tests to crash due to an ASSERTION failure
2963         (Requested by zhenyao on #webkit).
2964
2965         * DumpRenderTree/chromium/EventSender.cpp:
2966         (EventSender::gestureEvent):
2967
2968 2012-05-01  Terry Anderson  <tdanderson@chromium.org>
2969
2970         [chromium] Accept four parameters when dispatching a WebInputEvent::GestureTap in chromium DRT eventSender
2971         https://bugs.webkit.org/show_bug.cgi?id=85289
2972
2973         Reviewed by Eric Seidel.
2974
2975         * DumpRenderTree/chromium/EventSender.cpp:
2976         (EventSender::gestureEvent):
2977             This change will allow for testing of WK85101. Currently no tests use the extra
2978             parameters deltaX and deltaY.
2979
2980 2012-05-01  Zan Dobersek  <zandobersek@gmail.com>
2981
2982         Print out stderr output of ImageDiff if it is present
2983         https://bugs.webkit.org/show_bug.cgi?id=85285
2984
2985         Reviewed by Philippe Normand.
2986
2987         Log the stderr output of ImageDiff as a warning if present. This is
2988         especially helpful when ImageDiff crashes and stderr data might contain
2989         relevant information about what caused the crash.
2990
2991         * Scripts/webkitpy/layout_tests/port/webkit.py:
2992         (WebKitPort._read_image_diff):
2993
2994 2012-05-01  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2995
2996         [Qt] Add an experimental extension to set the min. contents width
2997         https://bugs.webkit.org/show_bug.cgi?id=85281
2998
2999         Reviewed by Antonio Gomes.
3000
3001         * MiniBrowser/qt/qml/BrowserWindow.qml:
3002
3003         Set the value of preferredMinimumContentsWidth to 980.
3004
3005 2012-04-30  Ojan Vafai  <ojan@chromium.org>
3006
3007         Fix tests to not depend on the actual list of builders at build.chromium.org.
3008
3009         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
3010         (testHtmlForIndividualTestOnAllBuildersWithChrome):
3011         (testHtmlForIndividualTestOnAllBuildersWithChromeWebkitMaster):
3012
3013 2012-04-29  Sam Weinig  <sam@webkit.org>
3014
3015         Remove BlobBuilder
3016         https://bugs.webkit.org/show_bug.cgi?id=84036
3017
3018         Reviewed by Anders Carlsson.
3019
3020         * Scripts/build-webkit:
3021         * qmake/mkspecs/features/features.prf:
3022         Make exposing the WebKitBlobBuilder JS object conditional on a new
3023         ENABLE_LEGACY_WEBKIT_BLOB_BUILDER flag. Don't enable this for the Mac,
3024         but do for everyone else.
3025
3026 2012-04-30  Amruth Raj Padmanabhuni  <amruthraj@motorola.com>
3027
3028         [GTK] Add glib as a dependency to build glib-networking
3029         https://bugs.webkit.org/show_bug.cgi?id=85181
3030
3031         Reviewed by Martin Robinson.
3032
3033         * gtk/jhbuild.modules:
3034
3035 2012-04-30  Alexis Menard  <alexis.menard@openbossa.org>
3036
3037         Move myself to reviewers.
3038
3039         Reviewed by Andreas Kling.
3040
3041         * Scripts/webkitpy/common/config/committers.py:
3042
3043 2012-04-30  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
3044
3045         Unreviewed, move myself to reviewers
3046
3047         * Scripts/webkitpy/common/config/committers.py:
3048
3049 2012-04-30  Carlos Garcia Campos  <cgarcia@igalia.com>
3050
3051         Unreviewed. Fix make distcheck.
3052
3053         * TestWebKitAPI/GNUmakefile.am: Add missing headers to compilation
3054         and resources to EXTRA_DIST.
3055
3056 2012-04-30  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
3057
3058         [GTK] DRT support for layoutTestController.removeOriginAccessWhitelistEntry
3059         https://bugs.webkit.org/show_bug.cgi?id=85156
3060
3061         Reviewed by Martin Robinson.
3062
3063         Add missing implementation removeOriginAccessWhitelistEntry to
3064         GTK's LayoutTestController.
3065
3066         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
3067         (LayoutTestController::removeOriginAccessWhitelistEntry):
3068
3069 2012-04-29  Maciej Stachowiak  <mjs@apple.com>
3070
3071         REGRESSION: On Lion, run-webkit-tests changes the display color profile even when not running pixel tests
3072         https://bugs.webkit.org/show_bug.cgi?id=81729
3073
3074         Reviewed by Dan Bernstein.
3075
3076         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3077         (Manager._set_up_run): Only launch LayoutTestHelper when running pixel tests.
3078
3079 2012-04-29  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
3080
3081         [GTK] DRT needs an implementation of layoutTestController.setDomainRelaxationForbiddenForURLScheme
3082         https://bugs.webkit.org/show_bug.cgi?id=85131
3083
3084         Reviewed by Martin Robinson.
3085
3086         Add missing implementation setDomainRelaxationForbiddenForURLScheme to
3087         GTK's LayoutTestController.
3088
3089         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
3090         (LayoutTestController::setDomainRelaxationForbiddenForURLScheme):
3091
3092 2012-04-28  Sam Weinig  <sam@webkit.org>
3093
3094         Smooth scrolling needs a new key
3095         <rdar://problem/11331632>
3096
3097         Reviewed by Dan Bernstein.
3098
3099         * DumpRenderTree/mac/DumpRenderTree.mm:
3100         (resetDefaultsToConsistentValues):
3101         * TestWebKitAPI/mac/InjectedBundleControllerMac.mm:
3102         (TestWebKitAPI::InjectedBundleController::platformInitialize):
3103         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
3104         (WTR::InjectedBundle::platformInitialize):
3105         Update for new key.
3106
3107 2012-04-28  Zan Dobersek  <zandobersek@gmail.com>
3108
3109         [WK2] http/tests/navigation/anchor-frames-gbk.html fails
3110         https://bugs.webkit.org/show_bug.cgi?id=76896
3111
3112         Reviewed by Darin Adler.
3113
3114         Only dump as text if currently dumping render tree. This ensures that
3115         calling dumpAsText in a test with dumpChildFramesAsText already being
3116         called doesn't override the first decision, possibly making tests fail.
3117
3118         * WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
3119         (WTR::LayoutTestController::dumpAsText):
3120
3121 2012-04-28  Dan Winship  <danw@gnome.org>
3122
3123         Unreviewed; Add me to the SoupNetwork watchlist
3124
3125         * Scripts/webkitpy/common/config/watchlist:
3126
3127 2012-04-27  Gustavo Noronha Silva  <gns@gnome.org>
3128
3129         [GTK] jhbuild cloning is not following WEBKITOUTPUTDIR.
3130         https://bugs.webkit.org/show_bug.cgi?id=76161
3131
3132         Reviewed by Martin Robinson.
3133
3134         * Scripts/webkitdirs.pm:
3135         (getJhbuildPath): New method to obtain the jhbuild base directory,
3136         using the product base directory
3137         (jhbuildConfigurationChanged): Use the new method
3138         (buildAutotoolsProject): Ditto.
3139         * efl/jhbuildrc: Use WEBKITOUTPUTDIR when calculating the path.
3140         * gtk/jhbuildrc: Ditto.
3141         * jhbuild/jhbuild-wrapper: Ditto.
3142
3143 2012-04-27  Scott Graham  <scottmg@chromium.org>
3144
3145         [chromium] make case of npTestNetscapePlugIn.dll match case in copy rule
3146         https://bugs.webkit.org/show_bug.cgi?id=85083
3147
3148         Reviewed by Dirk Pranke.
3149
3150         Make output product_name for npTestNetscapePlugIn.dll match the case
3151         of the copy_TestNetscapePlugIn rule. This is required for ninja, which
3152         is more particular about case matching in rules than the VS build.
3153
3154         * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
3155
3156 2012-04-27  Dirk Pranke  <dpranke@chromium.org>
3157
3158         [chromium] use "drt-style" output, not "test-shell-style" output, on mac and linux DRT
3159         https://bugs.webkit.org/show_bug.cgi?id=84917
3160
3161         Unreviewed, build fix.
3162
3163         Reland the change in r115453 with a fix for chromium win.
3164         The logic in ChromiumDriver was busted on windows, causing DRT
3165         to get launched without the --test-shell flag.
3166
3167         * Scripts/webkitpy/layout_tests/port/chromium.py:
3168         (ChromiumDriver):
3169         (ChromiumDriver.__init__):
3170         (ChromiumDriver._wrapper_options):
3171         (ChromiumDriver.cmd_line):
3172         (ChromiumDriver._start):
3173         (ChromiumDriver.has_crashed):
3174         (ChromiumDriver.run_test):
3175         (ChromiumDriver.stop):
3176         * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
3177         (ChromiumDriverTest.setUp):
3178         (ChromiumDriverTest.test_stop):
3179         (ChromiumDriverTest.test_two_drivers.MockDriver.__init__):
3180         (ChromiumDriverTest.test_two_drivers):
3181
3182 2012-04-27  Peter Beverloo  <peter@chromium.org>
3183
3184         Add John Grabowski as a non-committer to committers.py
3185         https://bugs.webkit.org/show_bug.cgi?id=85080
3186
3187         Reviewed by Dirk Pranke.
3188
3189         He's being CC'ed often enough because of his involvement in the Chromium
3190         side of Chrome for Android upstreaming.
3191
3192         * Scripts/webkitpy/common/config/committers.py:
3193           add jrg@chromium.org
3194
3195 2012-04-27  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
3196
3197         [Qt] Fix minimal build.
3198         https://bugs.webkit.org/show_bug.cgi?id=85045
3199
3200         Reviewed by Tor Arne Vestbø.
3201
3202         Do not set conflicting values of ENABLE_XSLT.
3203
3204         * qmake/mkspecs/features/features.prf:
3205
3206 2012-04-27  Dominik Röttsches  <dominik.rottsches@linux.intel.com>
3207
3208         [EFL][DRT] EFL should sanitize pulseaudio module configuration too
3209         https://bugs.webkit.org/show_bug.cgi?id=85047
3210
3211         Reviewed by Dirk Pranke.
3212
3213         PulseAudio test setup sanitization shared between EFL and GTK.
3214
3215         * Scripts/webkitpy/layout_tests/port/efl.py:
3216         (EflPort):
3217         (EflPort.setup_test_run):
3218         (EflPort.clean_up_test_run):
3219         * Scripts/webkitpy/layout_tests/port/gtk.py:
3220         (GtkPort): Moving pulseaudio unload/restore out to shared class.
3221         * Scripts/webkitpy/layout_tests/port/pulseaudio_sanitizer.py: Added.
3222         (PulseAudioSanitizer):
3223         (PulseAudioSanitizer._unload_pulseaudio_module):
3224         (PulseAudioSanitizer._restore_pulseaudio_module):
3225
3226 2012-04-27  Dirk Pranke  <dpranke@chromium.org>
3227
3228         Unreviewed, revert r115453 - broke chromium win bots
3229
3230         * Scripts/webkitpy/layout_tests/port/chromium.py:
3231         (ChromiumPort._path_to_image_diff):
3232         (ChromiumDriver):
3233         (ChromiumDriver.__init__):
3234         (ChromiumDriver._wrapper_options):
3235         (ChromiumDriver.cmd_line):
3236         (ChromiumDriver.stop):
3237         * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
3238         (ChromiumDriverTest.setUp):
3239         (ChromiumDriverTest.test_stop):
3240         (ChromiumDriverTest.test_two_drivers):
3241         (ChromiumDriverTest.test_two_drivers.MockDriver.__init__):
3242
3243 2012-04-27  Ryosuke Niwa  <rniwa@webkit.org>
3244
3245         Chromium Windows Perf bots timeout due to not output
3246         https://bugs.webkit.org/show_bug.cgi?id=84940
3247
3248         Reviewed by Dirk Pranke.
3249
3250         Dirk and I investigated the issue on the bot but we couldn't figure out what is going wrong.
3251         Since we run-perf-tests don't need any of fancy feature printer provides, just use python's
3252         built-in logging module instead. Printing out to stdout and stderr seem to work so hopefully
3253         this will fix the issue on the bot.
3254
3255         * Scripts/run-perf-tests:
3256         * Scripts/webkitpy/performance_tests/perftest.py:
3257         (PerfTest.run):
3258         (PerfTest.run_failed):
3259         (PerfTest.parse_output):
3260         (PerfTest.output_statistics):
3261         (ChromiumStylePerfTest.parse_output):
3262         (PageLoadingPerfTest.run):
3263         * Scripts/webkitpy/performance_tests/perftest_unittest.py:
3264         (MainTest.test_parse_output):
3265         (MainTest.test_parse_output_with_failing_line):
3266         (TestPageLoadingPerfTest):
3267         (TestPageLoadingPerfTest.test_run):
3268         (TestPageLoadingPerfTest.test_run_with_bad_output):
3269         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
3270         (PerfTestsRunner.__init__):
3271         (PerfTestsRunner._parse_args):
3272         (PerfTestsRunner.run):
3273         (PerfTestsRunner._upload_json):
3274         (PerfTestsRunner._print_status):
3275         (PerfTestsRunner._run_tests_set):
3276         (PerfTestsRunner._run_single_test):
3277         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
3278         (create_runner):
3279         (test_run_test_set):
3280         (test_run_test_set_kills_drt_per_run):
3281         (test_run_test_pause_before_testing):
3282         (test_run_test_set_for_parser_tests):
3283         (test_run_test_set_with_json_output):
3284         (test_run_test_set_with_json_source):
3285         (test_run_test_set_with_multiple_repositories):
3286         (test_upload_json):
3287         (test_parse_args):
3288
3289 2012-04-27  Dirk Pranke  <dpranke@chromium.org>
3290
3291         [chromium] use "drt-style" output, not "test-shell-style" output, on mac and linux DRT
3292         https://bugs.webkit.org/show_bug.cgi?id=84917
3293
3294         Reviewed by Ojan Vafai.
3295
3296         This change changes the chromium new-run-webkit-tests
3297         implementation to use the code in WebKitDriver and ServerProcess
3298         by default on Mac and Linux, instead of using the old-style
3299         Chromium/test_shell style of output.
3300
3301         We will still use the test_shell style on Windows for now
3302         and you can still get the old style of behavior with
3303         new-run-webkit-tests --additional-drt-flag --test-shell
3304
3305         * Scripts/webkitpy/layout_tests/port/chromium.py:
3306         (ChromiumDriver):
3307         (ChromiumDriver.__init__):
3308         (ChromiumDriver._wrapper_options):
3309         (ChromiumDriver.cmd_line):
3310         (ChromiumDriver._start):
3311         (ChromiumDriver.has_crashed):
3312         (ChromiumDriver.run_test):
3313         (ChromiumDriver.stop):
3314         * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
3315         (ChromiumDriverTest.setUp):
3316         (ChromiumDriverTest.test_stop):
3317         (ChromiumDriverTest.test_two_drivers.MockDriver.__init__):
3318         (ChromiumDriverTest.test_two_drivers):
3319
3320 2012-04-27  Dirk Pranke  <dpranke@chromium.org>
3321
3322         webkitpy: fix race in unit tests for manager_worker_broker
3323         https://bugs.webkit.org/show_bug.cgi?id=84925
3324
3325         Reviewed by Ojan Vafai.
3326
3327         I have been intermittently seeing hangs when running
3328         test-webkitpy on Mac SL; it appears that there's a bug (?) in
3329         the multiprocessing module where queue references are getting
3330         leaked or not cleaned up somehow. By explicitly closing the
3331         queues, things seem to be happy, so this patch adds a cleanup()
3332         method to the message broker and modifies the manager (and the
3333         unit tests) to call it. This may get rid of the intermittent
3334         error on shutdown on Linux I've seen as well.
3335
3336         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3337         (Manager._run_tests):
3338         * Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:
3339         (_Broker.__del__):
3340         (_Broker):
3341         (_Broker.cleanup):
3342         (_BrokerConnection.cleanup):
3343         * Scripts/webkitpy/layout_tests/controllers/manager_worker_broker_unittest.py:
3344         (_TestsMixin.test_name):
3345         (_TestsMixin.test_cancel):
3346         (_TestsMixin.test_done):
3347         (_TestsMixin.test_unknown_message):
3348
3349 2012-04-27  Gavin Peters  <gavinp@chromium.org>
3350
3351         Add new ENABLE_LINK_PRERENDER define to control the Prerendering API
3352         https://bugs.webkit.org/show_bug.cgi?id=84871
3353
3354         Reviewed by Adam Barth.
3355
3356         Prerendering is currently covered by the ENABLE_LINK_PREFETCH macro, but the new Prerendering
3357         API separates it from prefetching.  Having separate include guards lets ports enable prefetching,
3358         a relatively easy change, without needing to build the infrastructure for prerendering, which
3359         is considerably more complicated.
3360
3361 2012-04-27  Philippe Normand  <pnormand@igalia.com>
3362
3363         Unreviewed, GTK gardening.
3364
3365         * Scripts/run-gtk-tests:
3366         (TestRunner): Skip flaky WebKit2 API test.
3367
3368 2012-04-27  Philippe Normand  <pnormand@igalia.com>
3369
3370         Unreviewed, GTK gardening.
3371
3372         * Scripts/run-gtk-tests:
3373         (TestRunner): Fix another typo. So easy to get confused by a Test
3374         name and the actual name of the executable...
3375
3376 2012-04-27  Philippe Normand  <pnormand@igalia.com>
3377
3378         Unreviewed, GTK gardening.
3379
3380         * Scripts/run-gtk-tests:
3381         (TestRunner): Skip failing WebKit2 API test.
3382
3383 2012-04-27  Christophe Dumez  <christophe.dumez@intel.com>
3384
3385         [EFL] DRT should support LayoutTestController's dumpResourceLoadCallbacks()
3386         https://bugs.webkit.org/show_bug.cgi?id=81891
3387
3388         Reviewed by Philippe Normand.
3389
3390         Implement support for LayoutTestController's
3391         dumpResourceLoadCallbacks() in EFL's DumpRenderTree by catching new
3392         ewk_view signals about resource loading and print out the expected
3393         information. This allows for several test cases to be removed from the
3394         skip list.
3395
3396         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
3397         (DumpRenderTreeChrome::createView):
3398         (descriptionSuitableForTestResult):
3399         (DumpRenderTreeChrome::onResponseReceived):
3400         (DumpRenderTreeChrome::onResourceLoadFinished):
3401         (DumpRenderTreeChrome::onResourceLoadFailed):
3402         (DumpRenderTreeChrome::onNewResourceRequest):
3403         * DumpRenderTree/efl/DumpRenderTreeChrome.h:
3404         (DumpRenderTreeChrome):
3405
3406 2012-04-27  Philippe Normand  <pnormand@igalia.com>
3407
3408         Unreviewed, GTK typo fix.
3409
3410         * Scripts/run-gtk-tests:
3411         (TestRunner): Fix-up skipped WebKit2 API test name TestWKConnection.
3412
3413 2012-04-26  Carlos Garcia Campos  <cgarcia@igalia.com>
3414
3415         [SOUP] Add a way to register custom uri schemes in WebKit2
3416         https://bugs.webkit.org/show_bug.cgi?id=84130
3417
3418         Reviewed by Martin Robinson.
3419
3420         * Scripts/webkitpy/style/checkers/cpp.py:
3421         (check_identifier_name_in_declaration): Add webkit_soup prefix to
3422         the list of exceptions to the underscores in identifiers rule.
3423
3424 2012-04-26  Ryosuke Niwa  <rniwa@webkit.org>
3425
3426         Extract PerfTestFactory
3427         https://bugs.webkit.org/show_bug.cgi?id=83944
3428
3429         Reviewed by Dirk Pranke.
3430         
3431         Extracted PerfTestFactory out of PerfTest. This class creates appropriate PerfTest object given
3432         a test name and a path. Also removed dirname from the constructors of PerfTest and its subclasses.
3433
3434         Also added simple test cases to sanity check PerfTestFactory.
3435
3436         * Scripts/webkitpy/performance_tests/perftest.py:
3437         (PerfTest.__init__):
3438         (PerfTest.test_name):
3439         (ChromiumStylePerfTest.__init__):
3440         (PageLoadingPerfTest.__init__):
3441         (PageLoadingPerfTest.run):
3442         (PerfTestFactory):
3443         (PerfTestFactory.create_perf_test):
3444         * Scripts/webkitpy/performance_tests/perftest_unittest.py:
3445         (MainTest.test_parse_output):
3446         (MainTest.test_parse_output_with_failing_line):
3447         (TestPageLoadingPerfTest.test_run):
3448         (TestPageLoadingPerfTest.test_run_with_bad_output):
3449         (TestPerfTestFactory):
3450         (TestPerfTestFactory.test_regular_test):
3451         (TestPerfTestFactory.test_inspector_test):
3452         (TestPerfTestFactory.test_page_loading_test):
3453         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
3454         (PerfTestsRunner):
3455         (PerfTestsRunner._collect_tests):
3456         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
3457         (run_test):
3458         (_tests_for_runner):
3459
3460 2012-04-26  Dirk Pranke  <dpranke@chromium.org>
3461
3462         nrwt: clean up server process, webkit driver so chromium can use it
3463         https://bugs.webkit.org/show_bug.cgi?id=84910
3464
3465         Reviewed by Ojan Vafai.
3466
3467         This change moves the "sample a process" logic out of
3468         server_process.py and into a port-specific class (where really
3469         only the mac has an implementation), and also preemptively kills
3470         DRT when a test times out in WebKitDriver (rather than waiting through the
3471         additional delays caused by calling stop() when we would want to
3472         restart the driver generically in worker.py).
3473
3474         These changes will make it possible for the chromium port to
3475         switch over to the stock WebKitDriver implementation, at least
3476         on mac and linux.
3477
3478         * Scripts/webkitpy/layout_tests/port/base.py:
3479         (Port.sample_process):
3480         * Scripts/webkitpy/layout_tests/port/mac.py:
3481         (MacPort.sample_process):
3482         * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
3483         (test_helper_fails_to_stop):
3484         (test_sample_process):
3485         (test_sample_process.logging_run_command):
3486         (test_sample_process_throws_exception):
3487         (test_sample_process_throws_exception.throwing_run_command):
3488         * Scripts/webkitpy/layout_tests/port/server_process.py:
3489         (ServerProcess._log):
3490         (ServerProcess._handle_timeout):
3491         (ServerProcess.stop):
3492         (ServerProcess):
3493         (ServerProcess.kill): Here we add a method to immediately stop
3494         the process rather than trying to shut it down cleanly.
3495         * Scripts/webkitpy/layout_tests/port/server_process_unittest.py:
3496         (TestServerProcess.test_broken_pipe):
3497         * Scripts/webkitpy/layout_tests/port/webkit.py:
3498         (WebKitDriver.run_test): Fix an issue where we weren't passing
3499         along any per-test args (only needed for Chromium, but still).
3500         Also, kill the driver immediately if we time out a test.
3501
3502 2012-04-26  Benjamin Poulain  <bpoulain@apple.com>
3503
3504         ObjcClass::methodsNamed() can leak if buffer is dynamically allocated
3505         https://bugs.webkit.org/show_bug.cgi?id=84668
3506
3507         Reviewed by Alexey Proskuryakov.
3508
3509         Extend ObjCPlugin to support the new layout tests of the Objective-C bridge.
3510
3511         * DumpRenderTree/mac/ObjCPlugin.m:
3512         (+[ObjCPlugin isSelectorExcludedFromWebScript:]):
3513         (+[ObjCPlugin webScriptNameForSelector:]):
3514         (-[ObjCPlugin methodMappedToLongName]):
3515         (-[ObjCPlugin testConversionColon:]):
3516         (-[ObjCPlugin _:]):
3517
3518 2012-04-26  Dimitri Glazkov  <dglazkov@chromium.org>
3519
3520         Unreviewed, rolling out r115340.
3521         http://trac.webkit.org/changeset/115340
3522         https://bugs.webkit.org/show_bug.cgi?id=83048
3523
3524         Does not work with Windows.
3525
3526         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
3527         (SingleTestRunner._run_reftest):
3528         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
3529         (copy_file):
3530         * Scripts/webkitpy/layout_tests/port/base.py:
3531         (Port._parse_reftest_list):
3532         (Port.reference_files):
3533         (Port._real_tests):
3534         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
3535         (PortTest.test_reference_files):
3536         * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
3537         (ChromiumDriverTest.test_write_command_and_read_line):
3538
3539 2012-04-26  Christophe Dumez  <christophe.dumez@intel.com>
3540
3541         [EFL] Enable VIDEO_TRACK feature
3542         https://bugs.webkit.org/show_bug.cgi?id=84830
3543
3544         Reviewed by Gustavo Noronha Silva.
3545
3546         Enable VIDEO_TRACK by default on EFL port whenever build-webkit is
3547         used.
3548
3549         * Scripts/build-webkit:
3550
3551 2012-04-08  Robert Hogan  <robert@webkit.org>
3552
3553         new-webkit-run-tests: handle ref tests from the CSS test suite
3554         https://bugs.webkit.org/show_bug.cgi?id=83048
3555
3556         Reviewed by Ryosuke Niwa.
3557
3558         This allows new-run-webkit-tests to run reference tests created for the CSS test suite. It removes a big swathe
3559         of pixel and text results that are no longer required now that the reference results are used and adds in the support
3560         files from the CSS test suite that allow the ref tests to run.
3561
3562         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
3563         (SingleTestRunner._run_reftest): Assert that the reference result exists. Previously the test would
3564          run without it and report a pass!
3565         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
3566         (copy_file): ensure the output directory exists, it may not if the reference test is
3567           contained in a folder that contains nothing but reference tests.
3568         * Scripts/webkitpy/layout_tests/port/base.py:
3569         (Port.available_reference_files): Add as a helper. Handle embedded relative paths, e.g: some/../path
3570         (Port.reference_files): Only return reference results in the reftest list that actually exist on
3571           disk. Also, don't ignore potential reference results on disk that are not in the reftest list, and
3572           don't ignore them just because we have a reftest list for the test's directory.
3573         (Port._real_tests): ignore anything that looks like a test in a 'support' directory, this semantic
3574           is used by the CSS 2.1 test suite.
3575         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
3576         (PortTest.test_reference_files_when_reftestlist_and_reference_file_present): Ensure that a test with a reference result
3577           on disk but no reference result listed in the directory's reftest list picks up its reference result.
3578         * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
3579         (ChromiumDriverTest.test_strip_uri): Test that some/test.html and some/other/../test.html are treated
3580          as the same file.
3581
3582 2012-04-26  Carlos Garcia Campos  <cgarcia@igalia.com>
3583
3584         Unreviewed. Fix GTK+ build after r115314.
3585
3586         For some reason it fails while bulding GtkVersioning for WTR, but
3587         it didn't fail neither in EWS nor in my laptop. We don't really
3588         need GtkVersioning in WTR since it already depends on GTK+3
3589         unconditionally.
3590
3591         * WebKitTestRunner/GNUmakefile.am: Remove GtkVersioning.c from
3592         compilation.
3593         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
3594         (WTR::EventSenderProxy::createMouseButtonEvent): Use GTK+ 3 API
3595         directly instead of getDefaultGDKPointerDevice() helper.
3596         (WTR::EventSenderProxy::keyDown): Ditto.
3597         (WTR::EventSenderProxy::mouseMoveTo): Ditto.
3598
3599 2012-04-24  Ojan Vafai  <ojan@chromium.org>
3600
3601         Show flakiness dashboard data in garden-o-matic
3602         https://bugs.webkit.org/show_bug.cgi?id=83716
3603
3604         Reviewed by Dimitri Glazkov.
3605
3606         Put an iframe below the expected/actual results in the Results view.
3607         Size the iframe to it's height.
3608
3609         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/garden-o-matic.html:
3610         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/run-unittests.html:
3611         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js:
3612         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
3613         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:
3614         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:
3615         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/results.css:
3616
3617 2012-04-26  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
3618
3619         [EFL] [DRT] LayoutTestController needs implementation of setJavaScriptProfilingEnabled
3620         https://bugs.webkit.org/show_bug.cgi?id=84576
3621
3622         Reviewed by Martin Robinson.
3623
3624         Add missing implementation setJavaScriptProfilingEnabled to EFL's
3625         LayoutTestController in order to unskip tests rely on this setting.
3626
3627         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
3628         (DumpRenderTreeChrome::resetDefaultsToConsistentValues):
3629         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
3630         (LayoutTestController::setJavaScriptProfilingEnabled):
3631
3632 2012-04-26  Xianzhu Wang  <wangxianzhu@chromium.org>
3633
3634         Add Jing Zhao, Min Qin, Tien-Ren Chen and Hao Zheng into contributors list.
3635
3636         Not reviewed.
3637
3638         * Scripts/webkitpy/common/config/committers.py:
3639
3640 2012-04-26  Carlos Garcia Campos  <cgarcia@igalia.com>
3641
3642         [GTK] Test TestWebKitAPI/WebKit2/TestNewFirstVisuallyNonEmptyLayout times out
3643         https://bugs.webkit.org/show_bug.cgi?id=84957
3644
3645         Reviewed by Martin Robinson.