[mac] WebKit1 clients can’t tell when a frame has been removed from the hierarchy
[WebKit-https.git] / Tools / ChangeLog
1 2013-01-07  Dan Bernstein  <mitz@apple.com>
2
3         [mac] WebKit1 clients can’t tell when a frame has been removed from the hierarchy
4         https://bugs.webkit.org/show_bug.cgi?id=106261
5
6         Reviewed by Simon Fraser.
7
8         Added a test for -[WebFrameLoadDelegate webView:didRemoveFrameFromHierarchy:].
9
10         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
11         * TestWebKitAPI/Tests/mac/WebViewDidRemoveFrameFromHierarchy.mm: Added.
12         (-[DidRemoveFrameFromHierarchyFrameLoadDelegate webView:didFinishLoadForFrame:]):
13         (-[DidRemoveFrameFromHierarchyFrameLoadDelegate webView:didRemoveFrameFromHierarchy:]):
14         (TestWebKitAPI):
15         (TestWebKitAPI::TEST):
16
17 2013-01-07  Ojan Vafai  <ojan@chromium.org>
18
19         Add the Apple MountainLion bots to garden-o-matic.
20         Eventually, we really should move away from hardcoding
21         the list of bots.
22
23         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
24
25 2013-01-07  Jochen Eisinger  <jochen@chromium.org>
26
27         [chromium] move web audio related methods to testrunner library
28         https://bugs.webkit.org/show_bug.cgi?id=106211
29
30         Reviewed by Adam Barth.
31
32         * DumpRenderTree/chromium/DRTTestRunner.cpp:
33         (DRTTestRunner::DRTTestRunner):
34         (DRTTestRunner::reset):
35         * DumpRenderTree/chromium/DRTTestRunner.h:
36         (DRTTestRunner):
37         * DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h:
38         (WebKit):
39         (WebTestRunner::WebTestRunner::shouldDumpAsAudio):
40         (WebTestRunner::WebTestRunner::audioData):
41         * DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
42         (WebTestRunner::TestRunner::TestRunner):
43         (WebTestRunner::TestRunner::reset):
44         (WebTestRunner::TestRunner::shouldDumpAsAudio):
45         (WebTestRunner):
46         (WebTestRunner::TestRunner::audioData):
47         (WebTestRunner::TestRunner::setAudioData):
48         * DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
49         (TestRunner):
50         * DumpRenderTree/chromium/TestShell.cpp:
51         (TestShell::dump):
52
53 2013-01-07  Mike West  <mkwst@chromium.org>
54
55         Make the IFRAME_SEAMLESS flag runtime-enabled.
56         https://bugs.webkit.org/show_bug.cgi?id=106213
57
58         Reviewed by Ojan Vafai.
59
60         * DumpRenderTree/chromium/TestShell.cpp:
61         (TestShell::TestShell):
62         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
63         (DumpRenderTreeChrome::resetDefaultsToConsistentValues):
64         * DumpRenderTree/gtk/DumpRenderTree.cpp:
65         (resetDefaultsToConsistentValues):
66         * DumpRenderTree/mac/DumpRenderTree.mm:
67         (resetDefaultsToConsistentValues):
68         * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
69         (WebCore::WebPage::resetSettings):
70         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
71         (WTR::InjectedBundle::beginTesting):
72             Ensure that seamless IFrames are enabled for layout tests in each of
73             the ports that support seamless IFrames.
74
75 2013-01-07  Jochen Eisinger  <jochen@chromium.org>
76
77         [chromium] move dumpAsText and friends to the TestRunner library
78         https://bugs.webkit.org/show_bug.cgi?id=106222
79
80         Reviewed by Adam Barth.
81
82         This moves dumpAsText, dumpChildFramesAsText, and dumpChildFrameScrollPositions to the TestRunner library.
83
84         * DumpRenderTree/chromium/DRTTestRunner.cpp:
85         (DRTTestRunner::DRTTestRunner):
86         (DRTTestRunner::reset):
87         * DumpRenderTree/chromium/DRTTestRunner.h:
88         (DRTTestRunner):
89         * DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h:
90         (WebTestRunner::WebTestRunner::shouldDumpAsText):
91         (WebTestRunner::WebTestRunner::setShouldDumpAsText):
92         (WebTestRunner::WebTestRunner::shouldGeneratePixelResults):
93         (WebTestRunner::WebTestRunner::setShouldGeneratePixelResults):
94         (WebTestRunner::WebTestRunner::shouldDumpChildFrameScrollPositions):
95         (WebTestRunner::WebTestRunner::shouldDumpChildFramesAsText):
96         * DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
97         (WebTestRunner::TestRunner::TestRunner):
98         (WebTestRunner::TestRunner::reset):
99         (WebTestRunner::TestRunner::shouldDumpAsText):
100         (WebTestRunner):
101         (WebTestRunner::TestRunner::setShouldDumpAsText):
102         (WebTestRunner::TestRunner::shouldGeneratePixelResults):
103         (WebTestRunner::TestRunner::setShouldGeneratePixelResults):
104         (WebTestRunner::TestRunner::shouldDumpChildFrameScrollPositions):
105         (WebTestRunner::TestRunner::shouldDumpChildFramesAsText):
106         (WebTestRunner::TestRunner::dumpAsText):
107         (WebTestRunner::TestRunner::dumpChildFrameScrollPositions):
108         (WebTestRunner::TestRunner::dumpChildFramesAsText):
109         * DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
110         (TestRunner):
111
112 2013-01-07  Ryosuke Niwa  <rniwa@webkit.org>
113
114         Build fix attempt after r138810.
115
116         Apparently python 2.6 is really bad at floating point computation.
117
118         * Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
119         (MainTest.test_run_memory_test):
120
121 2013-01-07  Ryosuke Niwa  <rniwa@webkit.org>
122
123         Extract a class to represent a test result to simplify PerfTest.parse_output and PageLoadPerfTest._run_with_driver
124         https://bugs.webkit.org/show_bug.cgi?id=106172
125
126         Reviewed by Tony Chang.
127
128         Extracted PerfTestMetric, which represents a test result and knows how to compute statistics and convert itself
129         to a dictionary. A metric is a type of measurement each test makes such as "Time", "Malloc", and "JSHeap".
130         A single test (e.g. html5-full-render.html) may have multiple metrics, each of which is reported as a separate
131         test on perf-o-matic and perf. test's results page.
132
133         Also, use python's compute_statistics instead of reading statistics off of DriverOutput to simplify the code.
134
135         * Scripts/webkitpy/performance_tests/perftest.py:
136         (PerfTestMetric): Added.
137         (PerfTestMetric.__init__): Added.
138         (PerfTestMetric.metric): Added.
139         (PerfTestMetric.has_values): Added.
140         (PerfTestMetric.legacy_chromium_bot_compatible_test_name): Added. Following the legacy convention, "Malloc" and
141         "JSHeap" will use "test_name:Malloc" whereas "Time" uses "test_name" itself. We should eventually move these
142         conversions to be done on the client side (perf-o-matic and results page).
143         (PerfTestMetric.append): Added.
144         (PerfTestMetric.to_dict): Added. Computes the statistics and generates the dictionary object that represents
145         a result for this metric.
146         (PerfTestMetric.metric_to_unit): Added. Each metric maps to exactly one unit (it's not one-to-one).
147         (PerfTestMetric.compute_statistics): Moved from PerfTest.
148
149         (PerfTest._create_driver): Extracted from PerfTest.run.
150         (PerfTest.run): Given an array of PerfTestMetric, generate the results dictionary. Also print out results
151         as needed.
152         (PerfTest._run_with_driver):
153         (PerfTest): Removed _result_classes and _result_class_regex. "result class" is the old name for "metric".
154         (PerfTest.parse_output): Dramatically simplified. We now just return an array of PerfTestMetric's. Also ignore
155         all keys except "values". We rely on PerfTestMetric to compute the statistics for us.
156
157         (ChromiumStylePerfTest.run): Added and merged _run_with_driver. Since chromium style perf tests are so different
158         from other perf tests, there isn't much point in sharing the code here.
159
160         (PageLoadingPerfTest._run_with_driver): Simplified. Just create an array of PerfTestMetric's without computing
161         statistics for the measured values.
162
163         * Scripts/webkitpy/performance_tests/perftest_unittest.py:
164         (TestPerfTestMetric): Added.
165         (TestPerfTestMetric.test_init_set_missing_unit): Added.
166         (TestPerfTestMetric.test_legacy_chromium_bot_compatible_test_name): Added.
167         (TestPerfTestMetric.test_has_values): Added.
168         (TestPerfTestMetric.test_append): Added.
169         (TestPerfTestMetric.test_compute_statistics.compute_statistics):
170         (TestPerfTestMetric.test_compute_statistics): Added a trivial test case.
171
172         (TestPerfTest._assert_results_are_correct): Updated as needed.
173         (TestPageLoadingPerfTest.test_run): Ditto. Notice that we no longer log anything in _run_with_driver. It's done
174         in PerfTest.run now after generating the results dictionary.
175         (TestPageLoadingPerfTest.test_run_with_memory_output): Ditto.
176
177 2013-01-07  Julien Chaffraix  <jchaffraix@webkit.org>
178
179         Support size_t multiplication and division operators on LayoutUnit
180         https://bugs.webkit.org/show_bug.cgi?id=83848
181
182         Reviewed by Emil A Eklund.
183
184         * TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp:
185         Added some simple tests for the new operators using size_t.
186
187 2013-01-07  Csaba Osztrogonác  <ossy@webkit.org>
188
189         [Qt] run-webkit-tests cleanup for parallel NRWT
190         https://bugs.webkit.org/show_bug.cgi?id=106220
191
192         Reviewed by Dirk Pranke.
193
194         * Scripts/run-webkit-tests:
195         (useNewRunWebKitTests):
196         * Scripts/webkitpy/layout_tests/port/qt.py:
197         (QtPort):
198         (QtPort.default_child_processes):
199
200 2013-01-07  Philippe Normand  <pnormand@igalia.com>
201
202         Create a GStreamerAudio watchlist and add myself to it.
203
204         Unreviewed.
205
206         * Scripts/webkitpy/common/config/watchlist:
207
208 2013-01-05  Ryosuke Niwa  <rniwa@webkit.org>
209
210         Add svn:executable to a bunch of scripts in BuildSlaveSupport.
211         Also removed the empty mac directory.
212
213         * BuildSlaveSupport/built-product-archive: Added property svn:executable.
214         * BuildSlaveSupport/download-built-product: Added property svn:executable.
215         * BuildSlaveSupport/mac: Removed.
216         * BuildSlaveSupport/test-result-archive: Added property svn:executable.
217
218 2013-01-04  Ryosuke Niwa  <rniwa@webkit.org>
219
220         Add a script to delete stale zero-byte build files
221         https://bugs.webkit.org/show_bug.cgi?id=106131
222
223         Reviewed by Tony Chang.
224
225         Delete zero-byte build files on Mac port for now. It doesn't do anything on other ports.
226
227         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
228         (DeleteStaleBuildFiles): Added.
229         (Factory.__init__): Add DeleteStaleBuildFiles step.
230         * BuildSlaveSupport/delete-stale-build-files: Added.
231         (main): Delete zero-byte files except ones intentionally generated by our build process.
232         (webkitBuildDirectory): Copied from build-product-archive.
233
234 2013-01-04  Michael Pruett  <michael@68k.org>
235
236         [GTK] Fix build error on GTK due to r138836
237         https://bugs.webkit.org/show_bug.cgi?id=106154
238
239         Reviewed by Kentaro Hara.
240
241         * GNUmakefile.am:
242
243 2013-01-04  Dan Bernstein  <mitz@apple.com>
244
245         [mac] WebKit1 has no equivalent of WKBundleNodeHandleCopyHTMLTableCellElementCellAbove
246         https://bugs.webkit.org/show_bug.cgi?id=106121
247
248         Reviewed by Adele Peterson.
249
250         Added test for -[DOMTHMLTableCellElement _cellAbove].
251
252         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
253         * TestWebKitAPI/Tests/mac/DOMHTMLTableCellCellAbove.mm: Added.
254         (-[HTMLTableCellElementCellAboveTest webView:didFinishLoadForFrame:]):
255         (TestWebKitAPI):
256         (TestWebKitAPI::expectCellAboveCell):
257         (TestWebKitAPI::TEST):
258         * TestWebKitAPI/Tests/mac/DOMHTMLTableCellElementCellAbove.html: Added.
259
260 2013-01-04  Eric Seidel  <eric@webkit.org>
261
262         FlakyTestReporter should be re-enabled and taught how to post patches
263         https://bugs.webkit.org/show_bug.cgi?id=103839
264
265         Reviewed by Adam Barth.
266
267         This moves LayoutTestResultsReader off of the DeprecatedPort object.
268         It also adds a real Port object to the EWS and CommitQueue objects
269         using a new PatchProcessingQueue superclass.
270         PatchProcessingQueue doesn't seem to be the cleanest insertion point
271         but works for this purpose.
272         I also moved _upload_results_archive_for_patch into PatchProcessingQueue
273         to resolve a FIXME.
274
275         This required some hacks/shiming between the non-specific "old"
276         port names which the EWS system is currently using, and the new
277         port objects.  This shimming is done in PatchProcessingQueue._new_port_name_from_old.
278
279         Hopefully this will fix the flaky test reporter and results uploading.
280         Certainly it's another small step towards getting rid of the old ports.py
281         infrastructure and making the NRWT Port class common webkitpy infrastructure.
282
283         Now that DeprecatedPort is no longer used for the results directory
284         I removed all the explicit results-dir code which webkit-patch was using
285         in --non-interactive mode to tell NRWT to use a results-dir it understood. :)
286
287         * Scripts/webkitpy/common/config/ports.py:
288         (DeprecatedPort.run_perl_unittests_command):
289         * Scripts/webkitpy/common/config/ports_mock.py:
290         (MockPort.name):
291         * Scripts/webkitpy/common/system/outputcapture.py:
292         (OutputCapture.assert_outputs):
293         * Scripts/webkitpy/layout_tests/port/apple.py:
294         (ApplePort.determine_full_port_name):
295         * Scripts/webkitpy/tool/bot/layouttestresultsreader.py:
296         (LayoutTestResultsReader.__init__):
297         (LayoutTestResultsReader):
298         (LayoutTestResultsReader._read_file_contents):
299         (LayoutTestResultsReader._create_layout_test_results):
300         (LayoutTestResultsReader._create_unit_test_results):
301         (LayoutTestResultsReader.results):
302         (LayoutTestResultsReader.archive):
303         * Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:
304         (LayoutTestResultsReaderTest.test_missing_layout_test_results):
305         (LayoutTestResultsReaderTest.test_create_unit_test_results):
306         (test_missing_unit_test_results_path):
307         (test_layout_test_results):
308         (test_archive_last_layout_test_results):
309         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
310         (AbstractEarlyWarningSystem):
311         (AbstractEarlyWarningSystem.__init__):
312         (AbstractEarlyWarningSystem.begin_work_queue):
313         (AbstractEarlyWarningSystem.run_command):
314         * Scripts/webkitpy/tool/commands/queues.py:
315         (AbstractPatchQueue.work_item_log_path):
316         (PatchProcessingQueue):
317         (PatchProcessingQueue._new_port_name_from_old):
318         (PatchProcessingQueue.begin_work_queue):
319         (PatchProcessingQueue._upload_results_archive_for_patch):
320         (CommitQueue):
321         (CommitQueue.begin_work_queue):
322         (CommitQueue.run_command):
323         (AbstractReviewQueue):
324         (AbstractReviewQueue.__init__):
325         (AbstractReviewQueue.begin_work_queue):
326         * Scripts/webkitpy/tool/commands/queues_unittest.py:
327         (AbstractPatchQueueTest.test_next_patch):
328         (PatchProcessingQueueTest):
329         (PatchProcessingQueueTest.test_upload_results_archive_for_patch):
330         * Scripts/webkitpy/tool/steps/runtests.py:
331         (RunTests.run):
332         * Scripts/webkitpy/tool/steps/runtests_unittest.py:
333
334 2013-01-04  Dana Jansens  <danakj@chromium.org>
335
336         [chromium] Remove lost-compositor-context layout tests
337         https://bugs.webkit.org/show_bug.cgi?id=106089
338
339         Reviewed by James Robinson.
340
341         Remove the loseCompositorContext() test function.
342
343         * DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
344         (WebTestRunner::TestRunner::TestRunner):
345         * DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
346         (TestRunner):
347
348 2013-01-04  Adam Klein  <adamk@chromium.org>
349
350         Remove ENABLE_MUTATION_OBSERVERS #define
351         https://bugs.webkit.org/show_bug.cgi?id=105459
352
353         Reviewed by Ryosuke Niwa.
354
355         * Scripts/webkitperl/FeatureList.pm:
356         * qmake/mkspecs/features/features.pri:
357
358 2013-01-04  Ryosuke Niwa  <rniwa@webkit.org>
359
360         Statistics used in perftest_unittest.py and perftest_integrationtest.py are bogus
361         https://bugs.webkit.org/show_bug.cgi?id=106078
362
363         Reviewed by Tony Chang.
364
365         This patch updates values for individual iterations in dummy performance tests used in
366         perftest_unittest.py and perftest_integrationtest.py so that they match up with
367         statistics such as stdev and median reported in those tests. This change is required
368         to resolve the bug 97510.
369
370         This patch also refactors integration tests by extracting *TestData classes that
371         centralizes the definitions of each dummy performance test's text (DRT output),
372         runner output, and parsed results (JSON) so that we may share more data between
373         python tests.
374
375         * Scripts/webkitpy/performance_tests/perftest_unittest.py:
376         (MainTest._assert_results_are_correct): Extracted from test_parse_output.
377         Use self.assertAlmostEqual when comparing the standard deviation.
378         (MainTest.test_parse_output):
379         (test_parse_output_with_failing_line):
380         (test_parse_output_with_description): Use _assert_results_are_correct.
381         (test_parse_output_with_subtests): Ditto.
382
383         * Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
384         (InspectorPassTestData): Extracted from tests below.
385         (EventTargetWrapperTestData): Ditto.
386         (SomeParserTestData): Ditto.
387         (MemoryTestData): Ditto.
388         (TestDriver.run_test): Moved test definitions out of the method.
389         (MainTest._normalize_output): Truncate standard deviations at 5th decimal point.
390         (MainTest._load_output_json): Extracted from create_runner.
391         (MainTest.create_runner):
392         (MainTest.test_run_test_set_for_parser_tests):
393         (MainTest.test_run_memory_test):
394         (MainTest._test_run_with_json_output):
395         (MainTest.test_run_with_json_output):
396         (MainTest.test_run_with_description):
397         (MainTest.test_run_generates_json_by_default):
398         (MainTest.test_run_merges_output_by_default):
399         (MainTest.test_run_respects_reset_results):
400         (MainTest.test_run_generates_and_show_results_page):
401         (MainTest.test_run_with_slave_config_json):
402         (MainTest.test_run_with_multiple_repositories):
403
404 2013-01-04  Martin Robinson  <mrobinson@igalia.com>
405
406         [GTK] [WebKit2] Clicking on a word that is selected in an editable area deletes it
407         https://bugs.webkit.org/show_bug.cgi?id=106045
408
409         Reviewed by Carlos Garcia Campos.
410
411         Update test results to confirm that compositions without preedits do not trigger
412         a composition confirmation.
413
414         * TestWebKitAPI/Tests/gtk/InputMethodFilter.cpp:
415         (TestWebKitAPI::verifyCanceledComposition):
416
417 2013-01-04  Sailesh Agrawal  <sail@chromium.org>
418
419         [Mac] [WK2] platform/mac/fast/events/numpad-keycode-mapping.html fails
420         https://bugs.webkit.org/show_bug.cgi?id=105958
421
422         Reviewed by Alexey Proskuryakov.
423
424         Ported code from DumpRenderTree to WebKitTestRunner to map all numpad keys.
425
426         * WebKitTestRunner/mac/EventSenderProxy.mm:
427         (KeyMappingEntry):
428         (WTR):
429         (WTR::EventSenderProxy::keyDown): Added all numpad keys.
430
431 2013-01-03  Chris Fleizach  <cfleizach@apple.com>
432
433         REGRESSION: [Mac] Intermittent crash in WTR::AccessibilityUIElement::isEqual
434         https://bugs.webkit.org/show_bug.cgi?id=106073
435
436         Reviewed by Ryosuke Niwa.
437
438         Check that the element being compared to is not nil. 
439         This crash is happening because one of the accessibility tests does an isEqual comparison within a callback function.
440         It looks like occasionally, one of the elements passed in to the isEqual is nil because the notification handler is on the accessibility
441         controller, and the notification is being delivered after the document objects are cleared. This shouldn't happen but I've seen it 
442         sometimes before on parallel WebKitTestRunner runs.
443
444         * DumpRenderTree/AccessibilityUIElement.cpp:
445         (AccessibilityUIElement::isEqual):
446         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
447         (WTR::AccessibilityUIElement::isEqual):
448
449 2013-01-03  Tim 'mithro' Ansell  <mithro@mithis.com>
450
451         Downloads can be flaky, so try downloading multiple times.
452         https://bugs.webkit.org/show_bug.cgi?id=105976
453
454         Reviewed by Eric Seidel.
455
456         * Scripts/webkitpy/common/system/autoinstall.py:
457         (AutoInstaller._download_to_stream):
458
459 2013-01-03  Eric Seidel  <eric@webkit.org>
460
461         Rename Tool.port to deprecated_port in preparation for removing more callers
462         https://bugs.webkit.org/show_bug.cgi?id=106076
463
464         Reviewed by Ryosuke Niwa.
465
466         This resolves a long-standing FIXME to rename this method. :)
467
468         * Scripts/webkitpy/tool/bot/botinfo.py:
469         (BotInfo.summary_text):
470         * Scripts/webkitpy/tool/bot/irc_command.py:
471         (Rollout._update_working_copy):
472         * Scripts/webkitpy/tool/bot/layouttestresultsreader.py:
473         (LayoutTestResultsReader._create_layout_test_results):
474         (LayoutTestResultsReader._create_unit_test_results):
475         (LayoutTestResultsReader._results_directory):
476         * Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:
477         (test_missing_unit_test_results_path):
478         * Scripts/webkitpy/tool/main.py:
479         (WebKitPatch.deprecated_port):
480         * Scripts/webkitpy/tool/mocktool.py:
481         (MockTool.deprecated_port):
482         * Scripts/webkitpy/tool/steps/build.py:
483         (Build.build):
484         * Scripts/webkitpy/tool/steps/checkstyle.py:
485         (CheckStyle.run):
486         * Scripts/webkitpy/tool/steps/commit.py:
487         (Commit._check_test_expectations):
488         * Scripts/webkitpy/tool/steps/preparechangelog.py:
489         (PrepareChangeLog.run):
490         * Scripts/webkitpy/tool/steps/preparechangelogfordepsroll.py:
491         (PrepareChangeLogForDEPSRoll.run):
492         * Scripts/webkitpy/tool/steps/preparechangelogforrevert.py:
493         (PrepareChangeLogForRevert.run):
494         * Scripts/webkitpy/tool/steps/runtests.py:
495         (RunTests.run):
496         * Scripts/webkitpy/tool/steps/steps_unittest.py:
497         (StepsTest.test_runtests_args):
498         * Scripts/webkitpy/tool/steps/update.py:
499         (Update._update_command):
500
501 2013-01-03  Eric Seidel  <eric@webkit.org>
502
503         Add myself to the webkitpy watchlist.
504
505         Unreviewed.
506
507         * Scripts/webkitpy/common/config/watchlist:
508
509 2013-01-03  Ryosuke Niwa  <rniwa@webkit.org>
510
511         Cleanup perftest* tests and add a test for computing statistics
512         https://bugs.webkit.org/show_bug.cgi?id=105685
513
514         Reviewed by Eric Seidel.
515
516         Add a test for PerfTest.compute_statistics (moved and renamed from PageLoadingPerfTest.calculate_statistics) and
517         extracted perftestsrunner_itegrationtests.py from perftestsrunner_unittests.py.
518
519         Also fixed a bug in compute_statistics that the mean ('avg') value can have a large rounding errors in some cases.
520
521         * Scripts/webkitpy/performance_tests/perftest.py:
522         (PerfTest.compute_statistics): Moved from PageLoadingPerfTest to prepare for the bug 97510. Also compute the mean
523         directly from sorted_values instead of using the one from Knuth's online algorithm. This approach gives more
524         accurate result for the mean.
525         (PageLoadingPerfTest.run_single):
526         * Scripts/webkitpy/performance_tests/perftest_unittest.py:
527         (MainTest.test_compute_statistics):
528         (MainTest.test_compute_statistics.compute_statistics): Added.
529         (TestPageLoadingPerfTest.test_run): floatify values.
530         (TestPageLoadingPerfTest.test_run_with_memory_output): Ditto. Also got rid of ".0" from mean values now that Python
531         correctly recognizes them as integers.
532
533         * Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py: Copied from
534         Tools/Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py.
535         (TestDriver): Moved out of MainTest.
536         (MainTest): Got rid of assertWritten and all unit tests.
537         (MainTest._normalize_output): Renamed from normalizeFinishedTime to match the PEP8 naming convention.
538         (MainTest.test_run_test_set_kills_drt_per_run.TestDriverWithStopCount):
539         (MainTest.test_run_test_set_for_parser_tests):
540         (MainTest.test_run_memory_test):
541         (MainTest._test_run_with_json_output):
542         (MainTest.test_run_generates_json_by_default):
543         (MainTest.test_run_merges_output_by_default):
544         (MainTest.test_run_respects_reset_results):
545         (MainTest.test_run_generates_and_show_results_page): Use runner.load_output_json() instead of manually loading and
546         parsing output JSON files. Just verify that the output path is correct instead.
547         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
548         (MainTest): Removed all integration tests.
549         (MainTest.create_runner): Simplified.
550
551 2013-01-03  Julie Parent  <jparent@chromium.org>
552
553         Dashboard cleanup: remove usage of global g_defaultBuilderName
554         https://bugs.webkit.org/show_bug.cgi?id=106043
555
556         Use now public defaultBuilder() from the BuilderGroup, rather
557         than global variable.
558
559         Also eliminates the setup() and initBuilders() functions since we
560         no longer need to track the global.
561
562         Reviewed by Adam Barth.
563
564         * TestResultServer/static-dashboards/builders.js:
565         (BuilderGroup.prototype.defaultBuilder):
566         (BuilderGroup.prototype.master):
567         * TestResultServer/static-dashboards/dashboard_base.js:
568         (parseParameters):
569         * TestResultServer/static-dashboards/flakiness_dashboard.js:
570         (updateDefaultBuilderState):
571         * TestResultServer/static-dashboards/loader.js:
572         (.):
573         * TestResultServer/static-dashboards/loader_unittests.js:
574
575 2013-01-03  Ryosuke Niwa  <rniwa@webkit.org>
576
577         Disable an intermittently failing unit test for now.
578         The failure is tracked by the bug 106051.
579
580         * TestWebKitAPI/Tests/mac/MemoryCachePruneWithinResourceLoadDelegate.mm:
581         (TestWebKitAPI::TEST):
582
583 2013-01-03  Dan Bernstein  <mitz@apple.com>
584
585         No way to obtain a DOMNode given a JS wrapper for a Node
586         https://bugs.webkit.org/show_bug.cgi?id=106033
587
588         Added a test for +[DOMNode _nodeFromJSWrapper:].
589
590         Reviewed by Sam Weinig.
591
592         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
593         * TestWebKitAPI/Tests/mac/DOMNodeFromJSObject.mm: Added.
594         (TestWebKitAPI):
595         (TestWebKitAPI::TEST):
596
597 2013-01-03  Emil A Eklund  <eae@chromium.org>
598
599         Fix overflow in LayoutUnit::ceil and floor for SATURATED_LAYOUT_ARITHMETIC
600         https://bugs.webkit.org/show_bug.cgi?id=105961
601
602         Reviewed by Levi Weintraub.
603         
604         Add tests for LayoutUnit::ceil and floor.
605
606         * TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp:
607         (TestWebKitAPI::TEST):
608         (TestWebKitAPI):
609
610 2013-01-03  Julie Parent  <jparent@chromium.org>
611
612         Add unit test for default builder for the dashboards.
613         https://bugs.webkit.org/show_bug.cgi?id=105972
614
615         Reviewed by Dirk Pranke.
616
617         * TestResultServer/static-dashboards/loader_unittests.js:
618
619 2013-01-03  Tony Chang  <tony@chromium.org>
620
621         Generate internal.settings from Settings.in
622         https://bugs.webkit.org/show_bug.cgi?id=104740
623
624         Reviewed by Adam Barth.
625
626         * GNUmakefile.am: Compile new generated files on GTK+.
627         * qmake/mkspecs/features/default_post.prf: Qt: Make it so an action
628         with both extra_sources and add_output_to_sources=false will still
629         compile the files in extra_sources. This makes it possible to compile
630         InternalSettingsGenerated.cpp and not be confused by
631         InternalSettingsGenerated.idl.
632
633 2013-01-03  Zan Dobersek  <zandobersek@gmail.com>
634
635         [style] WebIDL-reflecting uppercase enums reported as style violation
636         https://bugs.webkit.org/show_bug.cgi?id=105832
637
638         Reviewed by Tony Chang.
639
640         Recognize the enum as WebIDL-reflecting one if there's a comment present that
641         indicates this. In enums spanning over multiple lines, the comment is expected
642         on the first line. In enums placed in one line, the comment is expected at the
643         end of that line.
644
645         WebIDL-reflecting enum values are required to be written in uppercase and as such
646         violate the common rule of these values being written in InterCaps. Annotating
647         enums this way makes it possible to avoid false style violation reports.
648
649         The comment is of form '// Web(?:Kit)?IDL enum'.
650
651         * Scripts/webkitpy/style/checkers/cpp.py:
652         (_EnumState.__init__):
653         (_EnumState.process_clean_line):
654         (check_enum_casing):
655         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
656         (NoNonVirtualDestructorsTest.test_enum_casing):
657
658 2013-01-03  Tim 'mithro' Ansell  <mithro@mithis.com>
659
660         Adding favicon.ico to the garden-o-matic.
661         https://bugs.webkit.org/show_bug.cgi?id=105982
662
663         Reviewed by Adam Barth.
664
665         * Scripts/webkitpy/tool/servers/gardeningserver.py:
666         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/favicon.ico:
667
668 2013-01-03  Jonathan Liu  <net147@gmail.com>
669
670         [Qt] Fix library linking order
671         https://bugs.webkit.org/show_bug.cgi?id=105818
672
673         Some Qt libraries are linked before the private static libraries
674         that depend on them which results in QtWebKit failing to link.
675
676         Copy Qt module dependencies from QT to QT_PRIVATE when creating
677         module to ensure the Qt libraries are linked after the private
678         static libraries that depend on them.
679
680         Reviewed by Tor Arne Vestbø.
681
682         * qmake/mkspecs/features/default_post.prf:
683
684 2013-01-02  Byungwoo Lee  <bw80.lee@samsung.com>
685
686         [EFL][WK2] Fix tooltip bugs in MiniBrowser.
687         https://bugs.webkit.org/show_bug.cgi?id=102209
688
689         Reviewed by Gyuyoung Kim.
690
691         Set tooltip on the elm_window instead of ewk_view, and add delay to
692         show the tooltip window.
693
694         Setting tooltip on the ewk_view makes elementary error message because
695         ewk_view is not an elementary widget. To remove the error message,
696         tooltip should be set on the elm_window.
697
698         Most browsers show the tooltip after a mouse pointer stays on an
699         element object that has tooltip text.
700         But elm_tooltip widget itself doesn't have delay or handle mouse
701         events to show/hide.
702
703         So additional codes are added to show/hide tooltip widget along with
704         mouse events.
705           1) When a mouse pointer stays for a second on an element which has
706              tooltip text, then tooltip widget is displayed.
707           2) When a mouse pointer is moved or out of ewk_view, hide the tooltip
708              widget.
709
710         * MiniBrowser/efl/main.c:
711         (_Tooltip_Information):
712         (_Browser_Window):
713         (on_tooltip_show):
714         (window_tooltip_hide):
715         (window_tooltip_update):
716         (on_mouse_in):
717         (on_mouse_move):
718         (on_mouse_out):
719         (window_free):
720         (on_tooltip_text_set):
721         (on_tooltip_text_unset):
722         (window_create):
723
724 2013-01-02  Tony Chang  <tony@chromium.org>
725
726         Unreviewed, rolling out r138661.
727         http://trac.webkit.org/changeset/138661
728         https://bugs.webkit.org/show_bug.cgi?id=104740
729
730         Compile problems on EFL
731
732         * GNUmakefile.am:
733         * qmake/mkspecs/features/default_post.prf:
734
735 2013-01-02  Tony Chang  <tony@chromium.org>
736
737         Generate internal.settings from Settings.in
738         https://bugs.webkit.org/show_bug.cgi?id=104740
739
740         Reviewed by Adam Barth.
741
742         * GNUmakefile.am: Compile new generated files on GTK+.
743         * qmake/mkspecs/features/default_post.prf: Qt: Make it so an action
744         with both extra_sources and add_output_to_sources=false will still
745         compile the files in extra_sources. This makes it possible to compile
746         InternalSettingsGenerated.cpp and not be confused by
747         InternalSettingsGenerated.idl.
748
749 2013-01-02  Adam Barth  <abarth@webkit.org>
750
751         Remove old-run-webkit-tests support from webkitpy
752         https://bugs.webkit.org/show_bug.cgi?id=105619
753
754         Reviewed by Eric Seidel.
755
756         This patch removes support for webkitpy parsing the
757         old-run-webkit-tests results format. There doesn't seem to be any
758         reason to keep this code around anymore now that most bots have
759         switched to new-run-webkit-tests.
760
761         * Scripts/webkitpy/common/net/buildbot/buildbot.py:
762         (Builder.fetch_layout_test_results):
763         * Scripts/webkitpy/common/net/layouttestresults.py:
764         (path_for_layout_test):
765         (LayoutTestResults.results_from_string):
766         (LayoutTestResults):
767         * Scripts/webkitpy/common/net/layouttestresults_unittest.py:
768         (LayoutTestResultsTest.test_results_from_string):
769         * Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
770         (test_flaky_test_failure):
771         * Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:
772         (LayoutTestResultsReaderTest.test_missing_layout_test_results):
773         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
774         (PatchAnalysisTask._test_patch):
775         * Scripts/webkitpy/tool/commands/queuestest.py:
776         (QueuesTest.assert_queue_outputs):
777
778 2013-01-02  Heikki Paajanen  <heikki.paajanen@palm.com>
779
780         [Qt][WK2] Add simple UI to find text from page
781         https://bugs.webkit.org/show_bug.cgi?id=96481
782
783         Reviewed by Jocelyn Turcotte.
784
785         Find bar that slides between navigation bar and WebView.
786
787         * MiniBrowser/qt/BrowserWindow.cpp:
788         (BrowserWindow::toggleFind):
789         * MiniBrowser/qt/BrowserWindow.h:
790         (BrowserWindow):
791         * MiniBrowser/qt/MiniBrowser.qrc:
792         * MiniBrowser/qt/MiniBrowserApplication.cpp:
793         (MiniBrowserApplication::notify):
794         * MiniBrowser/qt/icons/find.png: Added.
795         * MiniBrowser/qt/qml/BrowserWindow.qml:
796
797 2013-01-02  Christophe Dumez  <christophe.dumez@intel.com>
798
799         Regression(r138603): Caused 2 webkitpy tests to fail
800         https://bugs.webkit.org/show_bug.cgi?id=105913
801
802         Reviewed by Kentaro Hara.
803
804         Fix 2 webkitpy tests that started to fail after
805         r138603.
806
807         * Scripts/webkitpy/tool/bot/irc_command_unittest.py:
808         (IRCCommandTest._sheriff_test_data_url): Make sure the
809         returned test file URL is valid no matter what the
810         current working directory is.
811         * Scripts/webkitpy/tool/bot/ircbot_unittest.py:
812         (IRCBotTest.test_help): Add "sheriffs" command to the
813         list of available commands.
814
815 2013-01-01  Christophe Dumez  <christophe.dumez@intel.com>
816
817         [WK2] plugins/clicking-missing-plugin-fires-delegate.html is failing
818         https://bugs.webkit.org/show_bug.cgi?id=105897
819
820         Reviewed by Alexey Proskuryakov.
821
822         Dump in WebKitTestRunner the message that is expected by layout tests
823         when the missing plugin button is clicked.
824
825         * WebKitTestRunner/TestController.cpp:
826         (WTR::TestController::createWebViewWithOptions):
827         (WTR::TestController::unavailablePluginButtonClicked):
828         (WTR):
829         * WebKitTestRunner/TestController.h:
830         (TestController):
831
832 2013-01-01  KwangYong Choi  <ky0.choi@samsung.com>
833
834         [EFL] Enable MHTML feature
835         https://bugs.webkit.org/show_bug.cgi?id=105815
836
837         Reviewed by Laszlo Gombos.
838
839         Enable MHTML feature for EFL port by default.
840
841         * Scripts/webkitperl/FeatureList.pm:
842
843 2013-01-01  Alan Cutter  <alancutter@chromium.org>
844
845         sheriff-bot should know who the gardeners/sheriffs are
846         https://bugs.webkit.org/show_bug.cgi?id=105698
847
848         Reviewed by Eric Seidel.
849
850         Added a "sheriffs" command to sheriffbot to fetch the current Chromium Webkit sheriffs.
851
852         * Scripts/webkitpy/tool/bot/irc_command.py:
853         (Current):
854         (Current._retrieve_webkit_sheriffs):
855         (Current.execute):
856         * Scripts/webkitpy/tool/bot/irc_command_unittest.py:
857         (IRCCommandTest.test_current):
858         * Scripts/webkitpy/tool/bot/testdata/webkit_sheriff_0.js: Added.
859         * Scripts/webkitpy/tool/bot/testdata/webkit_sheriff_1.js: Added.
860         * Scripts/webkitpy/tool/bot/testdata/webkit_sheriff_2.js: Added.
861         * Scripts/webkitpy/tool/bot/testdata/webkit_sheriff_malformed.js: Added.
862         * Scripts/webkitpy/tool/bot/testdata/webkit_sheriff_zero.js: Added.
863
864 2012-12-31  Carlos Garcia Campos  <cgarcia@igalia.com>
865
866         [GTK] Move ImageDiff to the Tools directory root
867         https://bugs.webkit.org/show_bug.cgi?id=105421
868
869         Reviewed by Kenneth Rohde Christiansen.
870
871         * DumpRenderTree/gtk/GNUmakefile.ImageDiff.am: Removed.
872         * GNUmakefile.am:
873         * ImageDiff/gtk/ImageDiff.cpp: Renamed from Tools/DumpRenderTree/gtk/ImageDiff.cpp.
874
875 2012-12-30  Mike West  <mkwst@chromium.org>
876
877         Add myself to watchlists for CSP and console logs.
878         https://bugs.webkit.org/show_bug.cgi?id=105874
879
880         Reviewed by Dirk Pranke.
881
882         Because I really, really, really need more email.
883
884         * Scripts/webkitpy/common/config/committers.py:
885             Add mkwst+watchlist@chromium.org as a contributor.
886         * Scripts/webkitpy/common/config/watchlist:
887             Create watchlist categories for 1) the various mechanisms used to
888             generate console messages, and 2) CSP usage and files.
889
890 2012-12-30  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
891
892         [EFL] Enable TEMPLATE_ELEMENT feature
893         https://bugs.webkit.org/show_bug.cgi?id=105865
894         
895         Reviewed by Laszlo Gombos.
896
897         * Scripts/webkitperl/FeatureList.pm: Enable template element feature for EFL port.
898
899 2012-12-30  Zan Dobersek  <zandobersek@gmail.com>
900
901         Unreviewed GTK gardening of the unit tests.
902
903         Skip the TestInspectorServer unit test that's timing out completely.
904
905         * Scripts/run-gtk-tests:
906         (TestRunner):
907
908 2012-12-29  Ilya Tikhonovsky  <loislo@chromium.org>
909
910         Web Inspector: Native Memory Instrumentation plugin: do not generate 'not instrumented' warning for instrumented mutable members.
911         https://bugs.webkit.org/show_bug.cgi?id=105855
912
913         Reviewed by Vsevolod Vlasov.
914
915         Extract MemberExpr from ImplicitCastExpr. It happens when we instrument a mutable member because
916         addMember expects const T& and the mutable ref to member implicitly converts into const ref to member.
917
918         * clang/ReportMemoryUsagePlugin/ReportMemoryUsage.cpp:
919         (ReportMemoryUsageVisitor):
920         (clang::AddMemberCallVisitor::VisitCallExpr):
921         (clang::ReportMemoryUsageVisitor::VisitCXXMethodDecl):
922         (clang::ReportMemoryUsageVisitor::checkMembersCoverage):
923
924 2012-12-29  Ilya Tikhonovsky  <loislo@chromium.org>
925
926         Web Inspector: Native Memory Instrumentation plugin: move function bodies out of class declarations.
927         https://bugs.webkit.org/show_bug.cgi?id=105852
928
929         Reviewed by Alexander Pavlov.
930
931         * clang/ReportMemoryUsagePlugin/ReportMemoryUsage.cpp:
932         (clang):
933         (AddMemberCallVisitor):
934         (ReportMemoryUsageVisitor):
935         (clang::ReportMemoryUsageAction::ParseArgs):
936         (clang::AddMemberCallVisitor::VisitCallExpr):
937         (clang::ReportMemoryUsageVisitor::VisitCXXMethodDecl):
938         (clang::ReportMemoryUsageVisitor::emitWarning):
939         (clang::ReportMemoryUsageVisitor::findInstrumentationMethod):
940         (clang::ReportMemoryUsageVisitor::needsToBeInstrumented):
941         (clang::ReportMemoryUsageVisitor::CheckMembersCoverage):
942
943 2012-12-29  Zan Dobersek  <zandobersek@gmail.com>
944
945         [webkitpy] Omit webkitpy/thirdparty/BeautifulSoup.py from code coverage checking
946         https://bugs.webkit.org/show_bug.cgi?id=105835
947
948         Reviewed by Dirk Pranke.
949
950         The BeautifulSoup module is a third-party import and as such we don't have much control
951         over its testing. Because of that it should be omitted from code coverage checking.
952
953         * Scripts/webkitpy/test/main.py:
954         (Tester._run_tests):
955
956 2012-12-28  Martin Robinson  <mrobinson@igalia.com>
957
958         [GTK][WK2] Add support for IME Composition
959         https://bugs.webkit.org/show_bug.cgi?id=65093
960
961         Reviewed by Carlos Garcia Campos.
962
963         Update unit tests for GtkInputMethodFilter to note whether or not an event
964         was a fake event synthesized for composition purposes. This is now used
965         for WebKit2.
966
967         * TestWebKitAPI/Tests/gtk/InputMethodFilter.cpp:
968         (TestWebKitAPI::TestInputMethodFilter::sendSimpleKeyEvent):
969         (TestWebKitAPI::TestInputMethodFilter::sendKeyEventWithCompositionResults):
970         (TestWebKitAPI::TEST):
971         * gtk/generate-gtkdoc:
972         (get_webkit2_options): Skip new files in the WebKit2 source directory for documentation
973         generation.
974
975 2012-12-27  Ilya Tikhonovsky  <loislo@chromium.org>
976
977         Web Inspector: Native Memory Instrumentation. Update clang plugin according to the current state of memory instrumentation code.
978         https://bugs.webkit.org/show_bug.cgi?id=105800
979
980         Reviewed by Yury Semikhatsky.
981
982         * clang/ReportMemoryUsagePlugin/ReportMemoryUsage.cpp:
983         (clang::ReportMemoryUsageConsumer::ReportMemoryUsageConsumer):
984         (clang):
985
986 2012-12-27  Zan Dobersek  <zandobersek@gmail.com>
987
988         Create a GTK build system watchlist and add myself to it
989         https://bugs.webkit.org/show_bug.cgi?id=105769
990
991         Reviewed by Dirk Pranke.
992
993         Add a GTK build system watchlist, watching the configure.ac, GNUmakefile.am files
994         and the input GNUmakefile.features.am.in file. The GNUmakefile.list.am files are
995         omitted on purpose due to relatively high change rate they are exposed to.
996
997         The new watchlist would be of use to me as the GTK build system recently went
998         through a series of changes that included a changed policy on adding configuration
999         flags to configure.ac and subsequent additions to GNUmakefile.am files. A PSA on the
1000         mailing list about this change will be published later, but I'd also like to be
1001         notified of any pending changes to these files just so I can check the changes are
1002         in compliance with the new policy.
1003
1004         * Scripts/webkitpy/common/config/watchlist:
1005
1006 2012-12-26  Ilya Tikhonovsky  <loislo@chromium.org>
1007
1008         Unreviewed. Replace find("Tools") with rfind("Tools") because base dir of WebKit may have Tools word.
1009         As example ..../DevTools/src/third_party/WebKit
1010
1011         * Scripts/webkitpy/common/webkit_finder.py:
1012         (WebKitFinder.webkit_base):
1013
1014 2012-12-25  Christophe Dumez  <christophe.dumez@intel.com>
1015
1016         [EFL][WK2] Refactor snapshot taking code
1017         https://bugs.webkit.org/show_bug.cgi?id=105687
1018
1019         Reviewed by Kenneth Rohde Christiansen.
1020
1021         Call WKViewCreateSnapshot() instead of WKViewGetSnapshot()
1022         since the function was renamed to follow naming style.
1023
1024         * WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
1025         (WTR::PlatformWebView::windowSnapshotImage):
1026
1027 2012-12-24  Ilya Tikhonovsky  <loislo@chromium.org>
1028
1029         Web Inspector: Native Memory Instrumentation: propagate member type as edge type to the serialized heap graph.
1030         https://bugs.webkit.org/show_bug.cgi?id=105725
1031
1032         Reviewed by Yury Semikhatsky.
1033
1034         MemberType value names were adjusted according to Style Guide.
1035         Existing tests were extended with link type validation.
1036
1037         * TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
1038
1039 2012-12-24  Xiaobo Wang  <xbwang@torchmobile.com.cn>
1040
1041         [BlackBerry] DRT - Crashed when running pixels tests
1042         https://bugs.webkit.org/show_bug.cgi?id=105711
1043
1044         RIM PR 270003
1045
1046         Reviewed by George Staikos.
1047
1048         Calling window->post() here will result in buffer swapping which is
1049         only allowed in UI thread now, and I found we don't need to call it
1050         for GL renderer.
1051
1052         * DumpRenderTree/blackberry/PixelDumpSupportBlackBerry.cpp:
1053         (createBitmapContextFromWebView):
1054
1055 2012-12-22  Dan Winship  <danw@gnome.org>
1056
1057         Add a patch to fix libxml2 2.9.0 regression
1058         https://bugs.webkit.org/show_bug.cgi?id=104494
1059
1060         Reviewed by Martin Robinson.
1061
1062         * gtk/jhbuild.modules:
1063         * gtk/patches/libxml2-2.9.0-dtd.patch: patch from upstream
1064
1065 2012-12-23  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1066
1067         Unreviewed update of status to reviewer.
1068
1069         * Scripts/webkitpy/common/config/committers.py:
1070
1071 2012-12-23  Philippe Normand  <pnormand@igalia.com>
1072
1073         [GTK][jhbuild] Bump GStreamer to 1.0.4
1074         https://bugs.webkit.org/show_bug.cgi?id=105640
1075
1076         Reviewed by Martin Robinson.
1077
1078         * gtk/jhbuild.modules: Update GStreamer modules to 1.0.4.
1079
1080 2012-12-21  Nico Weber  <thakis@chromium.org>
1081
1082         chromium: webkit-build-directory doesn't handle ninja output dirs
1083         https://bugs.webkit.org/show_bug.cgi?id=105671
1084
1085         Reviewed by Daniel Bates.
1086
1087         Teach webkit-build-directory to detect the ninja build directory.
1088
1089         * Scripts/webkitdirs.pm:
1090         (determineBaseProductDir):
1091         (determineIsChromiumNinja):
1092
1093 2012-12-21  Ryosuke Niwa  <rniwa@webkit.org>
1094
1095         [Mountain Lion] platform/mac/editing/spelling/removing-underline-after-accepting-autocorrection-using-punctuation.html failing
1096         https://bugs.webkit.org/show_bug.cgi?id=95477
1097
1098         Reviewed by Sam Weinig.
1099
1100         Co-authored by Jia Pu.
1101
1102         Specify a fixed autocorrection dictionary in resetDefaultsToConsistentValues() so that
1103         we can have consistent autocorrection behavior when running tests.
1104
1105         * DumpRenderTree/mac/DumpRenderTree.mm:
1106         (resetDefaultsToConsistentValues):
1107         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
1108         (WTR::InjectedBundle::platformInitialize):
1109
1110 2012-12-21  Zan Dobersek  <zandobersek@gmail.com>
1111
1112         [GTK] Add WebKit1-specific TestExpectations file
1113         https://bugs.webkit.org/show_bug.cgi?id=97562
1114
1115         Reviewed by Dirk Pranke.
1116
1117         Implement the expectations_files method inside the GtkPort class that
1118         returns the list of the TestExpectations files the current test configuration
1119         requires. The method is implemented in a similar way as on the EFL port.
1120         A unit test is also added.
1121
1122         * Scripts/webkitpy/layout_tests/port/gtk.py:
1123         (GtkPort._search_paths):
1124         (GtkPort):
1125         (GtkPort.expectations_files):
1126         * Scripts/webkitpy/layout_tests/port/gtk_unittest.py:
1127         (GtkPortTest.test_expectations_files):
1128
1129 2012-12-21  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
1130
1131         [EFL] Enable feature option for the CSS sticky position
1132         https://bugs.webkit.org/show_bug.cgi?id=105630
1133
1134         Reviewed by Kenneth Rohde Christiansen.
1135
1136         Enable CSS sticky position feature by default for the
1137         EFL port. This feature option was added in r138252.
1138
1139         No new tests. Existing layout tests pass.
1140
1141         * Scripts/webkitperl/FeatureList.pm:
1142
1143 2012-12-21  Jussi Kukkonen  <jussi.kukkonen@intel.com>
1144
1145         [WK2] REGRESSION(r138232): It made 4 tests timeout
1146         https://bugs.webkit.org/show_bug.cgi?id=105623
1147
1148         Reviewed by Kenneth Rohde Christiansen.
1149
1150         r138232 changed functionality so that empty text output
1151         no longer leads to a dump() call, which leads to a timeout.
1152         Instead do a text dump if there is text output or if there
1153         is no audio output.
1154
1155         * WebKitTestRunner/TestInvocation.cpp:
1156         (WTR::TestInvocation::dumpResults):
1157
1158 2012-12-21  Zeno Albisser  <zeno@webkit.org>
1159
1160         [Qt][Mac] run-launcher cannot find Qt5WebKitWidgets.
1161         https://bugs.webkit.org/show_bug.cgi?id=105309
1162
1163         On Windows the library name is Qt5WebKitWidgets as well.
1164         So r138136 should not have adjusted the library name for Windows.
1165
1166         Reviewed by Simon Hausmann.
1167
1168         * Scripts/webkitdirs.pm:
1169         (builtDylibPathForName):
1170
1171 2012-12-21  Zeno Albisser  <zeno@webkit.org>
1172
1173         [Qt] Add new TestExpectations for qt-5.0-mac-wk2.
1174         https://bugs.webkit.org/show_bug.cgi?id=105424
1175
1176         This change will allow us to run a very specific
1177         subset of the available LayoutTests on a mac buildbot.
1178         The new baseline search path for mac will look as follows:
1179         qt-5.0-mac-wk2 -> qt-5.0-wk2 -> qt-5.0 -> qt-mac -> qt
1180
1181         Reviewed by Dirk Pranke.
1182
1183         * Scripts/webkitpy/layout_tests/port/qt.py:
1184         (QtPort._search_paths):
1185         * Scripts/webkitpy/layout_tests/port/qt_unittest.py:
1186         (QtPortTest):
1187
1188 2012-12-20  Ryuan Choi  <ryuan.choi@samsung.com>
1189
1190         [EFL] Build break with latest EFL libraries.
1191         https://bugs.webkit.org/show_bug.cgi?id=104827
1192
1193         Reviewed by Laszlo Gombos.
1194
1195         The eo EFL package is introduced and evas and ecore use it since 1.8.
1196         While introducing Eo, EFL changed several structures of Evas and Ecore
1197         from own specific class to Eo.
1198
1199         So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
1200         Ecore_Timer to build with latest EFL libraries.
1201
1202         * DumpRenderTree/efl/CMakeLists.txt: Includes eo EFL library.
1203         * EWebLauncher/CMakeLists.txt: Ditto.
1204         * MiniBrowser/efl/CMakeLists.txt: Ditto.
1205         * ImageDiff/PlatformEfl.cmake: Ditto.
1206         * TestWebKitAPI/PlatformEfl.cmake: Ditto.
1207         * TestWebKitAPI/PlatformWebView.h: Modified declaration of Evas_Object.
1208         * WebKitTestRunner/InjectedBundle/TestRunner.h: Modified declaration of Ecore_Timer.
1209         * WebKitTestRunner/PlatformEfl.cmake: Includes eo EFL library.
1210         * WebKitTestRunner/PlatformWebView.h: Modified declaration of Evas_Object.
1211
1212 2012-12-20  Dirk Pranke  <dpranke@chromium.org>
1213
1214         TestExpectation fallback is broken
1215         https://bugs.webkit.org/show_bug.cgi?id=105583
1216
1217         Reviewed by Ryosuke Niwa.
1218
1219         When I added support for the -wk2 in port names, it looks
1220         like I broke the way we computed the list of TestExpectations
1221         files so that the implementation-version directory was left out :(.
1222         Fixed and cleaned up the tests.
1223
1224         * Scripts/webkitpy/layout_tests/port/base.py:
1225         (Port.expectations_files):
1226         * Scripts/webkitpy/layout_tests/port/port_testcase.py:
1227         (TestWebKitPort.__init__):
1228         (PortTestCase.test_skipped_directories_for_symbols):
1229         (test_skipped_directories_for_features):
1230         (test_skipped_directories_for_features_no_matching_tests_in_test_list):
1231         (test_skipped_tests_for_unsupported_features_empty_test_list):
1232         (test_skipped_layout_tests):
1233         (test_expectations_files):
1234
1235 2012-12-20  Anders Carlsson  <andersca@apple.com>
1236
1237         Don't include WebKit2 headers when building TestWebKitAPI on windows
1238         https://bugs.webkit.org/show_bug.cgi?id=105582
1239
1240         Reviewed by Tim Horton.
1241
1242         * TestWebKitAPI/config.h:
1243         * TestWebKitAPI/win/main.cpp:
1244
1245 2012-12-20  Ryosuke Niwa  <rniwa@webkit.org>
1246
1247         REGRESSION(r133820?): SimplifyMarkupTest API test asserts
1248         https://bugs.webkit.org/show_bug.cgi?id=105370
1249
1250         Reviewed by Simon Fraser.
1251
1252         Re-enable the test.
1253
1254         * TestWebKitAPI/Tests/mac/SimplifyMarkup.mm:
1255         (TestWebKitAPI::TEST):
1256
1257 2012-12-20  Nico Weber  <thakis@chromium.org>
1258
1259         chromium nrwt: Pick the newest binary found in DEFAULT_BUILD_DIRECTORIES, not the first
1260         https://bugs.webkit.org/show_bug.cgi?id=105498
1261
1262         Reviewed by Dirk Pranke.
1263
1264         Use the newest binary available rather than an than always picking one
1265         build directory over another based on iteration order.
1266
1267         * Scripts/webkitpy/layout_tests/port/chromium.py:
1268         (ChromiumPort._static_build_path):
1269         Check for timestamps.
1270         * Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:
1271         (ChromiumMacPortTest.test_build_path_timestamps):
1272         Test that out / xcodebuild selection happens based on timestamps
1273         * Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:
1274         (ChromiumWinPortTest.test_build_path_timestamps):
1275         Test that out / build selection happens based on timestamps
1276
1277 2012-12-19  Simon Fraser  <simon.fraser@apple.com>
1278
1279         Lots of sticky tests failing in WK2
1280         https://bugs.webkit.org/show_bug.cgi?id=105464
1281
1282         Reviewed by Beth Dakin.
1283
1284         WebKitTestRunner had a race between snapshotting in the UI process,
1285         and resettting after the test in the web process. InjectedBundle::done()
1286         was a bad place to call page()->resetAfterTest(), because of this race;
1287         it could reset the scroll position before the UI snapshot had been obtained.
1288         
1289         Fix by moving the call to page()->resetAfterTest() into didReceiveMessage(),
1290         for the "Reset" message which will come in before the next test.
1291
1292         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1293         (WTR::InjectedBundle::didReceiveMessage):
1294         (WTR::InjectedBundle::done):
1295
1296 2012-12-19  Filip Pizlo  <fpizlo@apple.com>
1297
1298         DFG speculation checks that take JumpList should consolidate OSRExits
1299         https://bugs.webkit.org/show_bug.cgi?id=105401
1300
1301         Reviewed by Oliver Hunt.
1302
1303         Update the profiler to understand that an OSR exit may have multiple
1304         candidate exit sites.
1305
1306         * Scripts/display-profiler-output:
1307
1308 2012-12-20  Eric Seidel  <eric@webkit.org>
1309
1310         EWSes do not need to dump build/test logs when things pass
1311         https://bugs.webkit.org/show_bug.cgi?id=105402
1312
1313         Reviewed by Dirk Pranke.
1314
1315         When we were first writing the commit-queue and EWS system
1316         and running them locally, we thought it was important to see the
1317         build/test output as it happened.  Now these queues have been running
1318         for years, and we don't use this feature anymore.  So this patch
1319         makes us stop tee-ing the output directly to stdout, and instead
1320         only print any output from commands when they fail.
1321
1322         I also added some logging when we execute each command
1323         since we are no longer printing the command output itself.
1324         This should make it much easier to see errors with the EWS
1325         system itself, now that all the passing-build output is removed.
1326
1327         This required updating a zillion unittests, since we have a bunch of
1328         "integration" style testing of the queue-bots.  Many of the unittests for the bots were
1329         already approximating this behavior by using a "logging" Executive.
1330         I disabled logging in those cases to avoid redundant logging in those tests.
1331
1332         * Scripts/webkitpy/common/system/executive.py:
1333         (Executive.command_for_printing):
1334         (Executive.run_command):
1335         * Scripts/webkitpy/common/system/executive_mock.py:
1336         (MockExecutive.command_for_printing):
1337         (MockExecutive.run_command):
1338         * Scripts/webkitpy/common/system/executive_unittest.py:
1339         (ExecutiveTest.test_auto_stringify_args):
1340         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1341         (EarlyWarningSytemTest._default_expected_logs):
1342         (_test_ews):
1343         (_test_ewses):
1344         * Scripts/webkitpy/tool/commands/queues.py:
1345         (AbstractQueue.run_webkit_patch):
1346         * Scripts/webkitpy/tool/commands/queues_unittest.py:
1347         (AbstractQueueTest._assert_run_webkit_patch):
1348         (CommitQueueTest.test_commit_queue):
1349         (test_rollout):
1350         (test_rollout_lands):
1351         (test_manual_reject_during_processing):
1352         (StyleQueueTest.test_style_queue_with_style_exception):
1353         (test_style_queue_with_watch_list_exception):
1354
1355 2012-12-20  Dominic Mazzoni  <dmazzoni@google.com>
1356
1357         AX: support clickPoint in DRT for chromium
1358         https://bugs.webkit.org/show_bug.cgi?id=97359
1359
1360         Reviewed by Chris Fleizach.
1361
1362         Implement clickPointX, clickPointY, and elementAtPoint for Chromium, so that
1363         several more tests can pass.
1364
1365         * DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:
1366         (WebTestRunner::AccessibilityUIElement::AccessibilityUIElement):
1367         (WebTestRunner::AccessibilityUIElement::clickPointXGetterCallback):
1368         (WebTestRunner):
1369         (WebTestRunner::AccessibilityUIElement::clickPointYGetterCallback):
1370         (WebTestRunner::AccessibilityUIElement::elementAtPointCallback):
1371         * DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.h:
1372         (AccessibilityUIElement):
1373
1374 2012-12-20  Dan Bernstein  <mitz@apple.com>
1375
1376         prepare-ChangeLog adds "Additional information of the change such as approach, rationale" where it doesn't make sense
1377         https://bugs.webkit.org/show_bug.cgi?id=99268
1378
1379         Reviewed by Alexey Proskuryakov.
1380
1381         * Scripts/prepare-ChangeLog:
1382         (generateNewChangeLogs): Removed the "Additional information of the change" line.
1383
1384 2012-12-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1385
1386         Unreviewed. Skip unit test /webkit/atk/getTextInParagraphAndBodyModerate
1387
1388         * Scripts/run-gtk-tests:
1389         (TestRunner):
1390
1391 2012-12-20  Thiago Marcos P. Santos  <thiago.santos@intel.com>
1392
1393         [Qt] Move ImageDiff to the Tools directory root
1394         https://bugs.webkit.org/show_bug.cgi?id=105420
1395
1396         Reviewed by Tor Arne Vestbø.
1397
1398         Moved ImageDiff from outside DumpRenderTree because it is also a
1399         dependency when running pixel tests for WebKit2.
1400
1401         * ImageDiff/ImageDiff.pro: Renamed from Tools/DumpRenderTree/qt/ImageDiff.pro.
1402         * ImageDiff/qt/ImageDiff.cpp: Renamed from Tools/DumpRenderTree/qt/ImageDiff.cpp.
1403         * Tools.pro:
1404
1405 2012-12-20  Zan Dobersek  <zandobersek@gmail.com>
1406
1407         [GTK] Remove the --enable-unstable-features configuration option
1408         https://bugs.webkit.org/show_bug.cgi?id=105327
1409
1410         Reviewed by Martin Robinson.
1411
1412         Add a missing feature option for the CSS sticky position feature.
1413
1414         * Scripts/webkitperl/FeatureList.pm:
1415
1416 2012-12-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1417
1418         Unreviewed. Skip unit test WebKit2.ForceRepaint that times out
1419
1420         * Scripts/run-gtk-tests:
1421         (TestRunner):
1422
1423 2012-12-20  Dominik Röttsches  <dominik.rottsches@intel.com>
1424
1425         [EFL] MiniBrowser does not play Infinite Gangnam Style
1426         https://bugs.webkit.org/show_bug.cgi?id=103531
1427
1428         Reviewed by Kenneth Rohde Christiansen.
1429
1430         For EFL we would like this feature to be built by default.
1431
1432         * Scripts/webkitperl/FeatureList.pm:
1433
1434 2012-12-20  Csaba Osztrogonác  <ossy@webkit.org>
1435
1436         [Qt] EWS bots should call qmake always
1437         https://bugs.webkit.org/show_bug.cgi?id=90049
1438
1439         Reviewed by Simon Hausmann.
1440
1441         * Scripts/webkitdirs.pm:
1442         (buildQMakeProjects):
1443
1444 2012-12-20  Jochen Eisinger  <jochen@chromium.org>
1445
1446         [chromium] fix stray printf in TestRunner's WebTestProxy
1447         https://bugs.webkit.org/show_bug.cgi?id=105515
1448
1449         Reviewed by Ryosuke Niwa.
1450
1451         * DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:
1452         (WebTestRunner::WebTestProxyBase::shouldInsertNode):
1453
1454 2012-12-20  Dominik Röttsches  <dominik.rottsches@intel.com>
1455
1456         [WK2] WebAudio WKTR support
1457         https://bugs.webkit.org/show_bug.cgi?id=95084
1458
1459         Reviewed by Kenneth Rohde Christiansen.
1460
1461         Implementing audio data dump support for WebKitTestRunner,
1462         by adding the API to the IDL, enabling IPC for transferring
1463         the audio data as bytebuffer and dumping it according
1464         to run-webkit-tests script's expectations.
1465         This enables audio testing on WebKit2 ports.
1466         Based on initial wip-patch from Philippe Normand - thanks.
1467
1468         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl: Adding setAudioData API.
1469         * WebKitTestRunner/InjectedBundle/TestRunner.cpp: Assign audio buffer data to a local WKDataRef after extracting it from WK2 using WKBundleDataFromUint8Array bundle API.
1470         (WTR::TestRunner::setAudioData):
1471         (WTR):
1472         * WebKitTestRunner/InjectedBundle/TestRunner.h: Add a whatToDump state for dumping Audio.
1473         (TestRunner):
1474         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp: Add audio to the message that's transferred to the WKTR process.
1475         (WTR::InjectedBundle::done):
1476         * WebKitTestRunner/InjectedBundle/InjectedBundle.h: Allow setting and audio result handle to be transferred.
1477         (WTR::InjectedBundle::setAudioResult):
1478         (InjectedBundle):
1479         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1480         (WTR::InjectedBundlePage::dump): Dummy handling the Audio case in the switch, build fix for Mac.
1481         * WebKitTestRunner/TestInvocation.cpp: Audio dump support, dump audio if we haven't received a text dump from the web process.
1482         (WTR::TestInvocation::dumpResults):
1483         (WTR):
1484         (WTR::TestInvocation::dumpAudio):
1485         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle): Storing received audio data before dumping.
1486         * WebKitTestRunner/TestInvocation.h:
1487         (TestInvocation):
1488
1489 2012-12-20  Alberto Garcia  <agarcia@igalia.com>
1490
1491         [GTK] Count failed and timed out tests separately
1492         https://bugs.webkit.org/show_bug.cgi?id=105448
1493
1494         Reviewed by Carlos Garcia Campos.
1495
1496         Display the number of tests that fail, time out and are skipped
1497         separately in the buildbot page.
1498
1499         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1500         (RunGtkAPITests.commandComplete):
1501         (RunGtkAPITests.evaluateCommand):
1502         (RunGtkAPITests.getText2):
1503         * Scripts/run-gtk-tests:
1504         (TestRunner.run_tests):
1505
1506 2012-12-19  Ryosuke Niwa  <rniwa@webkit.org>
1507
1508         PerfTest.parse_output does too much
1509         https://bugs.webkit.org/show_bug.cgi?id=105391
1510
1511         Reviewed by Tony Chang.
1512
1513         Moved the code to filter lines into PerfTest._filter_output, which has been renamed from _filter_stderr.
1514         Also moved the code to output test results into PerfTest._run_with_driver.
1515
1516         * Scripts/webkitpy/performance_tests/perftest.py:
1517         (PerfTest.__init__): Added _description.
1518         (PerfTest.description): Added.
1519         (PerfTest._run_with_driver): Moved the code to output test description and test results.
1520         (PerfTest._filter_output): Moved and renamed from PerfTest._filter_stderr.
1521         (PerfTest.parse_output): Removed the code to output test results. Return test results and description
1522         respectively. Also removed the code that allowed some tests to omit values since all tests report each
1523         iteration now since r136492.
1524         (PerfTest.output_statistics): Removed the code to print test description, now done in _run_with_driver.
1525         (ChromiumStylePerfTest._run_with_driver): Added. Chromium style tests are sufficiently different from
1526         regular PerfTest that it doesn't make much sense to share _run_with_driver. But really, we should just
1527         get rid of this type of test altogether in favor of regular performance tests that uses runner.js.
1528         (ChromiumStylePerfTest.parse_and_log_output): Renamed from parse_output.
1529         (PageLoadingPerfTest._run_with_driver): Removed the explicit '' for the test description.
1530         * Scripts/webkitpy/performance_tests/perftest_unittest.py:
1531         (MainTest.test_parse_output): Removed the expected logs since parse_output no longer prints out results.
1532         Also added a call to _filter_output since parse_output doesn't filter the output text anymore.
1533         (MainTest.test_parse_output_with_failing_line): Added a call to _filter_output. Also added ',' after 'Time:'
1534         so that it's not string-concatenated with the next line.
1535         (MainTest.test_parse_output_with_description): Added; a test for PerfTest.description().
1536         (MainTest.test_parse_output_with_subtests): Removed the expected logs, and added a call to _filter_output.
1537
1538 2012-12-19  Alexis Menard  <alexis@webkit.org>
1539
1540         Implement CSS parsing for CSS transitions unprefixed.
1541         https://bugs.webkit.org/show_bug.cgi?id=104804
1542
1543         Reviewed by Dean Jackson.
1544
1545         Add a new flag ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED
1546         to cover the work of unprefixing Transforms, Animations and 
1547         Transitions. It will let the possibility of each ports to turn it off 
1548         in their release branches until we're confident that these CSS 
1549         properties are ready to be unprefixed.
1550
1551         * Scripts/webkitperl/FeatureList.pm:
1552         * qmake/mkspecs/features/features.pri:
1553
1554 2012-12-19  Julien Chaffraix  <jchaffraix@webkit.org>
1555
1556         2 clampTo unit tests are failing
1557         https://bugs.webkit.org/show_bug.cgi?id=105253
1558
1559         Reviewed by Emil A Eklund.
1560
1561         Removed clampToUnsigned as it was actually testing exactly what
1562         clampToUnsignedLong was doing. Also made clampToIntFloat more robust
1563         to precision loss (fix suggested by Emil).
1564
1565         * TestWebKitAPI/Tests/WTF/MathExtras.cpp:
1566
1567 2012-12-19  Thiago Marcos P. Santos  <thiago.santos@intel.com>
1568
1569         [EFL] Move ImageDiff to the Tools directory root
1570         https://bugs.webkit.org/show_bug.cgi?id=105305
1571
1572         Reviewed by Laszlo Gombos.
1573
1574         We previously moved this directory from the DRT directory to
1575         efl/ImageDiff. The major reason for doing so was because ImageDiff does
1576         not depend on DumpRenderTree but for legacy reasons was living inside the
1577         DRT folder, even though it is needed when running pixel tests for WK2.
1578
1579         Now we are moving to Tool directory root as other ports agreed to do the same.
1580
1581         * CMakeLists.txt:
1582         * ImageDiff/CMakeLists.txt: Added.
1583         * ImageDiff/PlatformEfl.cmake: Added.
1584         * ImageDiff/efl/ImageDiff.cpp: Renamed from Tools/efl/ImageDiff/ImageDiff.cpp.
1585         * efl/ImageDiff/CMakeLists.txt: Removed.
1586
1587 2012-12-19  Zeno Albisser  <zeno@webkit.org>
1588
1589         [Qt][Mac] run-launcher cannot find Qt5WebKitWidgets.
1590         https://bugs.webkit.org/show_bug.cgi?id=105309
1591
1592         The version number is only used as a part
1593         of the library name on Linux.
1594
1595         Reviewed by Kenneth Rohde Christiansen.
1596
1597         * Scripts/webkitdirs.pm:
1598         (builtDylibPathForName):
1599
1600 2012-12-19  Alberto Garcia  <agarcia@igalia.com>
1601
1602         [GTK] Tests that time out are not considered as failures.
1603         https://bugs.webkit.org/show_bug.cgi?id=105318
1604
1605         Reviewed by Martin Robinson.
1606
1607         Fix parsing of the GTK API tests log files.
1608
1609         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1610         (RunGtkAPITests.commandComplete):
1611
1612 2012-12-18  Ilya Tikhonovsky  <loislo@chromium.org>
1613
1614         Unreviewed, rolling out r138061.
1615         https://bugs.webkit.org/show_bug.cgi?id=105396
1616
1617         Original patch:
1618         http://trac.webkit.org/changeset/138061
1619         https://bugs.webkit.org/show_bug.cgi?id=97359
1620
1621         It is crashing on Debug bots
1622
1623         * DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:
1624         (WebTestRunner::AccessibilityUIElement::AccessibilityUIElement):
1625         (WebTestRunner::AccessibilityUIElement::elementAtPointCallback):
1626         * DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.h:
1627         (AccessibilityUIElement):
1628
1629 2012-12-18  Alice Liu  <alice.liu@apple.com>
1630
1631         Test for https://bugs.webkit.org/show_bug.cgi?id=105106
1632         Add SPI to WebKit1 WebFrame for hit testing
1633
1634         Reviewed by Dan Bernstein.
1635
1636         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added file Tests/mac/ElementAtPointInWebFrame.mm
1637         * TestWebKitAPI/Tests/mac/ElementAtPointInWebFrame.mm: Added.
1638         (TestWebKitAPI::TEST): Loads html with two divs positioned in the 2nd and 4th quadrants of the webview.
1639         Then hit-tests at three points, expecting to hit the two divs and body element. 
1640
1641 2012-12-18  Alice Liu  <alice.liu@apple.com>
1642
1643         Test for https://bugs.webkit.org/show_bug.cgi?id=105262
1644         Add SPI to WebKit1 WebFrame for node conversion to JSValueRef
1645
1646         Reviewed by Anders Carlsson.
1647
1648         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added file Tests/mac/JSWrapperForNodeInWebFrame.mm.mm
1649         * TestWebKitAPI/Tests/mac/JSWrapperForNodeInWebFrame.mm.mm: Added.
1650         (TestWebKitAPI::TEST): Tests for the correct JS wrapper for a DOMNode, provided a WebScriptWorld.
1651         Loads html with a single div element. In an isolated world, creates a property on that node.
1652         Also, in the standard world, creates a different property on that node.  Then tests for 4 things:
1653             - Existence of the isolated property in the isolated world.
1654             - Existence of the standard property in the standard world.
1655             - Non-existence of the isolated property in the standard world.
1656             - Non-existence of the standard property in the isolated world.
1657
1658 2012-12-18  Simon Fraser  <simon.fraser@apple.com>
1659
1660         Disable the SimplifyMarkup API test, wich asserts in debug builds.
1661         Tracked by https://bugs.webkit.org/show_bug.cgi?id=105370.
1662         
1663         * TestWebKitAPI/Tests/mac/SimplifyMarkup.mm:
1664         (TestWebKitAPI::TEST):
1665
1666 2012-12-18  Joseph Pecoraro  <pecoraro@apple.com>
1667
1668         [Mac] Add Build Phase to Check Headers for Inappropriate Macros (Platform.h macros)
1669         https://bugs.webkit.org/show_bug.cgi?id=104279
1670
1671         Reviewed by David Kilzer.
1672
1673         Add a build phase script that checks a framework's header files for
1674         Platform.h and Compiler.h macros. Also add some tests for the script.
1675
1676         * Scripts/check-for-inappropriate-macros-in-external-headers: Added.
1677         Script to be used in build phases to check for inappropriate macros in headers.
1678
1679         * Scripts/test-webkitruby: Added.
1680         Script that can be used to run all webkitruby tests.
1681
1682         * Scripts/test-webkit-scripts:
1683         Also run the ruby tests.
1684
1685         * Scripts/webkitruby/check-for-inappropriate-macros-in-external-headers-tests/fake-data-failing-expected.txt: Added.
1686         * Scripts/webkitruby/check-for-inappropriate-macros-in-external-headers-tests/pass-expected.txt: Added.
1687         * Scripts/webkitruby/check-for-inappropriate-macros-in-external-headers-tests/resources/Fake.framework/Headers/Fail.h: Added.
1688         * Scripts/webkitruby/check-for-inappropriate-macros-in-external-headers-tests/resources/Fake.framework/Headers/Pass.h: Added.
1689         * Scripts/webkitruby/check-for-inappropriate-macros-in-external-headers-tests/run-test.rb: Added.
1690         Tests for the new script.
1691
1692 2012-12-18  Dominic Mazzoni  <dmazzoni@google.com>
1693
1694         AX: support clickPoint in DRT for chromium
1695         https://bugs.webkit.org/show_bug.cgi?id=97359
1696
1697         Reviewed by Chris Fleizach.
1698
1699         Implement clickPointX, clickPointY, and elementAtPoint for Chromium, so that
1700         several more tests can pass.
1701
1702         * DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:
1703         (WebTestRunner::AccessibilityUIElement::AccessibilityUIElement):
1704         (WebTestRunner::AccessibilityUIElement::clickPointXGetterCallback):
1705         (WebTestRunner):
1706         (WebTestRunner::AccessibilityUIElement::clickPointYGetterCallback):
1707         (WebTestRunner::AccessibilityUIElement::elementAtPointCallback):
1708         * DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.h:
1709         (AccessibilityUIElement):
1710
1711 2012-12-18  Ryosuke Niwa  <rniwa@webkit.org>
1712
1713         Build fix after r138045.
1714
1715         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
1716         (PerfTestsRunner._collect_tests): Use relative_path. We skip only when this path
1717         is not explicitly specified. The condition was backwards but never matched so we
1718         always ran the test regardless of whether it's listed in the skipped list or not.
1719         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
1720         (test_collect_tests_with_ignored_skipped_list): Renamed so that it actually runs.
1721
1722 2012-12-18  Emil A Eklund  <eae@chromium.org>
1723
1724         TestWebKitAPI/Tests/WebCore/LayoutUnit fails on mac
1725         https://bugs.webkit.org/show_bug.cgi?id=105332
1726         
1727         Reviewed by Levi Weintraub.
1728         
1729         Create new test suite for LayoutUnit tests as the KURL tests are
1730         of the incompatible TEST_F type.
1731
1732         * TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp:
1733         (TestWebKitAPI):
1734         (TestWebKitAPI::TEST_F):
1735
1736 2012-12-18  Ryosuke Niwa  <rniwa@webkit.org>
1737
1738         Running a skipped test with run-perf-tests could alert the user
1739         https://bugs.webkit.org/show_bug.cgi?id=105219
1740
1741         Reviewed by Eric Seidel.
1742
1743         Force run skipped performance tests explicitly specified in the command line.
1744         Also warn the user when the specified paths don't exist.
1745
1746         * Scripts/webkitpy/layout_tests/port/base.py:
1747         (Port.relative_test_filename):
1748         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
1749         (PerfTestsRunner._parse_args):
1750         (PerfTestsRunner._collect_tests):
1751         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
1752         (test_collect_tests_with_skipped_list_and_files):
1753
1754 2012-12-18  Yaron Friedman  <yfriedman@chromium.org>
1755
1756         Chrome Android java output is too verbose
1757         https://bugs.webkit.org/show_bug.cgi?id=105247
1758
1759         Reviewed by Tony Chang.
1760
1761         Pass -quiet to ant to suppress extraneous output.
1762
1763         * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
1764         * TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:
1765
1766 2012-12-18  Ryosuke Niwa  <rniwa@webkit.org>
1767
1768         Consider removing --pause-before-testing option
1769         https://bugs.webkit.org/show_bug.cgi?id=105248
1770
1771         Reviewed by Eric Seidel.
1772
1773         Remove --pause-before-testing option.
1774
1775         * Tools/Scripts/webkitpy/layout_tests/port/driver.py:
1776         (DriverProxy.start): Removed.
1777         * Scripts/webkitpy/performance_tests/perftest.py:
1778         (PerfTest.__init__):
1779         (PerfTest.test_path): Renamed from path_or_url.
1780         (PerfTest.run):
1781         (PerfTest): Removed "driver" argument.
1782         (PerfTest._run_with_driver):
1783         (PerfTest.run_single):
1784         (ChromiumStylePerfTest.__init__):
1785         (PageLoadingPerfTest.__init__):
1786         (PageLoadingPerfTest.run_single):
1787         (PageLoadingPerfTest._run_with_driver): Renamed from run so that PerfTest.run can create a driver for us.
1788         (ReplayPerfTest.__init__):
1789         (ReplayPerfTest.prepare):
1790         * Scripts/webkitpy/performance_tests/perftest_unittest.py:
1791         (TestPageLoadingPerfTest.test_run):
1792         (TestPageLoadingPerfTest.test_run_with_memory_output):
1793         (TestPageLoadingPerfTest.test_run_with_bad_output):
1794         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
1795         (PerfTestsRunner._parse_args):
1796         (PerfTestsRunner._run_tests_set): Removed the code to create a driver and pause before running the test.
1797         (PerfTestsRunner._run_single_test): Removed "driver" argument.
1798         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
1799         (run_test):
1800         (test_run_test_pause_before_testing): Removed.
1801
1802 2012-12-18  Alberto Garcia  <agarcia@igalia.com>
1803
1804         [GTK] Tests that time out are not considered as failures.
1805         https://bugs.webkit.org/show_bug.cgi?id=105318
1806
1807         Reviewed by Martin Robinson.
1808
1809         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1810         (RunGtkAPITests.commandComplete):
1811         Consider log lines that end with TIMEOUT as errors.
1812
1813         * Scripts/run-gtk-tests:
1814         (TestRunner.run_tests):
1815         Consider timeouts as failures when returning the number of failed
1816         tests.
1817
1818 2012-12-18  Pravin D  <pravin.d@samsung.com>
1819
1820         Unreviewed, adding secondary email.
1821
1822         * Scripts/webkitpy/common/config/committers.py:
1823
1824 2012-12-18  Pravin D  <pravin.d@samsung.com>
1825
1826         Unreviewed, promoting myself to committer's list.
1827
1828         * Scripts/webkitpy/common/config/committers.py:
1829
1830 2012-12-18  Thiago Marcos P. Santos  <thiago.santos@intel.com>
1831
1832         [EFL] ImageDiff does not build on WebKit2 only builds
1833         https://bugs.webkit.org/show_bug.cgi?id=105288
1834
1835         Reviewed by Kenneth Rohde Christiansen.
1836
1837         Moved ImageDiff to the efl/ folder inside Tools/ (so we don't pollute
1838         the folder with things which are EFL-specific.
1839
1840         ImageDiff will be built by default now regardless of WebKit API flavor
1841         you choose.
1842
1843         * CMakeLists.txt:
1844         * DumpRenderTree/efl/CMakeLists.txt:
1845         * efl/ImageDiff/CMakeLists.txt: Added.
1846         * efl/ImageDiff/ImageDiff.cpp: Renamed from Tools/DumpRenderTree/efl/ImageDiff.cpp.
1847
1848 2012-12-18  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1849
1850         [EFL][WK2] When creating new windows, use the opener's context
1851         https://bugs.webkit.org/show_bug.cgi?id=105283
1852
1853         Reviewed by Laszlo Gombos.
1854
1855         Use the context of the opener if exists.
1856
1857         * MiniBrowser/efl/main.c:
1858         (on_key_down):
1859         (on_window_create):
1860         (window_create):
1861         (elm_main):
1862
1863 2012-12-18  Thiago Marcos P. Santos  <thiago.santos@intel.com>
1864
1865         [EFL][WK2] Gardening of TestWebKitAPI tests
1866         https://bugs.webkit.org/show_bug.cgi?id=105268
1867
1868         Reviewed by Kenneth Rohde Christiansen.
1869
1870         Some tests were marked as failing but are passing and the newly added
1871         LayoutUnit should have it's own binary because it conflicts with the
1872         fixture used by KURL and is failing on the bots because of that.
1873
1874         * TestWebKitAPI/CMakeLists.txt:
1875         * TestWebKitAPI/PlatformEfl.cmake:
1876
1877 2012-12-18  Jochen Eisinger  <jochen@chromium.org>
1878
1879         [chromium] move webintent related methods to TestRunner library
1880         https://bugs.webkit.org/show_bug.cgi?id=105164
1881
1882         Reviewed by Darin Fisher.
1883
1884         Also deleted the unused deliveredIntentFailure and
1885         deliveredIntentResult methods.
1886
1887         * DumpRenderTree/chromium/DRTTestRunner.cpp:
1888         (DRTTestRunner::DRTTestRunner):
1889         * DumpRenderTree/chromium/DRTTestRunner.h:
1890         (DRTTestRunner):
1891         * DumpRenderTree/chromium/TestRunner/public/WebTestDelegate.h:
1892         (WebKit):
1893         (WebTestRunner::WebTestDelegate::setCurrentWebIntentRequest):
1894         (WebTestRunner::WebTestDelegate::currentWebIntentRequest):
1895         * DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:
1896         (WebKit):
1897         (WebTestProxyBase):
1898         (WebTestRunner::WebTestProxy::registerIntentService):
1899         (WebTestRunner::WebTestProxy::dispatchIntent):
1900         * DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
1901         (WebTestRunner::TestRunner::TestRunner):
1902         (WebTestRunner::TestRunner::sendWebIntentResponse):
1903         (WebTestRunner):
1904         (WebTestRunner::TestRunner::deliverWebIntent):
1905         * DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
1906         (TestRunner):
1907         * DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:
1908         (WebTestRunner::WebTestProxyBase::postAccessibilityNotification):
1909         (WebTestRunner::WebTestProxyBase::registerIntentService):
1910         (WebTestRunner):
1911         (WebTestRunner::WebTestProxyBase::dispatchIntent):
1912         * DumpRenderTree/chromium/WebViewHost.cpp:
1913         (WebViewHost::setCurrentWebIntentRequest):
1914         (WebViewHost::currentWebIntentRequest):
1915         * DumpRenderTree/chromium/WebViewHost.h:
1916         (WebKit):
1917         (WebViewHost):
1918
1919 2012-12-18  Jochen Eisinger  <jochen@chromium.org>
1920
1921         [chromium] move editing callback dumping to the WebTestProxy
1922         https://bugs.webkit.org/show_bug.cgi?id=105013
1923
1924         Reviewed by Darin Fisher.
1925
1926         To decide whether or not to dump the editing callbacks, the WebTestProxy
1927         needs to query the TestRunner. For this purpose, I introduce a
1928         WebTestRunner class that just exposes the shouldDumpEditingCallbacks
1929         method. In contrast to e.g. WebEventSender, the WebTestRunner is just
1930         an interface, and it is not owned by the WebTestInterfaces, but the
1931         embedder of the TestRunner library must provide it. This will change
1932         once all TestRunner methods are in the library.
1933
1934         * DumpRenderTree/DumpRenderTree.gypi:
1935         * DumpRenderTree/chromium/DRTTestRunner.cpp:
1936         (DRTTestRunner::DRTTestRunner):
1937         (DRTTestRunner::reset):
1938         * DumpRenderTree/chromium/DRTTestRunner.h:
1939         (DRTTestRunner):
1940         (DRTTestRunner::taskList):
1941         (DRTTestRunner::WorkQueue::taskList):
1942         * DumpRenderTree/chromium/TestRunner/public/WebTestInterfaces.h:
1943         (WebTestRunner):
1944         (WebTestInterfaces):
1945         * DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:
1946         (WebKit):
1947         (WebTestRunner):
1948         (WebTestProxyBase):
1949         (WebTestRunner::WebTestProxy::shouldBeginEditing):
1950         (WebTestRunner::WebTestProxy::shouldEndEditing):
1951         (WebTestRunner::WebTestProxy::shouldInsertNode):
1952         (WebTestRunner::WebTestProxy::shouldInsertText):
1953         (WebTestRunner::WebTestProxy::shouldChangeSelectedRange):
1954         (WebTestRunner::WebTestProxy::shouldDeleteRange):
1955         (WebTestRunner::WebTestProxy::shouldApplyStyle):
1956         (WebTestRunner::WebTestProxy::didBeginEditing):
1957         (WebTestRunner::WebTestProxy::didChangeSelection):
1958         (WebTestRunner::WebTestProxy::didChangeContents):
1959         (WebTestRunner::WebTestProxy::didEndEditing):
1960         * DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h: Copied from Tools/DumpRenderTree/chromium/TestRunner/public/WebTestInterfaces.h.
1961         (WebTestRunner):
1962         (WebTestRunner::WebTestRunner::shouldDumpEditingCallbacks):
1963         * DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
1964         (WebTestRunner::TestRunner::TestRunner):
1965         (WebTestRunner::TestRunner::~TestRunner):
1966         (WebTestRunner):
1967         (WebTestRunner::TestRunner::reset):
1968         (WebTestRunner::TestRunner::shouldDumpEditingCallbacks):
1969         (WebTestRunner::TestRunner::dumpEditingCallbacks):
1970         * DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
1971         (TestRunner):
1972         * DumpRenderTree/chromium/TestRunner/src/WebTestInterfaces.cpp:
1973         (WebTestRunner::WebTestInterfaces::Internal::testRunner):
1974         (WebTestRunner::WebTestInterfaces::Internal::setTestRunner):
1975         (WebTestInterfaces::Internal):
1976         (WebTestRunner::WebTestInterfaces::Internal::Internal):
1977         (WebTestRunner::WebTestInterfaces::testRunner):
1978         (WebTestRunner):
1979         (WebTestRunner::WebTestInterfaces::setTestRunner):
1980         * DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:
1981         (WebTestRunner::WebTestProxyBase::postAccessibilityNotification):
1982         (WebTestRunner):
1983         (WebTestRunner::WebTestProxyBase::shouldBeginEditing):
1984         (WebTestRunner::WebTestProxyBase::shouldEndEditing):
1985         (WebTestRunner::WebTestProxyBase::shouldInsertNode):
1986         (WebTestRunner::WebTestProxyBase::shouldInsertText):
1987         (WebTestRunner::WebTestProxyBase::shouldChangeSelectedRange):
1988         (WebTestRunner::WebTestProxyBase::shouldDeleteRange):
1989         (WebTestRunner::WebTestProxyBase::shouldApplyStyle):
1990         (WebTestRunner::WebTestProxyBase::didBeginEditing):
1991         (WebTestRunner::WebTestProxyBase::didChangeSelection):
1992         (WebTestRunner::WebTestProxyBase::didChangeContents):
1993         (WebTestRunner::WebTestProxyBase::didEndEditing):
1994         * DumpRenderTree/chromium/TestShell.cpp:
1995         (TestShell::initialize):
1996         (TestShell::createNewWindow):
1997         * DumpRenderTree/chromium/WebViewHost.cpp:
1998         (WebViewHost::shouldBeginEditing):
1999         (WebViewHost::shouldEndEditing):
2000         (WebViewHost::shouldInsertNode):
2001         (WebViewHost::shouldInsertText):
2002         (WebViewHost::shouldChangeSelectedRange):
2003         (WebViewHost::shouldDeleteRange):
2004         (WebViewHost::shouldApplyStyle):
2005         * DumpRenderTree/chromium/WebViewHost.h:
2006         (WebViewHost):
2007
2008 2012-12-17  Jochen Eisinger  <jochen@chromium.org>
2009
2010         [chromium] Fix methods in TestRunner that directly modify the settings instead of going through WebPreferences
2011         https://bugs.webkit.org/show_bug.cgi?id=105154
2012
2013         Reviewed by Tony Chang.
2014
2015         If the settings are modified directly, the embedder can't keep track of
2016         them and might accidentially override the changed settings.
2017
2018         * DumpRenderTree/chromium/TestRunner/public/WebPreferences.h:
2019         (WebPreferences):
2020         * DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
2021         (WebTestRunner::TestRunner::TestRunner):
2022         (WebTestRunner::TestRunner::setAsynchronousSpellCheckingEnabled):
2023         (WebTestRunner):
2024         (WebTestRunner::TestRunner::setMinimumTimerInterval):
2025         (WebTestRunner::TestRunner::setTouchDragDropEnabled):
2026         * DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
2027         (TestRunner):
2028         * DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:
2029         (WebTestRunner::WebPreferences::reset):
2030         (WebTestRunner::WebPreferences::applyTo):
2031
2032 2012-12-17  Julien Chaffraix  <jchaffraix@webkit.org>
2033
2034         Unreviewed unit test skipping.
2035
2036         Filed https://bugs.webkit.org/show_bug.cgi?id=105253 to re-enable them.
2037
2038         * TestWebKitAPI/Tests/WTF/MathExtras.cpp:
2039         (TestWebKitAPI):
2040         (TestWebKitAPI::TEST):
2041
2042 2012-12-17  Dean Jackson  <dino@apple.com>
2043
2044         Unreviewed. Add Silvia Pfeiffer to contributor list.
2045
2046         * Scripts/webkitpy/common/config/committers.py:
2047
2048 2012-12-17  Dirk Pranke  <dpranke@chromium.org>
2049
2050         build.webkit.org - add more google windows bots
2051         https://bugs.webkit.org/show_bug.cgi?id=105225
2052
2053         Reviewed by Eric Seidel.
2054
2055         Adds two more windows bots (google-windows-3, a builder, and
2056         google-windows-4, a tester) for the Chromium configs.
2057
2058         * BuildSlaveSupport/build.webkit.org-config/config.json:
2059
2060 2012-12-17  Eric Seidel  <eric@webkit.org>
2061
2062         Cleanup --profiler=perf code a little and allow up to 1000 report files (instead of 100)
2063         https://bugs.webkit.org/show_bug.cgi?id=105217
2064
2065         Reviewed by Dirk Pranke.
2066
2067         Previously --profile would fail strangely if find_unused_filename returned None
2068         (which would happen as soon as we had 100 report files).
2069         Now we'll search through 1000 filenames before giving up (and assert if we failed to find one).
2070         I also made some minor cleanups to the output of perf, and tried to make the
2071         commands more self-documenting by using long-names for args.
2072
2073         * Scripts/webkitpy/common/system/profiler.py:
2074         (SingleFileOutputProfiler.__init__):
2075         (Perf.attach_to_pid):
2076         (Perf.profile_after_exit):
2077
2078 2012-12-17  Sheriff Bot  <webkit.review.bot@gmail.com>
2079
2080         Unreviewed, rolling out r137198.
2081         http://trac.webkit.org/changeset/137198
2082         https://bugs.webkit.org/show_bug.cgi?id=105212
2083
2084         This patch is causing API behavior compatibility problems
2085         (Requested by zdobersek on #webkit).
2086
2087         * DumpRenderTree/gtk/DumpRenderTree.cpp:
2088         (willSendRequestCallback):
2089
2090 2012-12-17  Elliott Sprehn  <esprehn@chromium.org>
2091
2092         Unreviewed. Adding myself to committers list.
2093
2094         * Scripts/webkitpy/common/config/committers.py:
2095
2096 2012-12-17  Dirk Pranke  <dpranke@chromium.org>
2097
2098         nrwt: shuffle code around for cleanup in run_webkit_tests.py
2099         https://bugs.webkit.org/show_bug.cgi?id=105078
2100
2101         Reviewed by Ojan Vafai.
2102
2103         This patch reorders functions so that run_webkit_tests can be
2104         understood in a top-down matter better, and to make things slightly
2105         more sensible when I merge manager.py into it.
2106
2107         Also, this adds tests for the actual main() routine, which had several
2108         bugs get through testing a week or two ago.
2109
2110         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2111         (main):
2112         (parse_args):
2113         (_set_up_derived_options):
2114         (run):
2115         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
2116         (RunTest):
2117         (RunTest.test_no_http_tests):
2118         (PortTest.disabled_test_mac_lion):
2119         (MainTest):
2120         (MainTest.test_exception_handling):
2121         (MainTest.test_exception_handling.interrupting_run):
2122         (MainTest.test_exception_handling.successful_run):
2123         (MainTest.test_exception_handling.successful_run.FakeRunDetails):
2124         (MainTest.test_exception_handling.exception_raising_run):
2125
2126 2012-12-17  Dirk Pranke  <dpranke@chromium.org>
2127
2128         webkitpy: move --lint-test-files code into its own module
2129         https://bugs.webkit.org/show_bug.cgi?id=105077
2130
2131         Reviewed by Eric Seidel.
2132
2133         It really didn't need to be in run_webkit_tests.py anymore.
2134         This patch adds a new lint-test-expectations scripts to Tools/Scripts;
2135         rwt --lint-test-files is still supported for backwards compatibility
2136         for now.
2137
2138         * Scripts/lint-test-expectations: Added.
2139         * Scripts/webkitpy/layout_tests/lint_test_expectations.py: Added.
2140         (lint):
2141         (main):
2142         * Scripts/webkitpy/layout_tests/lint_test_expectations_unittest.py: Added.
2143         (FakePort):
2144         (FakePort.__init__):
2145         (FakePort.test_configuration):
2146         (FakePort.expectations_dict):
2147         (FakePort.skipped_layout_tests):
2148         (FakePort.all_test_configurations):
2149         (FakePort.configuration_specifier_macros):
2150         (FakePort.get_option):
2151         (FakeFactory):
2152         (FakeFactory.__init__):
2153         (FakeFactory.get):
2154         (FakeFactory.all_port_names):
2155         (LintTest):
2156         (LintTest.test_all_configurations):
2157         (LintTest.test_lint_test_files):
2158         (LintTest.test_lint_test_files__errors):
2159         (MainTest):
2160         (MainTest.test_success):
2161         (MainTest.test_success.interrupting_lint):
2162         (MainTest.test_success.successful_lint):
2163         (MainTest.test_success.exception_raising_lint):
2164         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2165         (main):
2166         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
2167         (StreamTestingMixin.assertNotEmpty):
2168
2169 2012-12-17  Adam Klein  <adamk@chromium.org>
2170
2171         build-webkit: rename --template-tag to --template-element to match ENABLE #define name
2172         https://bugs.webkit.org/show_bug.cgi?id=105072
2173
2174         Reviewed by Laszlo Gombos.
2175
2176         * Scripts/webkitperl/FeatureList.pm:
2177
2178 2012-12-17  Julien Chaffraix  <jchaffraix@webkit.org>
2179
2180         Add some unit testing for WTF::clampTo* functions
2181         https://bugs.webkit.org/show_bug.cgi?id=105060
2182
2183         Reviewed by Emil A Eklund.
2184
2185         The new tests are targeted at clamping to int / unsigned and float as those are
2186         the one explicitely exposed through more dedicated functions (like clampToInteger,
2187         clampToPositiveInteger and clampToFloat).
2188
2189         * TestWebKitAPI/Tests/WTF/MathExtras.cpp:
2190
2191 2012-12-17  Eric Seidel  <eric@webkit.org>
2192
2193         rpt --profile --chromium-android throws exception
2194         https://bugs.webkit.org/show_bug.cgi?id=105061
2195
2196         Reviewed by Daniel Bates.
2197
2198         Somehow popen(args) got turned into popen(*args) at some point,
2199         which caused my new stringify code to fail when args was passed by name.
2200         Fixed and tested.
2201
2202         * Scripts/webkitpy/common/system/executive.py:
2203         (Executive._stringify_args):
2204         (Executive):
2205         (Executive.popen):
2206         * Scripts/webkitpy/common/system/executive_unittest.py:
2207         (ExecutiveTest.test_popen_args):
2208
2209 2012-12-17  Mark Pilgrim  <pilgrim@chromium.org>
2210
2211         Use Platform::current() instead of webKitPlatformSupport() in DumpRenderTree
2212         https://bugs.webkit.org/show_bug.cgi?id=105054
2213
2214         Reviewed by Jochen Eisinger.
2215
2216         Part of a refactoring series; see tracking bug 82948.
2217
2218         * DumpRenderTree/chromium/NotificationPresenter.cpp:
2219         (NotificationPresenter::show):
2220         * DumpRenderTree/chromium/Task.cpp:
2221         (postTask):
2222         * DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp:
2223
2224 2012-12-17  Emil A Eklund  <eae@chromium.org>
2225
2226         Clamp values in LayoutUnit::operator/ when SATURATED_LAYOUT_ARITHMETIC is enabled
2227         https://bugs.webkit.org/show_bug.cgi?id=104955
2228
2229         Reviewed by Julien Chaffraix.
2230
2231         Add tests for LayoutUnit.
2232
2233         * TestWebKitAPI/CMakeLists.txt:
2234         * TestWebKitAPI/ForwardingHeaders: Added.
2235         * TestWebKitAPI/ForwardingHeaders/WebCore: Added.
2236         * TestWebKitAPI/ForwardingHeaders/WebCore/LayoutUnit.h: Added.
2237         * TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:
2238         * TestWebKitAPI/TestWebKitAPI.gypi:
2239         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2240         * TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp: Added.
2241         (TestWebKitAPI):
2242         (TestWebKitAPI::TEST):
2243         * TestWebKitAPI/win/TestWebKitAPI.vcproj:
2244
2245 2012-12-17  Jochen Eisinger  <jochen@chromium.org>
2246
2247         [chromium] removed unused preferences from testRunner.overridePreference
2248         https://bugs.webkit.org/show_bug.cgi?id=105169
2249
2250         Reviewed by Tony Chang.
2251
2252         Most notably this removes the code related to font family maps which is
2253         now handled via window.internals.settings
2254
2255         * DumpRenderTree/chromium/TestRunner/public/WebPreferences.h:
2256         (WebPreferences):
2257         * DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
2258         (WebTestRunner::TestRunner::overridePreference):
2259         * DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
2260         (TestRunner):
2261         * DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:
2262         (WebTestRunner::WebPreferences::applyTo):
2263
2264 2012-12-17  James Robinson  <jamesr@chromium.org>
2265
2266         [chromium] Move creation of WebLayerTreeView to WebWidgetClient
2267         https://bugs.webkit.org/show_bug.cgi?id=105071
2268
2269         Reviewed by Adrienne Walker.
2270
2271         Update WebViewHost for the new WebWidgetClient interface.
2272
2273         * DumpRenderTree/chromium/WebViewHost.cpp:
2274         (WebViewHost::initializeLayerTreeView):
2275         (WebViewHost::layerTreeView):
2276         (WebViewHost::~WebViewHost):
2277         * DumpRenderTree/chromium/WebViewHost.h:
2278         (WebViewHost):
2279
2280 2012-12-17  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2281
2282         [EFL][WK2] window_create doesn't receive the url
2283         https://bugs.webkit.org/show_bug.cgi?id=105184
2284
2285         Reviewed by Alexis Menard.
2286
2287         * MiniBrowser/efl/main.c: Use the url supplied to window_create
2288         (on_window_create):
2289
2290 2012-12-17  Ilya Tikhonovsky  <loislo@chromium.org>
2291
2292         Web Inspector: Native Memory Instrumentation: MemoryInstrumentation doesn't detect reportMemoryUsage method defined in a base class.
2293         https://bugs.webkit.org/show_bug.cgi?id=105026
2294
2295         Reviewed by Yury Semikhatsky.
2296
2297         Old SFINAE test was replaced with new one based on this article:
2298         http://stackoverflow.com/questions/1966362/sfinae-to-check-for-inherited-member-functions
2299
2300         New test which covers this problem was added.
2301
2302         * TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
2303
2304 2012-12-17  Anthony Scian  <ascian@rim.com>
2305
2306         [Blackberry] Static code analysis warning fixes
2307         https://bugs.webkit.org/show_bug.cgi?id=105129
2308
2309         Reviewed by Rob Buis.
2310
2311         Added null checks for fopen calls, no recovery attempted; access fault prevention only.
2312
2313         * DumpRenderTree/blackberry/DumpRenderTree.cpp:
2314         (BlackBerry::WebKit::createFile):
2315         (BlackBerry::WebKit::DumpRenderTree::runTest):
2316
2317 2012-12-17  John Mellor  <johnme@chromium.org>
2318
2319         Add Anton Vayvod and Tim Volodine as contributors in committers.py
2320         https://bugs.webkit.org/show_bug.cgi?id=105025
2321
2322         Unreviewed. Adds two contributors to committers.py.
2323         They are initially contributing to the Text Autosizing feature (master bug: 84186).
2324
2325         * Scripts/webkitpy/common/config/committers.py:
2326
2327 2012-12-17  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2328
2329         Unreviewed, add myself to committers.py.
2330
2331         * Scripts/webkitpy/common/config/committers.py:
2332
2333 2012-12-17  Oswald Buddenhagen  <oswald.buddenhagen@digia.com>
2334
2335         [Qt] remove some unnecessary CONFIG additions
2336
2337         Reviewed by Simon Hausmann.
2338
2339         qt is already added by spec_pre.prf, warn_on and depend_includepath by
2340         default_pre.prf.
2341
2342         * qmake/mkspecs/features/default_post.prf:
2343
2344 2012-12-17  Ilya Tikhonovsky  <loislo@chromium.org>
2345
2346         Unreviewed, rolling out r137892.
2347         http://trac.webkit.org/changeset/137892
2348         https://bugs.webkit.org/show_bug.cgi?id=105026
2349
2350         it broke compilation on windows
2351
2352         * TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
2353
2354 2012-12-14  Ilya Tikhonovsky  <loislo@chromium.org>
2355
2356         Web Inspector: Native Memory Instrumentation: MemoryInstrumentation doesn't detect reportMemoryUsage method defined in a base class.
2357         https://bugs.webkit.org/show_bug.cgi?id=105026
2358
2359         Reviewed by Yury Semikhatsky.
2360
2361         Old SFINAE test was replaced with new one based on this article:
2362         http://stackoverflow.com/questions/1966362/sfinae-to-check-for-inherited-member-functions
2363
2364         New test which covers this problem was added.
2365
2366         * TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
2367
2368 2012-12-17  Oswald Buddenhagen  <oswald.buddenhagen@digia.com>
2369
2370         [Qt] rely on automatic output directory setup
2371
2372         Reviewed by Simon Hausmann.
2373
2374         Now being a proper qt module (by virtue of having load(qt_build_config)
2375         in .qmake.conf), webkit gets the path setup goodies for free.
2376
2377         This also fixes Makefile.api.Debug/Release trying to generate qrc_WebKit.cpp
2378         at the same time, instead of the debug and release version ending up in different
2379         directories as they should.
2380
2381         * qmake/mkspecs/features/default_pre.prf:
2382
2383 2012-12-17  Charles Wei  <charles.wei@torchmobile.com.cn>
2384
2385         [BlackBerry] Need to re-enable video track
2386         https://bugs.webkit.org/show_bug.cgi?id=105155
2387
2388         Reviewed by George Staikos.
2389
2390         Just enable Video Track for BlackBerry.
2391
2392         * Scripts/webkitperl/FeatureList.pm:
2393
2394 2012-12-17  János Badics  <jbadics@inf.u-szeged.hu>
2395
2396         Unreviewed. Added myself to committers.py
2397
2398         * Scripts/webkitpy/common/config/committers.py:
2399
2400 2012-12-17  Jonathan Liu  <net147@gmail.com>
2401
2402         Fix linking of libraries with -Wl,-whole-archive
2403         https://bugs.webkit.org/show_bug.cgi?id=104436
2404
2405         Reviewed by Simon Hausmann.
2406
2407         If there is more than one library in LIBS linked with
2408         -Wl,-whole-archive -l... -Wl,-no-whole-archive, qmake tries to
2409         merge the duplicate flags in LIBS which causes linking to fail.
2410
2411         Add no_smart_library_merge to CONFIG to prevent the duplicate
2412         flags from being removed when using -Wl,-whole-archive.
2413
2414         * qmake/mkspecs/features/functions.prf:
2415
2416 2012-12-16  Arvid Nilsson  <anilsson@rim.com>
2417
2418         [BlackBerry] Adapt to new BlackBerry::Platform::TouchPoint API
2419         https://bugs.webkit.org/show_bug.cgi?id=105143
2420         RIM PR 171941
2421
2422         Reviewed by Rob Buis.
2423         Internally reviewed by George Staikos.
2424
2425         Adapt to new method names and encapsulation of TouchPoint data members.
2426
2427         * DumpRenderTree/blackberry/EventSender.cpp:
2428         (addTouchPointCallback):
2429         (updateTouchPointCallback):
2430         (touchEndCallback):
2431         (releaseTouchPointCallback):
2432         (sendTouchEvent):
2433
2434 2012-12-16  Maciej Stachowiak  <mjs@apple.com>
2435
2436         Add a script to compute the mean and 95% confidence interval (using two-sided t-test) of a sample set
2437         https://bugs.webkit.org/show_bug.cgi?id=105148
2438
2439         Reviewed by Filip Pizlo.
2440
2441         Usage examples:
2442         
2443         $ sampstat --help
2444         Usage: sampstat [options] [FILES]
2445           Compute the mean and 95% confidence interval of a sample set.
2446           Standard input or files must contain two or more decimal numbers, one per line.
2447         
2448         Options:
2449           -h, --help            show this help message and exit
2450           -u UNIT, --unit=UNIT  assume values are in units of UNIT
2451           -v, --verbose         print all values (with units)
2452         
2453         $ sampstat -u MB memresults.txt
2454         2356.90 MB +/- 101.34 MB (4.3%)
2455         
2456         $ sampstat -v -u MB memresults.txt
2457               2318.21 MB
2458               2399.56 MB
2459               2352.93 MB
2460         ----------------
2461         Mean: 2356.90 MB +/- 101.34 MB (4.3%)
2462         
2463
2464         * Scripts/sampstat: Added.
2465         (sum): Helper function to compute the sum of a list.
2466         (arithmeticMean): Compute the meam of a list.
2467         (standardDeviation): Compute the sample standard deviation (unbiased estimator).
2468         (standardError): Compute the sample standard error.
2469         (tDist): Compute t(.025, n-1), the t-value for atwo-sided 95% confidence interval. 
2470         (twoSidedConfidenceInterval): Compute the two-sided confidence interval range about the mean.
2471
2472 2012-12-15  Nima Ghanavatian  <nghanavatian@rim.com>
2473
2474         [BlackBerry] Pass key modifiers with touch and mouse events
2475         https://bugs.webkit.org/show_bug.cgi?id=105108
2476
2477         Reviewed by Rob Buis.
2478
2479         Update DRT to new api.
2480
2481         Internally reviewed by Gen Mak.
2482
2483         * DumpRenderTree/blackberry/EventSender.cpp:
2484         (mouseDownCallback):
2485         (mouseUpCallback):
2486         (mouseMoveToCallback):
2487
2488 2012-12-15  Zan Dobersek  <zandobersek@gmail.com>
2489
2490         Stop the XvfbDriver before proceeding with its starting setup
2491         https://bugs.webkit.org/show_bug.cgi?id=105006
2492
2493         Reviewed by Philippe Normand.
2494
2495         Just as with the base Driver implementation, stop the XvfbDriver
2496         before proceeding with setting up lock files and a new Xvfb instance.
2497         This forces any driver or Xvfb instances that are currently under
2498         the driver's control to be closed/killed and cleaned up after.
2499
2500         * Scripts/webkitpy/layout_tests/port/xvfbdriver.py:
2501         (XvfbDriver._start):
2502
2503 2012-12-14  Dirk Pranke  <dpranke@chromium.org>
2504
2505         webkitpy: make port_name a required parameter to the non-test ports
2506         https://bugs.webkit.org/show_bug.cgi?id=105057
2507
2508         Reviewed by Eric Seidel.
2509
2510         This is just minor code cleanup along the path to making Port
2511         constructors simpler and pushing more logic into the port factory.
2512
2513         * Scripts/webkitpy/layout_tests/port/base.py:
2514         (Port.__init__):
2515         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
2516         (PortTest.make_port):
2517         * Scripts/webkitpy/layout_tests/port/port_testcase.py:
2518         (TestWebKitPort.__init__):
2519         * Scripts/webkitpy/layout_tests/port/test.py:
2520         (TestPort):
2521         (TestPort.determine_full_port_name):
2522         (TestPort.__init__):
2523         * Scripts/webkitpy/layout_tests/port/xvfbdriver_unittest.py:
2524         (XvfbDriverTest.make_driver):
2525         (XvfbDriverTest.test_stop):
2526
2527 2012-12-14  Dirk Pranke  <dpranke@chromium.org>
2528
2529         garden-o-matic doesn't know about reftests
2530         https://bugs.webkit.org/show_bug.cgi?id=101976
2531
2532         Reviewed by Eric Seidel.
2533
2534         Attempt to make garden-o-matic properly aware of reftests again.
2535
2536         This is re-landing r137407 with a change to
2537         rebaselineWithStatusUpdates() to actually pass the filtered
2538         failureInofLost to checkout.rebaseline().
2539
2540         Unfortunately, the testing coverage for this whole module is almost
2541         non-existent, and it's not obvious that there's a good way to
2542         stub out checkout.rebaseline() to test that the right thing
2543         happens. I verified the change manually.
2544
2545         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
2546         (.):
2547         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
2548         (.):
2549         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:
2550
2551 2012-12-14  Ryosuke Niwa  <rniwa@webkit.org>
2552
2553         "Running 1 DumpRenderTree over X shards" is not a helpful output
2554         https://bugs.webkit.org/show_bug.cgi?id=104858
2555
2556         Reviewed by Dirk Pranke.
2557
2558         The word "shard" is not typically used in test frameworks. This word is confusing for many WebKit
2559         contributors who typically don't have much experience on distributed computations and databases.
2560         So only print this message out in the debug mode.
2561
2562         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
2563         * Scripts/webkitpy/layout_tests/views/printing.py:
2564         (Printer.print_workers_and_shards):
2565
2566 2012-12-13  Eric Seidel  <eric@webkit.org>
2567
2568         Add --profiler=PROFILER option to run-perf-tests to allow specifying which profiler to use on platforms with many
2569         https://bugs.webkit.org/show_bug.cgi?id=104891
2570
2571         Reviewed by Ryosuke Niwa.
2572
2573         I also implemented a very simple "Sample" Profiler using
2574         Mac OS X's /usr/bin/sample command line tool.
2575
2576         The real reason for this abstraction is to make it easy
2577         to support both perf and pprof on linux which seem to
2578         be about equally popular among those I ask in the Chrome team.
2579
2580         * Scripts/webkitpy/common/system/profiler.py:
2581         (ProfilerFactory.create_profiler):
2582         (ProfilerFactory):
2583         (ProfilerFactory.available_profilers_by_name):
2584         (ProfilerFactory.default_profiler_name):
2585         (Sample):
2586         (Sample.__init__):
2587         (Sample.attach_to_pid):
2588         (Sample.profile_after_exit):
2589         (IProfiler.attach_to_pid):
2590         * Scripts/webkitpy/layout_tests/port/driver.py:
2591         (Driver.__init__):
2592         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
2593         (PerfTestsRunner._parse_args):
2594
2595 2012-12-13  Eric Seidel  <eric@webkit.org>
2596
2597         Unreviewed, fixing typo in python unittest.
2598
2599         I changed the default profiler on linux from pprof to perf in
2600         bug 104971.  I failed to update the unittest results at that time.
2601
2602         * Scripts/webkitpy/common/system/profiler_unittest.py:
2603         (ProfilerFactoryTest.test_basic):
2604
2605 2012-12-13  Ian Vollick  <vollick@chromium.org>
2606
2607         [chromium] Add a virtual test suite for enabling opt-in to composited scrolling
2608         https://bugs.webkit.org/show_bug.cgi?id=104911
2609
2610         Reviewed by Dirk Pranke.
2611
2612         Adds two virtual tests suites to run the tests in
2613         compositing/overflow/ and scrollbars/ with the flag
2614         --enable-accelerated-overflow-scroll, which I've also plumbed through
2615         in the usual way.
2616
2617         * DumpRenderTree/chromium/DumpRenderTree.cpp:
2618         (main):
2619         * DumpRenderTree/chromium/TestRunner/public/WebPreferences.h:
2620         (WebPreferences):
2621         * DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:
2622         (WebTestRunner::WebPreferences::reset):
2623         (WebTestRunner::WebPreferences::applyTo):
2624         * DumpRenderTree/chromium/TestShell.cpp:
2625         (TestShell::TestShell):
2626         (TestShell::resetWebSettings):
2627         * DumpRenderTree/chromium/TestShell.h:
2628         (TestShell::setAcceleratedCompositingForOverflowScrollEnabled):
2629         (TestShell):
2630         * Scripts/webkitpy/layout_tests/port/chromium.py:
2631         (ChromiumPort.virtual_test_suites):
2632
2633 2012-12-13  Eric Seidel  <eric@webkit.org>
2634
2635         Use 'perf' to profile on linux instead of google-pprof by default
2636         https://bugs.webkit.org/show_bug.cgi?id=104971
2637
2638         Reviewed by Dirk Pranke.
2639
2640         This makes Chromium Linux match Chromium Android and use the perf
2641         tool by default.  Once https://bugs.webkit.org/show_bug.cgi?id=104891
2642         lands it will be possible to use pprof again on Linux.
2643
2644         This is slightly more advanced than the AndroidPerf profiler as
2645         instead of using a timeout on "perf record" I instead watch
2646         for the termination of the target process and then control-C
2647         the 'perf record' process.  This required me to add two new
2648         methods to Executive, one to have a limited-time wait() and
2649         the second to be able to send a control-C.  I chose to add
2650         these to Executive to make them easier to mock/fix-for-win32
2651         at a later time if needed.
2652
2653         * Scripts/webkitpy/common/system/executive.py:
2654         (Executive.wait_limited):
2655         (Executive.interrupt):
2656         * Scripts/webkitpy/common/system/profiler.py:
2657         (ProfilerFactory.create_profiler):
2658         (Perf):
2659         (Perf.__init__):
2660         (Perf._perf_path):
2661         (Perf.attach_to_pid):
2662         (Perf._first_ten_lines_of_profile):
2663         (Perf.profile_after_exit):
2664
2665 2012-12-13  Julie Parent  <jparent@chromium.org>
2666
2667         Dashboard cleanup: remove usage of global g_builders.
2668         https://bugs.webkit.org/show_bug.cgi?id=104941
2669
2670         Reviewed by Dirk Pranke.
2671
2672         The dashboards use a lot of global state, which makes hacking on them
2673         complicated. This change removes the use of one such global: g_builders.
2674         In most cases, we can just use currentBuilderGroup().builders instead,
2675         which is now currentBuilders().
2676         Surprisingly, the most changes were required to the unit tests, since
2677         they were even bigger offenders of bad hygiene, relying on global state
2678         set by other tests, randomly clobbering global variables in ways the
2679         real code doesn't, etc.
2680
2681         * TestResultServer/static-dashboards/builders.js:
2682         (BuilderGroup.prototype.setup):
2683         * TestResultServer/static-dashboards/dashboard_base.js:
2684         (.switch.return):
2685         (htmlForTestTypeSwitcher):
2686         * TestResultServer/static-dashboards/flakiness_dashboard.js:
2687         (generatePage):
2688         (getAllTestsTrie):
2689         (processTestRunsForAllBuilders):
2690         (showPopupForBuild):
2691         (generatePageForExpectationsUpdate):
2692         (loadExpectationsLayoutTests):
2693         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
2694         (resetGlobals):
2695         (stubResultsByBuilder):
2696         (test):
2697         * TestResultServer/static-dashboards/loader.js:
2698         (.):
2699         * TestResultServer/static-dashboards/loader_unittests.js:
2700
2701 2012-12-13  Eric Seidel  <eric@webkit.org>
2702
2703         Callers should not have to stringify args before calling Executive run_command/popen
2704         https://bugs.webkit.org/show_bug.cgi?id=104975
2705
2706         Reviewed by Dirk Pranke.
2707
2708         One could argue that we should match the python call syntax here,
2709         but I think it's a more friendly API if we automagically handle
2710         stringification of args in run_command, etc.
2711         This removes map(unicode, args) from several callsites.
2712
2713         When I first tried to land this change, I didn't realize that
2714         Executive._command_for_printing depended on this behavior
2715         having been applied to args in run_command.  The fix is to
2716         call _stringify_args in both run_command and popen.
2717         This is slightly redundant, but given how short args have to be
2718         (due to shell limits), I don't think the double-encode check
2719         matters in practice.
2720
2721         This is slightly complicated by the fact that apache_http_server.py
2722         is the one caller in our codebase which uses shell=True.
2723         shell=True is a well-documented trail-of-tears:
2724         http://stackoverflow.com/questions/3172470/actual-meaning-of-shell-true-in-subprocess
2725         but to support this legacy (windows-only) code (which I can't easily test)
2726         I've added an if-hack to avoid stringifying the the popen(shell=True) case.
2727
2728         * Scripts/webkitpy/common/system/executive.py:
2729         (Executive.run_command):
2730         (Executive._stringify_args):
2731         (Executive.popen):
2732         * Scripts/webkitpy/common/system/executive_unittest.py:
2733         (ExecutiveTest.test_auto_stringify_args):
2734         * Scripts/webkitpy/layout_tests/port/chromium_android.py:
2735         (attach_to_pid):
2736
2737 2012-12-13  Adrienne Walker  <enne@chromium.org>
2738
2739         Unreviewed, rolling out r137645, r137646, and r137667.
2740         http://trac.webkit.org/changeset/137645
2741         http://trac.webkit.org/changeset/137646
2742         http://trac.webkit.org/changeset/137667
2743         https://bugs.webkit.org/show_bug.cgi?id=104911
2744
2745         Breaks some overflow layout tests
2746
2747         * Scripts/webkitpy/layout_tests/port/chromium.py:
2748         (ChromiumPort.virtual_test_suites):
2749
2750 2012-12-13  Dirk Pranke  <dpranke@chromium.org>
2751
2752         Unreviewed, rolling out r137661.
2753         http://trac.webkit.org/changeset/137661
2754         https://bugs.webkit.org/show_bug.cgi?id=104891
2755
2756         broke unit tests, run-webkit-tests
2757
2758         * Scripts/webkitpy/common/system/executive.py:
2759         (Executive._run_command_with_teed_output):
2760         (Executive.run_command):
2761         (Executive.popen):
2762         * Scripts/webkitpy/common/system/profiler.py:
2763         (ProfilerFactory.create_profiler):
2764         (GooglePProf.profile_after_exit):
2765         (IProfiler.attach_to_pid):
2766         * Scripts/webkitpy/layout_tests/port/driver.py:
2767         (Driver.__init__):
2768         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
2769         (PerfTestsRunner._parse_args):
2770
2771 2012-12-13  Dirk Pranke  <dpranke@chromium.org>
2772
2773         nrwt: move rundetails, summarize_results into test_run_results
2774         https://bugs.webkit.org/show_bug.cgi?id=104963
2775
2776         Reviewed by Eric Seidel.
2777
2778         More cleanup; this the plain-old-data functions out of manager.py
2779         and into test_run_results next to the other aggregate data structures.
2780
2781         Also this cleans up a bunch of test code and reduces duplication.
2782
2783         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2784         (Manager.run):
2785         * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
2786         (ManagerTest.test_look_for_new_crash_logs):
2787         * Scripts/webkitpy/layout_tests/models/test_run_results.py:
2788         (TestRunResults.__init__):
2789         (TestRunResults.add):
2790         (RunDetails):
2791         (RunDetails.__init__):
2792         (_interpret_test_failures):
2793         (summarize_results):
2794         * Scripts/webkitpy/layout_tests/models/test_run_results_unittest.py: Added.
2795         (get_result):
2796         (run_results):
2797         (summarized_results):
2798         (InterpretTestFailuresTest):
2799         (InterpretTestFailuresTest.setUp):
2800         (InterpretTestFailuresTest.test_interpret_test_failures):
2801         (SummarizedResultsTest):
2802         (SummarizedResultsTest.setUp):
2803         (SummarizedResultsTest.test_no_svn_revision):
2804         (SummarizedResultsTest.test_svn_revision):
2805         (SummarizedResultsTest.test_summarized_results_wontfix):
2806         * Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:
2807         (BuildBotPrinterTests.get_printer):
2808         (BuildBotPrinterTests.test_print_unexpected_results):
2809         (BuildBotPrinterTests.test_print_results):
2810
2811 2012-12-13  Eric Seidel  <eric@webkit.org>
2812
2813         Make --profile output easier to understand for pprof on linux
2814         https://bugs.webkit.org/show_bug.cgi?id=104957
2815
2816         Reviewed by Dirk Pranke.
2817
2818         pprof is kinda mysterious, so we print some information
2819         on how to use it, and how to learn how to read the sample dump.
2820         This is similar to what we've done for perf output for Chromium Android.
2821
2822         * Scripts/webkitpy/common/system/profiler.py:
2823         (GooglePProf._pprof_path):
2824         (GooglePProf.profile_after_exit):
2825
2826 2012-12-13  Dirk Pranke  <dpranke@chromium.org>
2827
2828         Revert r137407 - it didn't actually work right.
2829         https://bugs.webkit.org/show_bug.cgi?id=101976
2830
2831         Unreviewed, build fix.
2832
2833         Turns out that rebaselining was completely broken with this change :(
2834         We're passing in a list of test names rather than the list of
2835         failureInfo objects.
2836
2837         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
2838         (.):
2839         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
2840         (.):
2841         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:
2842
2843 2012-12-13  Antoine Labour  <piman@chromium.org>
2844
2845         [chromium] Small fixes for WebPluginContainer::setWebLayer
2846         https://bugs.webkit.org/show_bug.cgi?id=104953
2847
2848         Reviewed by James Robinson.
2849
2850         * DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp: Clean up
2851         dangling pointers, force correct invalidation of the layer.
2852
2853 2012-12-13  Eric Seidel  <eric@webkit.org>
2854
2855         Add --profiler=PROFILER option to run-perf-tests to allow specifying which profiler to use on platforms with many
2856         https://bugs.webkit.org/show_bug.cgi?id=104891
2857
2858         Reviewed by Dirk Pranke.
2859
2860         I also implemented a very simple "Sample" Profiler using
2861         Mac OS X's /usr/bin/sample command line tool.
2862
2863         I also moved the map(unicode, args) call into Executive.popen
2864         so that all callers don't have to do it themselves.
2865
2866         The real reason for this abstraction is to make it easy
2867         to support both perf and pprof on linux which seem to
2868         be about equally popular among those I ask in the Chrome team.
2869
2870         * Scripts/webkitpy/common/system/executive.py:
2871         (Executive.popen):
2872         * Scripts/webkitpy/common/system/profiler.py:
2873         (ProfilerFactory.create_profiler):
2874         (ProfilerFactory):
2875         (ProfilerFactory.available_profilers_by_name):
2876         (ProfilerFactory.default_profiler_name):
2877         (Sample):
2878         (Sample.__init__):
2879         (Sample.attach_to_pid):
2880         (Sample.profile_after_exit):
2881         (IProfiler.attach_to_pid):
2882         * Scripts/webkitpy/layout_tests/port/driver.py:
2883         (Driver.__init__):
2884         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
2885         (PerfTestsRunner._parse_args):
2886
2887 2012-12-13  Dirk Pranke  <dpranke@chromium.org>
2888
2889         support -wk2 port names properly in webkitpy.layout_tests.port
2890         https://bugs.webkit.org/show_bug.cgi?id=104761
2891
2892         Reviewed by Eric Seidel.
2893
2894         Our support for WK2 port names was inconsistent at best; this patch
2895         modifies the code so that <port_name>-wk2 is supported for all ports that
2896         have WK2 implementations and is equivalent to specifying <port_name>
2897         and -2/--webkit-test-runner. In addition, this modifies
2898         builders.all_port_names() to include the wk2 variants.
2899
2900         * Scripts/webkitpy/common/checkout/baselineoptimizer.py:
2901         * Scripts/webkitpy/layout_tests/port/apple.py:
2902         (ApplePort.determine_full_port_name):
2903         * Scripts/webkitpy/layout_tests/port/base.py:
2904         (Port.determine_full_port_name):
2905         (Port.__init__):
2906         * Scripts/webkitpy/layout_tests/port/builders.py:
2907         * Scripts/webkitpy/layout_tests/port/driver_unittest.py:
2908         (DriverTest.make_port):
2909         * Scripts/webkitpy/layout_tests/port/mac.py:
2910         (MacPort.default_baseline_search_path):
2911         * Scripts/webkitpy/layout_tests/port/win.py:
2912         (WinPort.default_baseline_search_path):
2913         * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
2914         (TestRebaselineExpectations.test_rebaseline_expectations):
2915
2916 2012-12-13  Ian Vollick  <vollick@chromium.org>
2917
2918         [chromium] Add a virtual test suite for enabling opt-in to composited scrolling
2919         https://bugs.webkit.org/show_bug.cgi?id=104911
2920
2921         Reviewed by Adrienne Walker.
2922
2923         Adds two virtual tests suites to run the tests in
2924         compositing/overflow/ and scrollbars/ with the flag
2925         --enable-accelerated-compositing-for-overflow-scroll
2926
2927         * Scripts/webkitpy/layout_tests/port/chromium.py:
2928         (ChromiumPort.virtual_test_suites):
2929
2930 2012-12-13  Dirk Pranke  <dpranke@chromium.org>
2931
2932         delete extraneous self.fail in mastercfg_unittest.py
2933         https://bugs.webkit.org/show_bug.cgi?id=104940
2934
2935         Reviewed by Eric Seidel.
2936
2937         This was accidentally introduced in r137404.
2938
2939         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
2940
2941 2012-12-13  Dirk Pranke  <dpranke@chromium.org>
2942
2943         Fix a mis-named variable after r137621.
2944         https://bugs.webkit.org/show_bug.cgi?id=104871
2945
2946         Unreviewed, build fix.
2947
2948         * Scripts/webkitpy/layout_tests/views/buildbot_results.py:
2949         (BuildBotPrinter.print_results):
2950         * Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:
2951
2952 2012-12-13  Dirk Pranke  <dpranke@chromium.org>
2953
2954         webkitpy: rename ResultSummary
2955         https://bugs.webkit.org/show_bug.cgi?id=104871
2956
2957         Reviewed by Eric Seidel.
2958
2959         This patch changes the names of ResultSummary and related modules,
2960         classes, and variables as a part of the larger clean up in bug 103824.
2961
2962         This change is basically a bunch of search and replaces:
2963         - result_summary.py -> test_run_results.py
2964         - class ResultSummary -> class TestRunResults
2965         - "result_summary" or "rs" as a generic variable name -> "run_results",
2966           when it doesn't matter (or we don't know) if this refers to the
2967           initial pass over the tests or the retry pass.
2968         - "result_summary" as a variable containing the results of the initial,
2969           complete test run -> "initial_results"
2970         - "retry_summary" as a variable containing the results of retried
2971           results -> "retry_results"
2972         - ResultSummary.results (the property) -> TestRunResults.results_by_name
2973         - ResultSummary.failures (the property) -> TestRunResults.failures_by_name
2974         - RunDetails.result_summary -> RunDetails.initial_results
2975         - RunDetails.retry_summary -> RunDetails.retry_results
2976
2977         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
2978         (LayoutTestRunner.__init__):
2979         (LayoutTestRunner.run_tests):
2980         (LayoutTestRunner._mark_interrupted_tests_as_skipped):
2981         (LayoutTestRunner._interrupt_if_at_failure_limits):
2982         (LayoutTestRunner._interrupt_if_at_failure_limits.interrupt_if_at_failure_limit):
2983         (LayoutTestRunner._update_summary_with_result):
2984         (LayoutTestRunner._handle_finished_test):
2985         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:
2986         (FakePrinter.print_expected):
2987         (LayoutTestRunnerTests.test_interrupt_if_at_failure_limits):
2988         (LayoutTestRunnerTests.test_update_summary_with_result):
2989         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2990         (RunDetails.__init__):
2991         (summarize_results):
2992         (Manager.run):
2993         (Manager._look_for_new_crash_logs):
2994         (Manager._tests_to_retry):
2995         (Manager._upload_json_files):
2996         (Manager._stats_trie):
2997         * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
2998         (ManagerTest.test_look_for_new_crash_logs):
2999         (SummarizeResultsTest):
3000         (SummarizeResultsTest.get_run_results):
3001         (SummarizeResultsTest.summarized_results):
3002         * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
3003         (JSONLayoutResultsGenerator.__init__):
3004         (JSONLayoutResultsGenerator._get_modifier_char):
3005         (JSONLayoutResultsGenerator._insert_failure_summaries):
3006         (JSONLayoutResultsGenerator._get_failure_summary_entry):
3007         * Scripts/webkitpy/layout_tests/models/test_run_results.py: Renamed from Tools/Scripts/webkitpy/layout_tests/models/result_summary.py.
3008         (TestRunResults):
3009         (TestRunResults.__init__):
3010         (TestRunResults.add):
3011         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
3012         (get_test_results):
3013         (MainTest.test_basic):
3014         * Scripts/webkitpy/layout_tests/views/buildbot_results.py:
3015         (BuildBotPrinter.print_results):
3016         (BuildBotPrinter.print_run_results):
3017         (BuildBotPrinter._print_run_results_entry):
3018         * Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:
3019         (BuildBotPrinterTests.get_run_results):
3020         (BuildBotPrinterTests.test_print_unexpected_results.get_unexpected_results):
3021         (BuildBotPrinterTests):
3022         * Scripts/webkitpy/layout_tests/views/printing.py:
3023         (Printer.print_expected):
3024         (Printer._print_expected_results_of_type):
3025         (Printer.print_results):
3026         (Printer._print_timing_statistics):
3027         (Printer._print_worker_statistics):
3028         (Printer._print_aggregate_test_statistics):
3029         (Printer._print_individual_test_times):
3030         (Printer._print_directory_timings):
3031         * Scripts/webkitpy/layout_tests/views/printing_unittest.py:
3032
3033 2012-12-13  Thiago Marcos P. Santos  <thiago.santos@intel.com>
3034
3035         [EFL] The WebKit2 bots are building and executing WebKit1 tests
3036         https://bugs.webkit.org/show_bug.cgi?id=104690
3037
3038         Reviewed by Csaba Osztrogonác.
3039
3040         Pass --no-webkit1 option to the EFL WK2 bots when building. This
3041         will disable WK1 API and thus, the WK1 API tests.
3042
3043         * BuildSlaveSupport/build.webkit.org-config/config.json:
3044         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
3045         (CompileWebKit2Only):
3046         (BuildAndTestFactory):
3047         (BuildAndTestFactory.__init__):
3048         (BuildAndTestWebKit2OnlyFactory):
3049         Now bots using BuildAndTestWebKit2OnlyFactory (for instance only EFL) will
3050         get --no-webkit1 as a parameter on the build-webkit script.
3051         * Scripts/build-webkit:
3052         Added support for -no-webkit1 for the Qt and EFL port.
3053
3054 2012-12-13  Eric Seidel  <eric@webkit.org>
3055
3056         build-webkit --chromium-android forces Make even when update-webkit used --ninja
3057         https://bugs.webkit.org/show_bug.cgi?id=104839
3058
3059         Reviewed by Tony Chang.
3060
3061         This was recommended by Peter as part of:
3062         https://bugs.webkit.org/show_bug.cgi?id=104434#c4
3063         Fixing this makes build-webkit --chromium-android work for the common (ninja) case.
3064
3065         * Scripts/webkitdirs.pm:
3066         (buildChromium):
3067
3068 2012-12-13  Julie Parent  <jparent@chromium.org>
3069
3070         Loader_unittests should reset state between runs.
3071         https://bugs.webkit.org/show_bug.cgi?id=104862
3072
3073         Reviewed by Dirk Pranke.
3074
3075         The loader_unittests were not resetting state between runs, leaving
3076         a lot of data behind in global objects that the dashboard and tests
3077         rely on.  A handful were resetting just a few objects.  Use the common
3078         resetGlobals() method instead.
3079
3080         * TestResultServer/static-dashboards/loader_unittests.js:
3081
3082 2012-12-13  Andras Becsi  <andras.becsi@digia.com>
3083
3084         [Qt][WK2] Fix painting on Mac with retina display
3085         https://bugs.webkit.org/show_bug.cgi?id=104574
3086
3087         Reviewed by Kenneth Rohde Christiansen.
3088
3089         Remove setting the devicePixelRatio experimental property
3090         since the value is now automatically picked up from Qt.
3091
3092         * MiniBrowser/qt/qml/BrowserWindow.qml:
3093
3094 2012-12-13  Jussi Kukkonen  <jussi.kukkonen@intel.com>
3095
3096         [EFL][GTK] Don't call deprecated g_type_init when glib => 2.35
3097         https://bugs.webkit.org/show_bug.cgi?id=103209
3098
3099         Reviewed by Kenneth Rohde Christiansen.
3100
3101         g_type_init() is deprecated from 2.35.0 onwards. Don't call it
3102         in that case to avoid warnings and/or build failure.
3103
3104         * DumpRenderTree/gtk/ImageDiff.cpp:
3105         (main):
3106
3107 2012-12-13  Claudio Saavedra  <csaavedra@igalia.com>
3108
3109         [Tools] Add exception for gtk_style_context_get()
3110         https://bugs.webkit.org/show_bug.cgi?id=104896
3111
3112         Reviewed by Martin Robinson.
3113
3114         Add new exception for gtk_style_context_get().
3115
3116         * Scripts/webkitpy/style/checkers/cpp.py:
3117         (check_for_null): Add exception for gtk_style_context_get().
3118         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
3119         (WebKitStyleTest.test_null_false_zero): Add a unit
3120         test for the new exception.
3121
3122 2012-12-13  Joaquim Rocha  <jrocha@igalia.com>
3123
3124         REGRESSION (r137432): The /webkit2/WebKitCookieManager/accept-policy unit test is failing
3125         https://bugs.webkit.org/show_bug.cgi?id=104790
3126
3127         Reviewed by Carlos Garcia Campos.
3128
3129         Unskip the GTK accept policy test.
3130
3131         * Scripts/run-gtk-tests:
3132         (TestRunner):
3133
3134 2012-12-13  Xingnan Wang  <xingnan.wang@intel.com>
3135
3136         Unreviewed. Adding myself to committers list.
3137
3138         * Scripts/webkitpy/common/config/committers.py:
3139
3140 2012-12-12  Roger Fong  <roger_fong@apple.com>
3141
3142         Unreviewed. Fix typo in NRWT.
3143
3144         * Scripts/webkitpy/layout_tests/port/base.py:
3145         (Port.is_reference_html_file):
3146
3147 2012-12-12  Roger Fong  <roger_fong@apple.com>
3148
3149         Fix detection of ref test files in old and new run webkit tests.
3150         https://bugs.webkit.org/show_bug.cgi?id=104850.
3151
3152         Reviewed by Timothy Horton.
3153
3154         * Scripts/old-run-webkit-tests:
3155         (isUsedInReftest): 
3156         Add notref and ref prefix and suffix cases to isUsedinReftest.
3157         * Scripts/webkitpy/layout_tests/port/base.py:
3158         (Port):
3159         (Port.is_reference_html_file): 
3160         Typo in NRWT.
3161
3162 2012-12-12  Dirk Pranke  <dpranke@chromium.org>
3163
3164         rework ChromiumAndroidDriver.start() et. al to avoid funky layering
3165         https://bugs.webkit.org/show_bug.cgi?id=104856
3166
3167         Reviewed by Eric Seidel.
3168
3169         r137523 / bug 10357 introduced some back-and-forth hopping during
3170         driver.start() in the chromium android port. This patch cleans it
3171         up a bit.
3172
3173         * Scripts/webkitpy/layout_tests/port/chromium_android.py:
3174         (ChromiumAndroidDriver.__init__):
3175         (ChromiumAndroidDriver._start_once):
3176         * Scripts/webkitpy/layout_tests/port/chromium_android_unittest.py:
3177         * Scripts/webkitpy/layout_tests/port/driver.py:
3178         (Driver.start):
3179         (Driver._start):
3180
3181 2012-12-12  Eric Seidel  <eric@webkit.org>
3182
3183         Add support for run-perf-tests --chromium-android --profile
3184         https://bugs.webkit.org/show_bug.cgi?id=103587
3185
3186         Reviewed by Dirk Pranke.
3187
3188         This makes it possible to profile PerformanceTests on an Android device
3189         using run-perf-tests --chromium-android --profile.
3190         CPU profiling on Android is sadly non-trivial, but this goes a long
3191         ways towards making it more accessible to non-Android developers.
3192
3193         Although this script requires your device to be flashed with a
3194         userdebug build (an annoyingly non-trivial endeavor for external contributors)
3195         it endeavors to detect and explain the common errors encountered
3196         while trying to setup a device for perf-based profiling.
3197
3198         * Scripts/webkitpy/common/system/profiler.py:
3199         (GooglePProf.profile_after_exit): Discovered that pprof will just hang if passed a missing file.
3200         * Scripts/webkitpy/layout_tests/port/chromium_android.py:
3201         (AndroidPerf):
3202         (AndroidPerf.__init__):
3203         (AndroidPerf.check_configuration):
3204         (AndroidPerf.print_setup_instructions):
3205         (_file_exists_on_device):
3206         (_run_adb_command):
3207         (attach_to_pid):
3208         (_perf_version_string):
3209         (_find_perfhost_binary):
3210         (_perfhost_path):
3211         (_first_ten_lines_of_profile):
3212         (profile_after_exit):
3213         (ChromiumAndroidDriver.__init__):
3214         (ChromiumAndroidDriver.__init__.methods):
3215         (ChromiumAndroidDriver._find_or_create_symfs):
3216         (ChromiumAndroidDriver._start_once):
3217         (ChromiumAndroidDriver):
3218         (ChromiumAndroidDriver._run_post_start_tasks):
3219         (ChromiumAndroidDriver._pid_from_android_ps_output):
3220         (ChromiumAndroidDriver._pid_on_target):
3221         * Scripts/webkitpy/layout_tests/port/chromium_android_unittest.py:
3222         (ChromiumAndroidDriverTest.test_pid_from_android_ps_output):
3223         (AndroidPerfTest):
3224         (AndroidPerfTest.test_perf_output_regexp):
3225         * Scripts/webkitpy/layout_tests/port/driver.py:
3226         (Driver._setup_environ_for_driver):
3227         (Driver):
3228         (Driver._start):
3229         (Driver._run_post_start_tasks):
3230         (Driver._pid_on_target):
3231
3232 2012-12-12  Dirk Pranke  <dpranke@chromium.org>
3233
3234         nrwt: remove deprecated ORWT compatibility command line flags
3235         https://bugs.webkit.org/show_bug.cgi?id=104301
3236
3237         Reviewed by Eric Seidel.
3238
3239         The command line flags for --noshow-results, --[no-]launch-safari,
3240         and --use-remote-links-to-tests were for compatibility with
3241         old-run-webkit-tests, but the compatibility is not needed any more
3242         since NRWT is basically default and the scripts that passed the
3243         old flags have been updated.
3244
3245         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3246         (_set_up_derived_options):
3247         (parse_args):
3248
3249 2012-12-12  John Griggs  <jgriggs@rim.com>
3250
3251         2012-12-12  John Griggs  <jgriggs@rim.com>
3252
3253         [BlackBerry] Update Media Controls
3254         https://bugs.webkit.org/show_bug.cgi?id=104443
3255         https://przilla.ott.qnx.com/bugzilla/show_bug.cgi?id=204748
3256
3257         Update Media Controls for BlackBerry platform to allow audio, embedded video and fullscreen video controls to be positioned and styled differently.
3258
3259         Reviewed by Rob Buis.
3260
3261         BlackBerry-specific update to Media Controls - No new tests required.
3262
3263         * Scripts/webkitperl/FeatureList.pm:
3264
3265 2012-12-12  Justin Novosad  <junov@google.com>
3266
3267         Adding myself to SkiaGraphics watchlist
3268
3269         Unreviewed
3270
3271         * Scripts/webkitpy/common/config/watchlist:
3272
3273 2012-12-12  Martin Robinson  <mrobinson@igalia.com>
3274
3275         [GTK] Add authentication support to DRT and fix exposed issues in the libsoup backend
3276         https://bugs.webkit.org/show_bug.cgi?id=104285
3277
3278         Reviewed by Gustavo Noronha Silva.
3279
3280         Add support to DumpRenderTree for running authentication tests. Since the DRT
3281         expects an authentication callback, we add one to DRTSupport to avoid #ifdefs
3282         in platform-independent code for GTK+.
3283
3284         * DumpRenderTree/gtk/DumpRenderTree.cpp:
3285         (resetDefaultsToConsistentValues): Reset the authentication password and username.
3286         (authenticationCallback): Added.
3287         (createWebView): Attach the authentiation callback during startup.
3288         * DumpRenderTree/gtk/TestRunnerGtk.cpp:
3289         (soupURIToKURL): soup_uri_to_string does not preserve passwords embedded
3290         in the URL so we add a somewhat messy method of re-adding them when they exist.
3291         It would be nice to use soupURIToKURL here, but it seems we cannot use KURL without
3292         pulling in lots of WebCore code so we use string search and replace.
3293         (TestRunner::queueLoad): Use the new helper.
3294
3295 2012-12-12  Dirk Pranke  <dpranke@chromium.org>
3296
3297         garden-o-matic should prefer efl/ over efl-wk1/ and efl-wk2/ when rebaselining
3298         https://bugs.webkit.org/show_bug.cgi?id=102389
3299
3300         Reviewed by Tony Chang.
3301
3302         The code wasn't aware of both the efl-wk1 and efl-wk2 variants,
3303         because all_port_names() by itself doesn't tell you about the
3304         variants. Work around this for now, and filed bug 104761 to
3305         address the underlying problem.
3306
3307         * Scripts/webkitpy/common/checkout/baselineoptimizer.py:
3308         * Scripts/webkitpy/common/checkout/baselineoptimizer_unittest.py:
3309         (BaselineOptimizerTest.test_efl):
3310
3311 2012-12-12  Krzysztof Czech  <k.czech@samsung.com>
3312
3313         [EFL] Possibility to turn off accessibility feature for WebKit-EFL.
3314         https://bugs.webkit.org/show_bug.cgi?id=103036
3315
3316         Reviewed by Laszlo Gombos.
3317
3318         Guard dependencies for accessibility (ATK), so that they can be turned off.
3319
3320         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
3321         (AccessibilityUIElement):
3322         * WebKitTestRunner/PlatformEfl.cmake:
3323
3324 2012-12-12  Simon Fraser  <simon.fraser@apple.com>
3325
3326         Add some entries in the watchlist, and register me for them.
3327
3328         * Scripts/webkitpy/common/config/watchlist:
3329
3330 2012-12-12  Ilya Tikhonovsky  <loislo@chromium.org>
3331
3332         Web Inspector: Native Memory Instrumentation: remove fake root MemoryObjectInfo.
3333         https://bugs.webkit.org/show_bug.cgi?id=104796
3334
3335         Reviewed by Yury Semikhatsky.
3336
3337         It was not a good idea to introduce a fake root MemoryObjectInfo.
3338         It makes a problem when we visit an object without its own MemoryObjectType.
3339
3340         Example: RenderBox has a global pointer to a hash map.
3341         HashMap doesn't have its own object type because it is a generic container.
3342         It will inherit object type from the fake root memory object info.
3343         The same could happen for another container in another class with other MemoryObjectType.
3344
3345         This fact forces me to create custom process method for root objects
3346         because they need to have their own MemoryObjectInfo with customisable memory object type.
3347
3348         * TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
3349
3350         Drive by fix: InstrumentedPointer* was replaced with Wrapper* because actually it is using
3351         for instrumented and not instrumented object classes.
3352
3353 2012-12-12  Zan Dobersek  <zandobersek@gmail.com>
3354
3355         [GTK] Remove the last of unnecessary configuration options in configure.ac
3356         https://bugs.webkit.org/show_bug.cgi?id=104793
3357
3358         Reviewed by Martin Robinson.
3359
3360         Removing the filters and indexed database features from the list of features
3361         being configurable through the configure script. This is not the case anymore
3362         as the corresponding configuration options are being removed.
3363
3364         * Scripts/webkitdirs.pm:
3365         (buildAutotoolsProject):
3366
3367 2012-12-12  Mario Sanchez Prada  <mario@webkit.org>
3368
3369         [GTK][WK2] New API to detect display/execution of insecure content
3370         https://bugs.webkit.org/show_bug.cgi?id=104578
3371
3372         Reviewed by Martin Robinson.
3373
3374         Add coding style exception for 'readability/enum_casing' in GTK.
3375
3376         The GTK+ API use upper case, underscore separated, words in
3377         certain types of enums (e.g. signals, properties).
3378
3379         * Scripts/webkitpy/style/checker.py: Added exception, both for
3380         WebKitGTK+ and WebKit2GTK+.
3381
3382 2012-12-12  Jochen Eisinger  <jochen@chromium.org>
3383
3384         [chromium] Fix build on chromium-win
3385
3386         Unreviewed build-fix.
3387
3388         MSVS indeed doesn't have snprintf, adding wtf/StringExtras.h include
3389         to work around that.
3390
3391         * DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp:
3392
3393 2012-12-12  Simon Hausmann  <simon.hausmann@digia.com>
3394
3395         [Qt] Fix build on Mac
3396
3397         Reviewed by Csaba Osztrogonác.
3398
3399         On Mac OS X we have sqlite as a system library available.
3400
3401         * qmake/mkspecs/features/features.prf:
3402
3403 2012-12-12  Zan Dobersek  <zandobersek@gmail.com>
3404
3405         Unreviewed GTK gardening.
3406
3407         Skipping another unit test that regressed in r137432.
3408
3409         * Scripts/run-gtk-tests:
3410         (TestRunner):
3411
3412 2012-12-12  Simon Hausmann  <simon.hausmann@digia.com>
3413
3414         [Qt] Fix linkage against SQLite
3415         https://bugs.webkit.org/show_bug.cgi?id=104781
3416
3417         Reviewed by Csaba Osztrogonác.
3418
3419         Detect SQLite either through pkg-config, from the SQLITE3SRCDIR
3420         environment variable or from qtbase via a qt5.git build. Bail out early
3421         with an error message if neither option applies.
3422
3423         This removes the usage of $$QT.core.sources and the dependency on Qt's
3424         system-sqlite configure setting. We should always favour a system
3425         library over a copy in Qt.
3426
3427         * qmake/mkspecs/features/features.prf:
3428
3429 2012-12-12  Tommy Widenflycht  <tommyw@google.com>
3430
3431         MediaStream API: Change the data channel descriptor pattern to a handler pattern
3432         https://bugs.webkit.org/show_bug.cgi?id=104543
3433
3434         Reviewed by Kent Tamura.
3435
3436         Adding mocks to be able to test this refactoring.
3437
3438         * DumpRenderTree/DumpRenderTree.gypi:
3439         * DumpRenderTree/chromium/MockWebRTCDataChannelHandler.cpp: Added.
3440         (DataChannelReadyStateTask):
3441         (DataChannelReadyStateTask::DataChannelReadyStateTask):
3442         (MockWebRTCDataChannelHandler::MockWebRTCDataChannelHandler):
3443         (MockWebRTCDataChannelHandler::setClient):
3444         (MockWebRTCDataChannelHandler::bufferedAmount):
3445         (MockWebRTCDataChannelHandler::sendStringData):
3446         (MockWebRTCDataChannelHandler::sendRawData):
3447         (MockWebRTCDataChannelHandler::close):
3448         * DumpRenderTree/chromium/MockWebRTCDataChannelHandler.h: Added.
3449         (MockWebRTCDataChannelHandler):
3450         (MockWebRTCDataChannelHandler::taskList):
3451         * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:
3452         (RTCPeerConnectionReadyStateTask::RTCPeerConnectionReadyStateTask):
3453         (RemoteDataChannelTask::RemoteDataChannelTask):
3454         (MockWebRTCPeerConnectionHandler::createDataChannel):
3455         (MockWebRTCPeerConnectionHandler::stop):
3456         * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h:
3457         (MockWebRTCPeerConnectionHandler):
3458
3459 2012-12-12  Jochen Eisinger  <jochen@chromium.org>
3460
3461         [chromium] WebTestPlugin must not depend on WTF::String
3462         https://bugs.webkit.org/show_bug.cgi?id=104783
3463
3464         Reviewed by Kent Tamura.
3465
3466         In a component build, we can't access the WTF that is part of the
3467         WebKit component. Accessing WTF instead will pull in a separate copy
3468         into the TestRunner library. Instead of WTF::String::number use
3469         snprintf() to print numbers.
3470
3471         * DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp:
3472
3473 2012-12-12  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
3474
3475         [Qt] Do not automatically enable force_static_libs_as_shared when using debug_and_release
3476         https://bugs.webkit.org/show_bug.cgi?id=104562
3477
3478         Reviewed by Tor Arne Vestbø.
3479
3480         force_static_libs_as_shared creates issues on Mac if QtWebKit is built as a framework.
3481         QtWebProcess, for example, will link to the framework's release library and will rely
3482         on DYLD_IMAGE_SUFFIX to switch to the debug build. Since QtWebProcess will also links
3483         directly to the debug build of WebCore, and that QtWebKit release will link in the
3484         release build of WebCore, both the debug and release version will be loaded.
3485
3486         To fix this properly we should make sure that applications always link to the release
3487         build of dependent libraries by bypassing resolveFinalLibraryName.
3488         Disable it for now as force_static_libs_as_shared is mainly for development while
3489         debug_and_release is mainly for production builds.
3490
3491         * qmake/mkspecs/features/default_post.prf:
3492
3493 2012-12-12  Zan Dobersek  <zandobersek@gmail.com>
3494
3495         Unreviewed GTK gardening of the unit tests.
3496
3497         Skip two unit tests that regressed during the hackfest.
3498
3499         * Scripts/run-gtk-tests:
3500         (TestRunner):
3501
3502 2012-12-11  Ryosuke Niwa  <rniwa@webkit.org>
3503
3504         Add Koji Ishii to the list of contributors.
3505
3506         * Scripts/webkitpy/common/config/committers.py:
3507
3508 2012-12-11  Dominic Mazzoni  <dmazzoni@google.com>
3509
3510         AX: Make isActionSupported cross-platform.
3511         https://bugs.webkit.org/show_bug.cgi?id=104681
3512
3513         Reviewed by Chris Fleizach.
3514
3515         Replace isActionSupported, which takes a platform-specific
3516         argument, with three cross-platform methods.
3517
3518         * DumpRenderTree/AccessibilityUIElement.cpp:
3519         (isPressActionSupportedCallback):
3520         (isIncrementActionSupportedCallback):
3521         (isDecrementActionSupportedCallback):
3522         (AccessibilityUIElement::getJSClass):
3523         * DumpRenderTree/AccessibilityUIElement.h:
3524         (AccessibilityUIElement):
3525         * DumpRenderTree/blackberry/AccessibilityUIElementBlackBerry.cpp:
3526         (AccessibilityUIElement::isPressActionSupported):
3527         (AccessibilityUIElement::isIncrementActionSupported):
3528         (AccessibilityUIElement::isDecrementActionSupported):
3529         * DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:
3530         (WebTestRunner::AccessibilityUIElement::AccessibilityUIElement):
3531         (WebTestRunner::AccessibilityUIElement::isPressActionSupportedCallback):
3532         (WebTestRunner):
3533         (WebTestRunner::AccessibilityUIElement::isIncrementActionSupportedCallback):
3534         (WebTestRunner::AccessibilityUIElement::isDecrementActionSupportedCallback):
3535         (WebTestRunner::AccessibilityUIElement::incrementCallback):
3536         (WebTestRunner::AccessibilityUIElement::decrementCallback):
3537         (WebTestRunner::AccessibilityUIElement::pressCallback):
3538         * DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.h:
3539         (AccessibilityUIElement):
3540         * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
3541         (AccessibilityUIElement::isPressActionSupported):
3542         (AccessibilityUIElement::isIncrementActionSupported):
3543         (AccessibilityUIElement::isDecrementActionSupported):
3544         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
3545         (AccessibilityUIElement::isPressActionSupported):
3546         (AccessibilityUIElement::isIncrementActionSupported):
3547         (AccessibilityUIElement::isDecrementActionSupported):
3548         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
3549         (AccessibilityUIElement::isPressActionSupported):
3550         (AccessibilityUIElement::isIncrementActionSupported):
3551         (AccessibilityUIElement::isDecrementActionSupported):
3552         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
3553         (WTR::AccessibilityUIElement::isPressActionSupported):
3554         (WTR::AccessibilityUIElement::isIncrementActionSupported):
3555         (WTR::AccessibilityUIElement::isDecrementActionSupported):
3556         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
3557         (AccessibilityUIElement):
3558         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
3559         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
3560         (WTR::AccessibilityUIElement::isPressActionSupported):
3561         (WTR):
3562         (WTR::AccessibilityUIElement::isIncrementActionSupported):
3563         (WTR::AccessibilityUIElement::isDecrementActionSupported):
3564
3565 2012-12-11  Dirk Pranke  <dpranke@chromium.org>
3566
3567         nrwt: remove result_summary.total_tests_by_expectation
3568         https://bugs.webkit.org/show_bug.cgi?id=104756
3569
3570         Reviewed by Eric Seidel.
3571
3572         This field wasn't being used by anything.
3573
3574         * Scripts/webkitpy/layout_tests/models/result_summary.py:
3575         (ResultSummary.__init__):
3576
3577 2012-12-11  Dirk Pranke  <dpranke@chromium.org>
3578
3579         garden-o-matic doesn't know about reftests
3580         https://bugs.webkit.org/show_bug.cgi?id=101976
3581
3582         Reviewed by Ojan Vafai.
3583
3584         This is a first attempt at fixing this, sort of a "stop-the-bleeding"
3585         fix. We will now look at the list of tests we're asked to rebaseline,
3586         and log which ones are reftests into the status area, and rebaseline
3587         the rest.
3588
3589         Longer-term, we should display feedback in the results area based on
3590         which tests we're looking at. If the test list contains no reftests,
3591         we should behave as today; if the list is all reftest, we should
3592         probably disable the button, and if the list is a mix, we should
3593         probably display an alert next to the button or something. It would
3594         also be nice to annotate which tests were reftests, maybe with a
3595         "(reftest)" next to the test name or something.
3596
3597         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
3598         (.):
3599         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
3600         (.):
3601         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:
3602
3603 2012-12-11  Dirk Pranke  <dpranke@chromium.org>
3604
3605         REGRESSION(r133380): new tests without expected file reported as failing tests on the bots
3606         https://bugs.webkit.org/show_bug.cgi?id=101469
3607
3608         Reviewed by Ryosuke Niwa.
3609
3610         Fix parsing of NRWT's output to identify missing results separately
3611         from other regressions.
3612
3613         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
3614         (RunWebKitTests._parseNewRunWebKitTestsOutput):
3615         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
3616         (MasterCfgTest.test_nrwt_leaks_parsing):
3617         (test_nrwt_missing_results):
3618
3619 2012-12-11  Dirk Pranke  <dpranke@chromium.org>
3620
3621         buildbot: change run-webkit-tests --no-launch-safari to --no-show-results
3622         https://bugs.webkit.org/show_bug.cgi?id=104299
3623
3624         Reviewed by Ryosuke Niwa.
3625
3626         Since --no-show-results is the more generically-named flag that NRWT uses.
3627
3628         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
3629         (RunWebKitTests):
3630
3631 2012-12-11  Dirk Pranke  <dpranke@chromium.org>
3632
3633         remove --use-remote-links-to-tests from buildbot configs (except apple win)
3634         https://bugs.webkit.org/show_bug.cgi?id=104291
3635