WebCore: [chromium] REGRESSION(72141): Chromium fails acid3 on windows and linux
[WebKit-https.git] / WebKitTools / ChangeLog
1 2010-11-18  Daniel Bates  <dbates@rim.com>
2
3         Reviewed by Adam Roben.
4
5         update-webkit-support-libs should fall back to existing
6         WebKitSupportLibrary version if there is no internet connectivity
7         https://bugs.webkit.org/show_bug.cgi?id=49503
8
9         Fall back to existing support libraries (if present) when there is
10         no internet connection.
11
12         Currently, update-webkit-support-libs dies with an "out-of-date"
13         error when there is no internet connection because it cannot
14         retrieve versioning information from developer.apple.com. Because
15         update-webkit-support-libs fails, build-webkit fails. Instead,
16         if there is no internet connection and the support libraries are
17         present then we should warn the user and exit() with success so
18         that build-webkit can work without an internet connection.
19
20         * Scripts/update-webkit-support-libs:
21
22 2010-11-18  Steve Falkenburg  <sfalken@apple.com>
23
24         Reviewed by Adam Roben.
25
26         Debug_Internal Windows configuration is unnecessary, should be removed
27         https://bugs.webkit.org/show_bug.cgi?id=49753
28
29         * DumpRenderTree/win/DumpRenderTree.cpp:
30         * MiniBrowser/win/stdafx.h:
31         * TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
32         * WebKitTestRunner/win/TestControllerWin.cpp:
33
34 2010-11-18  Steve Falkenburg  <sfalken@apple.com>
35
36         Reviewed by Adam Roben.
37
38         Clean up vcproj errors
39         https://bugs.webkit.org/show_bug.cgi?id=49741
40
41         * MiniBrowser/MiniBrowser.vcproj:
42         * WebKitAPITest/WebKitAPITest.vcproj:
43         * WebKitTestRunner/win/InjectedBundle.vcproj:
44         * WebKitTestRunner/win/WebKitTestRunner.vcproj:
45
46 2010-11-18  Hayato Ito  <hayato@chromium.org>
47
48         Reviewed by Shinichiro Hamaji.
49
50         [NRWT] Fix a break of '--new-baseline' feature in pixel_test
51         which is caused by r72249.
52
53         https://bugs.webkit.org/show_bug.cgi?id=49751
54
55         * Scripts/webkitpy/layout_tests/test_types/image_diff.py:
56
57 2010-11-18  Adam Roben  <aroben@apple.com>
58
59         Implement layoutTestController.waitForPolicyDelegate on Windows
60
61         Fixes <http://webkit.org/b/25038> <rdar://problem/6790213>.
62
63         Reviewed by Simon Fraser.
64
65         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
66         (LayoutTestController::waitForPolicyDelegate): Implemented by porting
67         code from LayoutTestControllerMac.mm.
68
69 2010-11-18  Hayato Ito  <hayato@chromium.org>
70
71         Reviewed by Shinichiro Hamaji.
72
73         [NRWT] Fix a break of '--new-baseline' feature which is caused by r72249.
74
75         https://bugs.webkit.org/show_bug.cgi?id=49740
76
77         * Scripts/webkitpy/layout_tests/test_types/text_diff.py:
78
79 2010-11-18  Tony Chang  <tony@chromium.org>
80
81         Reviewed by Adam Barth.
82
83         run platform/chromium/plugins/refcount-leaks.html on all platforms
84         https://bugs.webkit.org/show_bug.cgi?id=49485
85
86         Add PluginObject.testObjectCount which returns the number of allocated
87         TestObjects. Add PluginObject.testCreateTestObject which allocates
88         and returns a TestObject.
89
90         Add TestObject.refCount which returns the number of refs on the
91         TestObject.
92
93         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
94         (pluginGetProperty):
95         (pluginInvoke):
96         * DumpRenderTree/TestNetscapePlugIn/TestObject.cpp:
97         (getTestObjectCount):
98         (testAllocate):
99         (testDeallocate):
100         (testGetProperty):
101         (testScriptObjectInvoke): Release a ref to a plugin object that was
102             previously leaked.
103         * DumpRenderTree/TestNetscapePlugIn/TestObject.h:
104
105 2010-11-17  Steve Falkenburg  <sfalken@apple.com>
106
107         Reviewed by Adam Roben.
108
109         WebKitTools projects (WebKitTestRunner, record-memory-win) should use vsprops for common build settings
110         https://bugs.webkit.org/show_bug.cgi?id=49711
111
112         * WebKitTestRunner/Configurations/WebKitTestRunnerCFLite.vsprops: Added.
113         * WebKitTestRunner/Configurations/WebKitTestRunnerCommon.vsprops: Added.
114         * WebKitTestRunner/Configurations/WebKitTestRunnerCoreFoundation.vsprops: Added.
115         * WebKitTestRunner/win/WebKitTestRunner.vcproj:
116         * record-memory-win/record-memory-win-common.vsprops: Added.
117         * record-memory-win/record-memory-win.vcproj:
118
119 2010-11-18  Andras Becsi  <abecsi@inf.u-szeged.hu>
120
121         Reviewed by Csaba Osztrogonác.
122
123         [Qt][WK2] Only add user agent strings to the list which aren't listed yet.
124
125         * MiniBrowser/qt/BrowserWindow.cpp:
126         (BrowserWindow::updateUserAgentList):
127
128 2010-11-17  Adam Roben  <aroben@apple.com>
129
130         Don't trigger Windows builds when chromium-win test results change
131
132         Reviewed by Mark Rowe.
133
134         * Scripts/webkitpy/common/config/build.py:
135         (_should_file_trigger_build): Changed the regular expression used to
136         search for directory names to only consider full directory names,
137         rather than matching directory names where the string we care about is
138         a suffix of the name.
139
140         * Scripts/webkitpy/common/config/build_unittest.py:
141         (ShouldBuildTest): Added a test.
142
143 2010-11-17  Hayato Ito  <hayato@chromium.org>
144
145         Reviewed by Shinichiro Hamaji.
146
147         Remove a uri member from TestInput class.
148
149         https://bugs.webkit.org/show_bug.cgi?id=49691
150
151         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
152         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
153
154 2010-11-17  Adam Roben  <aroben@apple.com>
155
156         Move FindSafari's settings into a vsprops file
157
158         Fixes <http://webkit.org/b/49699> FindSafari should use a vsprops file
159
160         Reviewed by Steve Falkenburg.
161
162         * FindSafari/FindSafari.vcproj:
163         * FindSafari/FindSafariCommon.vsprops: Added.
164
165 2010-11-17  Adam Roben  <aroben@apple.com>
166
167         Use a minimum font size of 0 in DRT on Windows
168
169         This is the Windows equivalent of r72164.
170
171         Rubber-stamped by Dave Hyatt.
172
173         * DumpRenderTree/win/DumpRenderTree.cpp:
174         (resetDefaultsToConsistentValues):
175
176 2010-11-17  Dirk Pranke  <dpranke@chromium.org>
177
178         Reviewed by Andreas Kling.
179
180         webkit-patch pretty-diff shouldn't need to be run from a checkout root in git
181         https://bugs.webkit.org/show_bug.cgi?id=49639
182
183         * Scripts/webkitpy/common/checkout/scm.py:
184
185 2010-11-17  Mihai Parparita  <mihaip@chromium.org>
186
187         Reviewed by Tony Chang.
188
189         Rebaseline server: add loupe for image diffs
190         https://bugs.webkit.org/show_bug.cgi?id=49692
191         
192         Add a loupe (magnifiying glass) for inspecting image diffs. Shows an
193         enlarged area of the expected, actual and diff images side by side.
194
195         * Scripts/webkitpy/tool/commands/data/rebaselineserver/index.html:
196         * Scripts/webkitpy/tool/commands/data/rebaselineserver/loupe.js: Added.
197         * Scripts/webkitpy/tool/commands/data/rebaselineserver/main.js:
198         * Scripts/webkitpy/tool/commands/rebaselineserver.py:
199
200 2010-11-17  Steve Falkenburg  <sfalken@apple.com>
201
202         Reviewed by Adam Roben.
203
204         WebKitLauncherWin should use vsprops for shared build settings
205         https://bugs.webkit.org/show_bug.cgi?id=49696
206
207         * WebKitLauncherWin/WebKitLauncherWin.vcproj:
208         * WebKitLauncherWin/WebKitLauncherWinCommon.vsprops: Added.
209
210 2010-11-17  Steve Falkenburg  <sfalken@apple.com>
211
212         Reviewed by Adam Roben.
213
214         WinLauncher should use vsprops for shared build settings
215         https://bugs.webkit.org/show_bug.cgi?id=49695
216
217         * WinLauncher/WinLauncher.cpp:
218         (_tWinMain):
219         (PrintView):
220         (WndProc):
221         (MyEditProc):
222         * WinLauncher/WinLauncher.vcproj:
223         * WinLauncher/WinLauncherCommon.vsprops: Added.
224
225 2010-11-17  Steve Falkenburg  <sfalken@apple.com>
226
227         Delete unused file unintentionally added in last change.
228
229         * DumpRenderTree/win/DumpRenderTreeCURL.vsprops: Removed.
230
231 2010-11-17  Steve Falkenburg  <sfalken@apple.com>
232
233         Reviewed by Adam Roben.
234
235         DumpRenderTree on Windows should use a vsprops file for shared project settings
236         https://bugs.webkit.org/show_bug.cgi?id=49690
237
238         * DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
239         * DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginCommon.vsprops: Added.
240         * DumpRenderTree/win/DumpRenderTree.vcproj:
241         * DumpRenderTree/win/DumpRenderTreeApple.vsprops: Added.
242         * DumpRenderTree/win/DumpRenderTreeCFLite.vsprops: Added.
243         * DumpRenderTree/win/DumpRenderTreeCURL.vsprops: Added.
244         * DumpRenderTree/win/DumpRenderTreeCairo.vsprops: Added.
245         * DumpRenderTree/win/DumpRenderTreeCommon.vsprops: Added.
246         * DumpRenderTree/win/ImageDiff.vcproj:
247         * DumpRenderTree/win/ImageDiffCommon.vsprops: Added.
248
249 2010-11-17  Hayato Ito  <hayato@chromium.org>
250
251         Refactor TestTypeBase.compare_output().
252
253         Introduce a TestOutput class and update compare_output() of each test
254         types so that they can take both actual and expected TestOutput objects.
255
256         https://bugs.webkit.org/show_bug.cgi?id=49431
257
258         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
259         * Scripts/webkitpy/layout_tests/layout_package/test_output.py: Added.
260         * Scripts/webkitpy/layout_tests/port/base.py:
261         * Scripts/webkitpy/layout_tests/port/chromium.py:
262         * Scripts/webkitpy/layout_tests/port/dryrun.py:
263         * Scripts/webkitpy/layout_tests/port/test.py:
264         * Scripts/webkitpy/layout_tests/port/webkit.py:
265         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
266         * Scripts/webkitpy/layout_tests/test_types/image_diff.py:
267         * Scripts/webkitpy/layout_tests/test_types/test_type_base.py:
268         * Scripts/webkitpy/layout_tests/test_types/text_diff.py:
269
270 2010-11-17  Adam Roben  <aroben@apple.com>
271
272         Make each Windows Test builder use the same OS for all its slaves
273
274         Currently each WebKit1 Windows Test builder has one Windows XP slave
275         and one Windows 7 slave. Having different OSes in a single builder
276         meant that the builders would alternate between red and green when
277         there were OS-specific failures.
278
279         Fixes <http://webkit.org/b/49688> Windows Test builders alternate
280         between red and green because of multiple OS versions
281
282         Reviewed by Mark Rowe.
283
284         * BuildSlaveSupport/build.webkit.org-config/config.json: Renamed
285         "Windows Release (Tests)" to "Windows 7 Release (Tests)", "Windows
286         Debug (Tests)" to "Windows XP Debug (Tests)", and "Windows Release
287         (WebKit2 Tests)" to "Windows 7 Release (WebKit2 Tests)". Updated the
288         builders for the two WebKit1 builders so that they would all use the
289         appropriate OS.
290
291 2010-11-17  James Robinson  <jamesr@chromium.org>
292
293         Reviewed by Dan Bernstein.
294
295         [chromium] Set minimum font size to 0 for DRT
296         https://bugs.webkit.org/show_bug.cgi?id=49677
297
298         Followup for http://trac.webkit.org/changeset/72141.
299
300         Test: http/tests/misc/acid3.html
301
302         * DumpRenderTree/chromium/WebPreferences.cpp:
303         (WebPreferences::reset):
304
305 2010-11-17  Andras Becsi  <abecsi@webkit.org>
306
307         Unreviewed build fix.
308
309         [Qt] Add missing file I forgot in r72220.
310
311         * MiniBrowser/MiniBrowser.qrc: Added.
312
313 2010-11-17  Andras Becsi  <abecsi@webkit.org>
314
315         Reviewed by Andreas Kling.
316
317         [Qt][WK2] Make it possible to set custom user agent strings in MiniBrowser.
318         https://bugs.webkit.org/show_bug.cgi?id=49627
319
320         Add a user agent dialog and a resource file for useragentlist.txt to MiniBrowser.
321
322         * MiniBrowser/MiniBrowser.qrc: Added.
323         Add it here to prevent qmake from detecting it
324         since it needs to be copied to the build directory.
325         * MiniBrowser/qt/BrowserWindow.cpp:
326         (BrowserWindow::BrowserWindow):
327         (BrowserWindow::updateUserAgentList):
328         (BrowserWindow::showUserAgentDialog):
329         * MiniBrowser/qt/BrowserWindow.h:
330         * MiniBrowser/qt/MiniBrowser.pro:
331
332 2010-11-17  Adam Roben  <aroben@apple.com>
333
334         Make changes to the Mac WebKit2 Skipped file trigger Windows builds
335
336         We use that file on Windows!
337
338         Fixes <http://webkit.org/b/49643> Changes to
339         LayoutTests/platform/mac-wk2 should trigger a Windows build, but don't
340
341         Reviewed by Steve Falkenburg.
342
343         * Scripts/webkitpy/common/config/build.py:
344         (_should_file_trigger_build): Added the mac-wk2 directory and make it
345         trigger builds on SnowLeopard and Windows.
346
347         * Scripts/webkitpy/common/config/build_unittest.py:
348         (ShouldBuildTest.test_should_build): Added a test.
349
350 2010-11-17  Satish Sampath  <satish@chromium.org>
351
352         Reviewed by Jeremy Orlow.
353
354         Clear the speech input mock explicitly before each test.
355         https://bugs.webkit.org/show_bug.cgi?id=49660
356
357         * DumpRenderTree/chromium/LayoutTestController.cpp:
358         (LayoutTestController::setMockSpeechInputResult):
359         * DumpRenderTree/chromium/LayoutTestController.h:
360         * DumpRenderTree/chromium/WebViewHost.cpp:
361         (WebViewHost::speechInputController):
362         (WebViewHost::reset): Invoke speech input mock's clearResults method.
363         * DumpRenderTree/chromium/WebViewHost.h:
364         (WebViewHost::speechInputControllerMock): Moved mock from LayoutTestController.
365
366 2010-11-17  Alexander Pavlov  <apavlov@chromium.org>
367
368         Unreviewed, specify IRC nickname in committers.py.
369
370         * Scripts/webkitpy/common/config/committers.py:
371
372 2010-11-17  Gabor Rapcsanyi  <rgabor@inf.u-szeged.hu>
373
374         Reviewed by Tony Chang.
375
376         [NRWT] Make http locking similar to perl implementation
377         https://bugs.webkit.org/show_bug.cgi?id=49187
378
379         * Scripts/webkitpy/common/system/file_lock.py: Added.
380         * Scripts/webkitpy/common/system/file_lock_unittest.py: Added.
381         * Scripts/webkitpy/layout_tests/port/http_lock.py:
382
383 2010-11-17  MORITA Hajime  <morrita@google.com>
384
385         Reviewed by Kent Tamura.
386
387         [Chromium][DRT] EventSender.contextClick() should aware spellchecking
388         https://bugs.webkit.org/show_bug.cgi?id=49366
389
390         - EvenSender: Checked WebContextMenuData.misspelledWord and added extra context menu entries
391           according to the spellchecker suggestion
392         - MockSpellCheck: add fillSuggestionList to provide fake suggestions.
393
394         test_expectations.txt will be changed after this change is ported to test_shell.
395         
396         * DumpRenderTree/chromium/EventSender.cpp:
397         (makeMenuItemStringsFor):
398         (EventSender::contextClick):
399         * DumpRenderTree/chromium/MockSpellCheck.cpp:
400         (MockSpellCheck::fillSuggestionList):
401         (MockSpellCheck::initializeIfNeeded):
402         * DumpRenderTree/chromium/MockSpellCheck.h:
403         * DumpRenderTree/chromium/WebViewHost.cpp:
404         (WebViewHost::mockSpellCheck):
405         * DumpRenderTree/chromium/WebViewHost.h:
406
407 2010-11-16  Dave Hyatt  <hyatt@apple.com>
408
409         Reviewed by Sam Weinig.
410
411         Make sure the pref for minimum font size is just explicitly set to 0 every time,
412         since the bots have 1 stuck in their plist otherwise.
413
414         * DumpRenderTree/mac/DumpRenderTree.mm:
415         (resetDefaultsToConsistentValues):
416
417 2010-11-16  Mihai Parparita  <mihaip@chromium.org>
418
419         Reviewed by Tony Chang.
420
421         Rebaseline server: compute diffs client-side
422         https://bugs.webkit.org/show_bug.cgi?id=49640
423         
424         The image diff output from the DRT is pretty bad on some ports (at
425         least the Mac one), so it's better to compute diffs on the client by
426         using <canvas>.
427
428         * Scripts/webkitpy/tool/commands/data/rebaselineserver/index.html:
429         * Scripts/webkitpy/tool/commands/data/rebaselineserver/main.css:
430         * Scripts/webkitpy/tool/commands/data/rebaselineserver/main.js:
431
432 2010-11-16  Mihai Parparita  <mihaip@chromium.org>
433
434         Reviewed by Tony Chang.
435
436         Rebaseline server: display test results
437         https://bugs.webkit.org/show_bug.cgi?id=49626
438         
439         Adds basic result display to the rebaseline server. On the Python side
440         this involves:
441         - Parsing the unexpected_results.json into a dictionary.
442         - Serving it as JSON under /results.json.
443         (the JSON -> dict -> JSON transform isn't strictly necessary right now,
444         but I'll need to have access to the parsed results on the Python side
445         for follow-up changes).
446         
447         On the web UI side this adds:
448         - Markup for display image and text results (expected, actual, diff),
449           and JS for populating it.
450         - Markup for breaking down test results by failure type and directory,
451           and JS for populating it.
452
453         * Scripts/webkitpy/tool/commands/data/rebaselineserver/index.html:
454         * Scripts/webkitpy/tool/commands/data/rebaselineserver/main.css:
455         * Scripts/webkitpy/tool/commands/data/rebaselineserver/main.js:
456         * Scripts/webkitpy/tool/commands/data/rebaselineserver/util.js: Added.
457         * Scripts/webkitpy/tool/commands/rebaselineserver.py:
458
459 2010-11-16  Dirk Pranke  <dpranke@chromium.org>
460
461         Reviewed by Ojan Vafai.
462
463         See Chromium issue http://codereview.chromium.org/5133001/ - we
464         are modifying the build bots to pass in the builder name with
465         the "GPU" string appended instead of appending it in the code.
466
467         https://bugs.webkit.org/show_bug.cgi?id=49636
468
469         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
470
471 2010-11-16  Steve Falkenburg  <sfalken@apple.com>
472
473         Reviewed by Adam Roben.
474
475         Disable LTCG for Windows Release builds. Add new Release_LTCG configuration.
476         https://bugs.webkit.org/show_bug.cgi?id=49632
477
478         * DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
479         * DumpRenderTree/win/DumpRenderTree.vcproj:
480         * DumpRenderTree/win/ImageDiff.vcproj:
481         * MiniBrowser/MiniBrowser.vcproj:
482         * TestWebKitAPI/win/TestWebKitAPI.vcproj:
483         * WebKitLauncherWin/WebKitLauncherWin.vcproj:
484         * WebKitTestRunner/win/InjectedBundle.vcproj:
485         * WebKitTestRunner/win/WebKitTestRunner.vcproj:
486         * WinLauncher/WinLauncher.vcproj:
487         * record-memory-win/record-memory-win.vcproj:
488
489 2010-11-16  Dirk Pranke  <dpranke@chromium.org>
490
491         Reviewed by Ojan Vafai.
492
493         new-run-webkit-tests: rename TestInfo to TestInput, move image hash to work thread
494
495         Rename the TestInfo class to TestInput to be clearer about its
496         function, and move the checksum-reading code into dump_render_tree_thread
497         to avoid cross-thread access.
498
499         https://bugs.webkit.org/show_bug.cgi?id=49573
500
501         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
502         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
503         * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:
504
505 2010-11-16  Dave Hyatt  <hyatt@apple.com>
506
507         Fix bustage. Remove the minimum font size pref setting in DumpRenderTree.
508
509         * DumpRenderTree/mac/DumpRenderTree.mm:
510         (resetDefaultsToConsistentValues):
511
512 2010-11-16  Stephanie Lewis  <slewis@apple.com>
513
514         Reviewed by Geoff Garen.
515
516         <rdar://problem/8624267> Leak creating offscreen webview running fast/dom tests
517
518         Use shared DeviceOrientationProviderMock. The old allocation method created a new WebDeviceOrientationProviderMock 
519         for every WebView, and the WebKit API doesn't support that ownership model.
520
521         I also fixed a leak in setMockDeviceOrientation by adding a missing release.
522
523         * DumpRenderTree/mac/DumpRenderTree.mm:
524         (createWebViewAndOffscreenWindow):
525         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
526         (LayoutTestController::setMockDeviceOrientation):
527
528 2010-11-16  Dirk Pranke  <dpranke@chromium.org>
529
530         Reviewed by Ojan Vafai.
531
532         new-run-webkit-tests: log the process id in --verbose mode
533
534         As part of the switch to multi-process mode, we should log the
535         process id when running w/ --verbose.
536
537         https://bugs.webkit.org/show_bug.cgi?id=49571
538
539         * Scripts/webkitpy/layout_tests/layout_package/printing.py:
540
541 2010-11-16  Adam Roben  <aroben@apple.com>
542
543         Only trigger Windows builds when files that we actually use on Windows
544         are changed
545
546         A new Scheduler subclass, PlatformSpecificScheduler, has been added.
547         It uses the new webkitpy.common.config.build module to determine
548         whether a particular change should trigger a build on a particular
549         platform. The Windows builders have been switched to use a
550         PlatformSpecificScheduler.
551
552         The logic to determine whether or not a particular change should
553         trigger a build on a given platform has only been implemented/tested
554         for Windows. I tried to make it easy to add more platforms in the
555         future, but I don't have enough familiarity with all platforms to be
556         able to implement it for them.
557
558         Fixes <http://webkit.org/b/49407> Windows builders kick off builds for
559         lots irrelevant changes (e.g., rebaselining Chromium test results)
560
561         Reviewed by Eric Seidel.
562
563         * BuildSlaveSupport/build.webkit.org-config/config.json: Use a
564         PlatformSpecificScheduler for the Windows builders.
565
566         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
567         (PlatformSpecificScheduler.__init__): Added. Stores our platform, sets
568         up a ChangeFilter that filters to our branch and will call through to
569         our filter method, and calls up to our base class.
570         (PlatformSpecificScheduler.filter): Calls through to
571         build.should_build to find out whether we should trigger a build for
572         this change.
573
574         * Scripts/webkitpy/common/net/build.py: Added.
575         (_should_file_trigger_build): Uses a set of directories and regexp
576         patterns to determine whether the given file should trigger a build on
577         the given platform. As mentioned earlier, this has only been
578         implemented for Windows, though I did try to make some guesses about
579         other platforms.
580         (should_build): Returns true if any of the files should trigger a
581         build on the given platform.
582
583         * Scripts/webkitpy/common/net/build_unittest.py: Added.
584         (ShouldBuildTest.test_should_build): Does some basic testing to make
585         sure we're triggering builds for the right files. It only tests
586         Windows for now, though I tried to make some guesses about other
587         platforms.
588
589 2010-11-16  Simon Hausmann  <simon.hausmann@nokia.com>
590
591         Reviewed by Andreas Kling.
592
593         [Qt] Remove synchronous QWebPage::checkPermissions signal
594         https://bugs.webkit.org/show_bug.cgi?id=46810
595
596         * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
597         (WebCore::WebPage::WebPage):
598         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
599         (LayoutTestController::grantDesktopNotificationPermission): When granting
600         permission, grant it directly on the QWebPage/Frame, that will remember it.
601         * QtTestBrowser/webpage.cpp:
602         (WebPage::WebPage):
603         * QtTestBrowser/webpage.h:
604
605
606 2010-11-16  Andras Becsi  <abecsi@inf.u-szeged.hu>
607
608         Reviewed by Csaba Osztrogonác.
609
610         [Qt] Add isPrinting and setPrinting methods to DRT's LayoutTestController.
611
612         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
613         (LayoutTestController::reset):
614         * DumpRenderTree/qt/LayoutTestControllerQt.h:
615         (LayoutTestController::isPrinting):
616         (LayoutTestController::setPrinting):
617
618 2010-11-16  Balazs Kelemen  <kbalazs@webkit.org>
619
620         Reviewed by Andreas Kling.
621
622         [Qt][WK2] Add a way to turn on tiled backing store in MiniBrowser
623         https://bugs.webkit.org/show_bug.cgi?id=49587
624
625         * MiniBrowser/qt/BrowserView.cpp:
626         (BrowserView::BrowserView): Added BackingStoreType
627         argument to ctor. Propagating it to the QGraphicsWKView.
628         * MiniBrowser/qt/BrowserView.h:
629         * MiniBrowser/qt/BrowserWindow.cpp:
630         (BrowserWindow::BrowserWindow):
631         (BrowserWindow::newWindow): Create the new BrowserWindow
632         with the same BackingStoreType that this instance has.
633         * MiniBrowser/qt/BrowserWindow.h: Added BackingStoreType member.
634         * MiniBrowser/qt/main.cpp:
635         (main): Use tiled backing store if got -tiled command line argument.
636         Avoid redundant copy of command line args.
637
638 2010-11-16  John Knottenbelt  <jknotten@chromium.org>
639
640         Reviewed by Jeremy Orlow.
641
642         Move DeviceOrientationClientMock from LayoutTestController to WebViewHost.
643         https://bugs.webkit.org/show_bug.cgi?id=48506
644
645         This ensures that there is one mock per page WebView / WebViewHost. This is a
646         design constraint of the DeviceOrientationClientMock because the m_controller
647         field can only store a pointer to a single instance of the corresponding
648         DeviceOrientationController.
649
650         Test: fast/dom/DeviceOrientation/no-page-cache.html
651
652         * DumpRenderTree/chromium/LayoutTestController.cpp:
653         (LayoutTestController::setMockDeviceOrientation):
654         (LayoutTestController::deviceOrientationClientMock):
655         * DumpRenderTree/chromium/LayoutTestController.h:
656         * DumpRenderTree/chromium/WebViewHost.cpp:
657         (WebViewHost::deviceOrientationClientMock):
658         (WebViewHost::deviceOrientationClient):
659         (WebViewHost::reset):
660         * DumpRenderTree/chromium/WebViewHost.h:
661
662 2010-11-15  Andras Becsi  <abecsi@webkit.org>
663
664         Reviewed by Andreas Kling.
665
666         [Qt][WK2] Avoid polling in WebKitTestRunner.
667         https://bugs.webkit.org/show_bug.cgi?id=49542
668
669         Make the WK2 testing session about 10-15% faster and decrease random flakiness
670         resulting from timing skew by removing the millisecond polling from TestControllerQt.
671
672         * WebKitTestRunner/TestController.cpp:
673         (WTR::TestController::didFinishLoadForFrame):
674         * WebKitTestRunner/TestController.h:
675         * WebKitTestRunner/TestInvocation.cpp:
676         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
677         * WebKitTestRunner/mac/TestControllerMac.mm:
678         (WTR::TestController::notifyDone): Add method stub.
679         * WebKitTestRunner/qt/TestControllerQt.cpp:
680         (WTR::TestControllerRunLoop::instance):
681         (WTR::TestControllerRunLoop::start):
682         (WTR::TestControllerRunLoop::stop):
683         (WTR::TestControllerRunLoop::TestControllerRunLoop):
684         (WTR::TestControllerRunLoop::timerEvent):
685         (WTR::TestController::notifyDone):
686         (WTR::TestController::platformRunUntil):
687         * WebKitTestRunner/win/TestControllerWin.cpp:
688         (WTR::TestController::notifyDone): Add method stub.
689
690 2010-11-15  Darin Adler  <darin@apple.com>
691
692         * Scripts/webkitpy/common/net/bugzilla: Added property svn:ignore.
693
694 2010-11-15  Benjamin Poulain  <benjamin.poulain@nokia.com>
695
696         Reviewed by Andreas Kling.
697
698         [Qt] [WK2] Add Ctrl+L shortcut to Qt Minibrowser
699         https://bugs.webkit.org/show_bug.cgi?id=49544
700
701         Add the shortcut to BrowserWindow.
702
703         * MiniBrowser/qt/BrowserWindow.cpp:
704         (BrowserWindow::BrowserWindow):
705         (BrowserWindow::openLocation):
706         * MiniBrowser/qt/BrowserWindow.h:
707
708 2010-11-14  David Levin  <levin@chromium.org>
709
710         Reviewed by Daniel Bates.
711
712         check-webkit-style should detect PassRefPtr usage in functions.
713         https://bugs.webkit.org/show_bug.cgi?id=49513
714
715         * Scripts/webkitpy/style/checkers/cpp.py:
716         (check_for_function_lengths): Revert a comment change that I
717          accidentally made in r71986.
718         (check_pass_ptr_usage): Added the code to do the check.
719         (process_line): Added the call to check_pass_ptr_usage.
720         (CppChecker): Added the new error category.
721         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
722         (CppStyleTestBase::perform_pass_ptr_check): Runs the new check for
723          testing purposes.
724         (PassPtrTest::*): The class/functions to unit test the new
725          functionality.
726
727 2010-11-14  David Levin  <levin@chromium.org>
728
729         Reviewed by Shinichiro Hamaji.
730
731         check-webkit-style function detection and the line count style checks should be separate.
732         https://bugs.webkit.org/show_bug.cgi?id=49512
733
734         * Scripts/webkitpy/style/checkers/cpp.py: Do the separation.
735         * Scripts/webkitpy/style/checkers/cpp_unittest.py: Adjust the test to
736           call the detection function and fix line counts in two places now that
737           the code really only counts the lines in the body of the function.
738
739 2010-11-14  Andreas Kling  <kling@webkit.org>
740
741         Reviewed by Antonio Gomes.
742
743         http/tests/plugins tests print "Unhandled variable" to stderr under Qt
744         https://bugs.webkit.org/show_bug.cgi?id=33438
745
746         Stifle "Unhandled variable" warning to match what the other
747         TestNetscapePlugin does (NPP_GetValue in TestNetscapePlugIn/main.cpp
748         simply returns NPERR_GENERIC_ERROR for unhandled variables.)
749
750         * DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:
751         (webkit_test_plugin_get_value):
752
753 2010-11-13  David Levin  <levin@chromium.org>
754
755         Reviewed by Eric Seidel.
756
757         check-webkit-style function detection crashes on functions in templates.
758         https://bugs.webkit.org/show_bug.cgi?id=49504
759
760         For example "template <bool shouldClose(const Element*)>".
761
762         * Scripts/webkitpy/style/checkers/cpp.py: If not function is detected, bail out.
763         * Scripts/webkitpy/style/checkers/cpp_unittest.py: Modified the complex
764           function detection test to expose this issue.
765
766 2010-11-12  David Levin  <levin@chromium.org>
767
768         Reviewed by Shinichiro Hamaji.
769
770         check-webkit-style function detection doesn't detect indented functions declaractions.
771         https://bugs.webkit.org/show_bug.cgi?id=49446
772
773         Indented function declarations occur inside class definitions, so
774         they are a pretty common (and worth detecting).
775
776         * Scripts/webkitpy/style/checkers/cpp.py:
777           Changed regex to allow indentation.
778           Changed the function start detection to only happen when not in a
779           function.
780           Changed function end detection to work based on matching braces
781           instead of finding a close brace at the beginning of the line.
782           Fixed close_expression to do what it says when it doesn't find
783           the close.
784         * Scripts/webkitpy/style/checkers/cpp_unittest.py: Indented function test.
785
786 2010-11-12  Daniel Bates  <dbates@rim.com>
787
788         Rubber-stamped by Nikolas Zimmermann.
789
790         Make do-file-rename rename files in the directory WebKit2.
791
792         This also makes the list of searched directories in do-file-rename
793         consistent with the list of searched directories in the script do-webcore-rename.
794
795         * Scripts/do-file-rename:
796
797 2010-11-12  Dirk Pranke  <dpranke@chromium.org>
798
799         Reviewed by James Robinson.
800
801         Attempt yet again to land the fix for bug 49360 (respecting
802         set-webkit-configuration). We need to handle the cases where
803         trying to run webkit-build-directory to find out where the
804         default configuration might be fails (that shows up on some
805         Chromium bots that apparently don't have perl installed).
806
807         https://bugs.webkit.org/show_bug.cgi?id=49360
808
809         * Scripts/webkitpy/layout_tests/port/config.py:
810         * Scripts/webkitpy/layout_tests/port/config_standalone.py: Added.
811         * Scripts/webkitpy/layout_tests/port/config_unittest.py:
812
813 2010-11-12  Mihai Parparita  <mihaip@chromium.org>
814
815         Reviewed by Adam Barth.
816
817         webkit-patch land logs commit message twice
818         https://bugs.webkit.org/show_bug.cgi?id=49482
819         
820         Don't log the comment that's used by bugzilla.close_bug_as_fixed, since
821         that's just the commit message, which we now output following the
822         actual commit.
823
824         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
825
826 2010-11-12  Tony Chang  <tony@chromium.org>
827
828         Reviewed by Adam Barth.
829
830         run platform/chromium/plugins/script-object-invoke.html on all platforms
831         https://bugs.webkit.org/show_bug.cgi?id=49280
832
833         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
834         (testScriptObjectInvoke):
835         (pluginInvoke):
836
837 2010-11-12  Mihai Parparita  <mihaip@chromium.org>
838
839         Reviewed by Adam Barth.
840
841         webkit-patch land-cowboy (and other commands) should display the committed SVN revision after landing a patch
842         https://bugs.webkit.org/show_bug.cgi?id=49471
843
844         Right now there's no indication of a successful commit.
845         
846         * Scripts/webkitpy/tool/commands/download_unittest.py:
847         * Scripts/webkitpy/tool/steps/commit.py:
848
849 2010-11-12  Kinuko Yasuda  <kinuko@chromium.org>
850
851         Reviewed by Ojan Vafai.
852
853         Include detailed test modifiers in results.json and enable incremental uploading for non-layout tests
854         https://bugs.webkit.org/show_bug.cgi?id=49354
855
856         Also moved/integrated the upload method from run_webkit_tests.py to json_results_generator.py.
857
858         * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
859         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
860         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
861         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
862
863 2010-11-12  Tony Chang  <tony@chromium.org>
864
865         Reviewed by Kent Tamura.
866
867         [chromium] Load a blank page when closing DRT WebViewHosts
868         https://bugs.webkit.org/show_bug.cgi?id=49417
869
870         In test_shell, when we close a window, we first load about:blank
871         and run GC to fire the destruction logic of the page.  In test_shell,
872         this happens in ~TestShell.  In DRT, we manage virtual windows as
873         WebViewHosts, so we need to replicate this logic in ~WebViewHost.
874
875         Managing focus is a bit trickier, since normally you would get window
876         events to reset the focus to the right window.  We do it manually
877         instead.
878
879         This fixes 2 plugin tests on DRT.
880
881         * DumpRenderTree/chromium/TestShell.cpp:
882         (TestShell::~TestShell): Move window close logic to ~WebViewHost.
883         (TestShell::closeWindow): Move widget close() to WVH destructor and
884             manage focus manually.
885         (TestShell::closeRemainingWindows): Comment typo.
886         * DumpRenderTree/chromium/WebViewHost.cpp:
887         (WebViewHost::closeWidget):
888         (invokeCloseWidget):
889         (WebViewHost::closeWidgetSoon): Close the window asynchronously (matches
890             test_shell).
891         (WebViewHost::~WebViewHost):
892         * DumpRenderTree/chromium/WebViewHost.h:
893
894 2010-11-12  David Levin  <levin@chromium.org>
895
896         Reviewed by Adam Barth.
897
898         cpp.py needs some tidying.
899         https://bugs.webkit.org/show_bug.cgi?id=49443
900
901         * Scripts/webkitpy/style/checkers/cpp.py:
902           Fix parameter ordering for iteratively_replace_matches_with_char
903           to mirror other similar functions (and improved comments, etc.)
904           Also, use a python-ism (for/else) to get rid of a variable that
905           was there to determine if something had been found in the loop.
906
907 2010-11-12  Robert Kroeger  <rjkroege@chromium.org>
908
909         Reviewed by James Robinson.
910
911         [Chromium/DRT] Make EventSendingController send complete touch events.
912         https://bugs.webkit.org/show_bug.cgi?id=49285
913
914         * DumpRenderTree/chromium/EventSender.cpp:
915         (EventSender::addTouchPoint):
916         (EventSender::updateTouchPoint):
917         (EventSender::sendCurrentTouchEvent):
918
919 2010-11-12  Mihai Parparita  <mihaip@chromium.org>
920
921         Unreviewed rollout of r71858.
922
923         Rollout out r71858 since it breaks new-run-webkit-httpd as used by the
924         NaCl tests.
925
926         * Scripts/webkitpy/layout_tests/port/config.py:
927         * Scripts/webkitpy/layout_tests/port/config_standalone.py: Removed.
928         * Scripts/webkitpy/layout_tests/port/config_unittest.py:
929
930 2010-11-12  Benjamin Poulain  <benjamin.poulain@nokia.com>
931
932         Reviewed by Kenneth Rohde Christiansen.
933
934         [Qt] TestController::runUntil doesn't honor the timeout parameter
935         https://bugs.webkit.org/show_bug.cgi?id=48941
936
937         Implement the missing timeout of WebKitTestRunner for Qt.
938
939         A QElapsedTimer has been added to RunUntilConditionLoop in order
940         to measure how long the loop has been running. When the timer
941         is bigger or equal than the timeout, the loop ends even if the
942         condition is not met.
943
944         * WebKitTestRunner/qt/TestControllerQt.cpp:
945         (WTR::RunUntilConditionLoop::start):
946         (WTR::RunUntilConditionLoop::run):
947         (WTR::RunUntilConditionLoop::timerEvent):
948         (WTR::TestController::platformRunUntil):
949
950 2010-11-11  David Levin  <levin@chromium.org>
951
952         Reviewed by Shinichiro Hamaji.
953
954         check-webkit-style function detection doesn't handle templates with spaces.
955         https://bugs.webkit.org/show_bug.cgi?id=49427
956
957         * Scripts/webkitpy/style/checkers/cpp.py: Stripped out templates when
958           finding the function name.
959         * Scripts/webkitpy/style/checkers/cpp_unittest.py: Made the test have a
960           template with a space.
961
962 2010-11-11  Ademar de Souza Reis Jr  <ademar.reis@openbossa.org>
963
964         Reviewed by Shinichiro Hamaji.
965
966         Enable check-webkit-style on Qt files
967         https://bugs.webkit.org/show_bug.cgi?id=48322
968
969         Adding exception for _q_... private slots and
970         ..._data() methods in tests
971
972         * Scripts/webkitpy/style/checker.py: enable Qt dirs, add exceptions
973         * Scripts/webkitpy/style/checker_unittest.py: improve unittests
974
975 2010-11-11  David Levin  <levin@chromium.org>
976
977         Reviewed by Shinichiro Hamaji.
978
979         check-webkit-style function detection doesn't work for templates and destructors.
980         https://bugs.webkit.org/show_bug.cgi?id=49425
981
982         * Scripts/webkitpy/style/checkers/cpp.py: Changed regex for templates and destructors.
983         * Scripts/webkitpy/style/checkers/cpp_unittest.py: Made the test hit this issue.
984
985 2010-11-11  Joone Hur  <joone@kldp.org>
986
987         Reviewed by Antonio Gomes.
988
989         [GTK][DRT] Implement LayoutTestController::nodesFromRect
990         https://bugs.webkit.org/show_bug.cgi?id=46598
991
992         Support nodesFromRect in DRT
993
994         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
995         (LayoutTestController::nodesFromRect):
996
997 2010-11-11  MORITA Hajime  <morrita@google.com>
998
999         Reviewed by Kent Tamura.
1000
1001         editing/selection/context-menu-on-text.html fails on chromium
1002         https://bugs.webkit.org/show_bug.cgi?id=45898
1003
1004         Enhance Chromium's EventSender::contextClick() to return
1005         array of menu strings. The implementation incomplete because
1006         Although actual context menu is implemented by the browser,
1007         it reflects editability of underlying context thus makes
1008         context-menu-on-text.html passed.
1009         
1010         * DumpRenderTree/chromium/EventSender.cpp:
1011         (makeMenuItemStringsFor): Added.
1012         (EventSender::contextClick): Now returns array of menu strings.
1013         * DumpRenderTree/chromium/WebViewHost.cpp:
1014         (WebViewHost::showContextMenu): Now storing given WebContextMenuData object.
1015         (WebViewHost::clearContextMenuData): Added.
1016         (WebViewHost::lastContextMenuData): Added.
1017         * DumpRenderTree/chromium/WebViewHost.h:
1018
1019 2010-11-11  Dirk Pranke  <dpranke@chromium.org>
1020
1021         Unreviewed, build fix.
1022
1023         fix build breakage caused by fix for bug 49380 (r71858).
1024
1025         config_standalone needs to ensure that the packages it needs are
1026         in sys.path.
1027
1028         https://bugs.webkit.org/show_bug.cgi?id=49419
1029
1030         * Scripts/webkitpy/layout_tests/port/config_standalone.py:
1031
1032 2010-11-11  Dirk Pranke  <dpranke@chromium.org>
1033
1034         Reviewed by Adam Roben.
1035
1036         Fix NRWT to respect set-webkit-configuration again :(
1037
1038         This change fixes a typo in config.py that was causing the wrong
1039         value to be read initially and us never actually looking into
1040         the filesystem to get the default configuration.
1041         
1042         * Scripts/webkitpy/layout_tests/port/config.py:
1043         * Scripts/webkitpy/layout_tests/port/config_standalone.py:
1044         * Scripts/webkitpy/layout_tests/port/config_unittest.py:
1045
1046 2010-11-11  Eric Seidel  <eric@webkit.org>
1047
1048         Reviewed by Adam Barth.
1049
1050         Split out Bug, Attachment and CommitterValidator from bugzilla.py
1051         https://bugs.webkit.org/show_bug.cgi?id=49403
1052
1053         CommitterValidator really had nothing to do with bugzilla.py.
1054         I've put it next to committers.py for now since its rather tied to that file.
1055
1056         * Scripts/webkitpy/common/config/committervalidator.py: Added.
1057         * Scripts/webkitpy/common/config/committervalidator_unittest.py: Added.
1058         * Scripts/webkitpy/common/net/bugzilla/__init__.py:
1059         * Scripts/webkitpy/common/net/bugzilla/attachment.py: Added.
1060         * Scripts/webkitpy/common/net/bugzilla/bug.py: Added.
1061         * Scripts/webkitpy/common/net/bugzilla/bug_unittest.py: Added.
1062         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
1063         * Scripts/webkitpy/common/net/bugzilla/bugzilla_unittest.py:
1064         * Scripts/webkitpy/tool/bot/feeders.py:
1065         * Scripts/webkitpy/tool/commands/queues.py:
1066
1067 2010-11-11  Dirk Pranke  <dpranke@chromium.org>
1068
1069         Reviewed by Eric Seidel.
1070
1071         fix missing 'pid' argument for http lockfile checking on win32
1072         https://bugs.webkit.org/show_bug.cgi?id=49363
1073
1074         * Scripts/webkitpy/common/system/executive.py:
1075
1076 2010-11-11  Eric Seidel  <eric@webkit.org>
1077
1078         Rubber-stamped by Adam Barth.
1079
1080         Move bugzilla.py into its own module in preparation for splitting one-file-per-class
1081         https://bugs.webkit.org/show_bug.cgi?id=49402
1082
1083         * Scripts/webkitpy/common/net/bugzilla/__init__.py: Added.
1084         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py: Renamed from WebKitTools/Scripts/webkitpy/common/net/bugzilla.py.
1085         * Scripts/webkitpy/common/net/bugzilla/bugzilla_unittest.py: Renamed from WebKitTools/Scripts/webkitpy/common/net/bugzilla_unittest.py.
1086
1087 2010-11-10  Chris Guillory  <chris.guillory@google.com>
1088
1089         Reviewed by Chris Fleizach.
1090
1091         Use IAccessibleComparable to compare accessibility objects.
1092         https://bugs.webkit.org/show_bug.cgi?id=49118
1093
1094         * DumpRenderTree/AccessibilityUIElement.cpp:
1095         (AccessibilityUIElement::isEqual):
1096         * DumpRenderTree/AccessibilityUIElement.h:
1097         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
1098         (comparableObject):
1099         (AccessibilityUIElement::isEqual):
1100
1101 2010-11-10  Csaba Osztrogonác  <ossy@webkit.org>
1102
1103         Reviewed by David Hyatt.
1104
1105         HTML5 Ruby support should be mandatory feature
1106         https://bugs.webkit.org/show_bug.cgi?id=49272
1107
1108         Remove Ruby as optional feature.
1109
1110         * Scripts/build-webkit:
1111
1112 2010-11-10  Adam Roben  <aroben@apple.com>
1113
1114         Print VC++ Express build logs in the same order that the projects are
1115         built
1116
1117         Fixes <http://webkit.org/b/49326> print-vse-failure-logs prints logs
1118         in an unhelpful order
1119
1120         Reviewed by Eric Seidel.
1121
1122         * Scripts/print-vse-failure-logs:
1123         (PrintVisualStudioExpressLogs._build_order): Added. Uses
1124         print-msvc-project-dependencies to figure out the order in which
1125         projects are built.
1126         (PrintVisualStudioExpressLogs._sort_buildlogs): Added. Sorts the logs
1127         based on their build order and project name.
1128         (PrintVisualStudioExpressLogs._obj_directory): Moved code to find the
1129         scripts directory from here...
1130         (PrintVisualStudioExpressLogs._scripts_directory): ...to here.
1131         (PrintVisualStudioExpressLogs.main): Sort the logs before printing
1132         them.
1133
1134 2010-11-10  Adam Roben  <aroben@apple.com>
1135
1136         Only print the interesting text from VC++ Express build logs
1137
1138         Fixes <http://webkit.org/b/49325> It's hard to find the interesting
1139         output from print-vse-failure-logs
1140
1141         Reviewed by Eric Seidel.
1142
1143         * Scripts/print-vse-failure-logs: Removed unnecessary os.path import,
1144         added newly-required imports. Removed a comment that was essentially a
1145         FIXME, and is now fixed.
1146         (PrintVisualStudioExpressLogs._relevant_text): Added. Uses
1147         BeautifulSoup to extract the relevant text from the build log.
1148         (PrintVisualStudioExpressLogs.main): Only print the relevant text.
1149
1150 2010-11-09  Mihai Parparita  <mihaip@chromium.org>
1151
1152         Reviewed by Tony Chang.
1153
1154         [Chromium] http/tests/security/XFrameOptions fail with Chromium DRT
1155         https://bugs.webkit.org/show_bug.cgi?id=49286
1156         
1157         The tests in http/tests/security/XFrameOptions started to fail after
1158         r71297, since it changed the WebViewHost::assignIdentifierToRequest
1159         logic to always assign identifiers to requests, even if we're not going
1160         to be dumping resource load callbacks at that point. These tests
1161         only call LayoutTestController.dumpResourceLoadCallbacks after the
1162         request is started, thus their expectations have "<unknown>" as the
1163         identifier. Change WebViewHost to the previous behavior, which also
1164         match the other ports'.
1165
1166         * DumpRenderTree/chromium/WebViewHost.cpp:
1167         (WebViewHost::assignIdentifierToRequest):
1168         (WebViewHost::removeIdentifierForRequest):
1169
1170 2010-11-08  Tony Chang  <tony@chromium.org>
1171
1172         Reviewed by Adam Barth.
1173
1174         run platform/chromium/plugins/return-npobject.html on all platforms
1175         https://bugs.webkit.org/show_bug.cgi?id=49103
1176
1177         This tests that we can get an NPObject returned through a method on
1178         an NPAPI Object.
1179
1180         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
1181         (testCallbackReturn):
1182         (pluginInvoke):
1183
1184 2010-11-09  Sheriff Bot  <webkit.review.bot@gmail.com>
1185
1186         Unreviewed, rolling out r71672.
1187         http://trac.webkit.org/changeset/71672
1188         https://bugs.webkit.org/show_bug.cgi?id=49276
1189
1190         It doesn't work on Chromium Windows bot (Requested by Ossy on
1191         #webkit).
1192
1193         * Scripts/webkitpy/common/system/file_lock.py: Removed.
1194         * Scripts/webkitpy/common/system/file_lock_unittest.py: Removed.
1195         * Scripts/webkitpy/layout_tests/port/http_lock.py:
1196
1197 2010-11-09  Gabor Rapcsanyi  <rgabor@inf.u-szeged.hu>
1198
1199         Reviewed by Tony Chang.
1200
1201         [NRWT] Make http locking similar to perl implementation
1202         https://bugs.webkit.org/show_bug.cgi?id=49187
1203
1204         * Scripts/webkitpy/common/system/file_lock.py: Added.
1205         * Scripts/webkitpy/common/system/file_lock_unittest.py: Added.
1206         * Scripts/webkitpy/layout_tests/port/http_lock.py:
1207
1208 2010-11-09  James Kozianski  <koz@chromium.org>
1209
1210         Reviewed by Eric Seidel.
1211
1212         Clean up imports for webkit-patch.
1213         https://bugs.webkit.org/show_bug.cgi?id=49083
1214
1215         Move some imports from commands into main.py where they are used.
1216         Move command imports into the __init__ of the commands module.
1217
1218         * Scripts/webkitpy/tool/commands/__init__.py:
1219         * Scripts/webkitpy/tool/commands/download.py:
1220         * Scripts/webkitpy/tool/commands/queues.py:
1221         * Scripts/webkitpy/tool/main.py:
1222
1223 2010-11-09  Yi Shen  <yi.4.shen@nokia.com>
1224
1225         Reviewed by Andreas Kling.
1226
1227         [Qt][QtTestBrowser] Don't erase incorrect url in the Url Bar
1228         https://bugs.webkit.org/show_bug.cgi?id=49047
1229
1230         * QtTestBrowser/mainwindow.cpp:
1231         (MainWindow::setAddressUrl):
1232
1233 2010-11-09  Andras Becsi  <abecsi@webkit.org>
1234
1235         Reviewed by Csaba Osztrogonác.
1236
1237         Improve old-run-webkit-tests --verbose to show DumpTool opening/closing
1238         https://bugs.webkit.org/show_bug.cgi?id=49252
1239
1240         * Scripts/old-run-webkit-tests:
1241
1242 2010-11-09  Csaba Osztrogonác  <ossy@webkit.org>
1243
1244         Reviewed by Tor Arne Vestbø.
1245
1246         Output of old-run-webkit-tests is buggy in verbose mode
1247         https://bugs.webkit.org/show_bug.cgi?id=49249
1248
1249         * Scripts/old-run-webkit-tests: Redundant outputs removed.
1250
1251 2010-11-08  Nicolas Dufresne  <nicolas.dufresne@collabora.co.uk>
1252
1253         Reviewed by Martin Robinson.
1254
1255         [GTK] Link with target name set does not work
1256         https://bugs.webkit.org/show_bug.cgi?id=48865
1257
1258         When a new page is created with a name (target=myFrame), the new
1259         mainFrame could not be found because they where not stored in the
1260         same PageGroup. As PageGroup are not exposed externally so the
1261         simpliest solution is to use a global page group name. This also fixes
1262         issue with visited link coloration across pages. After this change the
1263         private function webkit_web_view_set_group_name() was no longer used
1264         so it was removed completly.
1265
1266         * DumpRenderTree/gtk/DumpRenderTree.cpp:
1267         (createWebView):
1268
1269 2010-11-08  John Knottenbelt  <jknotten@chromium.org>
1270
1271         Reviewed by Kent Tamura.
1272
1273         WebViewHost::reset() uses placement new.
1274         https://bugs.webkit.org/show_bug.cgi?id=49069
1275
1276         WebViewHost is using placement destruction / new to simulate a fresh
1277         WebViewHost object at the same address. This is because the WebView remains
1278         open across tests and maintains a pointer to the WebViewHost.
1279         This change resets member variables explictly instead of the placement new dance.
1280
1281         * DumpRenderTree/chromium/WebViewHost.cpp:
1282         (WebViewHost::WebViewHost):
1283         (WebViewHost::reset):
1284
1285 2010-11-08  Dirk Pranke <dpranke@chromium.org>
1286
1287         Reviewed by Eric Seidel.
1288
1289         Fix the webkit_base_dir logic in webkitpy/layout_tests/port/config.py. 
1290         It turns out that NRWT can't use the code in scm.find_checkout_root()
1291         because the Chromium bots don't do full checkouts of the WebKit
1292         tree; they only check out subdirectories like WebKitTools/Scripts.
1293         Until we can figure out a better approach for this, I've
1294         restored the base_dir-detecting code from NRWT, which works in
1295         any directory tree, scm or no.
1296
1297         This also restores the files modified in r71475 and r71474.
1298
1299         https://bugs.webkit.org/show_bug.cgi?id=49151
1300
1301         * WebKitTools/Scripts/webkitpy/layout_tests/port/config.py
1302         * WebKitTools/Scripts/webkitpy/layout_tests/port/config_unittest.py
1303
1304 2010-11-08  Eric Seidel  <eric@webkit.org>
1305
1306         Reviewed by Adam Barth.
1307
1308         webkit-patch failure-reason explodes if a build is missing
1309         https://bugs.webkit.org/show_bug.cgi?id=49195
1310
1311         This is likely a recent regression.  Adding a unit test for this case.
1312
1313         * Scripts/webkitpy/common/net/buildbot.py:
1314         * Scripts/webkitpy/common/net/buildbot_unittest.py:
1315
1316 2010-11-08  Dan Bernstein  <mitz@apple.com>
1317
1318         Reviewed by Darin Adler.
1319
1320         Ignore the system scrollbar setting.
1321
1322         * DumpRenderTree/mac/DumpRenderTree.mm:
1323         (resetDefaultsToConsistentValues): Set the scrollbar default.
1324
1325 2010-11-05  Adam Roben  <aroben@apple.com>
1326
1327         Make webkitpy.common.system.executive_unittest pass when running under
1328         Win32 Python
1329
1330         Fixes <http://webkit.org/b/49033>.
1331
1332         Reviewed by Dave Levin and Eric Seidel.
1333
1334         * Scripts/webkitpy/common/system/executive.py:
1335         (Executive._run_command_with_teed_output): Pass the arguments through
1336         encode_argument_if_needed rather than using Cygwin-specific code here.
1337         (Executive.run_and_throw_if_fail): Use child_process_encoding to decode
1338         the output.
1339         (Executive.run_command): Use encode_argument_if_needed to encode the
1340         arguments and child_process_encoding to decode the output.
1341         (Executive._child_process_encoding): Returns the encoding that should be
1342         used when communicating with child processes. On Windows we use mbcs,
1343         which maps to the current code page. On all other platforms we use
1344         UTF-8.
1345         (Executive._should_encode_child_process_arguments): Returns True if
1346         arguments to child processes need to be encoded. This is currently
1347         only needed on Cygwin and Win32 Python 2.x.
1348         (Executive._encode_argument_if_needed): Encode the argument using
1349         child_process_encoding if we need to encode arguments to child
1350         processes on this platform.
1351
1352         * Scripts/webkitpy/common/system/executive_unittest.py:
1353         (never_ending_command): Added. Returns arguments to run a command that
1354         will not quit until we kill it. On Windows we use wmic, on other
1355         platforms we use yes.
1356         (ExecutiveTest.test_run_command_with_unicode): Changed to expect the
1357         mbcs encoding to be used and for output from the child processes to
1358         have been roundtripped through encode/decode on Win32 Python. When
1359         UTF-8 is the encoding the roundtripping is undetectable, but with mbcs
1360         it's possible that some characters will not be able to be converted
1361         and will be replaced by question marks; the round-tripping allows us
1362         to expect this result.
1363
1364         (ExecutiveTest.test_kill_process):
1365         (ExecutiveTest.test_kill_all):
1366         Use never_ending_command instead of invoking "yes" directly. Expect an
1367         exit code of 1 when using Win32 Python, as that's what seems to happen.
1368
1369 2010-11-08  Adam Roben  <aroben@apple.com>
1370
1371         Roll out r71532
1372
1373         It broke the build for Cygwin 1.7 installs. Cygwin 1.7's default
1374         .bashrc unsets %TEMP%, which broke copy-tools.cmd.
1375
1376         * Scripts/webkitdirs.pm:
1377
1378 2010-11-08  Tony Chang  <tony@chromium.org>
1379
1380         Reviewed by Adam Barth.
1381
1382         run platform/chromium/plugins/nested-plugin-objects.html on all platforms
1383         https://bugs.webkit.org/show_bug.cgi?id=49094
1384
1385         This tests that objects created by plugins are proplery cleaned up.
1386
1387         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
1388         (testPassTestObject):
1389         (pluginInvoke):
1390         * DumpRenderTree/TestNetscapePlugIn/TestObject.cpp:
1391         (testAllocate):
1392         (testDeallocate):
1393         (testGetProperty):
1394         (testConstruct):
1395
1396 2010-11-08  Adam Roben  <aroben@apple.com>
1397
1398         Mark Windows builds triggered from Perl as being non-interactive
1399
1400         This affects whether some of our scripts will show alerts vs. printing
1401         to the build log.
1402
1403         Fixes <http://webkit.org/b/49181> Windows build fail mysteriously when
1404         .vsprops files are updated
1405
1406         Reviewed by Steve Falkenburg.
1407
1408         * Scripts/webkitdirs.pm:
1409         (buildVisualStudioProject): Set WEBKIT_NONINTERACTIVE_BUILD to 1.
1410
1411 2010-11-08  Gabor Rapcsanyi  <rgabor@inf.u-szeged.hu>
1412
1413         Reviewed by Ojan Vafai.
1414
1415         Make http locking default in NRWT.
1416         https://bugs.webkit.org/show_bug.cgi?id=48053
1417
1418         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
1419         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1420
1421 2010-11-08  Gabor Rapcsanyi  <rgabor@inf.u-szeged.hu>
1422
1423         Reviewed by Csaba Osztrogonác.
1424
1425         [NRWT] If the http lock fails we shouldn't do any locking
1426         https://bugs.webkit.org/show_bug.cgi?id=49164
1427
1428         If something goes wrong with the locking, the test should keep going.
1429
1430         * Scripts/webkitpy/layout_tests/port/http_lock.py:
1431
1432 2010-11-08  Adam Roben  <aroben@apple.com>
1433
1434         Switch back to using kCGImageAlphaPremultipliedFirst when generating
1435         pixel dumps on Windows
1436
1437         I changed this behavior in r71418 thinking that it was required for
1438         getting plugins to show up in pixel dumps. But it doesn't seem to be
1439         necessary, and was making it impossible to compare new Windows pixel
1440         dumps with existing Windows or Mac pixel dumps (because ImageDiff won't
1441         compare an image with alpha to an image without alpha).
1442
1443         Fixes <http://webkit.org/b/49172> REGRESION (r71418): Can't compare
1444         new Windows pixel results to existing Windows or Mac results
1445
1446         Reviewed by Antti Koivisto.
1447
1448         * DumpRenderTree/win/PixelDumpSupportWin.cpp:
1449         (createBitmapContextFromWebView): Replaced kCGImageAlphaNoneSkipFirst
1450         with kCGImageAlphaPremultipliedFirst.
1451
1452 2010-11-08  Csaba Osztrogonac  <ossy@webkit.org>
1453
1454         Unreviewed, rolling out r71466.
1455         http://trac.webkit.org/changeset/71466
1456         https://bugs.webkit.org/show_bug.cgi?id=48865
1457
1458         It broke layout tests on GTK bots.
1459
1460         * DumpRenderTree/gtk/DumpRenderTree.cpp:
1461         (createWebView):
1462
1463 2010-11-08  Gabor Rapcsanyi  <rgabor@inf.u-szeged.hu>
1464
1465         Reviewed by Csaba Osztrogonác.
1466
1467         Enable running of Qt API tests on BuildBot
1468         https://bugs.webkit.org/show_bug.cgi?id=49004
1469
1470         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1471
1472 2010-11-08  Eric Seidel  <eric@webkit.org>
1473
1474         Reviewed by Adam Barth.
1475
1476         Add clean-review-queue command to remove closed bugs from the webkit.org/pending-review
1477         https://bugs.webkit.org/show_bug.cgi?id=49160
1478
1479         Bugzilla doesn't automatically remove r? when a bug gets closed.
1480         This script takes care of that for webkit.org.
1481
1482         * Scripts/webkitpy/common/net/bugzilla.py:
1483         * Scripts/webkitpy/tool/commands/upload.py:
1484
1485 2010-11-07  Fumitoshi Ukai  <ukai@chromium.org>
1486
1487         Unreviewed, rolling out r71474.
1488         http://trac.webkit.org/changeset/71474
1489         https://bugs.webkit.org/show_bug.cgi?id=48280
1490
1491         breaks chromium webkit tests
1492         https://bugs.webkit.org/show_bug.cgi?id=49151
1493
1494         * Scripts/webkitpy/layout_tests/port/base.py:
1495         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
1496         * Scripts/webkitpy/layout_tests/port/config.py:
1497         * Scripts/webkitpy/layout_tests/port/config_unittest.py:
1498         * Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
1499         * Scripts/webkitpy/layout_tests/port/webkit.py:
1500         * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:
1501         * Scripts/webkitpy/tool/mocktool.py:
1502
1503 2010-11-07  Fumitoshi Ukai  <ukai@chromium.org>
1504
1505         Unreviewed, rolling out r71475.
1506         http://trac.webkit.org/changeset/71475
1507  
1508         breaks chromium webkit tests
1509         https://bugs.webkit.org/show_bug.cgi?id=49151
1510
1511         * Scripts/webkitpy/common/newstringio.py: Removed.
1512         * Scripts/webkitpy/common/newstringio_unittest.py: Removed.
1513         * Scripts/webkitpy/common/system/executive_mock.py: Removed.
1514         * Scripts/webkitpy/common/system/filesystem_mock.py: Removed.
1515         * Scripts/webkitpy/layout_tests/port/config_mock.py: Removed.
1516
1517 2010-11-06  Dirk Pranke  <dpranke@chromium.org>
1518
1519         Unreviewed, build fix.
1520
1521         Add files inexplicably not committed in r71474 as part of the
1522         fix for bug 48280.
1523
1524         * Scripts/webkitpy/common/newstringio.py: Added.
1525         * Scripts/webkitpy/common/newstringio_unittest.py: Added.
1526         * Scripts/webkitpy/common/system/executive_mock.py: Added.
1527         * Scripts/webkitpy/common/system/filesystem_mock.py: Added.
1528         * Scripts/webkitpy/layout_tests/port/config_mock.py: Added.
1529
1530 2010-11-06  Dirk Pranke  <dpranke@chromium.org>
1531
1532         Reviewed by Eric Siedel.
1533
1534         new-run-webkit-tests: update port/base and port/webkit to use the
1535         new FileSystem and Config abstractions, pulling more logic out of
1536         the base Port classes into separate, mockable objects.
1537
1538         Also create a MockFileSystem object, a MockConfig object, move
1539         MockExecutive into common/system to be next to executive, and
1540         update the config object to use a FileSystem.
1541
1542         https://bugs.webkit.org/show_bug.cgi?id=48280
1543
1544         * Scripts/webkitpy/common/newstringio.py: Added.
1545         * Scripts/webkitpy/common/newstringio_unittest.py: Added.
1546         * Scripts/webkitpy/common/system/executive_mock.py: Added.
1547         * Scripts/webkitpy/common/system/filesystem_mock.py: Added.
1548         * Scripts/webkitpy/layout_tests/port/base.py:
1549         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
1550         * Scripts/webkitpy/layout_tests/port/config.py:
1551         * Scripts/webkitpy/layout_tests/port/config_mock.py:
1552         * Scripts/webkitpy/layout_tests/port/config_unittest.py:
1553         * Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
1554         * Scripts/webkitpy/layout_tests/port/webkit.py:
1555         * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:
1556         * Scripts/webkitpy/tool/mocktool.py:
1557
1558 2010-11-06  Dirk Pranke  <dpranke@chromium.org>
1559
1560         Unreviewed, build breakage.
1561
1562         Apparently I uploaded the wrong version of the file to fix 49122
1563         and neither Eric or I noticed - it was missing a dirname() call.
1564         Fixing ...
1565
1566         https://bugs.webkit.org/show_bug.cgi?id=49122
1567
1568         * Scripts/webkitpy/common/checkout/scm.py:
1569
1570 2010-11-06  Dirk Pranke  <dpranke@chromium.org>
1571
1572         Reviewed by Eric Seidel.
1573
1574         webkitpy/tool/* unittests change cwd and don't clean up properly
1575
1576         https://bugs.webkit.org/show_bug.cgi?id=49122
1577
1578         * Scripts/webkitpy/common/checkout/scm.py:
1579
1580 2010-11-05  Chris Marrin  <cmarrin@apple.com>
1581
1582         Reviewed by Simon Fraser.
1583
1584         suspendAnimations/resumeAnimations not present in WebKit2
1585         https://bugs.webkit.org/show_bug.cgi?id=49109
1586
1587         * WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
1588         * WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
1589         (WTR::LayoutTestController::suspendAnimations):
1590         (WTR::LayoutTestController::resumeAnimations):
1591         * WebKitTestRunner/InjectedBundle/LayoutTestController.h:
1592
1593 2010-11-05  Tony Chang  <tony@chromium.org>
1594
1595         Reviewed by David Levin.
1596
1597         cleanup style in TestNetscapePlugIn/PluginObject.cpp
1598         https://bugs.webkit.org/show_bug.cgi?id=49044
1599
1600         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
1601         (getPluginClass):
1602         (pluginGetProperty):
1603         (pluginSetProperty):
1604         (variantToIdentifier):
1605         (testCallback):
1606         (getURL):
1607         (getURLNotify):
1608         (testInvokeDefault):
1609         (testGetProperty):
1610         (testDocumentOpen):
1611         (testWindowOpen):
1612         (pluginInvoke):
1613         (handleCallback):
1614         (notifyStream):
1615         * DumpRenderTree/TestNetscapePlugIn/PluginObject.h:
1616
1617 2010-11-05  Eric Seidel  <eric@webkit.org>
1618
1619         Reviewed by David Levin.
1620
1621         Add QueueStatusServer/__init__.py so others can run the QueueStatusServer tests
1622         https://bugs.webkit.org/show_bug.cgi?id=49032
1623
1624         I wrote this file as part of bug 47847, but I forgot to commit it.
1625         No one else noticed it missing because test-webkitpy knows how
1626         to recover in the case where it can't import QueueStatusServer
1627         (which generally occurs due to not having installed the AppEngine SDK).
1628
1629         * QueueStatusServer/__init__.py: Added.
1630         * QueueStatusServer/model/workitems_unittest.py:
1631          - Remove a test which fails.  This was probably landed (by me)
1632            from my other machine, which since this __init__.py was missing
1633            I never noticed the failure and landed this invalid test.
1634            Sadly we can't really test remove_work_item as it depends
1635            on .key() working.  .key() will throw unless the object
1636            has already been saved it seems.
1637            This may be a mis-design in our remove_work_item implementation,
1638            but for now, just removing the test.
1639
1640 2010-11-04  Adam Roben  <aroben@apple.com>
1641
1642         Teach check-webkit-style about TestNetscapePlugIn
1643
1644         Fixes <http://webkit.org/b/49030> check-webkit-style is ignorant of
1645         TestNetscapePlugIn's coding conventions
1646
1647         Reviewed by John Sullivan.
1648
1649         * Scripts/webkitpy/style/checker.py: Lump TestNetscapePlugIn in with
1650         WebKitAPITest and TestWebKitAPI in having different include order and
1651         naming conventions than WebCore. Added some comments about why the
1652         exceptions exist.
1653
1654 2010-11-04  Adam Roben  <aroben@apple.com>
1655
1656         Add a test that shows that windowed plugins are able to paint
1657
1658         Somehow we never had a test for this before.
1659
1660         Fixes <http://webkit.org/b/49029> Should add a test that shows
1661         windowed plugins can paint
1662
1663         Reviewed by Jon Honeycutt.
1664
1665         * DumpRenderTree/TestNetscapePlugIn/Tests/win/DrawsGradient.cpp: Added.
1666         (DrawsGradient::DrawsGradient):
1667         (DrawsGradient::wndProc): We handle the WM_PAINT and WM_PRINTCLIENT messages.
1668
1669         (DrawsGradient::onPaint):
1670         (DrawsGradient::onPrintClient):
1671         These both just call through to paint.
1672
1673         (DrawsGradient::paint): Fills our client area with some gradients.
1674
1675         * DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj: Link
1676         against Msimg32.lib for ::GradientFill and added DrawsGradient.
1677
1678         * DumpRenderTree/win/PixelDumpSupportWin.cpp:
1679         (createBitmapContextFromWebView): Use WM_PRINT instead of
1680         WM_PRINTCLIENT so that ::DefWindowProc will send
1681         WM_PRINT/WM_PRINTCLIENT messages to the WebView's child windows.
1682         Replaced kCGImageAlphaPremultipledFirst with kCGImageAlphaNoneSkipFirst
1683         because GDI doesn't support alpha and kCGImageBitmapOrder32Little with
1684         kCGImageBitmapOrder32Host because, who knows, maybe someday Windows
1685         will run on a big-endian platform.
1686
1687 2010-11-04  Adam Roben  <aroben@apple.com>
1688
1689         Extract much of NPNInvalidateRectInvalidatesWindow's code into a
1690         WindowedPluginTest base class
1691
1692         The base class takes care of subclassing the plugin's window so that a
1693         custom WNDPROC is called. This will make it easier to write tests that
1694         need to handle window messages.
1695
1696         Fixes <http://webkit.org/b/49028> It's hard to write a PluginTest with
1697         a custom WNDPROC
1698
1699         Reviewed by Jon Honeycutt.
1700
1701         * DumpRenderTree/TestNetscapePlugIn/Tests/win/NPNInvalidateRectInvalidatesWindow.cpp:
1702         (NPNInvalidateRectInvalidatesWindow::NPNInvalidateRectInvalidatesWindow):
1703         (NPNInvalidateRectInvalidatesWindow::NPP_SetWindow):
1704         (NPNInvalidateRectInvalidatesWindow::wndProc):
1705         (NPNInvalidateRectInvalidatesWindow::testInvalidateRect):
1706         Moved code from here to WindowedPluginTest. Changed to use window()
1707         instead of m_window.
1708
1709         * DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
1710         Added WindowedPluginTest and added TestNetscapePlugIn/win to the
1711         include path. Also reordered the include path to make a little more
1712         sense and simplified the entry that added TestNetscapePlugIn itself to
1713         the include path.
1714
1715         * DumpRenderTree/TestNetscapePlugIn/win/WindowedPluginTest.cpp: Added.
1716         (WindowedPluginTest::WindowedPluginTest):
1717         (WindowedPluginTest::NPP_SetWindow):
1718         (WindowedPluginTest::staticWndProc):
1719         * DumpRenderTree/TestNetscapePlugIn/win/WindowedPluginTest.h: Added.
1720         (WindowedPluginTest::window):
1721         Code came from NPNInvalidateRectInvalidatesWindow.
1722
1723 2010-11-04  Adam Roben  <aroben@apple.com>
1724
1725         Add a plugin test to show that windowed plugins are clipped correctly
1726
1727         Fixes <http://webkit.org/b/49024> <rdar://problem/8487847> Windowed
1728         plugins aren't clipped in WebKit2 on Windows
1729
1730         Reviewed by Jon Honeycutt.
1731
1732         * DumpRenderTree/TestNetscapePlugIn/Tests/win/WindowRegionIsSetToClipRect.cpp: Added.
1733         (WindowRegionIsSetToClipRect::WindowRegionIsSetToClipRect): Initialize members.
1734         (WindowRegionIsSetToClipRect::NPP_SetWindow): Check that our window
1735         region matches the clip rect we know we should have based on
1736         window-region-is-set-to-clip-rect.html, and check that our window class
1737         doesn't have the CS_PARENTDC style.
1738
1739         * DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
1740         Added WindowRegionIsSetToClipRect.
1741
1742 2010-11-05  Alejandro G. Castro  <alex@igalia.com>
1743
1744         Reviewed by Martin Robinson.
1745
1746         [GTK] Avoid font hinting in the DRT
1747         https://bugs.webkit.org/show_bug.cgi?id=48548
1748
1749         Change the settings to avoid font hinting, it was causing
1750         different results depending on the distribution.
1751
1752         * DumpRenderTree/gtk/DumpRenderTree.cpp:
1753         (initializeGtkFontSettings):
1754         * DumpRenderTree/gtk/fonts/fonts.conf:
1755
1756 2010-11-05  Eric Seidel  <eric@webkit.org>
1757
1758         Reviewed by Adam Barth.
1759
1760         build-webkit spams system.log by repeatedly checking for PBXProductDirectory in com.apple.Xcode
1761         https://bugs.webkit.org/show_bug.cgi?id=49051
1762
1763         This is a speculative fix.  The unit tests cover these methods, however
1764         I don't know if this will fully stop the system.log spam.
1765
1766         * Scripts/webkitpy/layout_tests/port/base.py:
1767         * Scripts/webkitpy/layout_tests/port/webkit.py:
1768
1769 2010-11-05  Eric Seidel  <eric@webkit.org>
1770
1771         Reviewed by Adam Barth.
1772
1773         Add basic support for showing bot id on /queue-status/ pages
1774         https://bugs.webkit.org/show_bug.cgi?id=49037
1775
1776         This support is really simple.  Eventually we'll want to
1777         show the bot id in the lock table too, but we don't have
1778         that information stored in the server yet.
1779
1780         * QueueStatusServer/handlers/queuestatus.py:
1781         * QueueStatusServer/handlers/queuestatus_unittest.py: Added.
1782         * QueueStatusServer/templates/includes/singlequeuestatus.html:
1783
1784 2010-11-04  Dirk Pranke  <dpranke@chromium.org>
1785
1786         Reviewed by Adam Barth.
1787
1788         Create a filesystem wrapper that we can use to enforce
1789         particular conventions and use for mocking and dependency
1790         injection down the line.
1791
1792         https://bugs.webkit.org/show_bug.cgi?id=48144
1793
1794         * Scripts/webkitpy/common/system/filesystem.py: Added.
1795         * Scripts/webkitpy/common/system/filesystem_unittest.py: Added.
1796
1797 2010-11-04  Mihai Parparita  <mihaip@chromium.org>
1798
1799         Reviewed by Tony Chang.
1800
1801         run_webkit_tests_unittest fails under Python 2.5
1802         https://bugs.webkit.org/show_bug.cgi?id=49043
1803         
1804         Switch from itertools.chain.from_iterable (which was added in 2.6)
1805         to using itertools.chain directly.
1806
1807         * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:
1808
1809 2010-11-04  Mihai Parparita  <mihaip@chromium.org>
1810
1811         Unreviewed fix to webkit-patch rebaseline-server so that it runs under
1812         Python 2.5 (it needs an import to use the with statement).
1813
1814         * Scripts/webkitpy/tool/commands/rebaselineserver.py:
1815
1816 2010-11-04  Dirk Pranke  <dpranke@chromium.org>
1817
1818         Reviewed by Adam Barth.
1819
1820         new-run-webkit-tests: split out webkit-specific configuration stuff into a new module
1821
1822         The current NRWT code has webkit-specific configuration code (like
1823         _script_path, default configuration, etc.) mixed in with
1824         layout-test-specific stuff in port/base. The configuration code
1825         should be split out into a separate module for easier mocking,
1826         testing, and isolation.
1827
1828         https://bugs.webkit.org/show_bug.cgi?id=48264
1829
1830         * Scripts/webkitpy/layout_tests/port/config.py: Added.
1831         * Scripts/webkitpy/layout_tests/port/config_unittest.py: Added.
1832
1833 2010-11-04  Mihai Parparita  <mihaip@chromium.org>
1834
1835         Reviewed by Tony Chang.
1836
1837         Rebaseline server: initial framework
1838         https://bugs.webkit.org/show_bug.cgi?id=48892
1839         
1840         Adds the basic framework for the rebaseline server (details at 
1841         http://webkit.org/b/47761). Includes the rebaseline-server webkit-patch
1842         command, which starts an HTTP server that can serve static files or
1843         invoke handler methods on a class.
1844
1845         * Scripts/webkitpy/tool/commands/__init__.py:
1846         * Scripts/webkitpy/tool/commands/data/rebaselineserver/index.html: Added.
1847         * Scripts/webkitpy/tool/commands/data/rebaselineserver/main.css: Added.
1848         * Scripts/webkitpy/tool/commands/data/rebaselineserver/main.js: Added.
1849         * Scripts/webkitpy/tool/commands/rebaselineserver.py: Added.
1850
1851 2010-11-04  Dirk Pranke  <dpranke@chromium.org>
1852
1853         Reviewed by James Robinson.
1854
1855         new-run-webkit-tests wasn't using DRT by default for
1856         --platform chromium-gpu
1857
1858         The default value was set to False instead of None, which meant
1859         that the platform specific logic wasn't firing to change the
1860         value to True (b/c we were afraid we'd be overriding the user
1861         preference).
1862
1863         https://bugs.webkit.org/show_bug.cgi?id=49038
1864
1865         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1866
1867 2010-11-04  Tony Chang  <tony@chromium.org>
1868
1869         Reviewed by Adam Barth.
1870
1871         make platform/chromium/plugins/multiple-plugins.html pass on all platforms
1872         https://bugs.webkit.org/show_bug.cgi?id=49026
1873
1874         Have the testObject.bar property return the string "bar".  This lets
1875         us run and pass platform/chromium/plugins/multiple-plugins.html on all
1876         platforms.
1877
1878         * DumpRenderTree/TestNetscapePlugIn/TestObject.cpp:
1879         (testGetProperty):
1880
1881 2010-11-04  Mihai Parparita  <mihaip@chromium.org>
1882
1883         Reviewed by Tony Chang.
1884
1885         NRWT doesn't have good test coverage for --run-chunk, --batch-size, --run-part, etc.
1886         https://bugs.webkit.org/show_bug.cgi?id=48878
1887         
1888         Add get_tests_run so that it's easy to see which tests get run (and with
1889         what batching) for a given flag combination. Flesh out the various
1890         test cases that have FIXMEs.
1891         
1892         Also fixes an off-by-one error (batch sizes were one larger than 
1893         expected) and makes --run-part also have wraparound behavior, like
1894         --run-chunk.
1895
1896         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
1897         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1898         * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:
1899
1900 2010-11-04  Erik Arvidsson  <arv@chromium.org>
1901
1902         Reviewed by Dimitri Glazkov.
1903
1904         Support box-sizing without the vendor prefix
1905         https://bugs.webkit.org/show_bug.cgi?id=36713
1906
1907         Based on patch by Peter Beverloo <peter@lvp-media.com>
1908
1909         * iExploder/htdocs/cssproperties.in: Change -webkit-box-sizing to box-sizing.
1910
1911 2010-11-04  Csaba Osztrogonác  <ossy@webkit.org>
1912
1913         Unreviewed rollout r71340, because it broke Chromium Windows bot.
1914
1915         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
1916         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1917
1918 2010-11-04  Gabor Rapcsanyi  <rgabor@inf.u-szeged.hu>
1919
1920         Reviewed by Ojan Vafai.
1921
1922         Make http locking default in NRWT.
1923         https://bugs.webkit.org/show_bug.cgi?id=48053
1924
1925         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
1926         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1927
1928 2010-11-04  Gabor Rapcsanyi  <rgabor@inf.u-szeged.hu>
1929
1930         Reviewed by Eric Seidel.
1931
1932         [NRWT] Clear invalid http locks on Windows platform as well
1933         https://bugs.webkit.org/show_bug.cgi?id=48515
1934
1935         * Scripts/webkitpy/common/system/executive.py:
1936         * Scripts/webkitpy/common/system/executive_unittest.py:
1937         * Scripts/webkitpy/layout_tests/port/http_lock.py:
1938
1939 2010-11-02  Adam Roben  <aroben@apple.com>
1940
1941         Reduce our dependence on coreutils when running Python tests
1942
1943         This patch introduces versions of the standard echo and cat utilities
1944         implemented in Python. They are probably missing features of their
1945         coreutils equivalents, but they can do what's necessary for our Python
1946         tests. This is useful on Windows, where these utilities typically
1947         aren't available.
1948
1949         Fixes <http://webkit.org/b/48883> executive_unittest relies on echo
1950         and cat utilities from coreutils, which are not present on Windows
1951
1952         Reviewed by Eric Seidel.
1953
1954         * Scripts/webkitpy/common/system/executive_unittest.py: Changed to use
1955         our Python-based echo and cat.
1956
1957         * Scripts/webkitpy/common/system/fileutils.py: Added.
1958         (make_stdout_binary): On Windows, puts sys.stdout into binary mode so
1959         that \n won't be translated into \r\n. I couldn't think of a good way
1960         to test this directly without touching the filesystem, but it is tested
1961         indirectly by echo_unittest.
1962
1963         * Scripts/webkitpy/test/cat.py: Added.
1964         (command_arguments): Returns a list for invoking cat with the given arguments.
1965         (main): Acts like a simplified version of the coreutils cat utility.
1966
1967         * Scripts/webkitpy/test/cat_unittest.py: Added.
1968         (CatTest.assert_cat): Runs cat with the given input and ensures the
1969         output matches the input.
1970         (CatTest.test_basic): Performs a simple test of cat.
1971         (CatTest.test_no_newline): Tests what happens when the input string
1972         doesn't have a trailing newline.
1973         (CatTest.test_unicode): Tests passing a unicode string to cat.
1974         (CatTest.test_as_command): Tests running cat as a separate command.
1975
1976         * Scripts/webkitpy/test/echo.py: Added.
1977         (command_arguments): Returns a list for invoking echo with the given arguments.
1978         (main): Acts like a simplified version of the coreutils echo utility.
1979
1980         * Scripts/webkitpy/test/echo_unittest.py: Added.
1981         (EchoTest.test_basic): Performs a simple test of echo.
1982         (EchoTest.test_no_newline): Tests passing -n to echo to suppress the
1983         trailing newline.
1984         (EchoTest.test_unicode): Tests passing unicode and non-unicode strings
1985         to echo.
1986         (EchoTest.test_argument_order): Tests what happens when -n is not the
1987         first argument.
1988         (EchoTest.test_empty_arguments): Tests what happens when you pass [] to
1989         echo.main.
1990         (EchoTest.test_no_arguments): Tests what happens when you call
1991         echo.main with no arguments.
1992         (EchoTest.test_as_command): Tests running echo as a separate command.
1993
1994 2010-11-04  Renata Hodovan  <reni@inf.u-szeged.hu>
1995
1996         Unreviewed: Add myself to the list of Committers.
1997
1998         * Scripts/webkitpy/common/config/committers.py:
1999
2000 2010-11-04  Andreas Kling  <kling@webkit.org>
2001
2002         Reviewed by Kenneth Rohde Christiansen.
2003
2004         [Qt] Hook into QWebPage::scrollRequested for resizes-to-contents mode
2005
2006         In RTC mode the QGraphicsWebView item is the size of the contents,
2007         scrolling works a bit differently  (we need to react to scrollRequested.)
2008
2009         Normally QGraphicsView will replay the last mouse event when scrolling,
2010         so to prevent WebKit from getting confused by this we temporarily make
2011         the QGraphicsView non-interactive.
2012
2013         * QtTestBrowser/webview.cpp:
2014         (WebViewGraphicsBased::setPage):
2015         (WebViewGraphicsBased::scrollRequested):
2016         * QtTestBrowser/webview.h:
2017
2018 2010-11-04  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2019
2020         Reviewed by Andreas Kling.
2021
2022         Use OS(MAC_OS_X) rather than PLATFORM(MAC) in TestControllerQt
2023
2024         PLATFORM(MAC) is not defined for the Qt port, as it refers to
2025         the Mac-port, not the Mac OS X operating system.
2026
2027         * WebKitTestRunner/qt/TestControllerQt.cpp:
2028         (WTR::isExistingLibrary):
2029
2030 2010-11-04  Leonid Ebril  <leonid.ebril@nokia.com>
2031
2032         Reviewed by Andreas Kling.
2033
2034         [Qt] Adding iphone user agent string the user agent list for QtTestBrowser
2035         https://bugs.webkit.org/show_bug.cgi?id=48869
2036
2037         * QtTestBrowser/useragentlist.txt:
2038
2039 2010-11-03  Adam Roben  <aroben@apple.com>
2040
2041         Always use uppercase drive names in strings returned by abspath_to_uri
2042
2043         Some versions of cygpath use lowercase drive letters while others use
2044         uppercase, which makes it hard to test the output of code that uses
2045         cygpath.
2046
2047         Fixes <http://webkit.org/b/48914> webkitpy.common.system.path_unittest
2048         fails with Cygwin 1.5
2049
2050         Reviewed by Eric Seidel.
2051
2052         * Scripts/webkitpy/common/system/path.py:
2053         (cygpath): Updated the docstring to indicate that only absolute paths
2054         should be passed for now (though relative paths will work fine).
2055         (_Cygpath.convert): Upper-case the first letter of the converted Windows path.
2056
2057 2010-11-03  George Guo  <George.Guo@Nokia.com>
2058
2059         Reviewed by Andreas Kling.
2060
2061         [Qt] QtTestBrowser : set mmp rule pageddata in Symbian
2062         https://bugs.webkit.org/show_bug.cgi?id=48767
2063     
2064         Paging is needd on Symbian devices to support benchmarks tests like
2065         dromaeo.com and Celtic Kane that need a lot of memory to run  
2066
2067         * QtTestBrowser/QtTestBrowser.pro:
2068
2069 2010-11-03  Jenn Braithwaite  <jennb@chromium.org>
2070
2071         Reviewed by Dmitry Titov.
2072
2073         Chromium: Update resource tracking when moving a frame between documents
2074         https://bugs.webkit.org/show_bug.cgi?id=48363
2075
2076         * DumpRenderTree/chromium/WebViewHost.cpp:
2077         (WebViewHost::assignIdentifierToRequest):
2078         Always put resource id in map so we can make assumptions about its
2079         presence.
2080         (WebViewHost::removeIdentifierForRequest):
2081         Added.
2082         (WebViewHost::didFinishResourceLoad):
2083         (WebViewHost::didFailResourceLoad):
2084         Check existence of resource id before removing from map.
2085         * DumpRenderTree/chromium/WebViewHost.h:
2086
2087 2010-11-03  Victor Wang  <victorw@chromium.org>
2088
2089         Reviewed by Adam Barth.
2090
2091         [Chromium] update buildbot names in chromium rebaseline tool.
2092
2093         https://bugs.webkit.org/show_bug.cgi?id=48881
2094
2095         * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py:
2096
2097 2010-11-03  Darin Adler  <darin@apple.com>
2098
2099         Updated Xcode projects by opening them with Xcode 3.2.4.
2100         Updated svn:ignore for Xcode projects.
2101
2102         * MiniBrowser/MiniBrowser.xcodeproj: Added property svn:ignore.
2103         * TestWebKitAPI/TestWebKitAPI.xcodeproj: Added property svn:ignore.
2104         * WebKitLauncher/WebKitLauncher.xcodeproj: Modified property svn:ignore.
2105         * WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj: Updated with Xcode 3.2.4.
2106
2107 2010-11-03  Adam Roben  <aroben@apple.com>
2108
2109         Stop waiting for messages from the web process after a timeout elapses
2110
2111         TestController::runUntil now takes a timeout parameter that specifies
2112         how long to wait for the condition to become true. WebKitTestRunner
2113         takes a --timeout flag that specifies how long the timeout should be.
2114         run-webkit-tests passes this flag to WebKitTestRunner so its timeout
2115         will be similar to run-webkit-tests.
2116
2117         Fixes <http://webkit.org/b/43047> <rdar://problem/8365833>
2118         WebKitTestRunner waits forever if the web process crashes
2119
2120         Reviewed by Darin Adler and Anders Carlsson.
2121
2122         * Scripts/old-run-webkit-tests:
2123         (top level): Moved the GuardMalloc timeout adjustment here from
2124         readFromDumpToolWithTimer.
2125         (openDumpTool): Make WTR use a timeout similar to but slightly shorter
2126         than the one that was specified on the command line.
2127
2128         * WebKitTestRunner/TestController.cpp:
2129         (WTR::TestController::TestController): Initialize our timeout values.
2130         (WTR::TestController::initialize): Parse the --timeout flag and use it
2131         to modify our timeout values.
2132         (WTR::TestController::resetStateToConsistentValues): Changed to use a
2133         short timeout while waiting for the web process to reset and to return
2134         a boolean indicating whether we were able to reset the web process.
2135         Uses a 5-second timeout while waiting for the process to be reset.
2136         (WTR::TestController::runTest): Changed to return a boolean indicating
2137         whether we were able to reset the web process (and thus run the test).
2138         (WTR::TestController::runUntil): Call through to platformRunUntil.
2139
2140         (WTR::TestController::runTestingServerLoop):
2141         (WTR::TestController::run):
2142         Changed to bail if any test can't be run. This will cause the process
2143         to exit. (Unfortunately this will make run-webkit-tests think we
2144         crashed; see <http://webkit.org/b/48943>.)
2145
2146         * WebKitTestRunner/TestController.h: Added platformRunUntil,
2147         m_longTimeout, and m_shortTimeout.
2148
2149         * WebKitTestRunner/TestInvocation.cpp:
2150         (WTR::TestInvocation::invoke): Use a short timeout when waiting for the
2151         initial response and a long timeout when waiting for the test to
2152         complete. Check whether runUntil timed out and print an error message
2153         if so.
2154
2155         * WebKitTestRunner/mac/TestControllerMac.mm:
2156         (WTR::TestController::platformRunUntil): Renamed from runUntil. Pass
2157         [NSDate distantPast] to -[NSRunLoop runMode:beforeDate:] so that we
2158         won't block waiting for the run loop. Only loop until the timeout
2159         elapses.
2160
2161         * WebKitTestRunner/qt/TestControllerQt.cpp:
2162         (WTR::TestController::platformRunUntil): Renamed from runUntil. Added a
2163         FIXME about honoring the timeout.
2164
2165         * WebKitTestRunner/win/TestControllerWin.cpp:
2166         (WTR::TestController::platformRunUntil): Renamed from runUntil. Use
2167         ::MsgWaitForMultipleObjectsEx to implement the timeout. Changed to use
2168         ::PeekMessageW so that we don't block waiting for messages to become
2169         available.
2170
2171 2010-11-03  Adam Roben  <aroben@apple.com>
2172
2173         Add a plugin test that evaluates JS after removing the plugin element
2174         from the document
2175
2176         This test replaces platform/win/plugins/plugin-delayed-destroy.html.
2177         That test was made to prevent a crash very similar to this one, but
2178         unfortunately tested only the mechanism that prevented the crash and
2179         not whether the crash itself was prevented. Since WebKit2 uses a
2180         different mechanism to prevent the crash, the test was failing even
2181         though WebKit2 was not vulnerable to the crash. This new test crashes
2182         if there is no mechanism in place to prevent it and passes in both
2183         WebKit1 and WebKit2.
2184
2185         Fixes <http://webkit.org/b/46711> <rdar://problem/8485903>
2186         platform/win/plugins/plugin-delayed-destroy.html fails in WebKit2
2187
2188         Reviewed by Anders Carlsson.
2189
2190         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2191         * DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
2192         * DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
2193         * GNUmakefile.am:
2194         Added new file.
2195
2196         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
2197         (pluginDeallocate): Make sure we delete the PluginTest object. This
2198         prevents a leak and also allows us to test the crash.
2199
2200         * DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
2201         (PluginTest::executeScript): Made this into a non-static member
2202         function.
2203
2204         (PluginTest::waitUntilDone):
2205         (PluginTest::notifyDone):
2206         Updated for changes to executeScript.
2207
2208         * DumpRenderTree/TestNetscapePlugIn/PluginTest.h: Added executeScript.
2209
2210         * DumpRenderTree/TestNetscapePlugIn/Tests/EvaluateJSAfterRemovingPluginElement.cpp: Added.
2211         (EvaluateJSAfterRemovingPluginElement::EvaluateJSAfterRemovingPluginElement):
2212         Initialize ourselves and tell the test harness to wait.
2213         (EvaluateJSAfterRemovingPluginElement::NPP_DestroyStream): Remove our
2214         plugin element from the document, then execute some JavaScript. If
2215         WebKit does not have appropriate mechanisms in place, we'll be
2216         destroyed inside the first call to executeScript and crash on the
2217         second call.
2218
2219 2010-11-02  Stephen White  <senorblanco@chromium.org>
2220
2221         Reviewed by Tony Chang.
2222
2223         [chromium] Fix LayoutTestController UMRs.
2224         https://bugs.webkit.org/show_bug.cgi?id=48872
2225
2226         * DumpRenderTree/chromium/LayoutTestController.cpp:
2227         (LayoutTestController::LayoutTestController):
2228
2229 2010-11-03  Kent Tamura  <tkent@chromium.org>
2230
2231         Reviewed by Dimitri Glazkov.
2232
2233         REGRESSION: rebaseline-chromium-webkit-tests uses non-zero tolerance for
2234         image dup detection
2235         https://bugs.webkit.org/show_bug.cgi?id=48744
2236
2237         * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py:
2238          - Make a function for option parsing for ease of test
2239          - Set 0 to options.tolerance
2240         * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests_unittest.py:
2241          - Add a test for this change
2242
2243 2010-11-02  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2244
2245         Unreviewed: Add myself to the list of Committers.
2246
2247         * Scripts/webkitpy/common/config/committers.py:
2248
2249 2010-11-02  Anders Carlsson  <andersca@apple.com>
2250
2251         Fix build.
2252
2253         * TestWebKitAPI/PlatformUtilities.cpp:
2254         (TestWebKitAPI::Util::createContextForInjectedBundleTest):
2255
2256 2010-11-02  Sam Weinig  <sam@webkit.org>
2257
2258         Reviewed by Anders Carlsson.
2259
2260         Add a way to send startup messages on the context which can be posted when a process launches
2261         <rdar://problem/8617928>
2262         https://bugs.webkit.org/show_bug.cgi?id=48838
2263
2264         * MiniBrowser/mac/WebBundle/WebBundleMain.m:
2265         (WKBundleInitialize):
2266         * TestWebKitAPI/InjectedBundleController.cpp:
2267         (TestWebKitAPI::InjectedBundleController::initialize):
2268         (TestWebKitAPI::InjectedBundleController::didReceiveMessage):
2269         * TestWebKitAPI/InjectedBundleController.h:
2270         * TestWebKitAPI/InjectedBundleMain.cpp:
2271         (WKBundleInitialize):
2272         * TestWebKitAPI/PlatformUtilities.cpp:
2273         (TestWebKitAPI::Util::createContextForInjectedBundleTest):
2274         * WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp:
2275         (WKBundleInitialize):
2276         Update implementations of WKBundleInitialize to take an initial userData
2277         argument.  Change TestWebKitAPI to use the new initial userData to initialize
2278         each test's bundle.
2279
2280 2010-11-02  Benjamin Kalman  <kalman@google.com>
2281
2282         Reviewed by Ojan Vafai.
2283
2284         new-run-webkit-tests doesn't strip "LayoutTests/" from prefix, unlike old-run-webkit-tests
2285         https://bugs.webkit.org/show_bug.cgi?id=48794
2286
2287         * Scripts/webkitpy/layout_tests/run_webkit_tests.py: Strip the "LayoutTests/" prefix from test argument paths.
2288
2289 2010-11-02  Adam Roben  <aroben@apple.com>
2290
2291         Skip webkitpy.layout_tests.run_webkit_tests_unittest.MainTest on Cygwin
2292         Python 2.5.x
2293
2294         It is known to hang on that version of Python. See
2295         <http://webkit.org/b/48614>.
2296
2297         Reviewed by Adam Barth.
2298
2299         * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: Use
2300         skip_if to skip MainTest on Cygwin Python 2.5.x.
2301
2302         * Scripts/webkitpy/test/skip.py: Added.
2303         (skip_if): If the passed-in condition is false, find all the test_*
2304         methods of the given class and replace them with a function that just
2305         logs that we're skipping these tests. This is loosely based on the
2306         unittest.skip_if decorator added in Python 3.1.
2307         (_skipped_method): Returns a function that just logs that the tests are
2308         being skipped. This is used in place of the actual test_* functions.
2309
2310         * Scripts/webkitpy/test/skip_unittest.py: Added.
2311         (SkipTest.setUp): Create a logger for ourselves and give it a handler
2312         that logs to a private stream.
2313         (SkipTest.tearDown): Reset the logger.
2314         (SkipTest.create_fixture_class): Returns a class that we use to test
2315         skip_if. It has a single test_* method, test_foo, that just calls
2316         through to a callback.
2317         (SkipTest.foo_callback): Record that test_foo was called.
2318         (SkipTest.test_skip_if_false): Pass skip_if a False condition and test
2319         that test_foo does get called.
2320         (SkipTest.test_skip_if_true): Pass skip_if a True condition and test
2321         that test_foo does not get called and the appropriate message gets
2322         logged.
2323
2324 2010-11-02  Adam Barth  <abarth@webkit.org>
2325
2326         Reviewed by Eric Seidel.
2327
2328         webkit-patch should tell check-webkit-style which files were changed so
2329         check-webkit-style doesn't have to stat the whole working copy again
2330         https://bugs.webkit.org/show_bug.cgi?id=48792
2331
2332         * Scripts/webkitpy/tool/mocktool.py:
2333         * Scripts/webkitpy/tool/steps/checkstyle.py:
2334
2335 2010-11-02  Robert Kroeger  <rjkroege@chromium.org>
2336
2337         Reviewed by James Robinson.
2338
2339         [Chromium/DRT] Make EventSendingController honour leapForward for touch events.
2340         https://bugs.webkit.org/show_bug.cgi?id=48777
2341
2342         * DumpRenderTree/chromium/EventSender.cpp:
2343         (EventSender::sendCurrentTouchEvent):
2344
2345 2010-11-02  Adam Roben  <aroben@apple.com>
2346
2347         Only track resource identifiers in DRT when dumpResourceLoadCallbacks
2348         is on
2349
2350         This reverts Windows to our pre-r71097 behavior. That patch made us
2351         track all resource identifiers, including the main resource, so the
2352         main resource's URL started appearing in test output instead of
2353         "<unknown>". Arguably having the main resource's URL is better, but all
2354         other platforms print "<unknown>" and we want to match.
2355
2356         Fixes <http://webkit.org/b/48837> <rdar://problem/8620351> REGRESSION
2357         (r71097): Many http tests failing on Windows
2358
2359         Reviewed by Anders Carlsson.
2360
2361         * DumpRenderTree/win/ResourceLoadDelegate.cpp:
2362         (ResourceLoadDelegate::identifierForInitialRequest): Don't add the
2363         identifier to the URL map if we're not supposed to dump resource load
2364         callbacks.
2365         (ResourceLoadDelegate::removeIdentifierForRequest): Always remove the
2366         identifier from the URL map even if we're already "done". There's no
2367         point in keeping out-of-date identifiers around.
2368
2369 2010-11-01  Jenn Braithwaite  <jennb@chromium.org>
2370
2371         Reviewed by Adam Roben.
2372
2373         Windows: Update resource tracking when moving a frame between documents
2374         https://bugs.webkit.org/show_bug.cgi?id=48364
2375
2376         * DumpRenderTree/win/DumpRenderTree.cpp:
2377         (createWebViewAndOffscreenWindow):
2378         (main):
2379         Give each WebView its own ResourceLoadDelegate instance in order to
2380         make assertions about resource ids on a particular WebView.
2381         * DumpRenderTree/win/ResourceLoadDelegate.cpp:
2382         (ResourceLoadDelegate::identifierForInitialRequest):
2383         Always add id to the map.
2384         (ResourceLoadDelegate::removeIdentifierForRequest):
2385         Added.
2386         (ResourceLoadDelegate::willSendRequest):
2387         (ResourceLoadDelegate::didReceiveAuthenticationChallenge):
2388         (ResourceLoadDelegate::didReceiveResponse):
2389         (ResourceLoadDelegate::didFinishLoadingFromDataSource):
2390         (ResourceLoadDelegate::didFailLoadingWithError):
2391         (ResourceLoadDelegate::descriptionSuitableForTestResult):
2392         Replace static descriptionSuitableForTestResult with static member function to access identifier map.
2393         * DumpRenderTree/win/ResourceLoadDelegate.h:
2394         (ResourceLoadDelegate::urlMap):
2395         Moved within class so that each WebView has its own id map.
2396
2397 2010-11-01  Ojan Vafai  <ojan@chromium.org>
2398
2399         Reviewed by Dimitri Glazkov.
2400
2401         remove debug code from run_webkit_tests.py
2402         https://bugs.webkit.org/show_bug.cgi?id=48800
2403
2404         Remove temporary debug code and make --master-name required
2405         if --test-results-server is set now that all clients set
2406         --master-name.
2407
2408         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2409
2410 2010-11-01  Tony Chang  <tony@chromium.org>
2411
2412         Reviewed by Kent Tamura.
2413
2414         add plugin event logging for linux
2415         https://bugs.webkit.org/show_bug.cgi?id=48779
2416
2417         This is taken from Chromium's fork of the layout test plugin:
2418         http://git.chromium.org/gitweb/?p=chromium.git/.git;a=blob;f=webkit/tools/npapi_layout_test_plugin/main.cpp;h=3ebdada2f049b3624756438cff852364f86a2ede;hb=HEAD#l348
2419
2420         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
2421         (handleEventX11):
2422         (NPP_HandleEvent):
2423
2424 2010-11-01  Dirk Pranke  <dpranke@chromium.org>
2425
2426         Reviewed by James Robinson.
2427
2428         new-run-webkit-tests: use DRT, child-processes=1 for GPU tests by default
2429         https://bugs.webkit.org/show_bug.cgi?id=48790
2430
2431         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
2432         * Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
2433
2434 2010-11-01  Adam Barth  <abarth@webkit.org>
2435
2436         Reviewed by Eric Seidel.
2437
2438         Teach check-webkit-style how to accept a list of files to diff on the
2439         command line
2440         https://bugs.webkit.org/show_bug.cgi?id=48784
2441
2442         In a future patch, webkit-patch will use this option to improve
2443         performance.  I'm landing this in two pieces to avoid causing a version
2444         skew problem for the style-bot.
2445
2446         * Scripts/check-webkit-style:
2447         * Scripts/webkitpy/style/optparser.py:
2448         * Scripts/webkitpy/style/optparser_unittest.py:
2449         * Scripts/webkitpy/style_references.py:
2450
2451 2010-11-01  Anders Carlsson  <andersca@apple.com>
2452
2453         Reviewed by John Sullivan.
2454
2455         Tear down the related WebProcessProxy when a WebContext is deallocated
2456         https://bugs.webkit.org/show_bug.cgi?id=48769
2457
2458         * TestWebKitAPI/Tests/WebKit2/FailedLoad.cpp:
2459         (TestWebKitAPI::didFailProvisionalLoadWithErrorForFrame):
2460         We don't support empty URLs anymore, update test to expect a null URL instead.
2461
2462 2010-11-01  Søren Gjesse  <sgjesse@chromium.org>
2463
2464         Reviewed by Andreas Kling.
2465
2466         Fix warning when compiling the chromium port of DumpRenderShell
2467         with clang.
2468         https://bugs.webkit.org/show_bug.cgi?id=48414
2469
2470         * DumpRenderTree/chromium/TestShell.h:
2471         (TestShell::javaScriptFlagsForLoad):
2472
2473 2010-11-01  Adam Roben  <aroben@apple.com>
2474
2475         Fix typo from r71022
2476
2477         * BuildSlaveSupport/build.webkit.org-config/config.json:
2478
2479 2010-11-01  Adam Roben  <aroben@apple.com>
2480
2481         Trigger the Windows Release WebKit2 tests when a Release build
2482         finishes, not when a Debug build finishes
2483
2484         Fixes <http://webkit.org/b/48754> Windows Release WebKit2 tests are
2485         triggered at the wrong time
2486
2487         Reviewed by Sam Weinig.
2488
2489         * BuildSlaveSupport/build.webkit.org-config/config.json: Fixed
2490         triggerable name and trigger.
2491
2492 2010-11-01  Mario Sanchez Prada  <msanchez@igalia.com>
2493
2494         Unreviewed. Adding my IRC nickname to the list of committers.
2495
2496         * Scripts/webkitpy/common/config/committers.py:
2497
2498 2010-10-31  Robert Hogan  <robert@webkit.org>
2499
2500         Reviewed by Antonio Gomes.
2501
2502         [Qt] [Gtk] Plug-ins having upper case in mime type are failing to load
2503
2504         Qt and Gtk are case-sensitive when storing the declared mime-type
2505         of plugins. Since plugin mime-types are lowercased prior to searching
2506         for them in the plugin database, ensure they are loaded with the
2507         mime-type in lower case too.
2508
2509         Change the test netscape plugin to declare its mimetype in sentence
2510         case so that the correct behaviour is enforced.
2511
2512         https://bugs.webkit.org/show_bug.cgi?id=36815
2513
2514         * DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:
2515         (NP_GetMIMEDescription):
2516
2517 2010-10-31  Robert Hogan  <robert@webkit.org>
2518
2519         Reviewed by Antonio Gomes.
2520
2521         [Qt] Support nodesFromRect in DRT
2522
2523         https://bugs.webkit.org/show_bug.cgi?id=48716
2524
2525         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
2526         (LayoutTestController::nodesFromRect):
2527         * DumpRenderTree/qt/LayoutTestControllerQt.h:
2528
2529 2010-10-30  Andreas Kling  <kling@webkit.org>
2530
2531         Reviewed by Antonio Gomes.
2532
2533         [Qt] QtTestBrowser: Switching view type moves the embedded inspector
2534         https://bugs.webkit.org/show_bug.cgi?id=48705
2535
2536         Reinsert the embedded inspector into the splitter after changing
2537         between QWebView/QGraphicsWebView.
2538
2539         * QtTestBrowser/launcherwindow.cpp:
2540         (LauncherWindow::init):
2541         (LauncherWindow::initializeView):
2542         * QtTestBrowser/webinspector.h:
2543         (WebInspector::WebInspector):
2544
2545 2010-10-28  Antonio Gomes  <agomes@rim.com>
2546
2547         Reviewed by Ojan Vafai.
2548
2549         Needs a "LinuxEditingBehavior", perhaps with a better name
2550         https://bugs.webkit.org/show_bug.cgi?id=36627
2551
2552         Adding support to Mac's, GTK+'s, Windows' and Chromium's LayoutTestController class to test the newly introduced Unix editing behavior.
2553
2554         * DumpRenderTree/chromium/LayoutTestController.cpp:
2555         (LayoutTestController::setEditingBehavior):
2556         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
2557         (LayoutTestController::setEditingBehavior):
2558         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
2559         (LayoutTestController::setEditingBehavior):
2560         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
2561         (LayoutTestController::setEditingBehavior):
2562
2563 2010-10-29  Andreas Kling  <kling@webkit.org>
2564
2565         Reviewed by Kenneth Rohde Christiansen.
2566
2567         [Qt] QtTestBrowser: Add keyboard shortcut to toggle full screen (F11)
2568         https://bugs.webkit.org/show_bug.cgi?id=48695
2569
2570         * QtTestBrowser/launcherwindow.cpp:
2571         (LauncherWindow::createChrome):
2572
2573 2010-10-29  Andreas Kling  <kling@webkit.org>
2574
2575         Reviewed by Kenneth Rohde Christiansen.
2576
2577         [Qt] QtTestBrowser: Fix uninitialized read in FpsTimer
2578         https://bugs.webkit.org/show_bug.cgi?id=48675
2579
2580         FpsTimer::m_timer was never initialized and passed to QObject::killTimer()
2581         on startup with in -graphicsbased mode.
2582
2583         * QtTestBrowser/fpstimer.cpp:
2584         (FpsTimer::FpsTimer):
2585         (FpsTimer::numFrames):
2586         (FpsTimer::stop):
2587         (FpsTimer::timerEvent):
2588         * QtTestBrowser/fpstimer.h:
2589
2590 2010-10-29  Dirk Pranke  <dpranke@chromium.org>
2591
2592         Reviewed by Tony Chang.
2593
2594         new-run-webkit-tests: change TestResults to be serializable
2595
2596         In preparation for changing new-run-webkit-tests from
2597         multithreaded to multiprocess, we need to make sure the data
2598         going between the threads is easily serialized over a socket.
2599
2600         This change adds serialization/pickling for the TestResults and
2601         TestFailure objects (using cPickle).
2602
2603         The TestFailure objects included a "has_wdiff" flag for Text
2604         results, but the flag wasn't being used, so I've removed it,
2605         simplifying the state to basically a set of enum objects with
2606         associated methods.
2607
2608         https://bugs.webkit.org/show_bug.cgi?id=48616
2609
2610         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
2611         * Scripts/webkitpy/layout_tests/layout_package/printing_unittest.py:
2612         * Scripts/webkitpy/layout_tests/layout_package/test_failures.py:
2613         * Scripts/webkitpy/layout_tests/layout_package/test_failures_unittest.py:
2614         * Scripts/webkitpy/layout_tests/layout_package/test_results.py: Added.
2615         * Scripts/webkitpy/layout_tests/layout_package/test_results_unittest.py:Added. 
2616         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2617         * Scripts/webkitpy/layout_tests/test_types/text_diff.py:
2618
2619 2010-10-29  Dirk Pranke  <dpranke@chromium.org>
2620
2621         Reviewed by Ojan Vafai.
2622
2623         new-run-webkit-tests: need to provide separate dashboard results for GPU tests
2624         https://bugs.webkit.org/show_bug.cgi?id=48687
2625
2626         Modify the steps to upload the JSON files to the dashboards so
2627         that the GPU tests don't conflict with the regular tests on a
2628         port. We do this by modifying the --builder-name parameter to
2629         append " - GPU", which should cause the app to treat the results
2630         as a completely new builder. This is a little non-obvious, but
2631         keeps us from having to restructure the app.
2632
2633         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
2634         * Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
2635         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2636
2637 2010-10-29  Ojan Vafai  <ojan@chromium.org>
2638
2639         Reviewed by Tony Chang.
2640
2641         [chromium] add debug logging to help diagnose flakiness dashboard issues
2642         https://bugs.webkit.org/show_bug.cgi?id=48657
2643
2644         The appengine app thinks it's getting empty files uploaded. Add some logging
2645         to see if new-run-webkit-tests agrees.
2646         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2647
2648 2010-10-29  Dimitri Glazkov  <dglazkov@chromium.org>
2649
2650         Reviewed by Ojan Vafai.
2651
2652         [Chromium/DRT] Add master-name flag to new-run-webkit-tests.
2653         https://bugs.webkit.org/show_bug.cgi?id=48649
2654
2655         * BuildSlaveSupport/build.webkit.org-config/master.cfg: Added flag.
2656
2657 2010-10-29  Nicolas Dufresne  <nicolas.dufresne@collabora.co.uk>
2658
2659         Reviewed by Martin Robinson.
2660
2661         Enable popup window in GtkLauncher
2662         https://bugs.webkit.org/show_bug.cgi?id=48335
2663
2664         The GtkLauncher application does not support opening new window when
2665         a link with "target=_blank" is clicked or similar call to
2666         window.open(). Instead, GtkLauncher does nothing which breaks
2667         navigation of some websites.
2668
2669         * GtkLauncher/main.c:
2670         (activate_uri_entry_cb):
2671         (update_title):
2672         (link_hover_cb):
2673         (notify_title_cb):
2674         (notify_load_status_cb):
2675         (notify_progress_cb):
2676         (destroy_cb):
2677         (go_back_cb):
2678         (go_forward_cb):
2679         (create_web_view_cb):
2680         (web_view_ready_cb):
2681         (close_web_view_cb):
2682         (create_browser):
2683         (create_statusbar):
2684         (create_toolbar):
2685         (create_window):
2686         (main):
2687
2688 2010-10-29  Adam Roben  <aroben@apple.com>
2689
2690         Teach check-webkit-style about WebKit2's idiosyncracies
2691
2692         Fixes <http://webkit.org/b/48638> Style bot complains about a number
2693         of WebKit2 conventions
2694
2695         Reviewed by Anders Carlsson.
2696
2697         * Scripts/webkitpy/style/checker.py: Excluded some rules for various
2698         WebKit2-related files. Also updated the excluded rules for
2699         WebKitAPITest to match the current code.
2700
2701 2010-10-29  Csaba Osztrogonác  <ossy@webkit.org>
2702
2703         Reviewed by Adam Roben and David Kilzer.
2704
2705         Fix and cleanup of build systems
2706         https://bugs.webkit.org/show_bug.cgi?id=48342
2707
2708         * Scripts/build-webkit:
2709          - Remove unnecessary ENABLE_SANDBOX option.
2710          - Add ENABLE_FULLSCREEN_API option.
2711
2712 2010-10-28  Adam Roben  <aroben@apple.com>
2713
2714         Switch the Windows WebKit2 bot to the Release configuration
2715
2716         We only have one machine testing WebKit2 on Windows right now, and
2717         Debug is just too slow for it to keep up.
2718
2719         Fixes (hopefully!) <http://webkit.org/b/48615> Windows WebKit2 bot is
2720         always way behind
2721
2722         Reviewed by Jon Honeycutt.
2723
2724         * BuildSlaveSupport/build.webkit.org-config/config.json:
2725
2726 2010-10-29  Leandro Gracia Gil  <leandrogracia@google.com>
2727
2728         Reviewed by Jeremy Orlow.
2729
2730         Added a second parameter to setMockSpeechInputResult for
2731         the language used in speech input.
2732         https://bugs.webkit.org/show_bug.cgi?id=47089
2733
2734         * DumpRenderTree/LayoutTestController.cpp:
2735         (setMockSpeechInputResultCallback):
2736         * DumpRenderTree/LayoutTestController.h:
2737         * DumpRenderTree/chromium/LayoutTestController.cpp:
2738         (LayoutTestController::setMockSpeechInputResult):
2739         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
2740         (LayoutTestController::setMockSpeechInputResult):
2741         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
2742         (LayoutTestController::setMockSpeechInputResult):
2743         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
2744         (LayoutTestController::setMockSpeechInputResult):
2745         * DumpRenderTree/qt/LayoutTestControllerQt.h:
2746         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
2747         (LayoutTestController::setMockSpeechInputResult):
2748         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
2749         (LayoutTestController::setMockSpeechInputResult):
2750         (LayoutTestController::pageSizeAndMarginsInPixels):
2751
2752 2010-10-28  Ojan Vafai  <ojan@chromium.org>
2753
2754         Reviewed by Tony Chang.
2755
2756         [chromium] add a result-small.json file for the test dashboard
2757         https://bugs.webkit.org/show_bug.cgi?id=48547
2758
2759         Output both a results.json file and a results-small.json file.
2760         The dashboard will load results-small.json by default so it loads faster.
2761
2762         * TestResultServer/model/jsonresults.py:
2763         * TestResultServer/model/jsonresults_unittest.py:
2764         Added a bunch of sys.path hackery. Unforunately, this uses hardcoded
2765         paths. That obviously needs to be fixed, but at least this way it
2766         clearly documents what paths are necessary.
2767
2768 2010-10-28  Eric Seidel  <eric@webkit.org>
2769
2770         Reviewed by Adam Barth.
2771
2772         webkit-patch upload calls changed_files more often than it should
2773         https://bugs.webkit.org/show_bug.cgi?id=48567
2774
2775         Passing changed_files around everywhere isn't a very elegant solution
2776         but it's the one we have for the moment.  I think keeping an explicit
2777         cache on Checkout (or making StepState() a real class) is a better
2778         long-term option.
2779
2780         Previously bug_id_for_this_commit was calling changed_files and the
2781         result was never getting cached on the state.  Now we're explicitly
2782         caching the result on the state and passing that to the bug_id_for_this_commit call.
2783
2784         I looked into building unit tests for this.  Doing so would require
2785         using a real Checkout object with a MockSCM and overriding the appropriate
2786         calls on SCM to count how often we're stating the file system.
2787         That's a useful set of tests to build for a separate change.
2788
2789         * Scripts/webkitpy/common/checkout/api.py:
2790         * Scripts/webkitpy/tool/commands/download.py:
2791         * Scripts/webkitpy/tool/commands/upload.py:
2792         * Scripts/webkitpy/tool/mocktool.py:
2793
2794 2010-10-28  Eric Seidel  <eric@webkit.org>
2795
2796         Reviewed by Adam Barth.
2797
2798         Make suggest-reviewers slightly faster
2799         https://bugs.webkit.org/show_bug.cgi?id=48562
2800
2801         Add @memoized to one more common call.
2802
2803         * Scripts/webkitpy/common/checkout/api.py:
2804
2805 2010-10-28  Eric Seidel  <eric@webkit.org>
2806
2807         Reviewed by Adam Barth.
2808
2809         webkit-patch suggest-reviewers -g 260550a6e30b7bf34f16bdb4a5396cf26264fc1c is still very slow
2810         https://bugs.webkit.org/show_bug.cgi?id=48536
2811
2812         This patch makes it about 40 seconds faster, but it still
2813         takes 1:40.  This will require more refinement.
2814
2815         The suggested reviewers list appears to be the same.
2816
2817         I think the next step may be to have it stop the search after
2818         5 reviewers are found.  We never want to suggest 30 people.
2819
2820         * Scripts/webkitpy/common/checkout/scm.py:
2821          - Using --remove-empty to theoretically stop lookups past
2822            when a file is removed.  I'm not entirely clear that the option
2823            does what it says it does.  Example:
2824            git log --pretty=format:%H -5 --remove-empty -- /Projects/WebKit/WebCore/platform/wx/SearchPopupMenuWx.h
2825            returns only one commit
2826            vs.
2827            git log --pretty=format:%H -5 -- /Projects/WebKit/WebCore/platform/wx/SearchPopupMenuWx.h
2828            which returns 5.  I was not aware that wx files were ever removed from the repository?
2829
2830 2010-10-28  Kinuko Yasuda  <kinuko@chromium.org>
2831
2832         Reviewed by David Levin.
2833
2834         [Chromium] Support FileSystem in chromium DRT
2835         https://bugs.webkit.org/show_bug.cgi?id=47643
2836
2837         * DumpRenderTree/chromium/WebViewHost.cpp:
2838         (WebViewHost::openFileSystem): Added.
2839         * DumpRenderTree/chromium/WebViewHost.h:
2840         (WebViewHost::openFileSystem): Added.
2841
2842 2010-10-28  Sam Weinig  <sam@webkit.org>
2843
2844         Reviewed by Anders Carlsson.
2845
2846         WKURLRefs should be allowed to be null
2847         <rdar://problem/8575621>
2848         https://bugs.webkit.org/show_bug.cgi?id=48535
2849
2850         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2851         * TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:
2852         (TestWebKitAPI::didStartProvisionalLoadForFrame):
2853         (TestWebKitAPI::didCommitLoadForFrame):
2854         (TestWebKitAPI::didFinishLoadForFrame):
2855         Test that URLs are null pointers when unset.
2856
2857 2010-10-28  Chris Fleizach  <cfleizach@apple.com>
2858
2859         Reviewed by Adele Peterson.
2860
2861         AX: multi select group option does not handle setting of AXSelectedChildren correctly
2862         https://bugs.webkit.org/show_bug.cgi?id=48464
2863
2864         Add support for querying information about selected children to DRT, including:
2865            selectedChildAtIndex
2866            selectedChildrenCount
2867            setSelectedChild
2868
2869         * DumpRenderTree/AccessibilityUIElement.cpp:
2870         (selectedChildAtIndexCallback):
2871         (setSelectedChildCallback):
2872         (selectedChildrenCountCallback):
2873         (AccessibilityUIElement::setSelectedChild):
2874         (AccessibilityUIElement::selectedChildrenCount):
2875         (AccessibilityUIElement::selectedChildAtIndex):
2876         (AccessibilityUIElement::getJSClass):
2877         * DumpRenderTree/AccessibilityUIElement.h:
2878         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
2879         (AccessibilityUIElement::selectedChildAtIndex):
2880         (AccessibilityUIElement::selectedChildrenCount):
2881         (AccessibilityUIElement::setSelectedChild):
2882
2883 2010-10-27  Sam Weinig  <sam@webkit.org>
2884
2885         Reviewed by Anders Carlsson.
2886
2887         Add WebKit2 API for window feature getter/setters
2888         <rdar://problem/8590373>
2889         https://bugs.webkit.org/show_bug.cgi?id=48496
2890
2891         * MiniBrowser/mac/BrowserWindowController.m:
2892         (-[BrowserWindowController awakeFromNib]):
2893         * MiniBrowser/win/BrowserView.cpp:
2894         (BrowserView::create):
2895         * WebKitTestRunner/TestController.cpp:
2896         (WTR::createOtherPage):
2897         (WTR::TestController::initialize):
2898
2899 2010-10-28  Søren Gjesse  <sgjesse@chromium.org>
2900
2901         Reviewed by Tony Chang.
2902
2903         Added support for the DumpRenderTree flags --multiple-loads and --js-flags to the Python test runner.
2904         https://bugs.webkit.org/show_bug.cgi?id=48236
2905
2906         * Scripts/webkitpy/layout_tests/port/chromium.py:
2907         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2908
2909 2010-10-28  Sergio Villar Senin  <svillar@igalia.com>
2910
2911         Reviewed by Martin Robinson.
2912
2913         [GTK] WebKitWebFrame's load-status is not properly notified to the tests
2914         https://bugs.webkit.org/show_bug.cgi?id=48048
2915
2916         DRT now listens to WebKitWebFrame load-status signals for each
2917         created frame instead of the load-status signal of the
2918         WebKitWebView that only notifies about changes in the main frame.
2919
2920         * DumpRenderTree/gtk/DumpRenderTree.cpp:
2921         (webViewLoadFinished):
2922         (webFrameLoadStatusNotified):
2923         (frameCreatedCallback):
2924         (createWebView):
2925         (main):
2926
2927 2010-10-28  Tony Chang  <tony@chromium.org>
2928
2929         Reviewed by Kent Tamura.
2930
2931         [chromium] fix textInputController.{selectedRange,markedRange}
2932         https://bugs.webkit.org/show_bug.cgi?id=48487
2933
2934         * DumpRenderTree/chromium/TextInputController.cpp:
2935         (TextInputController::markedRange): Return arrays of ints, rather than a string
2936         (TextInputController::selectedRange): Ditto.
2937
2938 2010-10-27  Ojan Vafai  <ojan@chromium.org>
2939
2940         Reviewed by Tony Chang.
2941
2942         [chromium] add a master-name flag to new-run-webkit-tests
2943         https://bugs.webkit.org/show_bug.cgi?id=48488
2944
2945         The test results server now allows adding a master name to
2946         the uploaded files. This lets us distinguish bots that have
2947         the same name, but are on different masters.
2948
2949         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2950
2951 2010-10-28  Adam Roben  <aroben@apple.com>
2952
2953         Don't append a newline to the test output if the frame has no document
2954         element in WebKitTestRunner
2955
2956         Fixes <http://webkit.org/b/48526> Extra trailing newline when running
2957         plugins/document-open.html in WebKitTestRunner
2958
2959         Reviewed by Anders Carlsson.
2960
2961         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2962         (WTR::toJS): Added. Turns a UTF-8 C string into a JSStringRef.
2963         (WTR::hasDocumentElement): Added. Uses the JSC API to figure out
2964         whether the frame has a document element.
2965         (WTR::dumpFrameText): Match DRT by bailing (rather than appending an
2966         empty string and a newline) if the frame has no document element.
2967
2968 2010-10-28  Adam Roben  <aroben@apple.com>
2969
2970         Skip npn-invalidate-rect-invalidates-window.html on headless XP
2971         machines
2972
2973         TestNetscapePlugIn never receives a WM_PAINT message on headless XP
2974         machines, so this test times out. Fixing the test is covered by
2975         <http://webkit.org/b/48333>.
2976
2977         * Scripts/old-run-webkit-tests: Skip
2978         npn-invalidate-rect-invalidates-window.html on Windows if accelerated
2979         compositing support is disabled, which likely means we're on a headless
2980         XP machine.
2981
2982 2010-10-28  Kimmo Kinnunen  <kimmok@iki.fi>
2983
2984         Adding myself as a committer.
2985
2986         * Scripts/webkitpy/common/config/committers.py:
2987
2988 2010-10-27  Eric Seidel  <eric@webkit.org>
2989
2990         Reviewed by Adam Barth.
2991
2992         webkit-patch suggest-reviewers -g 260550a6e30b7bf34f16bdb4a5396cf26264fc1c is very slow
2993         https://bugs.webkit.org/show_bug.cgi?id=48500
2994
2995         This doesn't fix the problem, but it makes things slightly better.
2996         Each git svn find-rev call takes about .25 seconds on my desktop.
2997         This patch uses a new memoized class to avoid those calls when possible.
2998
2999         The real slowness is still git log on some files, like:
3000         git log --pretty=format:%H -5 -- /Projects/WebKit/WebCore/platform/wx/SearchPopupMenuWx.h
3001         I'm not yet sure how to make the pathological git logs better.
3002
3003         * Scripts/webkitpy/common/checkout/scm.py:
3004         * Scripts/webkitpy/common/memoized.py: Added.
3005         * Scripts/webkitpy/common/memoized_unittest.py: Added.
3006
3007 2010-10-27  Eric Seidel  <eric@webkit.org>
3008
3009         Reviewed by Ojan Vafai.
3010
3011         EWS bots should not use --quiet when running build-webkit
3012         https://bugs.webkit.org/show_bug.cgi?id=48482
3013
3014         --quiet is only correct when the sub-process does the error reporting.
3015         In the case of _can_build() the parent process is reporting the error.
3016         We'd like the full build log at queues.webkit.org so someone can look
3017         at the log and understand why the EWS is failing to build trunk.
3018
3019         * Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:
3020         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
3021         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
3022         * Scripts/webkitpy/tool/mocktool.py:
3023
3024 2010-10-27  Brian Weinstein  <bweinstein@apple.com>
3025
3026         More Windows build fixage. Rename a variable that was named string.
3027
3028         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
3029         (WTR::hasPrefix):
3030
3031 2010-10-27  Ojan Vafai  <ojan@chromium.org>
3032
3033         Reviewed by Dimitri Glazkov.
3034
3035         [chromium] Make the test results server store which master the bot is on
3036         https://bugs.webkit.org/show_bug.cgi?id=48478
3037
3038         The chromium bots recently changed so that there are multiple slaves with
3039         the same name on different masters. Up till now, the test results server
3040         assumed slave names were unique. Adds a master field to the file in order
3041         to distinguish.
3042
3043         Also, for files that currently lack a master or testtype, set them appropriately.
3044
3045         * TestResultServer/handlers/testfilehandler.py:
3046         * TestResultServer/index.yaml:
3047         * TestResultServer/model/jsonresults.py:
3048         * TestResultServer/model/testfile.py:
3049         * TestResultServer/templates/showfilelist.html:
3050         * TestResultServer/templates/uploadform.html:
3051
3052 2010-10-26  Darin Adler  <darin@apple.com>
3053
3054         Reviewed by Sam Weinig.
3055
3056         WebKitTestRunner needs to support layoutTestController.dumpBackForwardList
3057         https://bugs.webkit.org/show_bug.cgi?id=42322
3058         rdar://problem/8193631
3059
3060         WebKitTestRunner needs to support layoutTestController.clearBackForwardList
3061         https://bugs.webkit.org/show_bug.cgi?id=42333
3062         rdar://problem/8193643
3063
3064         * WebKitTestRunner/Configurations/InjectedBundle.xcconfig:
3065         Renamed the product to WebKitTestRunnerInjectedBundle to avoid
3066         name conflicts in the build directory.
3067
3068         * WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
3069         Added dumpBackForwardList and clearBackForwardList.
3070
3071         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3072         (WTR::InjectedBundle::InjectedBundle): Removed initialization of m_mainPage.
3073         (WTR::InjectedBundle::didCreatePage): Removed unneeded underscore.
3074         (WTR::InjectedBundle::willDestroyPage): Ditto.
3075         (WTR::InjectedBundle::didReceiveMessage): Ditto.
3076         (WTR::InjectedBundle::initialize): Ditto.
3077         (WTR::InjectedBundle::didCreatePage): Changed code to use m_pages
3078         instead of m_mainPage and m_otherPages.
3079         (WTR::InjectedBundle::willDestroyPage): Ditto.
3080         (WTR::InjectedBundle::page): Ditto.
3081         (WTR::InjectedBundle::beginTesting): Ditto.
3082         (WTR::InjectedBundle::done): Ditto.
3083         (WTR::InjectedBundle::closeOtherPages): Ditto.
3084         (WTR::InjectedBundle::dumpBackForwardListsForAllPages): Added.
3085
3086         * WebKitTestRunner/InjectedBundle/InjectedBundle.h: Changed
3087         page function to longer be inline, and pageCount function
3088         to use m_pages. Added dumpBackForwardListsForAllPages, and
3089         removed some underscores. Replaced m_mainPage and m_otherPageas
3090         with m_pages.
3091
3092         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
3093         (WTR::adoptWK): Added.
3094         (WTR::hasPrefix): Added.
3095         (WTR::InjectedBundlePage::reset): Added code to set up
3096         m_previousTestBackForwardListItem.
3097         (WTR::InjectedBundlePage::dump): Added code to call
3098         dumpBackForwardListsForAllPages.
3099         (WTR::compareByTargetName): Added.
3100         (WTR::dumpBackForwardListItem): Added.
3101         (WTR::InjectedBundlePage::dumpBackForwardList): Added.
3102
3103         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.h: Added
3104         dumpBackForwardList and m_previousTestBackForwardListItem.
3105
3106         * WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
3107         (WTR::LayoutTestController::LayoutTestController): Initialize
3108         m_shouldDumpBackForwardListsForAllWindows to false.
3109         (WTR::LayoutTestController::clearBackForwardList): Added.
3110
3111         * WebKitTestRunner/InjectedBundle/LayoutTestController.h:
3112         Added dumpBackForwardList, clearBackForwardList,
3113         shouldDumpBackForwardListsForAllWindows, and
3114         m_shouldDumpBackForwardListsForAllWindows.
3115
3116         * WebKitTestRunner/TestController.cpp:
3117         (WTR::TestController::initialize): Set up
3118         didReceiveSynchronousMessageFromInjectedBundle.
3119         (WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
3120         Added.
3121         * WebKitTestRunner/TestController.h: Ditto.
3122
3123         * WebKitTestRunner/TestInvocation.cpp:
3124         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3125         Added.
3126         * WebKitTestRunner/TestInvocation.h: Ditto.
3127
3128         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3129         Renamed bundle to WebKitTestRunnerInjectedBundle (see above).
3130         * WebKitTestRunner/mac/TestControllerMac.mm:
3131         (WTR::TestController::initializeInjectedBundlePath): Ditto.
3132
3133 2010-10-27  Chris Rogers  <crogers@google.com>
3134
3135         Reviewed by Chris Marrin.
3136
3137         Add ENABLE_WEB_AUDIO feature enable flag (initially disabled) to build-webkit
3138         https://bugs.webkit.org/show_bug.cgi?id=48279
3139
3140         * Scripts/build-webkit:
3141
3142 2010-10-27  Eric Seidel  <eric@webkit.org>
3143
3144         Unreviewed.
3145
3146         build-webkit should collect Visual Studio Express logs and display them
3147         https://bugs.webkit.org/show_bug.cgi?id=39199
3148
3149         It turns out my previous patch wasn't actually working on the win-ews
3150         machine.  So I've fixed my mistakes from before.
3151
3152         * Scripts/build-webkit:
3153          - Windows VSE builds change the CWD while building.  Why?  Who knows.
3154         * Scripts/print-vse-failure-logs:
3155          - windows VSE builds don't use Debug/Release as I expected, so I've
3156            moved off of --configuration to --top-level and added the /obj
3157            optimization while I was there.
3158
3159 2010-10-27  Dimitri Glazkov  <dglazkov@chromium.org>
3160
3161         Unreviewed, rolling out r70674.
3162         http://trac.webkit.org/changeset/70674
3163         https://bugs.webkit.org/show_bug.cgi?id=48053
3164
3165         Broke Chromium Windows build.
3166
3167         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
3168         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3169
3170 2010-10-25  Tony Chang  <tony@chromium.org>
3171
3172         Reviewed by Anders Carlsson.
3173
3174         compile TestNetscapePlugIn on chromium linux
3175         https://bugs.webkit.org/show_bug.cgi?id=48274
3176
3177         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
3178         (NP_Initialize): On Linux, plugin funcs are set in initialize.
3179         (NPP_New): Mark the plugin as windowless.
3180         (NPP_GetValue): Handle mime type values.
3181         (NP_GetMIMEDescription):
3182         (NP_GetValue):
3183         * DumpRenderTree/chromium/TestNetscapePlugIn/ForwardingHeaders/WebKit/npapi.h: define TRUE and FALSE, which are in webkit's npapi.h.
3184         * DumpRenderTree/chromium/TestNetscapePlugIn/ForwardingHeaders/WebKit/npfunctions.h: Pull in npapi.h to get TRUE/FALSE (matches webkit's npfunctions.h)
3185
3186 2010-10-27  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3187
3188         Reviewed by Anders Carlsson.
3189
3190         Remove contentSizeChanged callbacks as it is no longer
3191         part of the public UIClient.
3192
3193         Make WKPageContentsSizeChangedCallback be a private API
3194         https://bugs.webkit.org/show_bug.cgi?id=48409
3195
3196         * MiniBrowser/mac/BrowserWindowController.m:
3197         (-[BrowserWindowController awakeFromNib]):
3198         * MiniBrowser/win/BrowserView.cpp:
3199         (BrowserView::create):
3200         * WebKitTestRunner/TestController.cpp:
3201         (WTR::createOtherPage):
3202         (WTR::TestController::initialize):
3203
3204 2010-10-27  Gabor Rapcsanyi  <rgabor@inf.u-szeged.hu>
3205
3206         Reviewed by Ojan Vafai.
3207
3208         Make http locking default in NRWT.
3209         https://bugs.webkit.org/show_bug.cgi?id=48053
3210
3211         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
3212         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3213
3214 2010-10-27  Gabor Rapcsanyi  <rgabor@inf.u-szeged.hu>
3215
3216         Reviewed by Tony Chang.
3217
3218         [NRWT] Fix http lock on Windows platform
3219         https://bugs.webkit.org/show_bug.cgi?id=48321
3220
3221         * Scripts/webkitpy/layout_tests/port/http_lock.py:
3222
3223 2010-10-27  Satish Sampath  <satish@chromium.org>
3224
3225         Unreviewed, rolling out r70665.
3226         http://trac.webkit.org/changeset/70665
3227         https://bugs.webkit.org/show_bug.cgi?id=47089
3228
3229         Need to address Alexey's review comments.
3230
3231         * DumpRenderTree/LayoutTestController.cpp:
3232         (setMockSpeechInputResultCallback):
3233         * DumpRenderTree/LayoutTestController.h:
3234         * DumpRenderTree/chromium/LayoutTestController.cpp:
3235         (LayoutTestController::setMockSpeechInputResult):
3236         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
3237         (LayoutTestController::setMockSpeechInputResult):
3238         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
3239         (LayoutTestController::setMockSpeechInputResult):
3240         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
3241         (LayoutTestController::setMockSpeechInputResult):
3242         * DumpRenderTree/qt/LayoutTestControllerQt.h:
3243         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
3244         (LayoutTestController::setMockSpeechInputResult):
3245         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
3246         (LayoutTestController::setMockSpeechInputResult):
3247
3248 2010-10-27  Leandro Gracia Gil  <leandrogracia@google.com>
3249
3250         Reviewed by Jeremy Orlow.
3251
3252         Added a second parameter to setMockSpeechInputResult for
3253         the language used in speech input.
3254         https://bugs.webkit.org/show_bug.cgi?id=47089
3255
3256         * DumpRenderTree/LayoutTestController.cpp:
3257         (setMockSpeechInputResultCallback):
3258         * DumpRenderTree/LayoutTestController.h:
3259         * DumpRenderTree/chromium/LayoutTestController.cpp:
3260         (LayoutTestController::setMockSpeechInputResult):
3261         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
3262         (LayoutTestController::setMockSpeechInputResult):
3263         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
3264         (LayoutTestController::setMockSpeechInputResult):
3265         * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
3266         (LayoutTestController::setMockSpeechInputResult):
3267         * DumpRenderTree/qt/LayoutTestControllerQt.h:
3268         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
3269         (LayoutTestController::setMockSpeechInputResult):
3270         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
3271         (LayoutTestController::setMockSpeechInputResult):
3272         (LayoutTestController::pageSizeAndMarginsInPixels):
3273
3274 2010-10-27  Adam Roben  <aroben@apple.com>
3275
3276         Reset TestNetscapePlugIn's NPP_GetValue pointer when
3277         NullNPPGetValuePointer finishes running
3278
3279         Fixes <http://webkit.org/b/48435> REGRESSION (r70655): Many plugins
3280         tests are failing on Qt
3281
3282         Reviewed by Anders Carlsson.
3283
3284         * DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
3285         (PluginTest::NPP_Destroy):
3286         * DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
3287         Added a do-nothing NPP_Destroy implementation.
3288
3289         * DumpRenderTree/TestNetscapePlugIn/Tests/NullNPPGetValuePointer.cpp:
3290         (NullNPPGetValuePointer::NullNPPGetValuePointer): Save the original
3291         NPP_GetValue pointer in m_originalNPPGetValuePointer so we can restore
3292         it later.
3293         (NullNPPGetValuePointer::NPP_Destroy): Added. Restores the original
3294         NPP_GetValue pointer so it can be used in other tests.
3295
3296         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
3297         (NPP_Destroy):
3298         * DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:
3299         (webkit_test_plugin_destroy_instance):
3300         Call through to the PluginTest when NPP_Destroy is called.
3301
3302 2010-10-26  Brian Weinstein  <bweinstein@apple.com>
3303
3304         Reviewed by Adam Roben.
3305
3306         WebKit2 shouldn't try to send an empty user agent
3307         https://bugs.webkit.org/show_bug.cgi?id=48397
3308         
3309         Add a test that when we set our custom user agent to an empty string, we don't send
3310         an empty user agent.
3311
3312         * TestWebKitAPI/Tests/WebKit2/PreventEmptyUserAgent.cpp: Added.
3313         (TestWebKitAPI::didRunJavaScript): Make sure that the result of navigator.userAgent isn't empty.
3314         (TestWebKitAPI::TEST): Set our custom user agent to the empty string, and run navigator.userAgent.
3315         
3316         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add the new file.
3317         * TestWebKitAPI/win/TestWebKitAPI.vcproj: Ditto.
3318
3319 2010-10-27  Adam Roben  <aroben@apple.com>
3320
3321         Check in file I forgot in r70653
3322
3323         * DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:
3324         (NP_Initialize): Save the NPPluginFuncs struct the browser passed to us
3325         so we can be naughty and modify it later.
3326
3327 2010-10-27  Adam Roben  <aroben@apple.com>
3328
3329         Test that WebKit doesn't crash if the plugin passes 0 for its
3330         NPP_GetValue pointer
3331
3332         Test for <http://webkit.org/b/48433> Crash in
3333         NetscapePlugin::shouldLoadSrcURL when using Shockwave Director 10.3 in
3334         WebKit2 on Windows
3335
3336         Reviewed by Eric Carlson.
3337
3338         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
3339         * DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
3340         * DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
3341         * GNUmakefile.am:
3342         Added NullNPPGetValuePointer.cpp.
3343
3344         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
3345         * DumpRenderTree/TestNetscapePlugIn/PluginObject.h:
3346         Set up a place to store the NPPluginFuncs struct the browser passed to us.
3347
3348         * DumpRenderTree/TestNetscapePlugIn/Tests/NullNPPGetValuePointer.cpp: Added.
3349         (NullNPPGetValuePointer::NullNPPGetValuePointer): Null out the
3350         NPP_GetValue pointer we passed to the browser to simulate a plugin that
3351         doesn't implement NPP_GetValue.
3352         (NullNPPGetValuePointer::NPP_GetValue): Print an error message. If this
3353         function is called, it means that WebKit has changed in a way that
3354         makes this test invalid.
3355
3356         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
3357         (NP_GetEntryPoints): Save the NPPluginFuncs struct the browser passed
3358         to us so we can be naughty and modify it later.
3359
3360 2010-10-27  Ademar de Souza Reis Jr  <ademar.reis@openbossa.org>
3361
3362         Reviewed by Andreas Kling.
3363
3364         Remove references to ancient QGVLauncher and QtLauncher
3365         https://bugs.webkit.org/show_bug.cgi?id=48430
3366
3367         QtTestBrowser substitutes both and has checks enabled.
3368
3369         * Scripts/webkitpy/style/checker.py: remove references
3370         * Scripts/webkitpy/style/checker_unittest.py: ditto
3371
3372 2010-10-27  Gabor Rapcsanyi  <rgabor@inf.u-szeged.hu>
3373
3374         Reviewed by Ojan Vafai.
3375
3376         [NRWT] Don't use image hash when it's no need in single test mode.
3377         https://bugs.webkit.org/show_bug.cgi?id=48326
3378
3379         * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
3380
3381 2010-10-27  David Kilzer  <ddkilzer@apple.com>
3382
3383         Fix leak of CFMutableDictionaryRef in createXMLStringFromWebArchiveData()
3384
3385         Reviewed by Adam Roben.
3386
3387         Follow-up fix for: <https://bugs.webkit.org/show_bug.cgi?id=48278>
3388
3389         * DumpRenderTree/cf/WebArchiveDumpSupport.cpp:
3390         (createXMLStringFromWebArchiveData): Use RetainPtr<> to fix a
3391         leak introduced in r70613.
3392
3393 2010-10-27  Gabor Rapcsanyi  <rgabor@inf.u-szeged.hu>
3394
3395         Reviewed by Csaba Osztrogonác.
3396
3397         [NRWT] Add platform specific baseline search paths for Qt port
3398         https://bugs.webkit.org/show_bug.cgi?id=48428
3399
3400         * Scripts/webkitpy/layout_tests/port/qt.py:
3401
3402 2010-10-27  Adam Roben  <aroben@apple.com>
3403
3404         Catch exceptions when checking if we're inside a git working directory
3405
3406         Fixes <http://webkit.org/b/48420> REGRESSION (r70562): test-webkitpy
3407         fails on systems without git installed
3408
3409         Reviewed by Anders Carlsson.
3410
3411         * Scripts/webkitpy/common/net/credentials.py:
3412         (Credentials._credentials_from_git): Put the call to
3413         Git.in_working_directory inside the try/except since it, too, attempts
3414         to execute git and thus will throw on systems that don't have git
3415         installed.
3416
3417 2010-10-27  Nikolas Zimmermann  <nzimmermann@rim.com>
3418
3419         Reviewed by David Kilzer.
3420
3421         Convert DumpRenderTree webarchive code to CoreFoundation
3422         https://bugs.webkit.org/show_bug.cgi?id=48278
3423
3424         CFPropertyListCreateWithData and CFPropertyListCreateData are only available in 10.6+.
3425         Replace CFPropertyListCreateWithData by a combination of CFReadStreamCreateWithBytesNoCopy and CFPropertyListCreateFromStream.
3426         Replace CFPropertyListCreateData by CFPropertyListCreateXMLData.
3427
3428         These changes are wrapped in BUILDING_ON_LEOPARD, as the methods are deprecated on 10.6+.
3429
3430         * DumpRenderTree/cf/WebArchiveDumpSupport.cpp:
3431         (createXMLStringFromWebArchiveData):
3432
3433 2010-10-26  Antonio Gomes  <agomes@rim.com>
3434
3435         Reviewed by Martin Robinson.
3436
3437         Remove the absolute path used to include DumpRenderTreeSupportGtk.h from LayoutTestController.h
3438
3439         It turns out this is rather unneeded since WebKitTools/GNUMakefile.am has WebKit/gtk/ in its include
3440         path, and then we can just do #include "WebCoreSupport/DumpRenderTreeSupportGtk.h"
3441
3442         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
3443
3444 2010-10-26  David Kilzer  <ddkilzer@apple.com>
3445
3446         Rename WebArchiveDumpSupport.mm to WebArchiveDumpSupport.cpp
3447
3448         Reviewed by Adam Roben.
3449
3450         Part 4 of 4: <http://webkit.org/b/48278> Convert DumpRenderTree webarchive code to CoreFoundation
3451
3452         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
3453         Updated for file moves and renames.
3454         * DumpRenderTree/cf/WebArchiveDumpSupport.cpp: Renamed from DumpRenderTree/mac/WebArchiveDumpSupport.mm.
3455         * DumpRenderTree/cf/WebArchiveDumpSupport.h: Renamed from DumpRenderTree/mac/WebArchiveDumpSupport.h.
3456
3457 2010-10-26  David Kilzer  <ddkilzer@apple.com>
3458
3459         Convert WebArchiveDumpSupport.mm from NS objects to CF types
3460
3461         Reviewed by Adam Roben.
3462
3463         Part 3 of 4: <http://webkit.org/b/48278> Convert DumpRenderTree webarchive code to CoreFoundation
3464
3465         In order to share WebArchive code between the Mac and Windows
3466         ports, the code in WebArchiveDumpSupport.mm was converted from
3467         Cocoa to C++ using CoreFoundation (CF) types.
3468
3469         * DumpRenderTree/mac/DumpRenderTree.mm:
3470         (dump): Renamed serializeWebArchiveToXML() to
3471         createXMLStringFromWebArchiveData() and added HardAutorelease()
3472         to prevent leaks.
3473         * DumpRenderTree/mac/WebArchiveDumpSupport.h:
3474         (createXMLStringFromWebArchiveData): Renamed from
3475         serializeWebArchiveToXML().  Changed to use CF types.
3476         (createCFURLResponseFromResponseData): Renamed from
3477         unarchiveNSURLResponseFromResponseData().  Changed to use CF
3478         types for its parameter and return type.
3479         * DumpRenderTree/mac/WebArchiveDumpSupport.mm: Replaced use of
3480         NS objects with CF types.  It will be renamed to *.cpp in a
3481         future commit.
3482         (convertMIMEType): Changed to use case-insensitive string
3483         comparisons.
3484         (convertWebResourceDataToString):
3485         (normalizeHTTPResponseHeaderFields):
3486         (normalizeWebResourceURL):
3487         (convertWebResourceResponseToDictionary):
3488         (compareResourceURLs):
3489         (createXMLStringFromWebArchiveData):
3490         * DumpRenderTree/mac/WebArchiveDumpSupportMac.mm:
3491         (createCFURLResponseFromResponseData): Renamed from
3492         unarchiveNSURLResponseFromResponseData().  Changed to use CF
3493         types for its parameter and return type.
3494
3495 2010-10-26  David Kilzer  <ddkilzer@apple.com>
3496
3497         Extract use of NSKeyedUnarchiver from WebArchiveDumpSupport.mm
3498
3499         Reviewed by Adam Roben.
3500
3501         Part 2 of 4: <http://webkit.org/b/48278> Convert DumpRenderTree webarchive code to CoreFoundation
3502
3503         There is no equivalent to NSKeyedUnarchiver in CoreFoundation,
3504         so extract it into a platform-specific source file.
3505
3506         * DumpRenderTree/mac/WebArchiveDumpSupport.h:
3507         (unarchiveNSURLResponseFromResponseData): Added declaration.
3508         * DumpRenderTree/mac/WebArchiveDumpSupport.mm:
3509         (convertWebResourceResponseToDictionary): Extracted code to
3510         unarchiveNSURLResponseFromResponseData() in
3511         WebArchiveDumpSupportMac.mm.  Updated logic to return early if
3512         nil is returned from unarchiveNSURLResponseFromResponseData().
3513         * DumpRenderTree/mac/WebArchiveDumpSupportMac.mm:
3514         (unarchiveNSURLResponseFromResponseData): Added.  Extracted
3515         code from convertWebResourceResponseToDictionary() in
3516         WebArchiveDumpSupport.mm.
3517
3518 2010-10-26  David Kilzer  <ddkilzer@apple.com>
3519
3520         Extract call to -[WebHTMLRepresentation supportedNonImageMIMETypes] from WebArchiveDumpSupport.mm
3521
3522         Reviewed by Adam Roben.
3523
3524         Part 1 of 4: <http://webkit.org/b/48278> Convert DumpRenderTree webarchive code to CoreFoundation
3525
3526         The call to -[WebHTMLRepresentation supportedNonImageMIMETypes]
3527         is not cross-platform between Mac and Windows, so extract it
3528         into a platform-specific source file.
3529
3530         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Added
3531         WebArchiveDumpSupportMac.mm to the project.
3532         * DumpRenderTree/mac/WebArchiveDumpSupport.h:
3533         (supportedNonImageMIMETypes): Added declaration.
3534         * DumpRenderTree/mac/WebArchiveDumpSupport.mm:
3535         (convertWebResourceDataToString): Replaced call to
3536         -[WebHTMLRepresentation supportedNonImageMIMETypes] with
3537         supportedNonImageMIMETypes().
3538         * DumpRenderTree/mac/WebArchiveDumpSupportMac.mm: Added.
3539         (supportedNonImageMIMETypes): Added.  Extracted from
3540         WebArchiveDumpSupport.mm.
3541
3542 2010-10-26  Antonio Gomes  <agomes@rim.com>
3543
3544         Reviewed by Martin Robinson.
3545
3546         [GTK] Implement DumpRenderTreeSupportGtk (similarly to DumpRenderTreeSupportQt idea)
3547         https://bugs.webkit.org/show_bug.cgi?id=48199
3548
3549         Implements support to WebKitTabToLinksPreferenceKey through LayoutTestController::overridePreference.
3550         The corresponding DumpRenderTreeSupportGtk method is called in the DRT context only.
3551
3552         * DumpRenderTree/gtk/DumpRenderTree.cpp:
3553         (resetDefaultsToConsistentValues):
3554         (createWebView):
3555         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
3556         (LayoutTestController::overridePreference):
3557
3558 2010-10-26  Ariya Hidayat  <ariya@sencha.com>
3559
3560         Unreviewed, change the order of my emails for bugzilla autocompletion.
3561
3562         * Scripts/webkitpy/common/config/committers.py:
3563
3564 2010-10-26  Eric Seidel  <eric@webkit.org>
3565
3566         Reviewed by David Kilzer.
3567
3568         build-webkit should collect Visual Studio Express logs and display them
3569         https://bugs.webkit.org/show_bug.cgi?id=39199
3570
3571         * Scripts/build-webkit:
3572         * Scripts/print-vse-failure-logs: Added.
3573         * Scripts/webkitdirs.pm:
3574
3575 2010-10-26  David Kilzer  <ddkilzer@apple.com>
3576
3577         <http://webkit.org/b/48224> build-webkit: add support for --meter-tag switch
3578
3579         Reviewed by Csaba Osztrogonác.