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