Tools/Scripts: eliminate find_test_files from Port class.
[WebKit-https.git] / Tools / ChangeLog
1 2011-12-01  Ilya Tikhonovsky  <loislo@chromium.org>
2
3         Tools/Scripts: eliminate find_test_files from Port class.
4         https://bugs.webkit.org/show_bug.cgi?id=73553
5
6         rebaseline.py and chromium_gpu.py use Port.find_test_files() the same way as it is used in Port.tests()
7         I'd like to replace all calls to find_test_files with tests and eliminate find_tests_files.
8         Also I'll move _is_test_file() and related functions close to Port.tests().
9
10         Reviewed by Dirk Pranke.
11
12         * Scripts/webkitpy/layout_tests/port/base.py:
13         (Port.tests):
14         (Port.is_reference_html_file):
15         (Port._has_supported_extension):
16         (Port._is_test_file):
17         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
18         (PortTest.test_find_no_paths_specified):
19         (PortTest.test_find_one_test):
20         (PortTest.test_find_glob):
21         (PortTest.test_find_with_skipped_directories):
22         (PortTest.test_find_with_skipped_directories_2):
23         (PortTest.test_is_test_file):
24         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
25         (_default_tests_paths):
26         (ChromiumGpuLinuxPort.tests):
27         (ChromiumGpuCgMacPort.tests):
28         (ChromiumGpuMacPort.tests):
29         * Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
30         (ChromiumGpuTest.test_default_tests_paths.test_paths):
31         (ChromiumGpuTest.test_default_tests_paths):
32         (ChromiumGpuTest.test_test_files.test_paths):
33         (ChromiumGpuTest):
34         (ChromiumGpuTest.test_test_files):
35         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
36         (get_tests_run.RecordingTestDriver.run_test):
37         * Scripts/webkitpy/tool/commands/rebaseline.py:
38         (OptimizeBaselines._optimize_baseline):
39         (OptimizeBaselines.execute):
40         (AnalyzeBaselines._analyze_baseline):
41         (AnalyzeBaselines.execute):
42
43 2011-12-01  Hajime Morrita  <morrita@chromium.org>
44
45         JS_INLINE and WTF_INLINE should be visible from WebCore
46         https://bugs.webkit.org/show_bug.cgi?id=73191
47
48         Reviewed by Kevin Ollivier.
49
50         Removed macro definitions which is now provided by Platform.h
51
52         * DumpRenderTree/chromium/config.h:
53         * DumpRenderTree/config.h:
54         * TestWebKitAPI/config.h:
55         * WebKitTestRunner/config.h:
56
57 2011-12-01  Hayato Ito  <hayato@chromium.org>
58
59         Explicitly pass tolerance=0 to port.diff_image in case of RefTestMismatch failure.
60         https://bugs.webkit.org/show_bug.cgi?id=73406
61
62         Reviewed by Ryosuke Niwa.
63
64         WebKitPort's image_diff uses tolerance='0.1' in default.
65         When reftests fail, we should use tolerace=0 when diff-ing images.
66
67         Since ImageDiff on chromium port doesn't use tolerance value as of now,
68         this change doesn't affect chromium port's behavior.
69
70         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
71         (write_test_result):
72         * Scripts/webkitpy/layout_tests/port/base.py:
73         (Port.diff_image):
74         * Scripts/webkitpy/layout_tests/port/chromium.py:
75         (ChromiumPort.diff_image):
76         * Scripts/webkitpy/layout_tests/port/test.py:
77         (TestPort.diff_image):
78         * Scripts/webkitpy/layout_tests/port/webkit.py:
79         (WebKitPort.diff_image):
80         (WebKitPort._start_image_diff_process):
81         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
82         (MainTest.test_tolerance.ImageDiffTestPort.diff_image):
83
84 2011-12-01  Adam Klein  <adamk@chromium.org>
85
86         Add Chromium ToT GTest build bots (and group selection support) to flakiness dashboard
87         https://bugs.webkit.org/show_bug.cgi?id=73599
88
89         Reviewed by Ojan Vafai.
90
91         * TestResultServer/static-dashboards/builders.js:
92         * TestResultServer/static-dashboards/dashboard_base.js:
93         ():
94         (htmlForTestTypeSwitcher):
95         * TestResultServer/static-dashboards/flakiness_dashboard_tests.js:
96         (testHtmlForTestTypeSwitcherGroup):
97
98 2011-12-01  Ryosuke Niwa  <rniwa@webkit.org>
99
100         Parse reftest.list and extract types of ref tests
101         https://bugs.webkit.org/show_bug.cgi?id=66837
102
103         Reviewed by Dirk Pranke.
104
105         Add support for reftest.list to base port.
106
107         * Scripts/webkitpy/common/find_files.py:
108         (find):
109         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
110         (SingleTestRunner.__init__):
111         * Scripts/webkitpy/layout_tests/port/base.py:
112         (Port.__init__): Initialize self._reftest_list. It's a dictionary mapping from a test directory
113         to a dictionary of {test path: ("==" or "!=", reference file path)}
114         (Port._get_reftest_list): Added; calls test_file.parse_reftest_list to fill self._reftest_list.
115         (Port._reference_file_for): Added; obtains the reference file name given a test name.
116         (Port.is_reftest): Added; Calls _reference_file_for.
117         (Port.reftest_expected_filename): Calls _reference_file_for.
118         (Port.reftest_expected_mismatch_filename): Ditto.
119         (Port.find_test_files):
120         (is_reference_html_file): Treat any file that starts with ref- or notref- or ends with
121         -expected, -expected-mismach, -ref, or -notref as a reference file.
122         (_is_test_file):
123         (_parse_reftest_list): Added.
124         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
125         (PortTest.test_is_test_file):
126         (PortTest.test_parse_reftest_list):
127         * Scripts/webkitpy/layout_tests/port/dryrun.py:
128         (DryrunDriver.run_test):
129         * Scripts/webkitpy/layout_tests/port/test.py:
130         (unit_test_filesystem.add_test_file):
131         (unit_test_filesystem.add_file):
132         (unit_test_filesystem):
133         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
134         (get_tests_run.RecordingTestDriver.run_test):
135         (MainTest.test_unexpected_failures):
136         (MainTest.test_missing_and_unexpected_results):
137         (EndToEndTest.test_end_to_end):
138         * Scripts/webkitpy/to_be_moved/rebaseline_chromium_webkit_tests.py:
139         (Rebaseliner._compile_rebaselining_tests):
140
141 2011-12-01  Sheriff Bot  <webkit.review.bot@gmail.com>
142
143         Unreviewed, rolling out r101711.
144         http://trac.webkit.org/changeset/101711
145         https://bugs.webkit.org/show_bug.cgi?id=73605
146
147         Broke 3 webkitpy tests (Requested by rniwa on #webkit).
148
149         * Scripts/webkitpy/style/checker.py:
150         (_all_categories):
151         (FileType):
152         (CheckerDispatcher._file_type):
153         (CheckerDispatcher._create_checker):
154         * Scripts/webkitpy/style/checker_unittest.py:
155         (CheckerDispatcherDispatchTest.assert_checker_cpp):
156         (CheckerDispatcherDispatchTest.test_cpp_paths):
157         * Scripts/webkitpy/style/checkers/jsonchecker.py: Removed.
158         * Scripts/webkitpy/style/checkers/jsonchecker_unittest.py: Removed.
159
160 2011-12-01  Gustavo Noronha Silva  <gns@gnome.org>
161
162         Unreviewed. Add myself to GStreamer and WebKit2GTK+ watchlists.
163
164         * Scripts/webkitpy/common/config/watchlist:
165
166 2011-12-01  Martin Robinson  <mrobinson@igalia.com>
167
168         [GTK] Read fonts from the jhbuild root
169         https://bugs.webkit.org/show_bug.cgi?id=73487
170
171         Reviewed by Gustavo Noronha Silva.
172
173         Read fonts from the jhbuild root instead of from the system. This will ensure
174         that all testers use the same fonts instead of leaving this up to luck.
175
176         * DumpRenderTree/gtk/DumpRenderTree.cpp:
177         (initializeFonts): Load fonts from jhbuild root.
178         * Scripts/webkitpy/layout_tests/port/gtk.py:
179         (GtkPort.setup_environ_for_server): Pass an environment variable containing
180         the path to the jhbuild root.
181         * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
182         (WTR::inititializeFontConfigSetting): Load fonts from the jhbuild root.
183
184 2011-12-01  Adam Roben  <aroben@apple.com>
185
186         Teach check-webkit-style how to check the syntax of JSON files
187
188         Fixes <http://webkit.org/b/73590> check-webkit-style doesn't flag JSON syntax errors
189
190         Reviewed by Darin Adler.
191
192         * Scripts/webkitpy/style/checker.py:
193         (_all_categories): Added JSONChecker's categories to the set of all categories.
194         (FileType): Added a JSON type. Incremented other types.
195         (CheckerDispatcher._file_type): Use the JSON file type for .json files.
196         (CheckerDispatcher._create_checker): Use a JSONChecker for JSON files.
197
198         * Scripts/webkitpy/style/checker_unittest.py:
199         (CheckerDispatcherDispatchTest.assert_checker_json): Added this helper method.
200         (CheckerDispatcherDispatchTest.test_json_paths): Added. Based on test_python_paths.
201
202         * Scripts/webkitpy/style/checkers/jsonchecker.py: Added. (I didn't name this just "json",
203         which would have matched our other checkers, because I couldn't figure out how to call
204         "json.loads" without hitting namespace conflicts.)
205         (JSONChecker.__init__): Turn of line filtering so that we always check the whole file, not
206         just the modified lines from a patch.
207         (JSONChecker.check): Try to parse the lines as JSON. Mark an error if there was an
208         exception.
209         (JSONChecker.line_number_from_json_exception): Parse the json modules exception message to
210         try to extract a line number.
211
212         * Scripts/webkitpy/style/checkers/jsonchecker_unittest.py: Added.
213         (MockErrorHandler.__init__):
214         (MockErrorHandler.turn_off_line_filtering):
215         (MockErrorHandler.__call__):
216         Helper class. Copied from xml_unittest.py.
217
218         (JSONCheckerTest.test_line_number_from_json_exception): Test the
219         line_number_from_json_exception helper method.
220
221         (JSONCheckerTest.assert_no_error):
222         (JSONCheckerTest.assert_error):
223         Helper methods to assert that we did or didn't get an error.
224
225         (JSONCheckerTest.mock_handle_style_error): Helper method.
226
227         (JSONCheckerTest.test_conflict_marker):
228         (JSONCheckerTest.test_single_quote):
229         (JSONCheckerTest.test_init):
230         (JSONCheckerTest.test_missing_closing_brace):
231         (JSONCheckerTest.test_no_error):
232         Test various cases.
233
234 2011-12-01  Martin Robinson  <mrobinson@igalia.com>
235
236         [GTK] Add a helper function to find the current executable's path
237         https://bugs.webkit.org/show_bug.cgi?id=73473
238
239         Reviewed by Gustavo Noronha Silva.
240
241         Update MiniBrowser to not pass the binary directory as an environment variable.
242         This means that you can move the binaries around without it breaking.
243
244         * MiniBrowser/gtk/main.c:
245         (main): No longer set the environment variable.
246         * WebKitTestRunner/GNUmakefile.am: No longer add the directory path define.
247         * WebKitTestRunner/gtk/main.cpp:  Ditto.
248
249 2011-12-01  Gustavo Noronha Silva  <gns@gnome.org>
250
251         Unreviewed. Fix bad file =(.
252
253         * gtk/jhbuild.modules:
254         * Scripts/webkitdirs.pm:
255         (runAutogenForAutotoolsProject):
256
257 2011-12-01  Gustavo Noronha Silva  <gns@gnome.org>
258
259         [GTK] Add freetype to our jhbuild setup
260         https://bugs.webkit.org/show_bug.cgi?id=73488
261
262         Reviewed by Martin Robinson.
263
264         This adds the first library to our jhbuild setup, and makes sure
265         build-webkit calls autogen.sh and make with jhbuild, so that the
266         environment is properly set.
267
268         * Scripts/webkitdirs.pm:
269         (saveSum):
270         (hashFile):
271         (runAutogenForAutotoolsProject): save md5sum of jhbuild-related files, and
272         call autogen under jhbuild run;
273         (mustRunAutogen): generalized the arguments change checking to also force
274         running autogen when jhbuild files change;
275         (buildAutotoolsProject): run make under jhbuild;
276         * gtk/jhbuild.modules: add freetype.
277
278 2011-12-01  Dominic Mazzoni  <dmazzoni@google.com>
279
280         Fix WebKitTestRunner compile warnings with XCode 3.2
281         https://bugs.webkit.org/show_bug.cgi?id=73378
282
283         Reviewed by Chris Fleizach.
284
285         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.cpp:
286         (WTR::AccessibilityTextMarker::AccessibilityTextMarker):
287         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.cpp:
288         (WTR::AccessibilityTextMarkerRange::AccessibilityTextMarkerRange):
289         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
290         (WTR::AccessibilityUIElement::AccessibilityUIElement):
291         (WTR::AccessibilityUIElement::verticalScrollbar):
292
293 2011-12-01  Adam Roben  <aroben@apple.com>
294
295         Allow committers to use their Trac credentials to force builds on the buildbots
296
297         Fixes <http://webkit.org/b/73353>
298
299         A new class, CommitterAuth, handles authentication of WebKit committers. CommitterAuth uses
300         three files to do its job: a config file that contains a list of WebKit committer usernames,
301         an htdigest file that contains Trac credentials, and JSON file that gives the paths for
302         those two files.
303
304         Reviewed by Darin Adler.
305
306         * BuildSlaveSupport/build.webkit.org-config/committer_auth.py: Added.
307         (Error): Basic wrapper around Exception that we use for cases where we couldn't even check
308         whether credentials were valid or not.
309         (CommitterAuth.__init__): Just store the path to auth.json.
310         (CommitterAuth.auth_json): Load, parse, and return auth.json.
311         (CommitterAuth.auth_json_filename): Return the path to auth.json.
312         (CommitterAuth.authenticate): Return true if the user is a WebKit committer and their
313         credentials are valid Trac credentials. Return false otherwise or if an error occurred while
314         checking those conditions.
315         (CommitterAuth.is_webkit_committer): Return true if the user is a WebKit committer. Return
316         false otherwise or if an exception was thrown.
317         (CommitterAuth.is_webkit_trac_user): Return true if the username/password are present in the
318         Trac credentials htdigest file. Return false otherwise or if an exception was thrown.
319
320         (CommitterAuth.open_auth_json_file):
321         (CommitterAuth.open_trac_credentials_file):
322         (CommitterAuth.open_webkit_committers_file):
323         Open the specified file. These are mostly useful for testing purposes.
324
325         (CommitterAuth.trac_credentials_filename):
326         (CommitterAuth.webkit_committers_filename):
327         Return the path to the specified file by retrieving it from auth.json.
328
329         (CommitterAuth.webkit_committers): Load and parse the committers file and extract the list
330         of WebKit committers from it.
331
332         * BuildSlaveSupport/build.webkit.org-config/committer_auth_unittest.py: Added.
333         (CMStringIO.__enter__):
334         (CMStringIO.__exit__):
335         Helper class that makes it possible to use StringIO with the "with" statement.
336
337         (open_override): Helper context manager for overriding the global "open" function
338         temporarily.
339
340         (CommitterAuthTest.setUp): Set up a somewhat-mocked CommitterAuth that is used by most
341         tests.
342         (CommitterAuthTest.fake_open_function): Returns a function that can be used in place of
343         "open" to test that the expected path was opened.
344         (CommitterAuthTest.test_authentication_success): Test that committers can authenticate
345         successfully.
346         (CommitterAuthTest.test_committer_without_trac_credentials_fails): Test that committers who
347         somehow have no Trac account can't authenticate.
348
349         (CommitterAuthTest.test_fail_to_open_auth_json_file):
350         (CommitterAuthTest.test_fail_to_open_trac_credentials_file):
351         (CommitterAuthTest.test_fail_to_open_webkit_committers_file):
352         Test what happens when we can't open the three files we depend upon.
353
354         (CommitterAuthTest.test_implements_IAuth): Test that we fulfill buildbot's expectations for
355         an authentication class.
356
357         (CommitterAuthTest.test_invalid_auth_json_file):
358         (CommitterAuthTest.test_invalid_committers_file):
359         (CommitterAuthTest.test_invalid_trac_credentials_file):
360         (CommitterAuthTest.test_missing_auth_json_keys):
361         Test what happens when the three files we depend upon are invalid in some way.
362
363         (CommitterAuthTest.test_open_auth_json_file):
364         (CommitterAuthTest.test_open_trac_credentials_file):
365         (CommitterAuthTest.test_open_webkit_committers_file):
366         Test that we open the expected paths.
367
368         (CommitterAuthTest.test_trac_credentials_filename):
369         (CommitterAuthTest.test_webkit_committers_filename):
370         Test that we extract filenames out of auth.json correctly.
371
372         (CommitterAuthTest.test_non_committer_fails):
373         (CommitterAuthTest.test_unknown_user_fails):
374         (CommitterAuthTest.test_username_is_prefix_of_valid_user):
375         (CommitterAuthTest.test_wrong_password_fails):
376         Test various failed authentication attempts.
377
378         (CommitterAuthTest.test_webkit_committers): Test that we can parse the list of WebKit
379         committers out of the committers file correctly.
380
381         (CommitterAuthTest.fake_auth_json_file):
382         (CommitterAuthTest.invalid_auth_json_file):
383         (CommitterAuthTest.fake_committers_file):
384         (CommitterAuthTest.invalid_committers_file):
385         (CommitterAuthTest.fake_htdigest_file):
386         (CommitterAuthTest.invalid_htdigest_file):
387         Return various fake files for testing.
388
389         * BuildSlaveSupport/build.webkit.org-config/master.cfg: Specify an instance of CommitterAuth
390         to be used for authentication in the web interface, and specify that only authenticated
391         users may force builds.
392
393 2011-12-01  Adam Roben  <aroben@apple.com>
394
395         Add an HTDigestParser class to webkitpy
396
397         Fixes <http://webkit.org/b/73575> webkitpy doesn't provide a way to parse htdigest files
398
399         This class can be used to parse Apache's htdigest files and check whether a given
400         username/realm/password tuple is present in the file. Eventually this will be used for
401         authenticating users on build.webkit.org (<http://webkit.org/b/73353>).
402
403         Reviewed by Eric Seidel.
404
405         * Scripts/webkitpy/common/net/htdigestparser.py: Added.
406         (HTDigestParser.__init__): Stores the parsed representation of the file.
407         (HTDigestParser.authenticate): Hashes the username/realm/password tuple to generate a hashed
408         password and returns whether the resulting tuple is present in the file.
409         (HTDigestParser.entries): Just returns the parsed representation of the file.
410         (HTDigestParser.parse_file): Splits each line on colons and checks that each line has the
411         expected syntax ('username:realm:hashed_password'). If any line is invalid, we treat the
412         whole file as invalid and all authentication attempts will fail.
413
414         * Scripts/webkitpy/common/net/htdigestparser_unittest.py: Added.
415         (HTDigestParserTest.assertEntriesEqual): Helper method to assert that fake_htdigest_file,
416         optionally appended with some extra data, generates the expected entries.
417         (HTDigestParserTest.test_authenticate): Tests that tuples present in the file can
418         authenticate, and tuples not present cannot.
419         (HTDigestParserTest.test_entries): Tests that we get the expected entries from
420         fake_htdigest_file.
421
422         (HTDigestParserTest.test_empty_file):
423         (HTDigestParserTest.test_too_few_colons):
424         (HTDigestParserTest.test_too_many_colons):
425         (HTDigestParserTest.test_invalid_hash):
426         Test various forms of invalid files.
427
428         (HTDigestParserTest.fake_htdigest_file): Returns a fake valid htdigest file for testing.
429
430 2011-12-01  Philippe Normand  <pnormand@igalia.com>
431
432         [GTK] Make the new 64-bit Release bot part of the core set
433         https://bugs.webkit.org/show_bug.cgi?id=73570
434
435         Reviewed by Adam Roben.
436
437         The 64-bit Release bot re-introduced in r101676 replaces the 64-bit
438         Debug bot which was already part of the core set. The GTK
439         gardeners are willing to actively maintain it.
440
441         * Scripts/webkitpy/common/net/buildbot/buildbot.py:
442         (BuildBot.__init__):
443         * Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
444         (test_builder_name_regexps):
445
446 2011-12-01  Philippe Normand  <pnormand@igalia.com>
447
448         [GTK] Buildslave switch from 32-bit Debug to 64-bit Release
449         https://bugs.webkit.org/show_bug.cgi?id=73547
450
451         Reviewed by Adam Roben.
452
453         * BuildSlaveSupport/build.webkit.org-config/config.json: Rename
454         the 32-bit Debug configuration to 64-bit Release. The new slave is
455         a 64-bit machine already. The 32-bit slave will be shut down.
456
457 2011-12-01  Martin Robinson  <mrobinson@igalia.com>
458
459         [GTK] build-jsc should not trigger gtkdoc generation
460         https://bugs.webkit.org/show_bug.cgi?id=73552
461
462         Reviewed by Philippe Normand.
463
464         Do not generate gtkdoc when building projects other than WebKit. In particular, this ensures
465         that build-jsc does not try to generate gtkdoc.
466
467         * Scripts/webkitdirs.pm:
468         (buildAutotoolsProject): Only generate gtkdoc if the project is "WebKit".
469
470 2011-12-01  Kristóf Kosztyó  <kkristof@inf.u-szeged.hu>
471
472         tests_run0.txt gets clobbered when re-running failing tests
473         https://bugs.webkit.org/show_bug.cgi?id=63844
474
475         Reviewed by Dirk Pranke.
476
477         * Scripts/webkitpy/layout_tests/controllers/manager.py:
478         (Manager.results_directory):
479         * Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:
480         (AbstractWorker.__init__):
481         (_ManagerConnection.start_worker):
482         (_InlineManager.start_worker):
483         (_MultiProcessManager.start_worker):
484         (_WorkerConnection.__init__):
485         (_InlineWorkerConnection.__init__):
486         (_MultiProcessWorkerConnection.__init__):
487         * Scripts/webkitpy/layout_tests/controllers/manager_worker_broker_unittest.py:
488         (_TestWorker.__init__):
489         (_TestsMixin.test_cancel):
490         (_TestsMixin.test_done):
491         (_TestsMixin.test_unknown_message):
492         (InterfaceTest.test_managerconnection_is_abstract):
493         (InterfaceTest.test_workerconnection_is_abstract):
494         * Scripts/webkitpy/layout_tests/controllers/worker.py:
495         (Worker.__init__):
496         (Worker.safe_init):
497         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
498         (MainTest.test_retries_directory):
499
500 2011-12-01  Adam Roben  <aroben@apple.com>
501
502         Buildbot fix
503
504         * BuildSlaveSupport/build.webkit.org-config/master.cfg: Moved all of the initialization of
505         BuildmasterConfig not performed by loadBuilderConfig up to the top of the file. This makes
506         it possible for build steps to reference things like the buildbotURL property of the config.
507
508 2011-11-30  Adam Roben  <aroben@apple.com>
509
510         Use curl for downloading builds to test slaves
511
512         Buildbot's built-in file transfer capabilities are transferring files much more slowly than
513         curl does. This seems to be due to a combination of buildbot being single-threaded (and thus
514         often busy servicing web requests, etc.) and using an IPC mechanism with fairly high
515         overhead (courtesy of the Twisted framework).
516
517         Eventually we'd like to make Buildbot's built-in transferring more efficient. In the
518         meantime we'll try using curl for downloads and keep thinking about a solution for uploads.
519         This should make the test slaves quite a bit faster, and should ease the CPU load on
520         build.webkit.org a bit.
521
522         Part of <http://webkit.org/b/73484> Mac slaves take 7+ minutes to upload or download a build
523
524         Reviewed by Mark Rowe.
525
526         * BuildSlaveSupport/build.webkit.org-config/master.cfg: Added the CreateWebKitBuildDirectory
527         to Test slaves. It's run just before DownloadBuiltProduct.
528         (DownloadBuiltProduct): Changed to be a normal ShellCommand that invokes curl to perform the
529         download.
530         (CreateWebKitBuildDirectory): Added. Creates the WebKitBuild directory on a slave.
531         FileDownload used to do this for us automatically.
532
533 2011-11-21  Philippe Normand  <pnormand@igalia.com>
534
535         [GTK] enable-webaudio websetting
536         https://bugs.webkit.org/show_bug.cgi?id=69836
537
538         Reviewed by Martin Robinson.
539
540         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
541         (LayoutTestController::overridePreference): Update WebKitGTK
542         enable-webaudio setting when a layout test requests it.
543
544 2011-11-30  Ilya Tikhonovsky  <loislo@chromium.org>
545
546         Web Inspector: chromium: I'd like to add a script for running perf tests for WebInspector.
547         https://bugs.webkit.org/show_bug.cgi?id=73079
548
549         The idea is to have performance tests for WebInspector.
550         I was suggested to put these tests into PerformanceTests/inspector.
551         They produce output in a format that is suitable for chromium perf bot drawing scripts.
552
553         I'd like to reuse code for scanning folders for test files.
554         Because of the fact that original test_files.py has common and layout specific parts
555         I decided to extract the generic part and put it into webkitpy/common
556         I think the two packages with name test_files look strange but I have no idea about a better name.
557
558         Reviewed by Dirk Pranke.
559
560         * Scripts/run-inspector-perf-tests.py: Added.
561         * Scripts/webkitpy/common/find_files.py: Renamed from Tools/Scripts/webkitpy/layout_tests/port/test_files.py.
562         (find):
563         (_normalize):
564         * Scripts/webkitpy/common/find_files_unittest.py: Added.
565         (MockWinFileSystem.join):
566         (MockWinFileSystem):
567         (MockWinFileSystem.normpath):
568         (TestWinNormalize.assert_filesystem_normalizes):
569         (TestWinNormalize.test_mocked_win):
570         (TestWinNormalize):
571         (TestWinNormalize.test_win):
572         * Scripts/webkitpy/layout_tests/port/base.py:
573         (Port.tests):
574         (Port.find_test_files):
575         (Port._driver_class):
576         (is_reference_html_file):
577         (_has_supported_extension):
578         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
579         (PortTest.test_find_no_paths_specified):
580         (PortTest.test_find_one_test):
581         (PortTest.test_find_glob):
582         (PortTest.test_find_with_skipped_directories):
583         (PortTest.test_find_with_skipped_directories_2):
584         (PortTest):
585         (PortTest.test_is_test_file):
586         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
587         (_tests):
588         * Scripts/webkitpy/layout_tests/port/test.py:
589         * Scripts/webkitpy/layout_tests/port/test_files_unittest.py: Removed.
590         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
591         * Scripts/webkitpy/performance_tests/__init__.py: Added.
592         * Scripts/webkitpy/performance_tests/perftestsrunner.py: Added.
593         (PerfTestsRunner.__init__):
594         (PerfTestsRunner._parse_args):
595         (PerfTestsRunner._collect_tests._is_test_file):
596         (PerfTestsRunner._collect_tests):
597         (PerfTestsRunner.run):
598         (PerfTestsRunner._run_tests_set):
599         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py: Added.
600         (MainTest.TestPort):
601         (MainTest.TestPort.create_driver):
602         (MainTest.TestDriver.run_test):
603         (MainTest.TestDriver):
604         (MainTest.TestDriver.stop):
605         (MainTest.create_runner):
606         (MainTest.run_test):
607         (MainTest.test_run_passing_test):
608         (MainTest.test_run_silent_test):
609         (MainTest.test_run_failed_test):
610         (MainTest.test_run_tonguey_test):
611         (MainTest.test_run_timeout_test):
612         (MainTest.test_run_crash_test):
613         (MainTest.test_run_test_set):
614         (MainTest.test_collect_tests):
615         (MainTest):
616         (MainTest.test_parse_args):
617         * Scripts/webkitpy/tool/commands/rebaseline.py:
618         (OptimizeBaselines.execute):
619         (AnalyzeBaselines.execute):
620
621 2011-11-30  nduca@chromium.org  <nduca@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
622
623         [chromium] Enable threaded compositing via CCThreadProxy::hasThread only
624         https://bugs.webkit.org/show_bug.cgi?id=70838
625
626         Reviewed by James Robinson.
627
628         * DumpRenderTree/chromium/TestShell.cpp:
629         (TestShell::resetWebSettings):
630         * DumpRenderTree/chromium/TestShell.h:
631         (TestShell::threadedCompositingEnabled):
632         * DumpRenderTree/chromium/WebPreferences.cpp:
633         (WebPreferences::reset):
634         (WebPreferences::applyTo):
635         * DumpRenderTree/chromium/WebPreferences.h:
636         * DumpRenderTree/chromium/WebViewHost.cpp:
637         (WebViewHost::WebViewHost):
638         (WebViewHost::~WebViewHost):
639
640 2011-11-30  Chris Fleizach  <cfleizach@apple.com>
641
642         AX: Nodes are reporting that focus can be set when they really can't
643         https://bugs.webkit.org/show_bug.cgi?id=72791
644
645         Reviewed by Beth Dakin.
646
647         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
648         (AccessibilityUIElement::isFocusable):
649         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
650         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
651         (WTR::AccessibilityUIElement::isFocusable):
652
653 2011-11-30  Alejandro G. Castro  <alex@igalia.com>
654
655         Moved myself to the reviewers list.
656
657         * Scripts/webkitpy/common/config/committers.py:
658
659 2011-11-30  David Levin  <levin@chromium.org>
660
661         [chromium] Move didUpdateLayout from WebFrameClient to WebViewClient.
662         https://bugs.webkit.org/show_bug.cgi?id=73415
663
664         Reviewed by Darin Fisher.
665
666         * DumpRenderTree/chromium/WebViewHost.cpp:
667         (WebViewHost::didUpdateLayout): Move didUpdateLayout to account for
668         it being moved to a new interface and having the parameter removed.
669         * DumpRenderTree/chromium/WebViewHost.h: Ditto.
670
671 2011-11-30  Adam Roben  <aroben@apple.com>
672
673         Make NRWT show DRT/WTR build logs when the build fails or --verbose is passed
674
675         This will make it a lot easier to investigate build failures on the bots.
676
677         Fixes <http://webkit.org/b/71160> NRWT doesn't show build output when building DRT
678
679         Reviewed by Eric Seidel.
680
681         * Scripts/webkitpy/common/system/executive_mock.py:
682         (MockExecutive.run_command): Include the mock output in the ScriptError we raise since it
683         makes the expected output in WebKitPortTest.test_build_driver more closely mimic the output
684         seen in practice.
685
686         * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
687         (ManagerTest.test_http_locking): Pass False for the configure_logging parameter to Printer.
688         The Printer was modifying the root logger in way that would cause my new tests in
689         WebKitPort.test_build_driver to fail. The value of the configure_logging parameter doesn't
690         seem important to the functioning of this test, and passing False makes Printer not modify
691         the root logger.
692
693         * Scripts/webkitpy/layout_tests/port/webkit.py:
694         (WebKitPort._run_script): Log the output of the command at the DEBUG level so it will show
695         up when --verbose is passed but not otherwise.
696         (WebKitPort._build_driver): When an error occurs, log the error message and the script's
697         output at the ERROR level so it will always show up.
698
699         * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
700         (WebKitPortTest.test_build_driver): Test that nothing is logged in the normal, successful
701         cases. Test that the build scripts' output is logged when --verbose is passed or the build
702         fails.
703
704 2011-11-30  Adam Roben  <aroben@apple.com>
705
706         Add a way to set OutputCapture's log level
707
708         This will be used by some unit tests I'm planning to add.
709
710         Fixes <http://webkit.org/b/73469> OutputCapture can't be used to capture DEBUG messages
711
712         Reviewed by Eric Seidel.
713
714         * Scripts/webkitpy/common/system/outputcapture.py:
715         (OutputCapture.__init__): Initialize our internal logging level to INFO, which was the only
716         level we ever used before this patch.
717         (OutputCapture.set_log_level): Added. This is useful for testing what log level code that is
718         being tested uses. Sets the log level for any current or future logging handlers.
719         (OutputCapture.capture_output): Use our internal logging level instead of always using INFO.
720
721         * Scripts/webkitpy/common/system/outputcapture_unittest.py: Added.
722         (OutputCaptureTest.setUp): Create an OutputCapture to test.
723         (OutputCaptureTest.log_all_levels): Helper method to log a message at each log level.
724         (OutputCaptureTest.assertLogged): Helper method to assert that a particular set of strings
725         was logged.
726         (OutputCaptureTest.test_initial_log_level): Test that we start out at the INFO level.
727         (OutputCaptureTest.test_set_log_level): Test that set_log_level correctly modifies the log
728         level.
729
730 2011-11-29  Beth Dakin  <bdakin@apple.com>
731
732         https://bugs.webkit.org/show_bug.cgi?id=72751
733         WebKit2.MouseMoveAfterCrash API test is failing 
734
735         Reviewed by Sam Weinig.
736
737         Like DumpRenderTree, the NSWindow should act as an active window.
738         * TestWebKitAPI/mac/PlatformWebViewMac.mm:
739         (-[ActiveOffscreenWindow isKeyWindow]):
740         (TestWebKitAPI::PlatformWebView::PlatformWebView):
741
742 2011-11-30  Gustavo Noronha Silva  <gns@gnome.org>
743
744         Add step to update gtk dependencies to the buildbot
745         https://bugs.webkit.org/show_bug.cgi?id=73455
746
747         Reviewed by Martin Robinson.
748
749         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
750
751 2011-11-30  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
752
753         [Qt] Add a fullscreen option to MiniBrowser.
754         https://bugs.webkit.org/show_bug.cgi?id=73445
755
756         Reviewed by Noam Rosenthal.
757
758         This bypasses the compositor on the N9 to increase performances
759         and remove the huge useless gray bar part of the window frame
760         at the bottom.
761
762         * MiniBrowser/qt/BrowserWindow.cpp:
763         (BrowserWindow::BrowserWindow):
764         * MiniBrowser/qt/MiniBrowserApplication.cpp:
765         (printHelp):
766         (MiniBrowserApplication::handleUserOptions):
767         * MiniBrowser/qt/MiniBrowserApplication.h:
768         (WindowOptions::setStartFullScreen):
769         (WindowOptions::startFullScreen):
770
771 2011-11-30  Martin Robinson  <mrobinson@igalia.com>
772
773         [GTK] Add an initial jhbuild setup which installs fonts into the WebKitBuild
774         https://bugs.webkit.org/show_bug.cgi?id=73425
775
776         Reviewed by Gustavo Noronha Silva.
777
778         Add initial jhbuild support to the GTK+ port. update-webkitgtk-libs will
779         ensure that the jhbuild root is up-to-date. Currently the only module is
780         the font module.
781
782         * Scripts/update-webkitgtk-libs: Added.
783         * gtk/common.py: Added a helper to get the number of CPUs.
784         * gtk/jhbuild.modules: Added.
785         * gtk/jhbuildrc: Added.
786
787 2011-11-30  Simon Hausmann  <simon.hausmann@nokia.com>
788
789         [Qt] Remove dependency of Qt DRT on JavaScriptCore.
790
791         Reviewed by Csaba Osztrogonác.
792
793         * DumpRenderTree/WorkQueue.cpp: Include the correct header file we're using anyway,
794         instead of one that pulls in JavaScriptCore headers.
795         * DumpRenderTree/qt/DumpRenderTree.pro: There's no need to pull in the JSC headers
796         with load(javascriptcore).
797
798 2011-11-30  Sheriff Bot  <webkit.review.bot@gmail.com>
799
800         Unreviewed, rolling out r101440 and r101442.
801         http://trac.webkit.org/changeset/101440
802         http://trac.webkit.org/changeset/101442
803         https://bugs.webkit.org/show_bug.cgi?id=73429
804
805         multiple crashes on layout tests (Requested by hayato on
806         #webkit).
807
808         * DumpRenderTree/chromium/TestShell.cpp:
809         (TestShell::resetWebSettings):
810         * DumpRenderTree/chromium/TestShell.h:
811         * DumpRenderTree/chromium/WebPreferences.cpp:
812         (WebPreferences::reset):
813         (WebPreferences::applyTo):
814         * DumpRenderTree/chromium/WebPreferences.h:
815         * DumpRenderTree/chromium/WebViewHost.cpp:
816         (WebViewHost::WebViewHost):
817         (WebViewHost::~WebViewHost):
818
819 2011-11-30  Fady Samuel  <fsamuel@chromium.org>
820
821         [Chromium] Fix broken DRT build for Aura Linux
822         https://bugs.webkit.org/show_bug.cgi?id=72667
823
824         Reviewed by Tony Chang.
825
826         DRT now builds for Aura Linux. This, more or less, shares the same code as Android.
827
828         The following changes have been made:
829
830           1. Renamed TestShellAndroid to TestShellLinux.
831           2. Stub code moved added in TestShellStub that will only compile on non-GTK Linux builds.
832           3. Code common to Gtk, Aura, and Android moved to TestShellLinux.
833
834         * DumpRenderTree/DumpRenderTree.gypi:
835         * DumpRenderTree/chromium/EventSender.cpp:
836         (EventSender::keyDown):
837         * DumpRenderTree/chromium/TestShellAndroid.cpp: Removed.
838         * DumpRenderTree/chromium/TestShellGtk.cpp:
839         * DumpRenderTree/chromium/TestShellLinux.cpp: Copied from Tools/DumpRenderTree/chromium/TestShellGtk.cpp.
840         (AlarmHandler):
841         (TestShell::waitTestFinished):
842         (setupFontconfig):
843         (platformInit):
844         * DumpRenderTree/chromium/TestShellStub.cpp: Added.
845         (checkLayoutTestSystemDependencies):
846         (openStartupDialog):
847
848 2011-11-30  Fady Samuel  <fsamuel@chromium.org>
849
850         [Chromium] Set Result Before Early Exit for Fixed Layout Methods in LayoutTestController
851         https://bugs.webkit.org/show_bug.cgi?id=73328
852
853         Reviewed by Kent Tamura.
854
855         * DumpRenderTree/chromium/LayoutTestController.cpp:
856         (LayoutTestController::enableFixedLayoutMode):
857         (LayoutTestController::setFixedLayoutSize):
858
859 2011-11-29  Hayato Ito  <hayato@chromium.org>
860
861         Skip writing the result of diff_image since non-chromium ports don't implement diff_image.
862         https://bugs.webkit.org/show_bug.cgi?id=73381
863
864         Reviewed by Ryosuke Niwa.
865
866         This is a quick fix for the breakage of tests on non-chromium port.
867         We should implement diff_image later on non-chromium ports.
868
869         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
870         (write_test_result):
871
872 2011-11-29  Balazs Ankes  <Ankes.Balazs@stud.u-szeged.hu>
873
874         [NRWT] Fix --platform=qt-5.0 --new-baseline combo
875         https://bugs.webkit.org/show_bug.cgi?id=72489
876
877         Reviewed by Eric Seidel.
878
879         Before the this fix always added "qt" option for the option list
880         * Scripts/run-webkit-tests:
881         * Scripts/webkitpy/layout_tests/port/qt.py:
882
883 2011-11-29  David Levin  <levin@chromium.org>
884
885         Add a way to revert a variable to its previous value after leaving a scope.
886         https://bugs.webkit.org/show_bug.cgi?id=73371
887
888         Reviewed by Adam Barth.
889
890         * DumpRenderTree/ForwardingHeaders/wtf/TemporarilyChange.h: Added.
891         * TestWebKitAPI/TestWebKitAPI.gypi: Added test file to the build.
892         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
893         * TestWebKitAPI/win/TestWebKitAPI.vcproj: Ditto.
894         * TestWebKitAPI/Tests/WTF/TemporarilyChange.cpp: Added.
895         (TestWebKitAPI::TEST): Added a test for TemporarilyChange.
896
897 2011-11-28  Kentaro Hara  <haraken@chromium.org>
898
899         Implement [Supplemental] IDL and support it in run-bindings-tests
900         https://bugs.webkit.org/show_bug.cgi?id=73162
901
902         Reviewed by Adam Barth.
903
904         run-bindings-tests supports the [Supplemental] IDL in the following way.
905             (1) It creates a file |x| listing all IDL files.
906             (2) It generates a supplemental dependency file |y| using resolve-supplemental.pl and |x|.
907             (3) For each IDL file |z|, it runs generate-bindings.pl with |y|.
908                 Then, generate-bindings.pl generates .h and .cpp files for the IDL file |z|,
909                 including all attributes in IDL files that are supplementing the IDL file |z|.
910
911         * Scripts/run-bindings-tests:
912         (generate_from_idl):
913         (generate_supplemental_dependency):
914         (detect_changes):
915         (run_tests):
916         (main):
917
918 2011-11-18  Nat Duca  <nduca@chromium.org>
919
920         [chromium] Enable threaded compositing via CCThreadProxy::hasThread only
921         https://bugs.webkit.org/show_bug.cgi?id=70838
922
923         Reviewed by James Robinson.
924
925         * DumpRenderTree/chromium/TestShell.cpp:
926         (TestShell::resetWebSettings):
927         * DumpRenderTree/chromium/TestShell.h:
928         (TestShell::threadedCompositingEnabled):
929         * DumpRenderTree/chromium/WebPreferences.cpp:
930         (WebPreferences::reset):
931         (WebPreferences::applyTo):
932         * DumpRenderTree/chromium/WebPreferences.h:
933         * DumpRenderTree/chromium/WebViewHost.cpp:
934         (WebViewHost::WebViewHost):
935         (WebViewHost::~WebViewHost):
936
937 2011-11-29  Ojan Vafai  <ojan@chromium.org>
938
939         List of builders in the flakiness dashboard is out of date
940         https://bugs.webkit.org/show_bug.cgi?id=73347
941
942         Reviewed by Adam Barth.
943
944         The chromium gpu bots no longer run layout tests, so kill that
945         group entirely.
946
947         * TestResultServer/static-dashboards/builders.js:
948         * TestResultServer/static-dashboards/dashboard_base.js:
949
950 2011-11-29  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
951
952         [Qt] Don't hard-code the list of WebKit2 generated sources
953
954         The generated sources are... wait for it... generated. So
955         use the generator itself to figure out which sources we need
956         to compile.
957
958         Reviewed by Simon Hausmann.
959
960         * qmake/mkspecs/features/default_post.prf:
961
962 2011-11-29  Martin Robinson  <mrobinson@igalia.com>
963
964         [GTK] Add a method to detect 'make dist' errors without running 'make dist'
965         https://bugs.webkit.org/show_bug.cgi?id=73216
966
967         Reviewed by Philippe Normand.
968
969         Add a script that tries to sniff out 'make dist' problems without running
970         'make dist.' 'make distcheck' takes a very long time to run and this should
971         reduce the amount of times it needs to be run consecutively.
972
973         * gtk/common.py:
974         (get_build_path.is_valid_build_directory): Guess the source directory
975         by the existence of the GNUmakefile instead of the .libs directory. This
976         allows one to run the script after running autogen.sh but before fully
977         building.
978         * gtk/find-make-dist-errors: Added.
979
980 2011-11-29  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
981
982         [Qt] Remove use of internal headers in the MiniBrowser
983
984         Reviewed by Simon Hausmann.
985
986         * MiniBrowser/qt/MiniBrowser.pro:
987
988 2011-11-29  Simon Hausmann  <simon.hausmann@nokia.com>
989
990         [Qt] Fix debug-shlib build without webkit2
991
992         Reviewed by Tor Arne Vestbø.
993
994         * qmake/mkspecs/features/qtwebkit.prf: Respect no_webkit2.
995
996 2011-11-28  Csaba Osztrogonác  <ossy@webkit.org>
997
998         [Qt][WK2] Unreviewed buildfix after r101307.
999
1000         * qmake/mkspecs/features/webkit2.prf: Add missing includepath.
1001
1002 2011-11-29  Roland Steiner  <rolandsteiner@chromium.org>
1003
1004         <style scoped>: add ENABLE(STYLE_SCOPED) flag to WebKit
1005         https://bugs.webkit.org/show_bug.cgi?id=72848
1006
1007         Add option to build-webkit.
1008
1009         Reviewed by Dimitri Glazkov.
1010
1011         * Scripts/build-webkit:
1012
1013 2011-11-28  Ojan Vafai  <ojan@chromium.org>
1014
1015         gtest normalization in the test results server is sometimes wrong
1016         https://bugs.webkit.org/show_bug.cgi?id=73262
1017
1018         Reviewed by Tony Chang.
1019
1020         If a gtest has it's modified changed (e.g. add FLAKY_) then it will have two
1021         entries in the incremental JSON, one of the entries will have the correct data
1022         from the run and the other will have dummy no-data values. Make sure to
1023         always pick the one with real data.
1024
1025         * TestResultServer/model/jsonresults.py:
1026         (JsonResults._remove_gtest_modifiers):
1027         * TestResultServer/model/jsonresults_unittest.py:
1028         (JsonResultsTest.test_remove_gtest_modifiers):
1029
1030 2011-11-28  Ojan Vafai  <ojan@chromium.org>
1031
1032         Some of the results.json files have results/times entries at the directory level
1033         https://bugs.webkit.org/show_bug.cgi?id=73261
1034
1035         Reviewed by Tony Chang.
1036
1037         This is just a bug that got introduced in a temporary push of the results server.
1038         This patch repairs the broken files. After all the bots have cycled, we can simplify
1039         this code to just assert that results/times are not at the directory level.
1040
1041         Also, when catching exceptions, log the full stacktrace.
1042
1043         * TestResultServer/model/jsonresults.py:
1044         (_is_directory):
1045         (JsonResults._load_json):
1046         (JsonResults._merge_tests):
1047         (JsonResults.merge):
1048         * TestResultServer/model/jsonresults_unittest.py:
1049         (JsonResultsTest.test_merge_directory_hierarchy_extra_results_and_times):
1050
1051 2011-11-28  Tony Chang  <tony@chromium.org>
1052
1053         ews bots should pass --force to update-webkit-chromium
1054         https://bugs.webkit.org/show_bug.cgi?id=73230
1055
1056         Reviewed by Adam Barth.
1057
1058         This makes it less likely for gclient changes to break the bots (e.g.,
1059         if a DEPS repository moves or is switched to a branch).
1060
1061         Also pass --force when using |build-webkit --update-chromium| since this
1062         appears to only be used by the bots.
1063
1064         Take 2: Add Options.non_interactive to update.py's options() method.
1065
1066         * Scripts/update-webkit:
1067         * Scripts/webkitdirs.pm:
1068         (determineIsChromium): Add --force-update to update-webkit --chromium.
1069         (forceChromiumUpdate):
1070         (buildChromium): Pass --force to update-webkit-chromium.
1071         * Scripts/webkitpy/tool/steps/update.py:
1072         (Update.run): Add --force-update if non-interactive (i.e., bots).
1073         * Scripts/webkitpy/tool/steps/update_unittest.py:
1074
1075 2011-11-28  Tony Chang  <tony@chromium.org>
1076
1077         Revert r101279, broke the ews and cq bots.
1078
1079         * Scripts/update-webkit:
1080         * Scripts/webkitdirs.pm:
1081         (determineIsChromium):
1082         (buildChromium):
1083         * Scripts/webkitpy/common/config/ports.py:
1084         (WebKitPort.update_webkit_command):
1085         (ChromiumPort.update_webkit_command):
1086         * Scripts/webkitpy/common/config/ports_mock.py:
1087         (MockPort.update_webkit_command):
1088         * Scripts/webkitpy/tool/steps/update.py:
1089         * Scripts/webkitpy/tool/steps/update_unittest.py: Removed.
1090
1091 2011-11-28  Ojan Vafai  <ojan@chromium.org>
1092
1093         testlistjson on the test results server doesn't understand hierarchical results format
1094         https://bugs.webkit.org/show_bug.cgi?id=73246
1095
1096         Reviewed by Tony Chang.
1097
1098         * TestResultServer/model/jsonresults.py:
1099         (JsonResults._delete_results_and_times):
1100         Instead of just getting the top-level keys, we now walk the tests tree and
1101         delete the results and times values.
1102
1103         * TestResultServer/model/jsonresults_unittest.py:
1104         Simplify the test harness to take in the same JSON format for the tests
1105         that the actual results.json uses instead of something very similar but
1106         needlessly different. This also allows for testing the broken case of
1107         results and times values being at non-leaf level.
1108
1109 2011-11-28  Tony Chang  <tony@chromium.org>
1110
1111         ews bots should pass --force to update-webkit-chromium
1112         https://bugs.webkit.org/show_bug.cgi?id=73230
1113
1114         Reviewed by Adam Barth.
1115
1116         This makes it less likely for gclient changes to break the bots (e.g.,
1117         if a DEPS repository moves or is switched to a branch).
1118
1119         Also pass --force when using |build-webkit --update-chromium| since this
1120         appears to only be used by the bots.
1121
1122         * Scripts/update-webkit:
1123         * Scripts/webkitdirs.pm:
1124         (determineIsChromium): Add --force-update to update-webkit --chromium.
1125         (forceChromiumUpdate):
1126         (buildChromium): Pass --force to update-webkit-chromium.
1127         * Scripts/webkitpy/tool/steps/update.py:
1128         (Update.run): Add --force-update if non-interactive (i.e., bots).
1129         * Scripts/webkitpy/tool/steps/update_unittest.py:
1130
1131 2011-11-28  Michael Saboff  <msaboff@apple.com>
1132
1133         Fixed help message for --exclude-kraken to say that
1134         it excludes Kraken and not SunSpider.
1135
1136         Rubber-stamped by Filip Pizlo.
1137
1138         * Scripts/bencher:
1139
1140 2011-11-28  Sheriff Bot  <webkit.review.bot@gmail.com>
1141
1142         Unreviewed, rolling out r101273.
1143         http://trac.webkit.org/changeset/101273
1144         https://bugs.webkit.org/show_bug.cgi?id=73244
1145
1146         multiple test failures and timeouts (Requested by tony^work on
1147         #webkit).
1148
1149         * DumpRenderTree/DumpRenderTree.gypi:
1150         * DumpRenderTree/chromium/EventSender.cpp:
1151         (EventSender::keyDown):
1152         * DumpRenderTree/chromium/TestShellAndroid.cpp: Copied from Tools/DumpRenderTree/chromium/TestShellGtk.cpp.
1153         (AlarmHandler):
1154         (TestShell::waitTestFinished):
1155         (platformInit):
1156         (openStartupDialog):
1157         (checkLayoutTestSystemDependencies):
1158         * DumpRenderTree/chromium/TestShellGtk.cpp:
1159         (AlarmHandler):
1160         (setupFontconfig):
1161         (TestShell::waitTestFinished):
1162         (platformInit):
1163         * DumpRenderTree/chromium/TestShellLinux.cpp: Removed.
1164         * DumpRenderTree/chromium/TestShellStub.cpp: Removed.
1165
1166 2011-11-28  John Yani  <vanuan@gmail.com>
1167
1168         new-run-webkit-tests is locale dependent
1169         https://bugs.webkit.org/show_bug.cgi?id=68691
1170
1171         Reviewed and modified by Eric Seidel.
1172
1173         This is a simpler version of John's patch which I'm landing.
1174         This just engages the hacks from the Host constructor on a global
1175         basis.
1176
1177         * Scripts/webkitpy/common/host.py:
1178         (Host.__init__):
1179         (Host._engage_awesome_locale_hacks):
1180
1181 2011-11-28  Fady Samuel  <fsamuel@chromium.org>
1182
1183         [Chromium] Fix broken DRT build for Aura Linux
1184         https://bugs.webkit.org/show_bug.cgi?id=72667
1185
1186         Reviewed by Tony Chang.
1187
1188         DRT now builds for Aura Linux. This, more or less, shares the same code as Android.
1189
1190         The following changes have been made:
1191
1192           1. Renamed TestShellAndroid to TestShellLinux.
1193           2. Stub code moved added in TestShellStub that will only compile on non-GTK Linux builds.
1194           3. Code common to Gtk, Aura, and Android moved to TestShellLinux.
1195
1196         * DumpRenderTree/DumpRenderTree.gypi:
1197         * DumpRenderTree/chromium/EventSender.cpp:
1198         (EventSender::keyDown):
1199         * DumpRenderTree/chromium/TestShellAndroid.cpp: Removed.
1200         * DumpRenderTree/chromium/TestShellGtk.cpp:
1201         * DumpRenderTree/chromium/TestShellLinux.cpp: Copied from Tools/DumpRenderTree/chromium/TestShellGtk.cpp.
1202         (AlarmHandler):
1203         (TestShell::waitTestFinished):
1204         (setupFontconfig):
1205         (platformInit):
1206         * DumpRenderTree/chromium/TestShellStub.cpp: Added.
1207         (checkLayoutTestSystemDependencies):
1208         (openStartupDialog):
1209
1210 2011-11-28  Eric Seidel  <eric@webkit.org>
1211
1212         Add Environment object to Host and fix the GCC smartquotes trouble seen on the commit-queue
1213         https://bugs.webkit.org/show_bug.cgi?id=71983
1214
1215         Reviewed by Adam Barth.
1216
1217         We'll add more code to Environment overtime,
1218         allowing us to mock out more of our direct interactions with os.environ.
1219
1220         This patch also makes run_command print the passed in environment.
1221
1222         * Scripts/webkitpy/common/host_mock.py:
1223         * Scripts/webkitpy/common/system/environment.py: Copied from Tools/Scripts/webkitpy/tool/steps/build.py.
1224         * Scripts/webkitpy/common/system/environment_mock.py: Copied from Tools/Scripts/webkitpy/tool/steps/build.py.
1225         * Scripts/webkitpy/common/system/environment_unittest.py: Copied from Tools/Scripts/webkitpy/tool/steps/build.py.
1226         * Scripts/webkitpy/common/system/executive.py:
1227         * Scripts/webkitpy/common/system/executive_mock.py:
1228         * Scripts/webkitpy/layout_tests/port/webkit.py:
1229         * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
1230         * Scripts/webkitpy/tool/commands/download_unittest.py:
1231         * Scripts/webkitpy/tool/steps/build.py:
1232
1233 2011-11-28  Simon Hausmann  <simon.hausmann@nokia.com>
1234
1235         [Qt] Build system fixes against V8.
1236
1237         Reviewed by Tor Arne Vestbø.
1238
1239         * qmake/mkspecs/features/webcore.prf: Get rid of old v8 cruft.
1240         * qmake/mkspecs/features/wtf.prf: If requested, pull in v8 from Qt and configure
1241         WTF accordingly to use v8. (WTF in the implementation needs it as well as users of WTF)
1242
1243 2011-11-28  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1244
1245         Make sure the useFixedLayout feature is consistently handled
1246         https://bugs.webkit.org/show_bug.cgi?id=73212
1247
1248         Reviewed by Simon Hausmann.
1249
1250         The web page parameters are set to our Qt defaults and are now altered
1251         in the WebKitTestRunner.
1252
1253         * WebKitTestRunner/qt/PlatformWebViewQt.cpp:
1254         (WTR::WrapperWindow::WrapperWindow):
1255
1256 2011-11-28  Simon Hausmann  <simon.hausmann@nokia.com>
1257
1258         [Qt] WTF should be built as separate static library
1259         https://bugs.webkit.org/show_bug.cgi?id=73201
1260
1261         Reviewed by Tor Arne Vestbø.
1262
1263         * DumpRenderTree/qt/DumpRenderTree.pro: Require wtf.
1264         * MiniBrowser/qt/BrowserWindow.cpp: Remove unnecessary config.h inclusion and
1265         thus wtf dependency.
1266         * WebKitTestRunner/InjectedBundle/Target.pri: Require wtf.
1267         * WebKitTestRunner/Target.pri: Ditto.
1268         * qmake/mkspecs/features/default_post.prf: When re-ordering the static libs
1269         consider wtf, too.
1270         * qmake/mkspecs/features/javascriptcore.prf: Remove WTF specific build stuff,
1271         moved into wtf.prf.
1272         * qmake/mkspecs/features/qtwebkit.prf: For debug builds with shared libs, also
1273         link in libwtf.
1274         * qmake/mkspecs/features/wtf.prf: Added. Stuff needed for building and using WTF.
1275
1276 2011-11-28  Kentaro Hara  <haraken@chromium.org>
1277
1278         run-bindings-tests shows diff error for a newly added binding test
1279         https://bugs.webkit.org/show_bug.cgi?id=73179
1280
1281         Reviewed by Adam Barth.
1282
1283         Currently, when we add a new binding test, say bindings/scripts/test/TestSupplemental.idl,
1284         run-bindings-tests just shows diff error because reference files
1285         (i.e. {V8,JS,...}TestSupplemental.h and {V8,JS,...}TestSupplemental.cpp) do not yet exist:
1286
1287             FAIL: (V8) V8TestSupplemental.h
1288             diff: WebCore/bindings/scripts/test/V8/V8TestSupplemental.h: No such file or directory
1289
1290         Instead, this patch treats a non-existent reference file as an empty file and
1291         shows the result of the newly added binding test, like this:
1292
1293             FAIL: (V8) V8TestSupplemental.h
1294             --- WebCore/bindings/scripts/test/V8/V8TestSupplemental.h       1970-01-01 09:00:00.000000000 +0900
1295             +++ /tmp/tmpmX2i2F/V8TestSupplemental.h 2011-11-28 11:08:34.150707677 +0900
1296             @@ -0,0 +1,84 @@
1297             +/*
1298             +    This file is part of the WebKit open source project.
1299             +    This file has been generated by generate-bindings.pl. DO NOT MODIFY!
1300             +
1301             (omitted)
1302
1303         * Scripts/run-bindings-tests:
1304         (detect_changes): Just added an -N option to the diff command.
1305
1306 2011-11-28  Martin Robinson  <mrobinson@igalia.com>
1307
1308         [Gtk][gtkdoc] Syntax error in Tools/gtk/generate-gtkdoc
1309         https://bugs.webkit.org/show_bug.cgi?id=73165
1310
1311         Reviewed by Philippe Normand.
1312
1313         Fix some syntax errors in this script and remove an unused variable.
1314
1315         * gtk/generate-gtkdoc:
1316         (get_webkit2_options.src_path): 
1317         (get_webkit2_options):
1318         (get_webkit1_options.src_path):
1319
1320 2011-11-26  Kevin Ollivier  <kevino@theolliviers.com>
1321
1322         [wx] Unreviewed build fix. Enable the inspector.
1323         
1324         * waf/build/settings.py:
1325
1326 2011-11-26  Martin Robinson  <mrobinson@igalia.com>
1327
1328         Try to fix the build after r101174.
1329
1330         * gtk/generate-gtkdoc: Properly handle empty PKG_CONFIG_PATHs.
1331
1332 2011-11-17  Martin Robinson  <mrobinson@igalia.com>
1333
1334         [GTK] Integrate build-gtkdoc into build-webkit and make
1335         https://bugs.webkit.org/show_bug.cgi?id=72626
1336
1337         Reviewed by Philippe Normand.
1338
1339         * GNUmakefile.am: Added support for new scripts and "make docs".
1340         * Scripts/webkitdirs.pm: Call generate-gtkdoc when building.
1341         (buildAutotoolsProject):
1342         * gtk/generate-gtkdoc: Added.
1343         * gtk/gtkdoc.py: Renamed from Source/WebKit2/UIProcess/API/gtk/docs/gtkdoc.py.
1344
1345 2011-11-25  Ádám Kallai  <Kallai.Adam@stud.u-szeged.hu>
1346
1347         [Qt] Add support for using OWRT with Qt5
1348         https://bugs.webkit.org/show_bug.cgi?id=72947
1349
1350         Add qt-5.0 platform and don't pass -graphicssystem to QtTestBrowser if using Qt5.
1351
1352         Reviewed by Csaba Osztrogonác.
1353
1354         * Scripts/old-run-webkit-tests:
1355
1356 2011-11-25  Yury Semikhatsky  <yurys@chromium.org>
1357
1358         [Chromium] Web Inspector: get rid of WebDevToolsFrontendClient::sendFrontendLoaded method
1359         https://bugs.webkit.org/show_bug.cgi?id=73126
1360
1361         No need to have a separate client call for this. The front-end can store messages
1362         which arrive before front-end loaded and dispatch them later. This happens in layout
1363         tests only by the way as all other messages should be initiated by the front-end code.
1364
1365         Reviewed by Pavel Feldman.
1366
1367         * DumpRenderTree/chromium/DRTDevToolsAgent.cpp:
1368         * DumpRenderTree/chromium/DRTDevToolsAgent.h:
1369         * DumpRenderTree/chromium/DRTDevToolsClient.cpp:
1370         * DumpRenderTree/chromium/DRTDevToolsClient.h:
1371
1372 2011-11-24  Kentaro Hara  <haraken@chromium.org>
1373
1374         Replace subprocess.call() with subprocess.Popen()
1375         https://bugs.webkit.org/show_bug.cgi?id=73105
1376
1377         Reviewed by Adam Barth.
1378
1379         Currently, the stdout and stderr of the child processes of run-bindings-tests
1380         are mixed (or even gone away) with the stdout and stderr of run-bindings-tests itself.
1381         This is the problem of subprocess.call(), which does not synchronize the stdout and stderr
1382         between a parent process and a child process. This patch replaces subprocess.call() with
1383         subprocess.Popen() and synchronizes the stdout and stderr between them.
1384         This patch also makes output messages of run-bindings-tests more readable.
1385
1386         With this patch, the output messages of run-bindings-tests look like as follows:
1387
1388             PASS: (CPP) WebDOMTestObj.h
1389             PASS: (CPP) WebDOMTestObj.cpp
1390             FAIL: (CPP) WebDOMTestInterface.h
1391             --- Source/WebCore/bindings/scripts/test/CPP/WebDOMTestInterface.h      2011-11-25 13:34:09.313516268 +0900
1392             +++ /tmp/tmpDAV87G/WebDOMTestInterface.h        2011-11-25 13:44:42.712946812 +0900
1393             @@ -23,7 +23,7 @@
1394              #ifndef WebDOMTestInterface_h
1395              #define WebDOMTestInterface_h
1396
1397             -#if ENABLE(Condition1) || ENABLE(Condition2)
1398             +#if ENABLE(Condition1) || ENABLE(Condition3)
1399
1400              #include <WebDOMObject.h>
1401              #include <WebDOMString.h>
1402              @@ -53,5 +53,5 @@
1403              WebDOMTestInterface toWebKit(WebCore::TestInterface*);
1404
1405              #endif
1406             -#endif // ENABLE(Condition1) || ENABLE(Condition2)
1407             +#endif // ENABLE(Condition1) || ENABLE(Condition3)
1408             PASS: (CPP) WebDOMFloat64Array.cpp
1409             PASS: (CPP) WebDOMFloat64Array.h
1410
1411             Some tests FAIL! (To update the reference files, execute "run-bindings-tests --reset-results")
1412
1413         * Scripts/run-bindings-tests:
1414         (generate_from_idl):
1415         (detect_changes):
1416         (run_tests):
1417         (main):
1418
1419 2011-11-24  Kentaro Hara  <haraken@chromium.org>
1420
1421         Fix the current working directory of run-bindings-tests
1422         https://bugs.webkit.org/show_bug.cgi?id=73106
1423
1424         Reviewed by Adam Barth.
1425
1426         Currently, run-bindings-tests outputs the following error
1427         (although it outputs "all tests passed!" in the end):
1428
1429             Testing the ObjC generator on TestObj.idl
1430             gcc: WebCore/bindings/objc/PublicDOMInterfaces.h: No such file or directory
1431             gcc: warning: '-x objective-c' after last input file has no effect
1432             gcc: no input files
1433
1434         This is because CodeGeneratorObjC.pm assumes that the current working directory
1435         is WebKit/Source/, but run-bindings-tests sets the current working directory to WebKit/.
1436         Thus, this patch changes it to WebKit/Source/.
1437
1438         * Scripts/run-bindings-tests:
1439         (generate_from_idl):
1440         (main):
1441
1442 2011-11-24  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1443
1444         [Qt] Get rid of the buildDirForSource() function in the build system
1445
1446         At some point the plan was to allow for running qmake on sub-trees
1447         of the sources, into the top level build directory, but this is no
1448         longer possible, so no reason to keep the convenience function around.
1449
1450         Reviewed by Simon Hausmann.
1451
1452         * WebKitTestRunner/DerivedSources.pri:
1453         * WebKitTestRunner/InjectedBundle/DerivedSources.pri:
1454         * qmake/mkspecs/features/default_post.prf:
1455         * qmake/mkspecs/features/default_pre.prf:
1456         * qmake/mkspecs/features/functions.prf:
1457         * qmake/mkspecs/features/javascriptcore.prf:
1458         * qmake/mkspecs/features/webcore.prf:
1459         * qmake/mkspecs/features/webkit2.prf:
1460
1461 2011-11-23  Sheriff Bot  <webkit.review.bot@gmail.com>
1462
1463         Unreviewed, rolling out r101107.
1464         http://trac.webkit.org/changeset/101107
1465         https://bugs.webkit.org/show_bug.cgi?id=73062
1466
1467         Breaks the commit-queue (Requested by abarth on #webkit).
1468
1469         * Scripts/webkitpy/common/host.py:
1470         (Host._engage_awesome_windows_hacks):
1471         * Scripts/webkitpy/common/host_mock.py:
1472         (MockHost.__init__):
1473         * Scripts/webkitpy/common/system/environment.py: Removed.
1474         * Scripts/webkitpy/common/system/environment_unittest.py: Removed.
1475         * Scripts/webkitpy/common/system/executive.py:
1476         (Executive._run_command_with_teed_output):
1477         (Executive.run_and_throw_if_fail):
1478         * Scripts/webkitpy/common/system/executive_mock.py:
1479         (MockExecutive.run_and_throw_if_fail):
1480         (MockExecutive.run_command):
1481         * Scripts/webkitpy/layout_tests/port/webkit.py:
1482         (WebKitPort._driver_build_script_name):
1483         (WebKitPort._run_script):
1484         (WebKitPort._build_driver):
1485         * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
1486         (test_build_driver):
1487         * Scripts/webkitpy/tool/commands/download_unittest.py:
1488         * Scripts/webkitpy/tool/steps/build.py:
1489         (Build.build):
1490
1491 2011-11-23  Ojan Vafai  <ojan@chromium.org>
1492
1493         Unreviewed, rolling out r101110.
1494         http://trac.webkit.org/changeset/101110
1495         https://bugs.webkit.org/show_bug.cgi?id=73057
1496
1497         The bots have now cycled and this patch is no longer needed.
1498
1499         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1500         (Manager._upload_json_files):
1501
1502 2011-11-23  Ojan Vafai  <ojan@chromium.org>
1503
1504         Temporarily save the incremental results json in order to identify bug
1505         https://bugs.webkit.org/show_bug.cgi?id=73057
1506
1507         Reviewed by Dean Jackson.
1508
1509         The test results server needed to be rolled back from tip of tree
1510         due to a JSON merging bug. It's hard to identify what the bug is without
1511         the raw data.
1512
1513         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1514         (Manager._upload_json_files):
1515
1516 2011-11-23  Ojan Vafai  <ojan@chromium.org>
1517
1518         Merging two version 4 results hits an error in the test results server
1519         https://bugs.webkit.org/show_bug.cgi?id=73042
1520
1521         Reviewed by Adam Barth.
1522
1523         The old code assumed that if the aggregate results value was not a leaf
1524         value that the incremental results would exist, which is just totally
1525         wrong. Added a test for that case as well.
1526
1527         * TestResultServer/model/jsonresults.py:
1528         (JsonResults._merge_tests):
1529         * TestResultServer/model/jsonresults_unittest.py:
1530         (JsonResultsTest.test_merge_build_directory_hierarchy_old_version):
1531         (JsonResultsTest.test_merge_build_directory_hierarchy):
1532
1533 2011-11-23  Eric Seidel  <eric@webkit.org>
1534
1535         Add Environment object to Host and fix the GCC smartquotes trouble seen on the commit-queue
1536         https://bugs.webkit.org/show_bug.cgi?id=71983
1537
1538         Reviewed by Adam Barth.
1539
1540         We'll add more code to Environment overtime,
1541         allowing us to mock out more of our direct interactions with os.environ.
1542
1543         This patch also makes run_command print the passed in environment.
1544
1545         * Scripts/webkitpy/common/host_mock.py:
1546         * Scripts/webkitpy/common/system/environment.py: Copied from Tools/Scripts/webkitpy/tool/steps/build.py.
1547         * Scripts/webkitpy/common/system/environment_mock.py: Copied from Tools/Scripts/webkitpy/tool/steps/build.py.
1548         * Scripts/webkitpy/common/system/environment_unittest.py: Copied from Tools/Scripts/webkitpy/tool/steps/build.py.
1549         * Scripts/webkitpy/common/system/executive.py:
1550         * Scripts/webkitpy/common/system/executive_mock.py:
1551         * Scripts/webkitpy/layout_tests/port/webkit.py:
1552         * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
1553         * Scripts/webkitpy/tool/commands/download_unittest.py:
1554         * Scripts/webkitpy/tool/steps/build.py:
1555
1556 2011-11-23  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1557
1558         [Qt] Re-generate QtWebKit API forwarding headers when API changes
1559
1560         The forwarding headers are generated by syncqt, and syncqt is run by qmake,
1561         so we need sync.profile to live in the same directory as the project file
1562         that will be touched when adding/removing API (api.pri in our case).
1563
1564         Since the WebKit2 APIs live in a separate static library, we have to
1565         add the project file for WebKit2 as a dependency of the api.pri file
1566         as well, so that any changes to the WebKit2 API will still trigger a
1567         run of qmake (and then syncqt).
1568
1569         Lastly, we use the new QMAKE_SYNCQT_OUTDIR variable in Qt 5 to ensure
1570         that the forwarding headers are still generated in the root build dir,
1571         not in the Source dir along with the internal forwarding headers.
1572
1573         Reviewed by Andreas Kling.
1574
1575         * qmake/mkspecs/features/default_pre.prf:
1576         * qmake/mkspecs/features/functions.prf:
1577
1578 2011-11-23  Johnny Ding  <jnd@chromium.org>
1579
1580         Set right default value to baseURL in LayoutTestController::queueLoadHTMLString.
1581         https://bugs.webkit.org/show_bug.cgi?id=72950
1582
1583         Reviewed by Tony Chang.
1584
1585         * DumpRenderTree/chromium/LayoutTestController.cpp:
1586         (LayoutTestController::queueLoadHTMLString):
1587
1588 2011-11-23  Adam Barth  <abarth@webkit.org>
1589
1590         garden-o-matic should display a message if it can't find results to display
1591         https://bugs.webkit.org/show_bug.cgi?id=72991
1592
1593         Reviewed by Dimitri Glazkov.
1594
1595         Not all failures (e.g., TIMEOUT) have results that we can display.
1596         This patch adds a short message so that the user can see that we're
1597         done trying to load the results.
1598
1599         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
1600         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:
1601         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:
1602
1603 2011-11-23  Adam Barth  <abarth@webkit.org>
1604
1605         garden-o-matic should explain more clearly what the builder lists at the top of the page mean
1606         https://bugs.webkit.org/show_bug.cgi?id=72992
1607
1608         Reviewed by Dimitri Glazkov.
1609
1610         This patch also prepares us to list other sorts of failures, like
1611         performance and unit test.
1612
1613         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
1614         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/garden-o-matic.js:
1615         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications.js:
1616         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js:
1617
1618 2011-11-23  Ryan Sleevi  <rsleevi@chromium.org>
1619
1620         Add new Chromium tests to the flakiness dashboard
1621         https://bugs.webkit.org/show_bug.cgi?id=72997
1622
1623         Reviewed by Ojan Vafai.
1624
1625         * TestResultServer/static-dashboards/dashboard_base.js:
1626         ():
1627
1628 2011-11-23  Adam Barth  <abarth@webkit.org>
1629
1630         garden-o-matic should support AUDIO failures
1631         https://bugs.webkit.org/show_bug.cgi?id=69477
1632
1633         Reviewed by Dimitri Glazkov.
1634
1635         This is a first iteration at supporting AUDIO failures in
1636         garden-o-matic.  We'll probably need to iterate a bit when we have a
1637         real audio failure in the tree to play with.  For example, we'll
1638         probably want to add and <audio> element to the "Examine" view to hear
1639         the differences, but that all can be done in a subsequent patch.
1640
1641         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/results.js:
1642
1643 2011-11-23  Scott Graham  <scottmg@chromium.org>
1644
1645         Adding gamepad support
1646         https://bugs.webkit.org/show_bug.cgi?id=69451
1647
1648         Reviewed by Darin Fisher.
1649
1650         Add a 'gamepadController' to Chromium DRT. Allows for setting of mock
1651         gamepad data that will be retrieved when JS code pulls via API access.
1652
1653         * DumpRenderTree/DumpRenderTree.gypi:
1654         * DumpRenderTree/chromium/GamepadController.cpp: Added.
1655         (GamepadController::GamepadController):
1656         (GamepadController::bindToJavascript):
1657         (GamepadController::reset):
1658         (GamepadController::connect):
1659         (GamepadController::disconnect):
1660         (GamepadController::setId):
1661         (GamepadController::setButtonCount):
1662         (GamepadController::setButtonData):
1663         (GamepadController::setAxisCount):
1664         (GamepadController::setAxisData):
1665         (GamepadController::fallbackCallback):
1666         * DumpRenderTree/chromium/GamepadController.h: Added.
1667         * DumpRenderTree/chromium/TestShell.cpp:
1668         (TestShell::TestShell):
1669         (TestShell::resetTestController):
1670         (TestShell::bindJSObjectsToWindow):
1671         * DumpRenderTree/chromium/TestShell.h:
1672         (TestShell::gamepadController):
1673
1674 2011-11-23  Raphael Kubo da Costa  <kubo@profusion.mobi>
1675
1676         [CMake] Move the top-level logic to the top-level directory.
1677         https://bugs.webkit.org/show_bug.cgi?id=72685
1678
1679         Reviewed by Brent Fulgham.
1680
1681         * CMakeLists.txt: Added.
1682         * DumpRenderTree/efl/CMakeLists.txt: Keep building into Programs/.
1683         * EWebLauncher/CMakeLists.txt: Renamed from Tools/CMakeListsEfl.txt.
1684         * Scripts/webkitdirs.pm:
1685         (generateBuildSystemFromCMakeProject):
1686         * WinCELauncher/CMakeLists.txt: Renamed from Tools/CMakeListsWinCE.txt.
1687
1688 2011-11-17  Vincent Scheib  <scheib@chromium.org>
1689
1690         Pointer Lock: Initial Tests for navigator.webkitPonter
1691         https://bugs.webkit.org/show_bug.cgi?id=72659
1692
1693         Reviewed by Darin Fisher.
1694
1695         * DumpRenderTree/chromium/TestShell.cpp:
1696         (TestShell::TestShell):
1697             Enabling PointerLock in TestShell
1698
1699 2011-11-22  Ryan Sleevi  <rsleevi@chromium.org>
1700
1701         Update flakiness dashboard for new Chromium builders and tests
1702         https://bugs.webkit.org/show_bug.cgi?id=72931
1703
1704         Reviewed by Ojan Vafai.
1705
1706         * TestResultServer/static-dashboards/builders.js:
1707         * TestResultServer/static-dashboards/dashboard_base.js:
1708
1709 2011-11-22  Adam Roben  <aroben@apple.com>
1710
1711         Remove some debugging code I accidentally left in r101005
1712
1713         * Scripts/prepare-ChangeLog:
1714         (get_function_line_ranges_for_python):
1715
1716 2011-11-22  Adam Roben  <aroben@apple.com>
1717
1718         Teach prepare-ChangeLog how to find changed classes/methods/functions in Python files
1719
1720         Fixes <http://webkit.org/b/57008> prepare-ChangeLog doesn't find names of modified
1721         classes/methods in Python source files
1722
1723         Reviewed by Dan Bates.
1724
1725         * Scripts/prepare-ChangeLog:
1726         (get_function_line_ranges): Call get_function_line_ranges_for_python for files ending in .py
1727         or that use python as their interpreter. Modified the code that extracts the interpreter to
1728         ignore a leading "/usr/bin/env " in the interpreter line, as is common for our Python
1729         scripts.
1730         (get_function_line_ranges_for_python): Added. Does simple parsing of Python files to look
1731         for class/def lines and generate ranges based on them.
1732
1733 2011-11-21  Yuta Kitamura  <yutak@chromium.org>
1734
1735         [GTK] Enable WebSocket hybi tests
1736         https://bugs.webkit.org/show_bug.cgi?id=72870
1737
1738         Reviewed by Xan Lopez.
1739
1740         * DumpRenderTree/gtk/DumpRenderTree.cpp:
1741         (resetDefaultsToConsistentValues):
1742         Reset the setting value to the default value (true).
1743         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
1744         (LayoutTestController::overridePreference):
1745         Change the setting value through a function in DumpRenderTreeSupportGtk.
1746
1747 2011-11-21  Ryosuke Niwa  <rniwa@webkit.org>
1748
1749         ChangeLogEntry should be able to parse entries with multiple authors
1750         https://bugs.webkit.org/show_bug.cgi?id=72690
1751
1752         Reviewed by Eric Seidel.
1753
1754         Support multi-author change log entries in ChangeLogEntry. Split author names using
1755         the same logic as splitting reviewer names. _authors now stores list of dictionaries
1756         with "name" and "email" as keys. Unlike reviewers, we can't always resolve authors to
1757         accounts because some contributors are never listed in committers.py. 
1758
1759         * Scripts/webkitpy/common/checkout/changelog.py:
1760         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
1761         * Scripts/webkitpy/common/config/committers.py: Fixed a bug that *_by_{name|email}
1762         throws an exception when the argument is None.
1763
1764 2011-11-21  Simon Hausmann  <simon.hausmann@nokia.com>
1765
1766         [Qt] Speed up debug builds.
1767         https://bugs.webkit.org/show_bug.cgi?id=72882
1768
1769         Reviewed by Tor Arne Vestbø.
1770
1771         Introduce a special type of build that replaces the static jsc/wc/wk2
1772         static libraries with shared libraries, that individually are much faster
1773         to link and don't require relinking into the big library when changing just
1774         one file in one module. It can be enabled with
1775         --qmakearg="CONFIG+=force_static_libs_as_shared"
1776
1777         * qmake/mkspecs/features/force_static_libs_as_shared.prf: Added. With this configuration,
1778         disable symbol visibility, static linkage and enable rpath.
1779         * qmake/mkspecs/features/functions.prf: Add a helper function to determine if
1780         we need to link the convenience libraries together or not and renamed linkStaticLibrary
1781         to just linkLibrary (because linkage is not necessarily static).
1782         * qmake/mkspecs/features/qtwebkit.prf: When using the trick, make sure to also
1783         link against jsc/wc/wk2 when linking app code against QtWebKit.
1784         * qmake/mkspecs/features/javascriptcore.prf: Use new +needToLinkLibrary helper
1785         function.
1786         * qmake/mkspecs/features/webcore.prf: Ditto.
1787         * qmake/mkspecs/features/webkit2.prf: Ditto.
1788
1789 2011-11-21  Adam Klein  <adamk@chromium.org>
1790
1791         Update flakiness dashboard linkification regexps for crbug.com/100000 and above
1792         https://bugs.webkit.org/show_bug.cgi?id=72898
1793
1794         Reviewed by Ojan Vafai.
1795
1796         Also removed a comment that was going to be more trouble to keep up to
1797         date than seemed worthwhile (the code is now the documentation).
1798
1799         * TestResultServer/static-dashboards/flakiness_dashboard.html:
1800
1801 2011-11-21  Dominic Mazzoni  <dmazzoni@google.com>
1802
1803         [Chromium] WebAccessibilityNotification should use AssertMatchingEnums.
1804         https://bugs.webkit.org/show_bug.cgi?id=72895
1805
1806         Reviewed by Chris Fleizach.
1807
1808         * DumpRenderTree/chromium/WebViewHost.cpp:
1809         (WebViewHost::postAccessibilityNotification):
1810
1811 2011-11-21  Philippe Normand  <pnormand@igalia.com>
1812
1813         Unreviewed, run-gtk-tests temporary workaround after r98500.
1814
1815         * Scripts/run-gtk-tests: Try to find the build directory like in
1816         build-gtkdoc, until webkit-build-directory --configuration gets fixed.
1817
1818 2011-11-21  Carlos Garcia Campos  <cgarcia@igalia.com>
1819
1820         [GTK] Add a way to skip unit tests in the bots
1821         https://bugs.webkit.org/show_bug.cgi?id=72879
1822
1823         Reviewed by Philippe Normand.
1824
1825         Rewrite the script in python to make it easier for everybody to
1826         change it and add support for skipping tests.
1827
1828         * Scripts/run-gtk-tests:
1829
1830 2011-11-21  Raphael Kubo da Costa  <kubo@profusion.mobi>
1831
1832         [EFL] Add more appcache functions to ewk_settings.
1833         https://bugs.webkit.org/show_bug.cgi?id=72143
1834
1835         Reviewed by Kenneth Rohde Christiansen.
1836
1837         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
1838         (LayoutTestController::clearAllApplicationCaches):
1839         (LayoutTestController::setAppCacheMaximumSize): Use the right
1840         function, this is not related to the memory cache, but rather to the
1841         appcache.
1842
1843 2011-11-18  Adam Roben  <aroben@apple.com>
1844
1845         Make NRWT consider all lines of output from parse-malloc-history, not just the first
1846
1847         Fixes <http://webkit.org/b/72652> REGRESSION (NRWT): NRWT always reports "1 unique leaks
1848         found" even when there are more than 1 unique leaks
1849
1850         Reviewed by Darin Adler.
1851
1852         * Scripts/webkitpy/layout_tests/port/leakdetector.py:
1853         (LeakDetector.count_total_bytes_and_unique_leaks): Pass re.MULTILINE to re.findall so that
1854         "^" will be considered to match the beginning of any line, not only the beginning of the
1855         string.
1856
1857         * Scripts/webkitpy/layout_tests/port/leakdetector_unittest.py:
1858         (LeakDetectorTest.test_count_total_bytes_and_unique_leaks): Added a second callstack to the
1859         fake output and updated expectations to match.
1860
1861 2011-11-21  Andras Becsi  <andras.becsi@nokia.com>
1862
1863         [Qt] Clean up MiniBrowser project file after recent changes
1864         https://bugs.webkit.org/show_bug.cgi?id=72869
1865
1866         Reviewed by Simon Hausmann.
1867
1868         Remove nonexistent files from OTHER_FILES after our touch and desktop webviews were merged.
1869
1870         * MiniBrowser/qt/MiniBrowser.pro:
1871
1872 2011-11-21  Dominic Mazzoni  <dmazzoni@google.com>
1873
1874         Accessibility: Multiselect list boxes need to report the active option in addition to which items are selected.
1875         https://bugs.webkit.org/show_bug.cgi?id=72479
1876
1877         Reviewed by Chris Fleizach.
1878
1879         * DumpRenderTree/AccessibilityUIElement.cpp:
1880         (getIsSelectedOptionActiveCallback):
1881         (AccessibilityUIElement::getJSClass):
1882         * DumpRenderTree/AccessibilityUIElement.h:
1883         * DumpRenderTree/chromium/AccessibilityUIElement.cpp:
1884         (AccessibilityUIElement::AccessibilityUIElement):
1885         (AccessibilityUIElement::isSelectedOptionActiveGetterCallback):
1886         * DumpRenderTree/chromium/AccessibilityUIElement.h:
1887         * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
1888         (AccessibilityUIElement::isSelectedOptionActive):
1889         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
1890         (AccessibilityUIElement::isSelectedOptionActive):
1891         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
1892         (AccessibilityUIElement::isSelectedOptionActive):
1893
1894 2011-11-21  Takashi Toyoshima  <toyoshim@chromium.org>
1895
1896         Use Host().port_factory instead of webkitpy.layout_tests.port.factory.
1897         https://bugs.webkit.org/show_bug.cgi?id=72859
1898
1899         Reviewed by Eric Seidel.
1900         
1901         * Scripts/new-run-webkit-websocketserver:
1902
1903 2011-11-20  Shinya Kawanaka  <shinyak@google.com>
1904
1905         [Chromium] Layout test does not return correct misspelling positions if there are multiple misspelled words.
1906         https://bugs.webkit.org/show_bug.cgi?id=72655
1907
1908         Reviewed by Hajime Morita.
1909
1910         Fixed the calculation of offset.
1911
1912         * DumpRenderTree/chromium/WebViewHost.cpp:
1913         (WebViewHost::finishLastTextCheck):
1914
1915 2011-11-20  Ojan Vafai  <ojan@chromium.org>
1916
1917         Change the final place where we use version 3 of the results json output
1918         https://bugs.webkit.org/show_bug.cgi?id=72838
1919
1920         Reviewed by Adam Barth.
1921
1922         This converts the json from being a flat map of test name --> results
1923         to being hierarchical by directory. This will make the json files 
1924         considerably smaller.
1925
1926         Also cleaned up some functions that were returning/checking boolean values
1927         that were always True.
1928
1929         * TestResultServer/model/jsonresults.py:
1930         * TestResultServer/model/jsonresults_unittest.py:
1931
1932 2011-11-20  Ojan Vafai  <ojan@chromium.org>
1933
1934         Include the master name when querying the test results server.
1935         This will soon be required since leaving the master name out mean
1936         that multiple files could match the query.
1937
1938         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
1939
1940 2011-11-19  Ojan Vafai  <ojan@chromium.org>
1941
1942         Fix jsonp callback code to add the callback if json content
1943         is not jsonp.
1944         * TestResultServer/handlers/testfilehandler.py:
1945
1946 2011-11-19  Alice Boxhall  <aboxhall@chromium.org>
1947
1948         Modify dashboard_base.js to optionally accept version 4 results json.
1949
1950         Reviewed by Ojan Vafai.
1951
1952         * TestResultServer/static-dashboards/dashboard_base.js:
1953         (ADD_RESULTS):
1954         (flattenTrie):
1955         * TestResultServer/static-dashboards/flakiness_dashboard_tests.js:
1956         (testFlattenTrie):
1957
1958 2011-11-19  Ojan Vafai  <ojan@chromium.org>
1959
1960         Stop storing results files as jsonp in the test results server
1961         https://bugs.webkit.org/show_bug.cgi?id=72814
1962
1963         Reviewed by Adam Barth.
1964
1965         * TestResultServer/model/jsonresults.py:
1966         * TestResultServer/model/jsonresults_unittest.py:
1967
1968 2011-11-19  Ojan Vafai  <ojan@chromium.org>
1969
1970         Remove the dependence on jsonp from more of new-run-webkit-tests and the test results server
1971         https://bugs.webkit.org/show_bug.cgi?id=72813
1972
1973         Reviewed by Adam Barth.
1974
1975         Once this lands, we can start storing pure json in the test results server and then
1976         we can delete the code with all the FIXMEs added here.
1977
1978         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1979         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
1980         Only add jsonp for full_results.json.
1981         * TestResultServer/model/jsonresults.py:
1982         * TestResultServer/model/jsonresults_unittest.py:
1983         Accept pure json uploads.
1984         * TestResultServer/static-dashboards/dashboard_base.js:
1985         (appendJSONScriptElementFor):
1986         Use the callback parameter so that the server can start returning pure json if it's left out.
1987
1988 2011-11-19  Ojan Vafai  <ojan@chromium.org>
1989
1990         Allow json NRWT downloads to be pure json and not jsonp
1991         https://bugs.webkit.org/show_bug.cgi?id=72809
1992
1993         Reviewed by Adam Barth.
1994
1995         I'm moving the server to storing and serving up raw json instead of jsonp.
1996         You can still get the jsonp by passing a "callback" parameter, but there's no
1997         need for run-webkit-tests to get jsonp when all it wants is the raw json.
1998
1999         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
2000         Make the wrapper stripping only happen if the json is actually wrapped.
2001         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
2002
2003 2011-11-18  Daniel Bates  <dbates@rim.com>
2004
2005         Add CMake build infrastructure for the BlackBerry port
2006         https://bugs.webkit.org/show_bug.cgi?id=72768
2007
2008         Reviewed by Antonio Gomes.
2009
2010         Add optional --blackberry command line argument to build-webkit to build the
2011         BlackBerry port.
2012
2013         * Scripts/build-webkit:
2014         * Scripts/webkitdirs.pm:
2015         (determineBaseProductDir):
2016         (argumentsForConfiguration):
2017         (builtDylibPathForName):
2018         (determineIsQt):
2019         (isBlackBerry): Added.
2020         (determineIsBlackBerry): Added.
2021         (blackberryTargetArchitecture): Added.
2022         (isAppleWebKit):
2023
2024 2011-11-18  James Robinson  <jamesr@chromium.org>
2025
2026         Unreviewed, rolling out r100835.
2027         http://trac.webkit.org/changeset/100835
2028         https://bugs.webkit.org/show_bug.cgi?id=72778
2029
2030         Broke some page scale tests
2031
2032         * DumpRenderTree/chromium/EventSender.cpp:
2033         (EventSender::scalePageBy):
2034
2035 2011-11-18  Adam Barth  <abarth@webkit.org>
2036
2037         Prepare to move manual-tests out of WebCore
2038         https://bugs.webkit.org/show_bug.cgi?id=72782
2039
2040         Reviewed by Eric Seidel.
2041
2042         Update this file to refer to the new location of ManualTests.
2043
2044         * Scripts/webkitpy/common/config/build.py:
2045
2046 2011-11-18  James Robinson  <jamesr@chromium.org>
2047
2048         [chromium] Set min/max page scale factors when calling eventSender.scalePageBy to avoid clamping
2049         https://bugs.webkit.org/show_bug.cgi?id=72778
2050
2051         Reviewed by Kenneth Russell.
2052
2053         Set the min/max page scale clamps when a test calls eventSender.scalePageBy() so that the scale isn't clamped.
2054
2055         * DumpRenderTree/chromium/EventSender.cpp:
2056         (EventSender::scalePageBy):
2057
2058 2011-11-18  Scott Graham  <scottmg@chromium.org>
2059
2060         IDL changes for gamepad support
2061         https://bugs.webkit.org/show_bug.cgi?id=71753
2062
2063         Reviewed by Adam Barth.
2064
2065         Runtime enable gamepad in chromium test shell.
2066
2067         * DumpRenderTree/chromium/TestShell.cpp:
2068         (TestShell::TestShell):
2069
2070 2011-10-27  Darin Fisher  <darin@chromium.org>
2071
2072         [chromium] Improve fullscreen API
2073         https://bugs.webkit.org/show_bug.cgi?id=70477
2074
2075         Reviewed by Adam Barth.
2076
2077         Implement enter/exitFullScreen.  The implementation is asynchronous,
2078         via postDelayedTask, to simulate how the browser actually behaves.
2079
2080         * DumpRenderTree/chromium/WebViewHost.cpp:
2081         (WebViewHost::enterFullScreen):
2082         (WebViewHost::exitFullScreen):
2083         (WebViewHost::setAddressBarURL):
2084         (WebViewHost::enterFullScreenNow):
2085         (WebViewHost::exitFullScreenNow):
2086         * DumpRenderTree/chromium/WebViewHost.h:
2087
2088 2011-11-18  Adam Roben  <aroben@apple.com>
2089
2090         Ignore an ANGLE leak that is not WebKit's fault
2091
2092         * Scripts/old-run-webkit-tests:
2093         (countAndPrintLeaks):
2094         * Scripts/webkitpy/layout_tests/port/leakdetector.py:
2095         (LeakDetector._callstacks_to_exclude_from_leaks):
2096         Added ScanFromString to the call stacks to exclude on all OS versions.
2097
2098 2011-11-18  Adam Roben  <aroben@apple.com>
2099
2100         Ignore another Lion-specific leak that is not WebKit's fault
2101
2102         * Scripts/old-run-webkit-tests:
2103         (countAndPrintLeaks):
2104         * Scripts/webkitpy/layout_tests/port/leakdetector.py:
2105         (LeakDetector._callstacks_to_exclude_from_leaks):
2106         Added SecTransformExecute to the call stacks to exclude.
2107
2108 2011-11-18  Yuta Kitamura  <yutak@chromium.org>
2109
2110         [Qt] Enable WebSocket hybi tests
2111         https://bugs.webkit.org/show_bug.cgi?id=72687
2112
2113         Reviewed by Simon Hausmann.
2114
2115         Let LayoutTestControllerQt be able to switch WebSocket protocols via overridePreference().
2116
2117         * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
2118         (WebCore::WebPage::resetSettings):
2119         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
2120         (LayoutTestController::overridePreference):
2121
2122 2011-11-18  Sergio Villar Senin  <svillar@igalia.com>
2123
2124         [GTK][WK2] Invalid TestNetscapePlugin path when using new-run-webkit-tests
2125         https://bugs.webkit.org/show_bug.cgi?id=72707
2126
2127         Reviewed by Philippe Normand.
2128
2129         Make new-run-webkit-tests use the right path to locate the test
2130         plugin used by WebKitTestRunner.
2131
2132         * Scripts/webkitpy/layout_tests/port/gtk.py:
2133
2134 2011-11-18  Simon Hausmann  <simon.hausmann@nokia.com>
2135
2136         [Qt] WTR and InjectedBundle should not link statically against JSC/WTF
2137         https://bugs.webkit.org/show_bug.cgi?id=72697
2138
2139         Reviewed by Kenneth Rohde Christiansen.
2140
2141         * Tools.pro: Make WTR linux only for the moment.
2142         * WebKitTestRunner/InjectedBundle/Target.pri: Remove static jsc/wtf linkage.
2143         * WebKitTestRunner/Target.pri: Ditto.
2144         * qmake/mkspecs/features/default_post.prf: Don't build the main webkit sources
2145         with ELF visibility on Linux. Instead we're temporarily using an LD version script.
2146
2147 2011-11-18  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2148
2149         [Qt] Change default size of the MiniBrowser
2150
2151         Reviewed by Simon Hausmann.
2152
2153         As we lay out desktop pages using the width of 980, change our default
2154         size to 980x735 so that we are not scaling down by default.
2155
2156         * MiniBrowser/qt/MiniBrowserApplication.h:
2157         (WindowOptions::WindowOptions):
2158
2159 2011-11-17  Raphael Kubo da Costa  <kubo@profusion.mobi>
2160
2161         [EFL] Clean up the use of DATA_DIR in the buildsystem
2162         https://bugs.webkit.org/show_bug.cgi?id=72681
2163
2164         Reviewed by Daniel Bates.
2165
2166         Instead of adding -DDATA_DIR in all scopes, only define it in
2167         WebCore/PlatformEFL.cmake, as WebCore is the only place that uses
2168         it.
2169
2170         We can then define DATA_DIR to the generated theme directory for
2171         EWebLauncher, since it's what we want here.
2172
2173         * CMakeListsEfl.txt:
2174
2175 2011-11-17  Raphael Kubo da Costa  <kubo@profusion.mobi>
2176
2177         [EFL] Move platform includes last in DRT's include directories.
2178         https://bugs.webkit.org/show_bug.cgi?id=72684
2179
2180         Reviewed by Daniel Bates.
2181
2182         This is the first step in fixing the build when a platform include (in
2183         this case, Valgrind 3.7.0 ships its config.h) and the wrong config.h
2184         is included instead of WebKit's.
2185
2186         * DumpRenderTree/efl/CMakeLists.txt:
2187
2188 2011-11-17  Ryosuke Niwa  <rniwa@webkit.org>
2189
2190         fuzzy_match doesn't recognize "Dan B" or "hyatt"
2191         https://bugs.webkit.org/show_bug.cgi?id=72636
2192
2193         Reviewed by Eric Seidel.
2194
2195         Make contributors_by_fuzz_match search string in shorthand names of contributors such as "Ryosuke N"
2196         and user names of email addreses such as rniwa in rniwa@webkit.org.
2197
2198         Also import legacy contributor names and mispell lists from Eric's script on the bug 26533 as a test.
2199
2200         * Scripts/webkitpy/common/config/committers.py:
2201         * Scripts/webkitpy/common/config/committers_unittest.py:
2202
2203 2011-11-17  Eric Seidel  <eric@webkit.org>
2204
2205         Remove support for running check-webkit-style w/o a webkit checkout
2206         https://bugs.webkit.org/show_bug.cgi?id=72678
2207
2208         Reviewed by Adam Barth.
2209
2210         After talking to Dave Levin we've decided to remove this
2211         code.  I know of no users of check-webkit-style w/o a webkit checkout
2212         and this needlessly adds complexity.
2213
2214         * Scripts/webkitpy/style/main.py:
2215
2216 2011-11-17  Eric Seidel  <eric@webkit.org>
2217
2218         Remove more direct uses of os.path
2219         https://bugs.webkit.org/show_bug.cgi?id=72677
2220
2221         Reviewed by Adam Barth.
2222
2223         Remove more uses of os.path, including refactoring
2224         CommitterValidator to use a Host object instead of
2225         manual hacks to emulate what SCM and FileSystem provide.
2226
2227         * Scripts/webkitpy/common/checkout/changelog.py:
2228         * Scripts/webkitpy/common/config/committervalidator.py:
2229         * Scripts/webkitpy/common/config/committervalidator_unittest.py:
2230         * Scripts/webkitpy/common/system/filesystem_mock.py:
2231          - Turns out none of our unittests actually looked at this path.
2232            now I've made it be a valid path.
2233         * Scripts/webkitpy/tool/bot/feeders.py:
2234         * Scripts/webkitpy/tool/commands/queues.py:
2235
2236 2011-11-17  Eric Seidel  <eric@webkit.org>
2237
2238         Teach TextFileReader about FileSystem
2239         https://bugs.webkit.org/show_bug.cgi?id=72673
2240
2241         Reviewed by Adam Barth.
2242
2243         Unfortunately TextFileReader doesn't use FileSystem
2244         everywhere yet, so we can't move the unittests to
2245         using MockFileSystem, but we're close.
2246
2247         * Scripts/webkitpy/style/filereader.py:
2248         * Scripts/webkitpy/style/filereader_unittest.py:
2249         * Scripts/webkitpy/style/main.py:
2250
2251 2011-11-17  Eric Seidel  <eric@webkit.org>
2252
2253         Give check-webkit-style a Host
2254         https://bugs.webkit.org/show_bug.cgi?id=72670
2255
2256         Reviewed by Adam Barth.
2257
2258         * Scripts/webkitpy/common/checkout/scm/detection.py:
2259         * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
2260          - We don't run these unittests, but this one was looking for the wrong exception.
2261         * Scripts/webkitpy/style/main.py:
2262         * Scripts/webkitpy/to_be_moved/rebaseline_chromium_webkit_tests.py:
2263          - This was create a new scm object even though it already had one?
2264
2265 2011-11-17  Eric Seidel  <eric@webkit.org>
2266
2267         Move check-webkit-style change_directory code to more modern mocks
2268         https://bugs.webkit.org/show_bug.cgi?id=72664
2269
2270         Reviewed by Adam Barth.
2271
2272         * Scripts/check-webkit-style:
2273         * Scripts/webkitpy/style/main.py:
2274         * Scripts/webkitpy/style/main_unittest.py:
2275
2276 2011-11-17  Zan Dobersek  <zandobersek@gmail.com>
2277
2278         [GTK] enable ref tests
2279         https://bugs.webkit.org/show_bug.cgi?id=72601
2280
2281         Re-enable ref tests. Run the driver under evenly numbered display if performing
2282         pixel tests or under oddly numbered display otherwise. This prevents the ref tests
2283         being run in an already used Xvfb instance if pixel tests are disabled.
2284
2285         Reviewed by Tony Chang.
2286
2287         * Scripts/webkitpy/layout_tests/port/gtk.py: Also set Xvfb variable to None
2288         after the process is killed
2289
2290 2011-11-17  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2291
2292         Make check-webkit-style accept xxx_p.h as a primary header for xxx.cpp for Qt's sake
2293         https://bugs.webkit.org/show_bug.cgi?id=72620
2294
2295         Reviewed by David Levin.
2296
2297         Qt's convention of keeping private (but exposed) API suffixed by "_p.h" but not
2298         adding the suffix the cpp file. One example of false positive
2299         https://bugs.webkit.org/show_bug.cgi?id=72319#c12.
2300
2301         * Scripts/webkitpy/style/checkers/cpp.py: accept headers ending with _p as primary if its
2302         basename contains the cpp's basename.
2303         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
2304
2305 2011-11-17  Eric Seidel  <eric@webkit.org>
2306
2307         Move check-webkit-style's guts into webkitpy/style/main.py
2308         https://bugs.webkit.org/show_bug.cgi?id=72657
2309
2310         Reviewed by Adam Barth.
2311
2312         * Scripts/check-webkit-style:
2313         * Scripts/webkitpy/style/main.py:
2314
2315 2011-11-17  Eric Seidel  <eric@webkit.org>
2316
2317         new-run-webkit-tests is locale dependent
2318         https://bugs.webkit.org/show_bug.cgi?id=68691
2319
2320         Reviewed by Adam Barth.
2321
2322         Make NRWT use a clean environment, just like ORWT did.
2323
2324         * Scripts/webkitpy/layout_tests/port/base.py:
2325         * Scripts/webkitpy/layout_tests/port/chromium.py:
2326         * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
2327         * Scripts/webkitpy/layout_tests/port/chromium_win.py:
2328         * Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:
2329         * Scripts/webkitpy/layout_tests/port/efl.py:
2330         * Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
2331         * Scripts/webkitpy/layout_tests/port/mac.py:
2332         * Scripts/webkitpy/layout_tests/port/qt.py:
2333         * Scripts/webkitpy/layout_tests/port/qt_unittest.py:
2334         * Scripts/webkitpy/layout_tests/port/webkit.py:
2335         * Scripts/webkitpy/layout_tests/port/win.py:
2336
2337 2011-11-17  Dirk Pranke  <dpranke@chromium.org>
2338
2339         Chromium Mac 10.5 CG dbg bots are failing to run webkit_gpu_tests
2340         https://bugs.webkit.org/show_bug.cgi?id=72615
2341
2342         Reviewed by James Robinson.
2343
2344         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
2345
2346 2011-11-17  Simon Hausmann  <simon.hausmann@nokia.com>
2347
2348         [Qt] Layer violation: qt_runtime.cpp accesses QWebElement and QTDRTNode
2349         https://bugs.webkit.org/show_bug.cgi?id=72595
2350
2351         Reviewed by Noam Rosenthal.
2352
2353         * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
2354         (WebCore::DumpRenderTree::DumpRenderTree): Use new initialize() function to
2355         ensure the registration of the DRTNode JS bindings.
2356         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
2357         (LayoutTestController::LayoutTestController): Remove unnecessary explicit qt meta type
2358         registration of QWebElement (now done implicitly through QWebPage ->
2359         QtWebElementRunTime::initialize code path)
2360
2361 2011-11-17  Adam Roben  <aroben@apple.com>
2362
2363         Fix a crash-inducing typo I introduced in r100648
2364
2365         Fixes <http://webkit.org/b/72642> REGRESSION (r100648): NRWT crashes on Chromium when
2366         handling a crashing test
2367
2368         Reviewed by Adam Barth.
2369
2370         * Scripts/webkitpy/layout_tests/port/chromium.py:
2371         (ChromiumDriver.run_test): Get the driver name from the port.
2372
2373         * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
2374         (ChromiumDriverTest.test_crashed_process_name): Simulate a crash and check that we got the
2375         right crashed process name.
2376
2377 2011-11-17  Adam Roben  <aroben@apple.com>
2378
2379         Fix NRWT's parsing of the number of excluded leaks
2380
2381         Fixes <http://webkit.org/b/72635> NRWT crashes when parsing leaks files from which certain
2382         leaks were excluded
2383
2384         Reviewed by Adam Barth.
2385
2386         * Scripts/webkitpy/layout_tests/port/leakdetector.py:
2387         (LeakDetector._parse_leaks_output): Extract just the number of excluded leaks from the
2388         regular expression match, not the entire matched string.
2389
2390         * Scripts/webkitpy/layout_tests/port/leakdetector_unittest.py:
2391         (LeakDetectorTest): Added some example output that shows how things look when leaks are
2392         excluded.
2393         (LeakDetectorTest.test_parse_leaks_output): Test that we parse the number of exclusions
2394         correctly.
2395
2396 2011-11-17  Adam Roben  <aroben@apple.com>
2397
2398         Make NRWT find crash logs for the crashed process, which may not necessarily be the driver process
2399
2400         Fixes <http://webkit.org/b/72526> REGRESSION (NRWT): WebKitTestRunner crash log gets saved
2401         when web process crashes, but WebProcess crash log should get saved instead
2402
2403         Reviewed by Eric Seidel.
2404
2405         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
2406         (write_test_result): Simplified a little to share more code between the case where we
2407         crashed when running the test and where we crashed when checking the expected rendering for
2408         a reftest. Changed to pass the crashed process name down to write_crash_report.
2409         (TestResultWriter.write_crash_report): Added crashed_process_name parameter, which we pass
2410         along to CrashLogs.find_newest_log rather than always using the driver name.
2411
2412         * Scripts/webkitpy/layout_tests/port/chromium.py:
2413         (ChromiumDriver.run_test): Pass the driver name as the name of the crashed process if we
2414         crashed.
2415
2416         * Scripts/webkitpy/layout_tests/port/test.py:
2417         (TestInstance.__init__): Initialize new web_process_crash attribute.
2418         (unit_test_list): Added new web-process-crash-with-stderr test, which is used by the new
2419         test this patch adds.
2420         (TestDriver.run_test): Pass a crashed process name to DriverOutput based on whether the test
2421         specifies that the driver crashed or the web process crashed.
2422
2423         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
2424         (MainTest.test_web_process_crash_log): Added. Similar to test_crash_log, but uses a test for
2425         which we pretend the web process crashed rather than the driver process.
2426
2427         (MainTest.test_run_singly_actually_runs_tests):
2428         (MainTest.test_unexpected_failures):
2429         (EndToEndTest.test_end_to_end):
2430         Updated magic numbers to account for new unexpected failing test added to unit_test_list.
2431
2432 2011-11-17  Tony Chang  <tony@chromium.org>
2433
2434         [chromium] stop spamming features warning on every build
2435         https://bugs.webkit.org/show_bug.cgi?id=72629
2436
2437         Reviewed by Ojan Vafai.
2438
2439         We toggle $blobSupport on if $mediaStreamSupport is on.  Since
2440         $mediaStreamSupport is on by default for chromium, make the default
2441         for $blobSupport also on.
2442
2443         * Scripts/build-webkit:
2444
2445 2011-11-17  Adam Roben  <aroben@apple.com>
2446
2447         Remove extra quoting of call stacks and types passed to run-leaks by NRWT
2448
2449         Fixes <http://webkit.org/b/72623> REGRESSION (NRWT): run-webkit-tests --leaks reports leaks
2450         that are supposed to be ignored
2451
2452         Reviewed by Adam Barth.
2453
2454         * Scripts/webkitpy/layout_tests/port/leakdetector.py:
2455         (LeakDetector._leaks_args): Removed extra quoting of call stacks and types. Quoting is only
2456         required when passing arguments via the shell (which we aren't doing here). It is not
2457         required by Perl's option-parsing code (as the comment I removed mistakenly claimed).
2458
2459         * Scripts/webkitpy/layout_tests/port/leakdetector_unittest.py:
2460         (LeakDetectorTest.test_leaks_args): Updated expectations.
2461
2462 2011-11-17  Philippe Normand  <pnormand@igalia.com>
2463
2464         Unreviewed, run-bindings-tests fix after r91028.
2465
2466         * Scripts/run-bindings-tests: Use scm.detection module.
2467
2468 2011-11-17  Jochen Eisinger  <jochen@chromium.org>
2469
2470         Silence a warning about control reaching the end of a non-void function
2471         https://bugs.webkit.org/show_bug.cgi?id=72616
2472
2473         Reviewed by Tony Gentilcore.
2474
2475         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
2476         (AccessibilityUIElement::verticalScrollbar):
2477
2478 2011-11-17  Adam Roben  <aroben@apple.com>
2479
2480         Ignore some leaks in frameworks we link against on Lion
2481
2482         Fixes <http://webkit.org/b/72609> Lion Leaks bot complains about a bunch of leaks that
2483         aren't WebKit's fault
2484
2485         Reviewed by Antti Koivisto.
2486
2487         * Scripts/old-run-webkit-tests:
2488         (countAndPrintLeaks):
2489         * Scripts/webkitpy/layout_tests/port/leakdetector.py:
2490         (LeakDetector._callstacks_to_exclude_from_leaks):
2491         Added some call stacks to exclude on Lion that represent leaks in lower-level frameworks.
2492
2493         * Scripts/webkitpy/layout_tests/port/mac.py:
2494         (MacPort.is_lion): Added.
2495
2496         * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
2497         (MacPortTest.test_is_version_methods): Added tests for the is_leopard/is_snowleopard/is_lion
2498         methods.
2499
2500 2011-11-17  Philippe Normand  <pnormand@igalia.com>
2501
2502         [GTK] Disable ref tests
2503         https://bugs.webkit.org/show_bug.cgi?id=72599
2504
2505         Reviewed by Xan Lopez.
2506
2507         * Scripts/webkitpy/layout_tests/port/gtk.py: Enforce disabled ref
2508         tests to avoid massive flakiness.
2509
2510 2011-11-17  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2511
2512         [Qt] Move WebKit2 C++ APIs to private API and build QML extension plugin on top of that
2513
2514         A new extension object has been added to QQuickWebView (the same approach should be used
2515         for other API classes that need experimental APIs). The QML extension mechanism is then
2516         built on top of the experimental object.
2517
2518         https://bugs.webkit.org/show_bug.cgi?id=72522
2519
2520         Reviewed by Simon Hausmann.
2521
2522         * MiniBrowser/qt/BrowserWindow.cpp:
2523         (BrowserWindow::BrowserWindow):
2524         (BrowserWindow::webView):
2525         * MiniBrowser/qt/BrowserWindow.h:
2526         * MiniBrowser/qt/UrlLoader.cpp:
2527         * WebKitTestRunner/qt/PlatformWebViewQt.cpp:
2528         * qmake/mkspecs/features/default_post.prf:
2529         * qmake/mkspecs/features/default_pre.prf:
2530         * qmake/mkspecs/features/qtwebkit-private.prf: Added.
2531         * qmake/mkspecs/features/qtwebkit.prf:
2532
2533 2011-11-17  Adam Barth  <abarth@webkit.org>
2534
2535         Move test_results_uploader.py out of layout_package
2536         https://bugs.webkit.org/show_bug.cgi?id=72590
2537
2538         Reviewed by Eric Seidel.
2539
2540         Most of the lines of code in this file are wrong, but I've restrained
2541         myself and only changed a few of them to generalized this class to the
2542         common package.
2543
2544         This is part of a series of patches to remove layout_package.
2545
2546         * Scripts/webkitpy/common/net/file_uploader.py: Copied from Tools/Scripts/webkitpy/layout_tests/layout_package/test_results_uploader.py.
2547         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
2548         * Scripts/webkitpy/layout_tests/layout_package/test_results_uploader.py: Removed.
2549
2550 2011-11-17  Adam Barth  <abarth@webkit.org>
2551
2552         Unreviewed. Fix style nits in printing.py.
2553
2554         * Scripts/webkitpy/layout_tests/views/printing.py:
2555
2556 2011-11-17  Adam Barth  <abarth@webkit.org>
2557
2558         Minor style nits in run_webkit_tests.py
2559         https://bugs.webkit.org/show_bug.cgi?id=72583
2560
2561         Reviewed by Eric Seidel.
2562
2563         This patch just fixes some minor style issues as I work my way back
2564         into this code.
2565
2566         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2567
2568 2011-11-17  Adam Barth  <abarth@webkit.org>
2569
2570         Move test_result_writer out of layout_package
2571         https://bugs.webkit.org/show_bug.cgi?id=72586
2572
2573         Rubber-stamped by Eric Seidel.
2574
2575         This is part of a series of patches to remove layout_package.
2576
2577         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
2578         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py: Copied from Tools/Scripts/webkitpy/layout_tests/layout_package/test_result_writer.py.
2579         * Scripts/webkitpy/layout_tests/layout_package/test_result_writer.py: Removed.
2580         * Scripts/webkitpy/tool/commands/rebaseline.py:
2581
2582 2011-11-17  Adam Barth  <abarth@webkit.org>
2583
2584         svn-apply shouldn't magically move files into Source anymore
2585         https://bugs.webkit.org/show_bug.cgi?id=72579
2586
2587         Reviewed by Eric Seidel.
2588
2589         The Source directory has existed for long enough that we don't need
2590         svn-apply to magically re-write old-style patches anymore.
2591
2592         * Scripts/VCSUtils.pm:
2593         (parseGitDiffHeader):
2594         (parseSvnDiffHeader):
2595
2596 2011-11-16  Ryosuke Niwa  <rniwa@webkit.org>
2597
2598         Add a list of contribution areas
2599         https://bugs.webkit.org/show_bug.cgi?id=72566
2600
2601         Reviewed by Eric Seidel.
2602
2603         Added ContributionAreas class.
2604
2605         * Scripts/webkitpy/common/config/contributionareas.py: Added.
2606         * Scripts/webkitpy/common/config/contributionareas_unittest.py: Added.
2607
2608 2011-11-16  Ryosuke Niwa  <rniwa@webkit.org>
2609
2610         Refactor ChangeLogTest.test_parse_reviewer_text
2611         https://bugs.webkit.org/show_bug.cgi?id=72572
2612
2613         Reviewed by Eric Seidel.
2614
2615         Refactored the test code by introduing two helper functions.
2616
2617         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
2618
2619 2011-11-16  Eric Seidel  <eric@webkit.org>
2620
2621         Add SCMDetector object to make scm detection mockable
2622         https://bugs.webkit.org/show_bug.cgi?id=72247
2623
2624         Reviewed by Adam Barth.
2625
2626         I think SCM detection may eventually be rolled into Checkout,
2627         but this patch at least makes it possible to mock code-paths
2628         which rely on scm detection.
2629         In the process of replacing callers of these free-functions
2630         I found that one of the functions was no longer used,
2631         and that one of the callers could instead just use the SCM
2632         object it already had access to through port.host.scm().
2633         I also discovered that I was not calling Host._initialize_scm()
2634         and thus host.scm() was always returning None!
2635
2636         * Scripts/check-webkit-style:
2637         * Scripts/webkitpy/common/checkout/checkout_unittest.py:
2638         * Scripts/webkitpy/common/checkout/deps.py:
2639         * Scripts/webkitpy/common/checkout/scm/__init__.py:
2640         * Scripts/webkitpy/common/checkout/scm/detection.py:
2641         * Scripts/webkitpy/common/checkout/scm/git.py:
2642         * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
2643         * Scripts/webkitpy/common/checkout/scm/svn.py:
2644         * Scripts/webkitpy/common/host.py:
2645         * Scripts/webkitpy/common/host_mock.py:
2646         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2647         * Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:
2648         * Scripts/webkitpy/layout_tests/port/base.py:
2649         * Scripts/webkitpy/layout_tests/port/mock_drt.py:
2650         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2651         * Scripts/webkitpy/to_be_moved/rebaseline_chromium_webkit_tests.py:
2652         * Scripts/webkitpy/tool/servers/rebaselineserver.py:
2653
2654 2011-11-16  Mark Rowe  <mrowe@apple.com>
2655
2656         Fix the build.
2657
2658         The C++ standard library interferes with Objective-C exceptions when built with -fno-exceptions.
2659         Apply the workaround that we use in other projects to WebKitTestRunner.
2660
2661         * WebKitTestRunner/Configurations/Base.xcconfig: Use the prefix header for all targets.
2662         * WebKitTestRunner/Configurations/WebKitTestRunner.xcconfig: Ditto.
2663         * WebKitTestRunner/WebKitTestRunnerPrefix.h: Work around the C++ standard library obnoxiousness.
2664
2665 2011-11-16  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2666
2667         [Qt] Fix build after WTR AX support
2668         https://bugs.webkit.org/show_bug.cgi?id=72560
2669
2670         Reviewed by Geoffrey Garen.
2671
2672         * WebKitTestRunner/InjectedBundle/DerivedSources.pri:
2673         * WebKitTestRunner/InjectedBundle/Target.pri:
2674
2675 2011-11-16  Tony Chang  <tony@chromium.org>
2676
2677         repurpose the flexbox bot for grid layout
2678         https://bugs.webkit.org/show_bug.cgi?id=72557
2679
2680         Reviewed by Ryosuke Niwa.
2681
2682         Since new flexbox is enabled everywhere, we don't need this bot
2683         anymore.  However, work on grid layout has begun, so we can use this
2684         bot to compile with ENABLE_CSS_GRID_LAYOUT.
2685
2686         * BuildSlaveSupport/build.webkit.org-config/config.json: Just rename
2687         the bot on the waterfall, I will change the slave config to enable
2688         the compile flag and tests.
2689
2690 2011-11-11  Adrienne Walker  <enne@google.com>
2691
2692         [chromium] Expose mock scrollbars to window.internals
2693         https://bugs.webkit.org/show_bug.cgi?id=72195
2694
2695         Reviewed by James Robinson.
2696
2697         Because mock scrollbars are a global setting, reset between runs.
2698
2699         * DumpRenderTree/chromium/WebPreferences.cpp:
2700         (WebPreferences::applyTo):
2701
2702 2011-11-16  James Robinson  <jamesr@chromium.org>
2703
2704         [chromium] Enable video and canvas 2d compositing triggers by default for layout tests in the compositing directory
2705         https://bugs.webkit.org/show_bug.cgi?id=72562
2706
2707         Reviewed by Dirk Pranke.
2708
2709         * DumpRenderTree/chromium/TestShell.cpp:
2710         (TestShell::runFileTest):
2711
2712 2011-11-16  Tony Chang  <tony@chromium.org>
2713
2714         [NRWT] speculative fix for multiple subprocess test on cygwin
2715         https://bugs.webkit.org/show_bug.cgi?id=72518
2716
2717         Reviewed by Adam Barth.
2718
2719         * Scripts/webkitpy/layout_tests/port/chromium.py: cygwin probably
2720             tries to emulate posix fd behavior.
2721         * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
2722
2723 2011-11-16  Dirk Pranke  <dpranke@chromium.org>
2724
2725         Revert r100509; change was committed twice (first time as r100491).
2726         Unreviewed, build fix.
2727
2728         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
2729
2730 2011-11-16  Dirk Pranke  <dpranke@chromium.org>
2731
2732         Run a dummy test in the gpu configurations if there's nothing to do.
2733         https://bugs.webkit.org/show_bug.cgi?id=72498
2734
2735         Reviewed by James Robinson.
2736
2737         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
2738
2739 2011-11-16  Ryosuke Niwa  <rniwa@webkit.org>
2740
2741         contributors_by_fuzzy_match is super slow
2742         https://bugs.webkit.org/show_bug.cgi?id=72540
2743
2744         Reviewed by Eric Seidel.
2745
2746         Make contributors_by_name do case insensitive search using a dictionary.
2747
2748         Also call contributors_by_name first in contributors_by_fuzzy_match now that it's fast
2749         because that's the most common case.
2750
2751         * Scripts/webkitpy/common/config/committers.py:
2752         * Scripts/webkitpy/common/config/committers_unittest.py:
2753
2754 2011-11-16  David Levin  <levin@chromium.org>
2755
2756         check-webkit-style should recognize functions even if they have OVERRIDE after them.
2757         https://bugs.webkit.org/show_bug.cgi?id=72515
2758
2759         Reviewed by Adam Barth.
2760
2761         * Scripts/webkitpy/style/checkers/cpp.py:
2762         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
2763
2764 2011-11-16  Tony Chang  <tony@chromium.org>
2765
2766         [NRWT] refactor drivers to require pixel_tests param
2767         https://bugs.webkit.org/show_bug.cgi?id=72517
2768
2769         Reviewed by Ojan Vafai.
2770
2771         No tests, just a refactoring.
2772
2773         * Scripts/webkitpy/layout_tests/port/chromium.py:
2774         * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
2775         * Scripts/webkitpy/layout_tests/port/webkit.py:
2776         * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
2777
2778 2011-11-16  Dirk Pranke  <dpranke@chromium.org>
2779
2780         Run a dummy test in the gpu configurations if there's nothing to do.
2781         https://bugs.webkit.org/show_bug.cgi?id=72498
2782
2783         Reviewed by James Robinson.
2784
2785         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
2786
2787 2011-11-16  Chris Fleizach  <cfleizach@apple.com>
2788
2789         WebKitTestRunner needs to support accessibility-related DRT APIs
2790         https://bugs.webkit.org/show_bug.cgi?id=42131
2791
2792         Reviewed by Beth Dakin.
2793
2794         Port the AX code in DRT to WKTestRunner by using IDL.
2795
2796         * DumpRenderTree/AccessibilityUIElement.cpp:
2797         (horizontalScrollbarCallback):
2798         (verticalScrollbarCallback):
2799         (AccessibilityUIElement::horizontalScrollbar):
2800         (AccessibilityUIElement::verticalScrollbar):
2801         (AccessibilityUIElement::getJSClass):
2802         * DumpRenderTree/AccessibilityUIElement.h:
2803         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
2804         (AccessibilityUIElement::horizontalScrollbar):
2805         (AccessibilityUIElement::verticalScrollbar):
2806         * WebKitTestRunner/DerivedSources.make:
2807         * WebKitTestRunner/GNUmakefile.am:
2808         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp: Added.
2809         (WTR::AccessibilityController::create):
2810         (WTR::AccessibilityController::AccessibilityController):
2811         (WTR::AccessibilityController::~AccessibilityController):
2812         (WTR::AccessibilityController::makeWindowObject):
2813         (WTR::AccessibilityController::wrapperClass):
2814         (WTR::AccessibilityController::rootElement):
2815         (WTR::AccessibilityController::focusedElement):
2816         (WTR::AccessibilityController::elementAtPoint):
2817         * WebKitTestRunner/InjectedBundle/AccessibilityController.h: Added.
2818         (WTR::AccessibilityController::logFocusEvents):
2819         (WTR::AccessibilityController::logValueChangeEvents):
2820         (WTR::AccessibilityController::logScrollingStartEvents):
2821         (WTR::AccessibilityController::logAccessibilityEvents):
2822         (WTR::AccessibilityController::addNotificationListener):
2823         (WTR::AccessibilityController::notificationReceived):
2824         (WTR::AccessibilityController::resetToConsistentState):
2825         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.cpp: Added.
2826         (WTR::AccessibilityTextMarker::create):
2827         (WTR::AccessibilityTextMarker::AccessibilityTextMarker):
2828         (WTR::AccessibilityTextMarker::~AccessibilityTextMarker):
2829         (WTR::AccessibilityTextMarker::platformTextMarker):
2830         (WTR::AccessibilityTextMarker::wrapperClass):
2831         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.h: Added.
2832         (WTR::AccessibilityTextMarker::isEqual):
2833         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.cpp: Added.
2834         (WTR::AccessibilityTextMarkerRange::create):
2835         (WTR::AccessibilityTextMarkerRange::AccessibilityTextMarkerRange):
2836         (WTR::AccessibilityTextMarkerRange::~AccessibilityTextMarkerRange):
2837         (WTR::AccessibilityTextMarkerRange::platformTextMarkerRange):
2838         (WTR::AccessibilityTextMarkerRange::wrapperClass):
2839         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.h: Added.
2840         (WTR::AccessibilityTextMarkerRange::isEqual):
2841         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp: Added.
2842         (WTR::AccessibilityUIElement::create):
2843         (WTR::AccessibilityUIElement::wrapperClass):
2844         (WTR::AccessibilityUIElement::isValid):
2845         (WTR::AccessibilityUIElement::AccessibilityUIElement):
2846         (WTR::AccessibilityUIElement::~AccessibilityUIElement):
2847         (WTR::AccessibilityUIElement::isEqual):
2848         (WTR::AccessibilityUIElement::elementAtPoint):
2849         (WTR::AccessibilityUIElement::childAtIndex):
2850         (WTR::AccessibilityUIElement::indexOfChild):
2851         (WTR::AccessibilityUIElement::childrenCount):
2852         (WTR::AccessibilityUIElement::titleUIElement):
2853         (WTR::AccessibilityUIElement::parentElement):
2854         (WTR::AccessibilityUIElement::takeFocus):
2855         (WTR::AccessibilityUIElement::takeSelection):
2856         (WTR::AccessibilityUIElement::addSelection):
2857         (WTR::AccessibilityUIElement::removeSelection):
2858         (WTR::AccessibilityUIElement::allAttributes):
2859         (WTR::AccessibilityUIElement::attributesOfLinkedUIElements):
2860         (WTR::AccessibilityUIElement::linkedUIElementAtIndex):
2861         (WTR::AccessibilityUIElement::attributesOfDocumentLinks):
2862         (WTR::AccessibilityUIElement::attributesOfChildren):
2863         (WTR::AccessibilityUIElement::parameterizedAttributeNames):
2864         (WTR::AccessibilityUIElement::increment):
2865         (WTR::AccessibilityUIElement::decrement):
2866         (WTR::AccessibilityUIElement::showMenu):
2867         (WTR::AccessibilityUIElement::press):
2868         (WTR::AccessibilityUIElement::stringAttributeValue):
2869         (WTR::AccessibilityUIElement::uiElementAttributeValue):
2870         (WTR::AccessibilityUIElement::numberAttributeValue):
2871         (WTR::AccessibilityUIElement::boolAttributeValue):
2872         (WTR::AccessibilityUIElement::isAttributeSupported):
2873         (WTR::AccessibilityUIElement::isAttributeSettable):
2874         (WTR::AccessibilityUIElement::isActionSupported):
2875         (WTR::AccessibilityUIElement::role):
2876         (WTR::AccessibilityUIElement::subrole):
2877         (WTR::AccessibilityUIElement::roleDescription):
2878         (WTR::AccessibilityUIElement::title):
2879         (WTR::AccessibilityUIElement::description):
2880         (WTR::AccessibilityUIElement::language):
2881         (WTR::AccessibilityUIElement::stringValue):
2882         (WTR::AccessibilityUIElement::accessibilityValue):
2883         (WTR::AccessibilityUIElement::helpText):
2884         (WTR::AccessibilityUIElement::orientation):
2885         (WTR::AccessibilityUIElement::x):
2886         (WTR::AccessibilityUIElement::y):
2887         (WTR::AccessibilityUIElement::width):
2888         (WTR::AccessibilityUIElement::height):
2889         (WTR::AccessibilityUIElement::intValue):
2890         (WTR::AccessibilityUIElement::minValue):
2891         (WTR::AccessibilityUIElement::maxValue):
2892         (WTR::AccessibilityUIElement::valueDescription):
2893         (WTR::AccessibilityUIElement::insertionPointLineNumber):
2894         (WTR::AccessibilityUIElement::selectedTextRange):
2895         (WTR::AccessibilityUIElement::isEnabled):
2896         (WTR::AccessibilityUIElement::isRequired):
2897         (WTR::AccessibilityUIElement::isFocused):
2898         (WTR::AccessibilityUIElement::isFocusable):
2899         (WTR::AccessibilityUIElement::isSelected):
2900         (WTR::AccessibilityUIElement::isSelectable):
2901         (WTR::AccessibilityUIElement::isMultiSelectable):
2902         (WTR::AccessibilityUIElement::setSelectedChild):
2903         (WTR::AccessibilityUIElement::selectedChildrenCount):
2904         (WTR::AccessibilityUIElement::selectedChildAtIndex):
2905         (WTR::AccessibilityUIElement::isExpanded):
2906         (WTR::AccessibilityUIElement::isChecked):
2907         (WTR::AccessibilityUIElement::isVisible):
2908         (WTR::AccessibilityUIElement::isOffScreen):
2909         (WTR::AccessibilityUIElement::isCollapsed):
2910         (WTR::AccessibilityUIElement::isIgnored):
2911         (WTR::AccessibilityUIElement::hasPopup):
2912         (WTR::AccessibilityUIElement::hierarchicalLevel):
2913         (WTR::AccessibilityUIElement::clickPointX):
2914         (WTR::AccessibilityUIElement::clickPointY):
2915         (WTR::AccessibilityUIElement::documentEncoding):
2916         (WTR::AccessibilityUIElement::documentURI):
2917         (WTR::AccessibilityUIElement::url):
2918         (WTR::AccessibilityUIElement::speak):
2919         (WTR::AccessibilityUIElement::attributesOfColumnHeaders):
2920         (WTR::AccessibilityUIElement::attributesOfRowHeaders):
2921         (WTR::AccessibilityUIElement::attributesOfColumns):
2922         (WTR::AccessibilityUIElement::attributesOfRows):
2923         (WTR::AccessibilityUIElement::attributesOfVisibleCells):
2924         (WTR::AccessibilityUIElement::attributesOfHeader):
2925         (WTR::AccessibilityUIElement::indexInTable):
2926         (WTR::AccessibilityUIElement::rowIndexRange):
2927         (WTR::AccessibilityUIElement::columnIndexRange):
2928         (WTR::AccessibilityUIElement::rowCount):
2929         (WTR::AccessibilityUIElement::columnCount):
2930         (WTR::AccessibilityUIElement::selectedRowAtIndex):
2931         (WTR::AccessibilityUIElement::disclosedByRow):
2932         (WTR::AccessibilityUIElement::disclosedRowAtIndex):
2933         (WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
2934         (WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
2935         (WTR::AccessibilityUIElement::ariaIsGrabbed):
2936         (WTR::AccessibilityUIElement::ariaDropEffects):
2937         (WTR::AccessibilityUIElement::lineForIndex):
2938         (WTR::AccessibilityUIElement::rangeForLine):
2939         (WTR::AccessibilityUIElement::boundsForRange):
2940         (WTR::AccessibilityUIElement::setSelectedTextRange):
2941         (WTR::AccessibilityUIElement::stringForRange):
2942         (WTR::AccessibilityUIElement::attributedStringForRange):
2943         (WTR::AccessibilityUIElement::attributedStringRangeIsMisspelled):
2944         (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
2945         (WTR::AccessibilityUIElement::cellForColumnAndRow):
2946         (WTR::AccessibilityUIElement::horizontalScrollbar):
2947         (WTR::AccessibilityUIElement::verticalScrollbar):
2948         (WTR::AccessibilityUIElement::addNotificationListener):
2949         (WTR::AccessibilityUIElement::removeNotificationListener):
2950         (WTR::AccessibilityUIElement::textMarkerRangeForElement):
2951         (WTR::AccessibilityUIElement::textMarkerRangeLength):
2952         (WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
2953         (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
2954         (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
2955         (WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
2956         (WTR::AccessibilityUIElement::textMarkerForPoint):
2957         (WTR::AccessibilityUIElement::previousTextMarker):
2958         (WTR::AccessibilityUIElement::nextTextMarker):
2959         (WTR::AccessibilityUIElement::stringForTextMarkerRange):
2960         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h: Added.
2961         (WTR::AccessibilityUIElement::platformUIElement):
2962         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityController.idl: Added.
2963         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityTextMarker.idl: Added.
2964         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityTextMarkerRange.idl: Added.
2965         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl: Added.
2966         * WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
2967         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2968         (WTR::InjectedBundle::beginTesting):
2969         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
2970         (WTR::InjectedBundle::accessibilityController):
2971         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2972         (WTR::InjectedBundlePage::didClearWindowForFrame):
2973         * WebKitTestRunner/InjectedBundle/LayoutTestController.h:
2974         * WebKitTestRunner/InjectedBundle/gtk/LayoutTestControllerGtk.cpp:
2975         (WTR::LayoutTestController::platformName):
2976         * WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerMac.mm: Added.
2977         (WTR::AccessibilityTextMarker::isEqual):
2978         * WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerRangeMac.mm: Added.
2979         (WTR::AccessibilityTextMarkerRange::isEqual):
2980         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm: Added.
2981         (+[NSString stringWithJSStringRef:]):
2982         (-[NSString createJSStringRef]):
2983         (-[AccessibilityNotificationHandler initWithPlatformElement:]):
2984         (-[AccessibilityNotificationHandler dealloc]):
2985         (-[AccessibilityNotificationHandler _notificationReceived:]):
2986         (-[AccessibilityNotificationHandler setCallback:]):
2987         (WTR::AccessibilityUIElement::AccessibilityUIElement):
2988         (WTR::AccessibilityUIElement::~AccessibilityUIElement):
2989         (WTR::AccessibilityUIElement::isEqual):
2990         (WTR::descriptionOfValue):
2991         (WTR::attributesOfElement):
2992         (WTR::concatenateAttributeAndValue):
2993         (WTR::convertNSArrayToVector):
2994         (WTR::descriptionOfElements):
2995         (WTR::AccessibilityUIElement::getLinkedUIElements):
2996         (WTR::AccessibilityUIElement::getDocumentLinks):
2997         (WTR::AccessibilityUIElement::getChildren):
2998         (WTR::AccessibilityUIElement::getChildrenWithRange):
2999         (WTR::AccessibilityUIElement::childrenCount):
3000         (WTR::AccessibilityUIElement::elementAtPoint):
3001         (WTR::AccessibilityUIElement::indexOfChild):
3002         (WTR::AccessibilityUIElement::childAtIndex):
3003         (WTR::AccessibilityUIElement::linkedUIElementAtIndex):
3004         (WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
3005         (WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
3006         (WTR::AccessibilityUIElement::disclosedRowAtIndex):
3007         (WTR::AccessibilityUIElement::selectedChildAtIndex):
3008         (WTR::AccessibilityUIElement::selectedChildrenCount):
3009         (WTR::AccessibilityUIElement::selectedRowAtIndex):
3010         (WTR::AccessibilityUIElement::titleUIElement):
3011         (WTR::AccessibilityUIElement::parentElement):
3012         (WTR::AccessibilityUIElement::disclosedByRow):
3013         (WTR::AccessibilityUIElement::attributesOfLinkedUIElements):
3014         (WTR::AccessibilityUIElement::attributesOfDocumentLinks):
3015         (WTR::AccessibilityUIElement::attributesOfChildren):
3016         (WTR::AccessibilityUIElement::allAttributes):
3017         (WTR::AccessibilityUIElement::stringAttributeValue):
3018         (WTR::AccessibilityUIElement::numberAttributeValue):
3019         (WTR::AccessibilityUIElement::uiElementAttributeValue):
3020         (WTR::AccessibilityUIElement::boolAttributeValue):
3021         (WTR::AccessibilityUIElement::isAttributeSettable):
3022         (WTR::AccessibilityUIElement::isAttributeSupported):
3023         (WTR::AccessibilityUIElement::parameterizedAttributeNames):
3024         (WTR::AccessibilityUIElement::role):
3025         (WTR::AccessibilityUIElement::subrole):
3026         (WTR::AccessibilityUIElement::roleDescription):
3027         (WTR::AccessibilityUIElement::title):
3028         (WTR::AccessibilityUIElement::description):
3029         (WTR::AccessibilityUIElement::orientation):
3030         (WTR::AccessibilityUIElement::stringValue):
3031         (WTR::AccessibilityUIElement::language):
3032         (WTR::AccessibilityUIElement::helpText):
3033         (WTR::AccessibilityUIElement::x):
3034         (WTR::AccessibilityUIElement::y):
3035         (WTR::AccessibilityUIElement::width):
3036         (WTR::AccessibilityUIElement::height):
3037         (WTR::AccessibilityUIElement::clickPointX):
3038         (WTR::AccessibilityUIElement::clickPointY):
3039         (WTR::AccessibilityUIElement::intValue):
3040         (WTR::AccessibilityUIElement::minValue):
3041         (WTR::AccessibilityUIElement::maxValue):
3042         (WTR::AccessibilityUIElement::valueDescription):
3043         (WTR::AccessibilityUIElement::insertionPointLineNumber):
3044         (WTR::AccessibilityUIElement::isActionSupported):
3045         (WTR::AccessibilityUIElement::isEnabled):
3046         (WTR::AccessibilityUIElement::isRequired):
3047         (WTR::AccessibilityUIElement::isFocused):
3048         (WTR::AccessibilityUIElement::isSelected):
3049         (WTR::AccessibilityUIElement::isExpanded):
3050         (WTR::AccessibilityUIElement::isChecked):
3051         (WTR::AccessibilityUIElement::hierarchicalLevel):
3052         (WTR::AccessibilityUIElement::speak):
3053         (WTR::AccessibilityUIElement::ariaIsGrabbed):
3054         (WTR::AccessibilityUIElement::ariaDropEffects):
3055         (WTR::AccessibilityUIElement::lineForIndex):
3056         (WTR::AccessibilityUIElement::rangeForLine):
3057         (WTR::AccessibilityUIElement::boundsForRange):
3058         (WTR::AccessibilityUIElement::stringForRange):
3059         (WTR::AccessibilityUIElement::attributedStringForRange):
3060         (WTR::AccessibilityUIElement::attributedStringRangeIsMisspelled):
3061         (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
3062         (WTR::AccessibilityUIElement::attributesOfColumnHeaders):
3063         (WTR::AccessibilityUIElement::attributesOfRowHeaders):
3064         (WTR::AccessibilityUIElement::attributesOfColumns):
3065         (WTR::AccessibilityUIElement::attributesOfRows):
3066         (WTR::AccessibilityUIElement::attributesOfVisibleCells):
3067         (WTR::AccessibilityUIElement::attributesOfHeader):
3068         (WTR::AccessibilityUIElement::rowCount):
3069         (WTR::AccessibilityUIElement::columnCount):
3070         (WTR::AccessibilityUIElement::indexInTable):
3071         (WTR::AccessibilityUIElement::rowIndexRange):
3072         (WTR::AccessibilityUIElement::columnIndexRange):
3073         (WTR::AccessibilityUIElement::cellForColumnAndRow):
3074         (WTR::AccessibilityUIElement::horizontalScrollbar):
3075         (WTR::AccessibilityUIElement::verticalScrollbar):
3076         (WTR::AccessibilityUIElement::selectedTextRange):
3077         (WTR::AccessibilityUIElement::setSelectedTextRange):
3078         (WTR::AccessibilityUIElement::increment):
3079         (WTR::AccessibilityUIElement::decrement):
3080         (WTR::AccessibilityUIElement::showMenu):
3081         (WTR::AccessibilityUIElement::press):
3082         (WTR::AccessibilityUIElement::setSelectedChild):
3083         (WTR::AccessibilityUIElement::accessibilityValue):
3084         (WTR::AccessibilityUIElement::documentEncoding):
3085         (WTR::AccessibilityUIElement::documentURI):
3086         (WTR::AccessibilityUIElement::url):
3087         (WTR::AccessibilityUIElement::addNotificationListener):
3088         (WTR::AccessibilityUIElement::removeNotificationListener):
3089         (WTR::AccessibilityUIElement::isFocusable):
3090         (WTR::AccessibilityUIElement::isSelectable):
3091         (WTR::AccessibilityUIElement::isMultiSelectable):
3092         (WTR::AccessibilityUIElement::isVisible):
3093         (WTR::AccessibilityUIElement::isOffScreen):
3094         (WTR::AccessibilityUIElement::isCollapsed):
3095         (WTR::AccessibilityUIElement::isIgnored):
3096         (WTR::AccessibilityUIElement::hasPopup):
3097         (WTR::AccessibilityUIElement::takeFocus):
3098         (WTR::AccessibilityUIElement::takeSelection):
3099         (WTR::AccessibilityUIElement::addSelection):
3100         (WTR::AccessibilityUIElement::removeSelection):
3101         (WTR::AccessibilityUIElement::textMarkerRangeForElement):
3102         (WTR::AccessibilityUIElement::textMarkerRangeLength):
3103         (WTR::AccessibilityUIElement::previousTextMarker):
3104         (WTR::AccessibilityUIElement::nextTextMarker):
3105         (WTR::AccessibilityUIElement::stringForTextMarkerRange):
3106         (WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
3107         (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
3108         (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
3109         (WTR::AccessibilityUIElement::textMarkerForPoint):
3110         (WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
3111         * WebKitTestRunner/InjectedBundle/mac/LayoutTestControllerMac.mm:
3112         (WTR::LayoutTestController::platformName):
3113         * WebKitTestRunner/InjectedBundle/qt/LayoutTestControllerQt.cpp:
3114         (WTR::LayoutTestController::platformName):
3115         * WebKitTestRunner/InjectedBundle/win/LayoutTestControllerWin.cpp:
3116         (WTR::LayoutTestController::platformName):
3117         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3118         * WebKitTestRunner/win/InjectedBundle.vcproj:
3119
3120 2011-11-16  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3121
3122         [Qt] Fix use of config.tests
3123
3124         We were checking @buildArgs to determine if the optional argument was
3125         passed or not, but this is not the right way to do that in Perl. The
3126         right way is to not use a prototype for the function, and to pass
3127         the list as a reference (to avoid list expansion). That way we can
3128         check the number of arguments, and choose the right code path based
3129         on that.
3130
3131         We were also missing a default-value of 0 for any feature that's not
3132         set in features.prf.
3133
3134         Reviewed by Kenneth Rohde Christiansen.
3135
3136         * Scripts/build-webkit:
3137         * Scripts/webkitdirs.pm:
3138         (qtFeatureDefaults):
3139         (buildQMakeProject):
3140
3141 2011-11-16  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3142
3143         [Qt] Prospective fix for broken plugin tests
3144
3145         Don't hide symbols for the NPAPI test plugin
3146
3147         Rubber-stamped by Andreas Kling.
3148
3149         * DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
3150
3151 2011-11-16  Adam Roben  <aroben@apple.com>
3152
3153         Move filenames/line numbers off to the right edge in Leaks Viewer
3154
3155         Fixes <http://webkit.org/b/72510> Callstacks in Leaks Viewer are a little hard to read
3156         because filenames/line numbers are right next to function names
3157
3158         Reviewed by Andreas Kling.
3159
3160         * BuildSlaveSupport/build.webkit.org-config/public_html/LeaksViewer/LeaksParserImpl.js:
3161         (LeaksParserImpl.prototype._createNode): Separate the filename and line number out from the
3162         function name. Use the filename as the profile node's URL (we don't have enough info to
3163         compute a real URL currently) and the line number as the profile node's line number so the
3164         Inspector code will put them on the right side of the callstack graph.
3165
3166         * BuildSlaveSupport/build.webkit.org-config/public_html/LeaksViewer/WebInspectorShims.js:
3167         (WebInspector.displayNameForURL): Stubbed this out. For now we don't ever get any URLs
3168         passed here, just filenames.
3169
3170         (WebInspector.linkifyURLAsNode):
3171         (WebInspector.linkifyResourceAsNode):
3172         Copied and slightly modified from inspector.js.
3173
3174 2011-11-16  Adam Roben  <aroben@apple.com>
3175
3176         Make Leaks Viewer load builds from the new Lion Leaks bot
3177
3178         Fixes <http://webkit.org/b/72507> REGRESSION: Leaks Viewer no longer shows recent leaky builds
3179
3180         Reviewed by Andreas Kling.
3181
3182         * BuildSlaveSupport/build.webkit.org-config/public_html/LeaksViewer/LeaksViewer.js:
3183         (LeaksViewer._displayURLPrompt): Use the Lion Leaks bot instead of the nonexistent
3184         SnowLeopard one.
3185
3186 2011-11-16  Raphael Kubo da Costa  <kubo@profusion.mobi>
3187
3188         [EFL] Clean up the offline apps-related functions in ewk_settings.
3189         https://bugs.webkit.org/show_bug.cgi?id=72132
3190
3191         Reviewed by Kenneth Rohde Christiansen.
3192
3193         `ewk_settings_cache' and `ewk_view_setting_cache' are too common
3194         prefixes for code that is related only to the HTML5 app cache
3195         features.
3196
3197         Use `ewk_settings_application_cache' and
3198         `ewk_view_setting_application_cache' instead.
3199
3200         * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
3201         (DumpRenderTreeChrome::resetDefaultsToConsistentValues):
3202
3203 2011-11-15  Simon Hausmann  <simon.hausmann@nokia.com>
3204
3205         [Qt] Centralize hide_symbols and ensure all libs are built with symbol visibility & bsymbolic_functions
3206
3207         Reviewed by Tor Arne Vestbø.
3208
3209         * qmake/mkspecs/features/default_post.prf: Place the common hide_symbols and -Bsymbolic-functions
3210         magic here where we handle all TEMPLATE = lib .pro files (except plugins).
3211         * WebKitTestRunner/InjectedBundle/Target.pri: Mark the injected bundle as plugin, which also
3212         removes the .so.0.0.0 and just produces .so.
3213
3214 2011-11-16  Peter Beverloo  <peter@chromium.org>
3215
3216         Explicitly include unistd.h in TestNetscapePlugIn
3217         https://bugs.webkit.org/show_bug.cgi?id=72385
3218
3219         This is needed for the sleep() call in the indicateTestFailure method,
3220         which seems to be implicitly available for other platforms. This is not
3221         the case on Android.
3222
3223         Reviewed by Steve Block.
3224
3225         * DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
3226
3227 2011-11-16  Peter Beverloo  <peter@chromium.org>
3228
3229         [Chromium] Update the Android NDK version being pulled in by update-webkit-chromium
3230         https://bugs.webkit.org/show_bug.cgi?id=72384
3231
3232         Update to Android NDK r7, which was released last Friday. This adds
3233         support for RTTI and the -mimplicit-it gcc flag, which are required to
3234         respectively build ICU and Skia.
3235
3236         Reviewed by Steve Block.
3237
3238         * Scripts/update-webkit-chromium:
3239         * Scripts/webkitdirs.pm:
3240         (buildChromiumMakefile):
3241
3242 2011-11-16  Simon Hausmann  <simon.hausmann@nokia.com>
3243
3244         Unreviewed, rolling out r100266.
3245         http://trac.webkit.org/changeset/100266
3246
3247         Broke WTR.
3248
3249         * qmake/mkspecs/features/default_post.prf:
3250
3251 2011-11-16  Eric Seidel  <eric@webkit.org>
3252
3253         check-webkit-style broken by r99773: "Could not determine the port"
3254         https://bugs.webkit.org/show_bug.cgi?id=72275
3255
3256         Reviewed by Adam Barth.
3257
3258         I will continue engaging hacks, until windows improves.
3259
3260         * Scripts/webkitpy/common/host.py:
3261          - Host uses self.executive instead of self._executive like Port does.
3262          - I wanted to test this, but it mutates global state -- thus impossible to unittest at this time.
3263
3264 2011-11-16  Eric Seidel  <eric@webkit.org>
3265
3266         check-webkit-style broken by r99773: "Could not determine the port"
3267         https://bugs.webkit.org/show_bug.cgi?id=72275
3268
3269         Reviewed by Adam Barth.
3270
3271         Engage windows hacks harder.
3272
3273         This is a speculative fix for ChromiumWin.  We're now
3274         creating an SCM object much earlier, so we need to
3275         engage our "awesome" windows hacks earlier.
3276
3277         * Scripts/webkitpy/common/host.py:
3278         * Scripts/webkitpy/layout_tests/port/chromium_win.py:
3279
3280 2011-11-15  Darin Adler  <darin@apple.com>
3281
3282         DRT's uiElementAttributeValueCallback function is leaky
3283         https://bugs.webkit.org/show_bug.cgi?id=72453
3284
3285         Reviewed by Dan Bernstein.
3286
3287         * DumpRenderTree/AccessibilityUIElement.cpp:
3288         (uiElementAttributeValueCallback): Use JSRetainPtr and don't leak.
3289
3290 2011-11-14  Ryosuke Niwa  <rniwa@webkit.org>
3291
3292         Implement edit-distance based reviewer recognition algorithm
3293         https://bugs.webkit.org/show_bug.cgi?id=72351
3294
3295         Reviewed by Eric Seidel.
3296
3297         Implement an algorithm to recognize reviewer's name based on its edit distance (or more precisely
3298         its Levenshtein distance) to each reviewer's full name, first, last and middle names, and IRC nicknames.
3299         Furthermore, we cap the maximum edit distance at len(name) - 1 to avoid matching a bogus string like
3300         "build fix" to a reviewer's name (e.g. with with edit distance 9).
3301
3302         This algorithm is implemented in CommitterList.contributors_by_fuzzy_match. The function to compute
3303         the edit distance is implemented in edit_distance.py.
3304
3305         Also moved _has_valid_reviewer from ValidateReviewer to ChangeLogEntry because we can no longer rely
3306         on the presence of ChangeLogEntry.reviewer() to verify that reviewer string is nicely formatted.
3307
3308         * Scripts/webkitpy/common/checkout/changelog.py:
3309         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
3310         * Scripts/webkitpy/common/config/committers.py:
3311         * Scripts/webkitpy/common/config/committers_unittest.py:
3312         * Scripts/webkitpy/common/editdistance.py: Added.
3313         * Scripts/webkitpy/common/editdistance_unittest.py: Added.
3314         * Scripts/webkitpy/tool/steps/validatereviewer.py:
3315         * Scripts/webkitpy/tool/steps/validatereviewer_unittest.py: Removed.
3316
3317 2011-11-15  Tony Chang  <tony@chromium.org>
3318
3319         Skip a failing webkitpy test on cygwin.
3320
3321         * Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
3322
3323 2011-11-15  Sam Weinig  <sam@webkit.org>
3324
3325         TestWebKitAPI should not put its resources in the root products directory
3326         https://bugs.webkit.org/show_bug.cgi?id=72446
3327
3328         Reviewed by Anders Carlsson.
3329
3330         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3331         Change the copy resources phase to place the resources in a TestWebKitAPI.resources
3332         directory.
3333
3334         * TestWebKitAPI/Tests/WebKit2ObjC/WKBrowsingContextLoadDelegateTest.mm:
3335         (TEST_F):
3336         * TestWebKitAPI/Tests/mac/DOMRangeOfString.mm:
3337         (TestWebKitAPI::TEST):
3338         * TestWebKitAPI/Tests/mac/DeviceScaleFactorOnBack.mm:
3339         (TestWebKitAPI::DeviceScaleFactorOnBack::url):
3340         * TestWebKitAPI/Tests/mac/DynamicDeviceScaleFactor.mm:
3341         (TestWebKitAPI::DynamicDeviceScaleFactor::url):
3342         * TestWebKitAPI/mac/PlatformUtilitiesMac.mm:
3343         (TestWebKitAPI::Util::createURLForResource):
3344         Update calls to retrieve files from the bundle to look in the newly
3345         created subdirectory.
3346
3347 2011-11-15  Tony Chang  <tony@chromium.org>
3348
3349         Fix a webkitpy test caused by renaming the accelerate-video flag in r100355.
3350
3351         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
3352
3353 2011-11-15  Tony Chang  <tony@chromium.org>
3354
3355         Unreviewed, fix test-webkitpy tests.  Move the check for image results
3356         earlier.
3357
3358         * Scripts/webkitpy/layout_tests/layout_package/test_result_writer.py:
3359         * Scripts/webkitpy/layout_tests/port/webkit.py:
3360
3361 2011-11-15  James Robinson  <jamesr@chromium.org>
3362
3363         [chromium] Fix flag name in chromium DumpRenderTree for accelerated video trigger
3364         https://bugs.webkit.org/show_bug.cgi?id=72444
3365
3366         Reviewed by Adam Barth.
3367
3368         * DumpRenderTree/chromium/DumpRenderTree.cpp:
3369
3370 2011-11-15  Tony Chang  <tony@chromium.org>
3371
3372         Unreviewed, better fix for ref tests failures on SL Intel bot.
3373         Revert the previous change and return None if pixel results from
3374         either the test page or the expected page is missing.
3375
3376         * Scripts/webkitpy/layout_tests/layout_package/test_result_writer.py:
3377         * Scripts/webkitpy/layout_tests/port/webkit.py:
3378
3379 2011-11-15  James Robinson  <jamesr@chromium.org>
3380
3381         [chromium] Merge chromium-gpu layout test configurations into non-gpu versions
3382         https://bugs.webkit.org/show_bug.cgi?id=72402
3383
3384         Reviewed by Dirk Pranke.
3385
3386         Allows the compositing layout tests to run in the normal layout test run. This sets the default compositing
3387         triggers in DumpRenderTree to more closely match what we use in Chromium. There are two exceptions, canvas 2d
3388         and video (media) are still controlled by an explicit trigger so that they are true when platform=chromium-gpu
3389         and false otherwise, so that we can run the same set of tests in both configurations. This isn't necessary for
3390         the normal compositing triggers since we currently run the compositing tests in only one configuration - with
3391         compositing enabled.
3392
3393         Since the compositing tests are currently marked WONTFIX SKIP on non-GPU platforms in test_expectations.txt this
3394         patch should not impact any tests.
3395
3396         * DumpRenderTree/chromium/DumpRenderTree.cpp:
3397         (main):
3398         * DumpRenderTree/chromium/TestShell.cpp:
3399         (TestShell::TestShell):
3400         (TestShell::resetWebSettings):
3401         * DumpRenderTree/chromium/TestShell.h:
3402         (TestShell::setAcceleratedCompositingForVideoEnabled):
3403         * DumpRenderTree/chromium/WebPreferences.cpp:
3404         (WebPreferences::reset):
3405         (WebPreferences::applyTo):
3406         * DumpRenderTree/chromium/WebPreferences.h:
3407         * Scripts/webkitpy/layout_tests/port/chromium.py:
3408         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
3409         * Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
3410
3411 2011-11-15  Tony Chang  <tony@chromium.org>
3412
3413         Unreviewed, try to fix ref tests failures on SL Intel bot.
3414         It looks like ImageDiff isn't returning an image diff.
3415
3416         * Scripts/webkitpy/layout_tests/layout_package/test_result_writer.py:
3417
3418 2011-11-15  Tony Chang  <tony@chromium.org>
3419
3420         Unreviewed fix of ref-tests on GTK+.
3421         If a driver is never started, _xvfb_process is never set.
3422
3423         * Scripts/webkitpy/layout_tests/port/gtk.py:
3424
3425 2011-11-14  Tony Chang  <tony@chromium.org>
3426
3427         [NRWT] Reftests should run even when pixel tests are disabled.
3428         https://bugs.webkit.org/show_bug.cgi?id=60605
3429
3430         Reviewed by Dirk Pranke.
3431
3432         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py: Only skip ref tests if --no-ref-tests is passed.
3433             Also add an assert to make sure we get image hashes back when running ref tests.
3434         * Scripts/webkitpy/layout_tests/controllers/worker.py: Use Driver.has_crashed() instead of poll().
3435         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
3436         * Scripts/webkitpy/layout_tests/port/chromium.py: Use DriverProxy.
3437         * Scripts/webkitpy/layout_tests/port/driver.py: Add DriverProxy which does the work
3438             of starting a pixel driver if needed.  It handles the logic of sending the test
3439             to the correct driver.  Also renamed Driver.poll() to Driver.has_crashed().
3440         * Scripts/webkitpy/layout_tests/port/dryrun.py:
3441         * Scripts/webkitpy/layout_tests/port/test.py: Switch to using DriverProxy so we get test coverage.
3442         * Scripts/webkitpy/layout_tests/port/webkit.py:
3443         * Scripts/webkitpy/layout_tests/run_webkit_tests.py: Add --no-ref-tests.
3444         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py: Test --no-ref-tests.
3445
3446 2011-11-15  David Kilzer  <ddkilzer@apple.com>
3447
3448         Don't use File::Slurp for run-leaks unit tests
3449         <http://webkit.org/b/72356>
3450
3451         Reviewed by Daniel Bates.
3452
3453         * Scripts/webkitperl/run-leaks_unittest/RunLeaks.pm: Added.
3454         * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v1.0.pl:
3455         Extracted common package logic into RunLeaks.pm.  Fixed call to
3456         RunLeaks::parseLeaksOutput().
3457         * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v2.0-new.pl: Ditto.
3458         * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v2.0-old.pl: Ditto.
3459
3460 2011-11-15  Peter Kasting  <pkasting@google.com>
3461
3462         Handle svn 1.7 when detecting whether a directory is in an svn checkout.
3463         https://bugs.webkit.org/show_bug.cgi?id=72349
3464
3465         Reviewed by Adam Roben.
3466
3467         * Scripts/VCSUtils.pm:
3468         (isSVNDirectory):
3469
3470 2011-11-15  Simon Hausmann  <simon.hausmann@nokia.com>
3471
3472         [Qt] Centralize hide_symbols and ensure all libs are built with symbol visibility & bsymbolic_functions
3473
3474         Reviewed by Tor Arne Vestbø.
3475
3476         * qmake/mkspecs/features/default_post.prf: Place the common hide_symbols and -Bsymbolic-functions
3477         magic here where we handle all TEMPLATE = lib .pro files.
3478
3479 2011-11-15  Simon Hausmann  <simon.hausmann@nokia.com>
3480
3481         [Qt] Unreviewed prospective --minimal build fix.
3482
3483         * DumpRenderTree/qt/DumpRenderTree.pro: Avoid USE_SYSTEM_MALLOC=0
3484         and USE_SYSTEM_MALLOC=1 appearing in DEFINES at the same time.
3485
3486 2011-11-15  Simon Hausmann  <simon.hausmann@nokia.com>
3487
3488         [Qt] Unreviewed --minimal build fix.
3489
3490         * Scripts/build-webkit: Add to DEFINES+= from @options only if there is
3491         a define. The "coverage" option doesn't have one, causing "DEFINES+= =0"
3492         to make moc's preprocessor abort.
3493
3494 2011-11-14  Raphael Kubo da Costa  <kubo@profusion.mobi>
3495
3496         build-webkit: Accept --cmakearg to pass additional arguments to CMake.
3497         https://bugs.webkit.org/show_bug.cgi?id=72156
3498
3499         Reviewed by Daniel Bates.
3500
3501         Similar to --makearg and --qmakearg, --cmakearg lets one pass
3502         additional arguments to CMake (eg. --cmakearg="-DFOO=bar").
3503
3504         * Scripts/build-webkit:
3505         * Scripts/webkitdirs.pm:
3506         (generateBuildSystemFromCMakeProject):
3507
3508 2011-11-14  Ryosuke Niwa  <rniwa@webkit.org>
3509
3510         Improve ChangeLogEntry's reviewer parsing algorithm part 2
3511         https://bugs.webkit.org/show_bug.cgi?id=72340
3512
3513         Reviewed by Eric Seidel.
3514
3515         This patch improves the recognition of NOBODY, wrestler names, and parenthesized clauses,
3516         and prepares ChangeLogEntry to support edit-distance-based reviewer-name recognition.
3517
3518         * Scripts/webkitpy/common/checkout/changelog.py:
3519         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
3520
3521 2011-11-14  Eric Seidel  <eric@webkit.org>
3522
3523         check-webkit-style broken by r99773: "Could not determine the port"
3524         https://bugs.webkit.org/show_bug.cgi?id=72275
3525
3526         Reviewed by Adam Barth.
3527
3528         The TestExpectationsChecker was using a generic try/except block
3529         which caught all exceptions, so we didn't notice that failing
3530         to pass a Host to PortFactory was causing an exception in port instantiation.
3531         I've factored out the "lookup the port" logic into a separate function
3532         which I've now unittested.  This should fix the bug and prevent
3533         others like it from occuring the the future.
3534
3535         * Scripts/webkitpy/style/checkers/test_expectations.py:
3536         * Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
3537
3538 2011-11-14  Julien Chaffraix  <jchaffraix@webkit.org>
3539
3540         Add --css-grid-layout to build-webkit and the build systems
3541         https://bugs.webkit.org/show_bug.cgi?id=72320
3542
3543         Reviewed by Ojan Vafai.
3544
3545         * Scripts/build-webkit:
3546         Added the option.
3547
3548 2011-11-14  Sheriff Bot  <webkit.review.bot@gmail.com>
3549
3550         Unreviewed, rolling out r100192.
3551         http://trac.webkit.org/changeset/100192
3552         https://bugs.webkit.org/show_bug.cgi?id=72328
3553
3554         Caused infinite tests to fail (Requested by abarth on
3555         #webkit).
3556
3557         * Scripts/webkitpy/layout_tests/port/base.py:
3558         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
3559
3560 2011-11-14  Tony Chang  <tony@chromium.org>
3561
3562         Remove the CSS3_FLEXBOX compile time flag and enable on all ports
3563         https://bugs.webkit.org/show_bug.cgi?id=72196
3564
3565         Reviewed by Ojan Vafai.
3566
3567         * Scripts/build-webkit:
3568
3569 2011-11-14  John Yani  <vanuan@gmail.com>
3570
3571         new-run-webkit-tests should not be locale dependent https://bugs.webkit.org/show_bug.cgi?id=68691
3572         Override LOCALE to en_US.
3573
3574         Reviewed by Eric Seidel.
3575
3576         * Scripts/webkitpy/layout_tests/port/base.py:
3577
3578 2011-11-14  Julien Chaffraix  <jchaffraix@webkit.org>
3579
3580         [Chromium] build-webkit silently drops the features flags
3581         https://bugs.webkit.org/show_bug.cgi?id=72293
3582
3583         Reviewed by Tony Chang.
3584
3585         Chromium still ignores @features but now we give a warning!
3586
3587         * Scripts/build-webkit: Check if one of the features is different
3588         from the default and print a warning in this case.
3589
3590 2011-11-14  David Kilzer  <ddkilzer@apple.com>
3591
3592         run-leaks does not work on Lion?
3593         <http://webkit.org/b/71059>
3594         <rdar://problem/10428527>
3595
3596         Reviewed by Adam Roben.
3597
3598         The output of leaks(1) changed again in Lion to move the
3599         "leaks Report Version: 2.0" line from the first line of the
3600         output to just above the "Process " lines that run-leaks is
3601         interested in parsing.  This required using a more generic
3602         algorithm to find the start of the "Process " lines.
3603
3604         * Scripts/run-leaks:
3605         (parseLeaksOutput): Make the code to skip headers more generic.
3606         * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v1.0.pl: Added.
3607         * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v2.0-new.pl: Added.
3608         * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v2.0-old.pl: Added.
3609
3610 2011-11-14  Lei Zhang  <thestig@chromium.org>