2012-10-02 Daniel Bates Define watch list "webkitperl", "SVNScripts", and "XSS" to watch for changes to Tools/Scripts/{VCSUtils.pm, webkitdirs.pm, webkitperl}, Tools/Scripts/svn-* scripts, and files whose name contains the word "XSS", respectively. Subscribe myself to these lists. * Scripts/webkitpy/common/config/watchlist: 2012-10-02 Roger Fong executive_unittest.py fails on Apple Windows bots but not when run locally. https://bugs.webkit.org/show_bug.cgi?id=98196 Reviewed by Eric Seidel. Making the test more flexible to check for cygwin and allow different outputs from process.wait(). * Scripts/webkitpy/common/system/executive_unittest.py: (ExecutiveTest.serial_test_kill_process): 2012-10-02 Roger Fong Ignore failing line of SpacebarScrolling API test on Windows. https://bugs.webkit.org/show_bug.cgi?id=84961 Reviewed by Anders Carlsson. Test is failing because of https://bugs.webkit.org/show_bug.cgi?id=97946. Ignoring the line that fails on Windows for now until the larger problem at hand is fixed. * TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp: (TestWebKitAPI::TEST): 2012-10-02 Tony Chang check-webkit-style can't handle qt-arm, qt-win, qt-mac, qt-5.0, qt-5.0-wk1 and qt-5.0-wk2 TestExpecatations https://bugs.webkit.org/show_bug.cgi?id=98140 Reviewed by Eric Seidel. Fix a bug where we were always using the host OS rather than using what was passed in as part of the port name on Qt. There's also a bug with being able to test for qt-5.0 expectations files when on a system with Qt 4.8 installed. I'm not sure how to solve that, so for now, stop emitting a style warning about not checking a file. * Scripts/webkitpy/layout_tests/port/qt.py: (QtPort._search_paths): Use passed in OS. * Scripts/webkitpy/style/checkers/test_expectations.py: (TestExpectationsChecker.check): Don't warn if we don't know about the TestExpectations file. * Scripts/webkitpy/style/checkers/test_expectations_unittest.py: (TestExpectationsTestCase.test_determine_port_from_expectations_path): Added a test case for the OS fix. Add a commented out test for the version case. 2012-10-02 Raphael Kubo da Costa Remove the last bits of MSYS support from webkitperl. https://bugs.webkit.org/show_bug.cgi?id=98195 Reviewed by Eric Seidel. No ports currently need MinGW/MSYS support, so remove the last hackish bits related to it from our Perl code. * Scripts/commit-log-editor: (createCommitMessage): * Scripts/old-run-webkit-tests: * Scripts/webkitdirs.pm: (isAnyWindows): (isWindows): 2012-10-02 Raphael Kubo da Costa Remove MSYS-related changes to the http testing infrastructure. https://bugs.webkit.org/show_bug.cgi?id=98183 Reviewed by Eric Seidel. In the process of removing the cruft that has accumulated in our Apache configuration code, we can basically revert r77161 which added some MSYS (mingw)-specific code to old-run-webkit-tests, since it is not being used by any port anymore. * Scripts/run-webkit-httpd: Remove isMsys()-dependent hacks. * Scripts/webkitperl/httpd.pm: (getHTTPDPath): Remove isMsys() code path. (getDefaultConfigForTestDirectory): Revert isMsys() hacks. (getHTTPDConfigPathForTestDirectory): Do not point to the noew removed apache2-msys-httpd.conf. (convertMsysPath): Removed. 2012-10-02 Sadrul Habib Chowdhury [chromium] Make sure the touch-points in the touch-events have the correct state. https://bugs.webkit.org/show_bug.cgi?id=98110 Reviewed by Adam Barth. TestWebPlugin can now be configured to print out some details about events. For now, details for only touch events are printed. This is used to verify that touch-points in the touch-events are properly set. * DumpRenderTree/chromium/TestWebPlugin.cpp: (pointState): (printTouchList): (printEventDetails): (TestWebPlugin::TestWebPlugin): (TestWebPlugin::handleInputEvent): * DumpRenderTree/chromium/TestWebPlugin.h: (TestWebPlugin): 2012-10-02 Zan Dobersek [XvfbDriver] First tests in each worker occasionally crash https://bugs.webkit.org/show_bug.cgi?id=96203 Reviewed by Dirk Pranke. Often in debug builds, the first tests in each worker crash because they can't yet open the Xvfb display assigned to them. This indicates Xvfb hasn't yet been set up. To avoid this, the execution should halt for a small amount of time before tests are run so the Xvfb process has enough time to get ready. At the moment this is done right after the Xvfb process is spawned and the execution halts for one second. That value is overriden to zero when testing to not prolong the testing time. * Scripts/webkitpy/layout_tests/port/xvfbdriver.py: (XvfbDriver.__init__): (XvfbDriver._start): * Scripts/webkitpy/layout_tests/port/xvfbdriver_unittest.py: (XvfbDriverTest.make_driver): 2012-10-02 Christophe Dumez [EFL] Use XvfbDriver for layout tests https://bugs.webkit.org/show_bug.cgi?id=98162 Reviewed by Kenneth Rohde Christiansen. Use XvfbDriver for layout tests on EFL port. * Scripts/webkitpy/layout_tests/port/efl.py: (EflPort._driver_class): * Scripts/webkitpy/layout_tests/port/xvfbdriver.py: (XvfbDriver._start): Set DUMPRENDERTREE_TEMP and LOCAL_RESOURCE_ROOT environment variables in XvfbDriver as those are needed for TestRunner::pathToLocalResource(). 2012-10-02 Zan Dobersek [Gtk] Several tests launch g_object_ref/unref assertion messages https://bugs.webkit.org/show_bug.cgi?id=95062 Reviewed by Martin Robinson. Only increase and decrease reference count of the accessibility UI element if it actually exists. * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::AccessibilityUIElement): (AccessibilityUIElement::~AccessibilityUIElement): 2012-10-02 Douglas Stockwell [chromium] running layout tests on mountainlion should use chromium TestExpectations https://bugs.webkit.org/show_bug.cgi?id=98119 Reviewed by Adam Barth. Some basic support for mountainlion has already been committed but it failed to refer to the chromium TestExpectations. * Scripts/webkitpy/layout_tests/port/chromium.py: (ChromiumPort): * Scripts/webkitpy/layout_tests/port/chromium_port_testcase.py: (ChromiumPortTestCase.test_all_test_configurations): 2012-10-02 Raphael Kubo da Costa webkitpy: Stop listening on port 8081 when using Apache. https://bugs.webkit.org/show_bug.cgi?id=98155 Reviewed by Eric Seidel. No test currently uses this port, and the lighttpd configuration does not open it. This helps the efforts of bringing some consistency to the Apache configuration at the moment by opening the same ports in the webkitpy side and in the httpd.conf side (the idea is to remove the httpd.conf side later), and also makes the behavior consistent across the two servers we currently support. * Scripts/webkitpy/layout_tests/servers/apache_http_server.py: (LayoutTestApacheHttpd.__init__): 2012-10-02 Csaba Osztrogonác [WK2] REGRESSION(r128623): It made layout tests extremely slow https://bugs.webkit.org/show_bug.cgi?id=96862 Reviewed by Simon Hausmann. Disable calling the extremely slow WKBundleSetDatabaseQuota() between tests until proper fix. * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp: (WTR::InjectedBundle::beginTesting): 2012-10-02 Philip Rogers Fix PerfTest standard deviation calculation. https://bugs.webkit.org/show_bug.cgi?id=98115 Reviewed by Ryosuke Niwa. Previously our standard deviation calculation was incorrect. This patch updates perftest.py's algorithm to calculate the sample standard deviation (with Bessel's correction) using Knuth's online algorithm: http://en.wikipedia.org/wiki/Algorithms_for_calculating_variance#Online_algorithm An existing test has been modified to prove our new results. This patch also updates runner.js to use Bessel's correction in its sample standard deviation calculation, which is more accurate for small sample sizes. Additionally, runner.js has been modified to not calculate the 'sum' statistic, which was not very useful. * Scripts/webkitpy/performance_tests/perftest.py: The unused variable valueSum has also been removed. (PageLoadingPerfTest.run): * Scripts/webkitpy/performance_tests/perftest_unittest.py: This test calculates the stdev of {2000, 3000, ..., 20000} which was hand-calculated using a spreadsheet. (TestPageLoadingPerfTest.test_run): 2012-10-01 Raphael Kubo da Costa webkitpy should accept a different httpd.conf specified by the user https://bugs.webkit.org/show_bug.cgi?id=98071 Reviewed by Dirk Pranke. The existing httpd.conf variants (or lighttpd.conf, for that matter) we have do not always suit the user's system. This is particularly true on Linux/Unix, where Apache can be installed in a plethora of ways and the LoadModule calls can fail to specify the proper module paths. For now, we start accepting the WEBKIT_HTTP_SERVER_CONF_PATH environment variable, which allows the user to specify the absolute path to another http server configuration file that might work on the user's system. In the long term, we should try to generate our configuration file and stop requiring all the different httpd.conf files we have as well as this hack. * Scripts/webkitpy/layout_tests/port/base.py: (Port._path_to_apache_config_file): * Scripts/webkitpy/layout_tests/port/port_testcase.py: (test_path_to_apache_config_file): 2012-10-01 Emil A Eklund Unreviewed, upgrade eae to reviewer. http://lists.webkit.org/mailman/private/webkit-committers/2012-October/000191.html * Scripts/webkitpy/common/config/committers.py: 2012-10-01 Ming Xie [BlackBerry] Add a early return in buildCMakeProjectOrExit() https://bugs.webkit.org/show_bug.cgi?id=98052 Reviewed by Rob Buis. This option allows our build to only run the CMake build configuration step when environment variable GENERATE_CMAKE_PROJECT_ONLY is specified. * Scripts/webkitdirs.pm: (buildCMakeProjectOrExit): 2012-10-01 Raphael Kubo da Costa [webkitpy] Detect the multiple names of the wdiff binary in the Port class. https://bugs.webkit.org/show_bug.cgi?id=98039 Reviewed by Dirk Pranke. Unify the duplicate checks for the wdiff binary present in different ports into the base Port class. * Scripts/webkitpy/layout_tests/port/base.py: (Port): (Port._path_to_wdiff): * Scripts/webkitpy/layout_tests/port/chromium_linux.py: (ChromiumLinuxPort._path_to_wdiff): Removed. * Scripts/webkitpy/layout_tests/port/gtk.py: (GtkPort._path_to_wdiff): Removed. 2012-10-01 Raphael Kubo da Costa [chromium] Remove custom implementation of _path_to_apache_config_file in chromium_linux. https://bugs.webkit.org/show_bug.cgi?id=98042 Reviewed by Dirk Pranke. The Chromium-based ports inherit from Port these days, so get rid of the custom implementation of _path_to_apache_config_file() in favor of the more portable one in the Port class. * Scripts/webkitpy/layout_tests/port/chromium_linux.py: (ChromiumLinuxPort._path_to_apache_config_file): 2012-10-01 Raphael Kubo da Costa [chromium] Remove duplicated _is_redhat_based() implementation from chromium_linux.py. https://bugs.webkit.org/show_bug.cgi?id=98035 Reviewed by Dirk Pranke. Since the Chromium port classes inherit from Port these days, it can rely on the same implementation of _is_redhat_based() present there instead of duplicating it. * Scripts/webkitpy/layout_tests/port/chromium_linux.py: (ChromiumLinuxPort._is_redhat_based): Removed. 2012-10-01 Raphael Kubo da Costa [GTK] Rely on the general implementation for detecting the Apache server path. https://bugs.webkit.org/show_bug.cgi?id=98033 Reviewed by Martin Robinson. The implemenentation of _path_to_apache() in base.py already checks for the same paths gtk.py tries; the only difference is that all of the are tried regardless of the current distro. Doing so is more portable, and lets us remove some distro-checking from the code. * Scripts/webkitpy/layout_tests/port/gtk.py: (GtkPort._path_to_apache): Remove. 2012-10-01 Csaba Osztrogonác Unreviewed, update the URL of the Szeged SVN mirror. * BuildSlaveSupport/build.webkit.org-config/config.json: 2012-10-01 Yuta Kitamura Unreviewed. Create WebSocket watch list, and add myself to that list. * Scripts/webkitpy/common/config/watchlist: 2012-09-30 Taiju Tsuiki Unreviewed. Adding myself as a committer. * Scripts/webkitpy/common/config/committers.py: 2012-09-30 Sadrul Habib Chowdhury [chromium] Add a test to verify that a plugin does not receive touch-events unless it explicitly requests for them https://bugs.webkit.org/show_bug.cgi?id=97975 Reviewed by Adam Barth. TestWebPlugin can now be configured to accept touch events or not. Use this configurability to verify that a plugin does not receive touch events unless it explicitly requests for them. * DumpRenderTree/chromium/TestWebPlugin.cpp: (TestWebPlugin::TestWebPlugin): (TestWebPlugin::initialize): (TestWebPlugin::parseBoolean): * DumpRenderTree/chromium/TestWebPlugin.h: (TestWebPlugin): 2012-09-28 Mariusz Grzegorczyk [WK2][GTK][EFL] Share WebKit2-GTK plugin process implementation with EFL port https://bugs.webkit.org/show_bug.cgi?id=91844 Reviewed by Simon Hausmann. Turn on Netscape Plugin API option by default. * Scripts/webkitperl/FeatureList.pm: 2012-09-28 Dirk Pranke webkit-patch rebaseline-expectations is broken https://bugs.webkit.org/show_bug.cgi?id=97619 Reviewed by Ojan Vafai. The new expectations format is causing two problems for webkit-patch rebaseline expectations 1) the transformation into and out of the old syntax (which is still used internally) is somewhat lossy, e.g., we're not preserving the case of Bug(x) identifiers. Also, we can't tell if the input was [ WontFix ] or [ Skip WontFix Pass ] 2) the new syntax is more lenient, allowing for multiple ways to specify the same result, e.g., "[ Skip ]" may or may not be missing. As a result, we end up rewriting a whole bunch of lines for purely syntactic differences. Both of these things are bugs that need to be fixed, but we should also not just rewrite lines that shouldn't be modified. This patch fixes the last issue (no rewriting). * Scripts/webkitpy/layout_tests/models/test_expectations.py: (TestExpectationLine._format_line): (TestExpectations.remove_rebaselined_tests): * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py: (RebaseliningTest.test_remove): 2012-09-28 Dirk Pranke virtual directories should just rename the beginning of the test path https://bugs.webkit.org/show_bug.cgi?id=97925 Reviewed by Ojan Vafai. We were replacing all occurrences of the base prefix of a virtual test suite with the virtual name, instead of just the first. So, where we had softwarecompositing running the compositing tests, any compositing test that actually had "compositing" in the test base name would get that expanded incorrectly. * Scripts/webkitpy/layout_tests/port/base.py: (Port.populated_virtual_test_suites): (Port.lookup_virtual_test_base): * Scripts/webkitpy/layout_tests/port/base_unittest.py: (PortTest.test_tests): * Scripts/webkitpy/layout_tests/port/test.py: 2012-09-28 Ojan Vafai Garden-o-matic sometimes things buildbot warnings are failures https://bugs.webkit.org/show_bug.cgi?id=97926 Reviewed by Tony Chang. It turns out the JSON clearly tells us if it's a failure. We want to skip all warnings even if they don't have "warning" in the text. * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders.js: * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders_unittests.js: 2012-09-28 Harald Tveit Alvestrand Implement the GetStats interface on PeerConnection https://bugs.webkit.org/show_bug.cgi?id=95193 Reviewed by Adam Barth. * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp: (RTCStatsRequestSucceededTask): (RTCStatsRequestSucceededTask::RTCStatsRequestSucceededTask): (MockWebRTCPeerConnectionHandler::getStats): * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h: (MockWebRTCPeerConnectionHandler): 2012-09-28 Kristóf Kosztyó [NRWT] XvfbDriver should choose the next free display https://bugs.webkit.org/show_bug.cgi?id=88414 Reviewed by Dirk Pranke. This change how the XvfbDriver choose the next display. Before this the choosing are based on the worker number but it caused errors when several nrwt run on the same time. This add process based free diplay search. * Scripts/webkitpy/layout_tests/port/xvfbdriver.py: (XvfbDriver.__init__): (XvfbDriver._next_free_display): (XvfbDriver._start): (XvfbDriver.stop): * Scripts/webkitpy/layout_tests/port/xvfbdriver_unittest.py: (XvfbDriverTest.make_driver): (XvfbDriverTest.test_start_no_pixel_tests): (XvfbDriverTest.test_start_pixel_tests): (XvfbDriverTest.test_start_arbitrary_worker_number): (XvfbDriverTest.test_next_free_display): (XvfbDriverTest): (XvfbDriverTest.test_start_next_worker): 2012-09-28 Huang Dongsung [GTK] Enable CSS Shaders layout LayoutTests on GTK+ https://bugs.webkit.org/show_bug.cgi?id=97821 Reviewed by Martin Robinson. This feature is disabled via Settings by default, but for testing, we enable it using layoutTestController.overridePreferences. Add the necessary plumbing for DRT. WTR already works because support was added for Apple Mac earlier. * DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): Feature is off by default. * DumpRenderTree/gtk/TestRunnerGtk.cpp: (TestRunner::overridePreference): Add handling of WebKitCSSCustomFilterEnabled. 2012-09-28 Csaba Osztrogonác [Qt] Make NRWT use wk2/TestExpectations file https://bugs.webkit.org/show_bug.cgi?id=97894 Reviewed by Simon Hausmann. * Scripts/webkitpy/layout_tests/port/qt.py: Remove unnecessary _skipped_file_search_paths function. (QtPort.expectations_files): Add wk2 if --webkit-test-runner option added. * Scripts/webkitpy/layout_tests/port/qt_unittest.py: Remove unnecessary test__skipped_file_search_paths function. (QtPortTest._assert_search_path): Removed. (QtPortTest.test_expectations_files): Add wk2 if --webkit-test-runner option added, and code cleanup. 2012-09-28 Mikhail Pozdnyakov [EFL][DRT] EFL's layoutTestController.keepWebHistory should enable visited links tracking https://bugs.webkit.org/show_bug.cgi?id=97901 Reviewed by Kenneth Rohde Christiansen. EFL's DRT testRunner.keepWebHistory should enable visited links tracking in order to be consistent with WTR implementation and also several tests rely on that (fast/history). * DumpRenderTree/efl/TestRunnerEfl.cpp: (TestRunner::keepWebHistory): 2012-09-28 Mikhail Pozdnyakov [EFL][DRT] EFL DRT should disable visited links tracking by default https://bugs.webkit.org/show_bug.cgi?id=97881 Reviewed by Kenneth Rohde Christiansen. Visited links tracking is disabled by default for each test. * DumpRenderTree/efl/DumpRenderTreeChrome.cpp: (DumpRenderTreeChrome::resetDefaultsToConsistentValues): 2012-09-28 Gyuyoung Kim Unreviewed, rolling out r129863. http://trac.webkit.org/changeset/129863 https://bugs.webkit.org/show_bug.cgi?id=97173 Broken debug WK2 layout test * MiniBrowser/efl/main.c: (quit): (main): * WebKitTestRunner/efl/PlatformWebViewEfl.cpp: (WTR::initEcoreEvas): (WTR::PlatformWebView::~PlatformWebView): * WebKitTestRunner/efl/main.cpp: (main): 2012-09-28 Kai Koehne [Qt] Use qInstallMessageHandler() https://bugs.webkit.org/show_bug.cgi?id=96648 Reviewed by Jocelyn Turcotte. qInstallMsgHandler() got deprecated in Qt 5. * DumpRenderTree/qt/DumpRenderTreeMain.cpp: (messageHandler): (main): * WebKitTestRunner/qt/main.cpp: (messageHandler): (main): 2012-09-28 Eunmi Lee [EFL][WK2] Refactoring initialization and shutdown codes of EFL libraries. https://bugs.webkit.org/show_bug.cgi?id=97173 Reviewed by Gyuyoung Kim. The initialization and shutdown are done inside the webkit, so we don't have to call them out of the webkit. * MiniBrowser/efl/main.c: (quit): (main): * WebKitTestRunner/efl/PlatformWebViewEfl.cpp: (WTR::initEcoreEvas): (WTR::PlatformWebView::~PlatformWebView): * WebKitTestRunner/efl/main.cpp: (main): 2012-09-27 Alexandre Elias [chromium] DumpRenderTree support for software compositing https://bugs.webkit.org/show_bug.cgi?id=96853 Reviewed by James Robinson. This adds software compositor support to DumpRenderTree. The only thing needed is a minimal OutputSurfaceSoftware that holds a viewport-sized bitmap. Then, I added virtual test suite platform/chromium/virtual/softwarecompositing -- a mirror of the compositing/ directory with --enable-software-compositing, and expectations for not yet supported tests. * DumpRenderTree/DumpRenderTree.gypi: * DumpRenderTree/chromium/DumpRenderTree.cpp: (main): * DumpRenderTree/chromium/TestShell.cpp: (TestShell::TestShell): * DumpRenderTree/chromium/TestShell.h: (TestShell::softwareCompositingEnabled): (TestShell::setSoftwareCompositingEnabled): (TestShell): * DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::createOutputSurface): * DumpRenderTree/chromium/WebViewHostOutputSurface.cpp: (WebKit::WebViewHostOutputSurface::create3d): (WebKit): (WebKit::WebViewHostOutputSurface::createSoftware): (WebKit::WebViewHostOutputSurface::WebViewHostOutputSurface): (WebKit::WebViewHostOutputSurface::bindToClient): (WebKit::WebViewHostOutputSurface::surfaceSoftware): * DumpRenderTree/chromium/WebViewHostOutputSurface.h: (WebKit): (WebViewHostOutputSurface): * DumpRenderTree/chromium/WebViewHostSoftwareOutputDevice.cpp: Copied from Tools/DumpRenderTree/chromium/WebViewHostOutputSurface.cpp. (WebKit): (WebKit::WebViewHostSoftwareOutputDevice::lockForWrite): (WebKit::WebViewHostSoftwareOutputDevice::unlockForWrite): (WebKit::WebViewHostSoftwareOutputDevice::lockForRead): (WebKit::WebViewHostSoftwareOutputDevice::unlockForRead): (WebKit::WebViewHostSoftwareOutputDevice::viewportChanged): * DumpRenderTree/chromium/WebViewHostSoftwareOutputDevice.h: Copied from Tools/DumpRenderTree/chromium/WebViewHostOutputSurface.cpp. (WebKit): (WebViewHostSoftwareOutputDevice): * Scripts/webkitpy/layout_tests/port/chromium.py: (ChromiumPort.virtual_test_suites): 2012-09-27 Nasko Oskov Move DumpRenderTree to use newer version of the name method of WebFrame and the willCheckAndDispatchMessageEvent method of WebFrameClient https://bugs.webkit.org/show_bug.cgi?id=95254 Reviewed by Adam Barth. The WebFrame name() method is removed and replaced by better named uniqueName() method, so DRT needs to be updated to use this new version. Also the willCheckAndDispatchMessageEvent in WebFrameClient gained one more parameter, which had to be added in DRT. * DumpRenderTree/chromium/TestShell.cpp: (dumpFramesAsText): (dumpFramesAsPrintedText): (dumpFrameScrollPosition): * DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::unableToImplementPolicyWithError): (WebViewHost::willCheckAndDispatchMessageEvent): (WebViewHost::printFrameDescription): * DumpRenderTree/chromium/WebViewHost.h: (WebViewHost): 2012-09-27 Julie Parent Add webkit_unit_tests to the flakiness dashboard https://bugs.webkit.org/show_bug.cgi?id=97814 Reviewed by Dirk Pranke. webkit_unit_tests run on the same bots as test_shell_tests. * TestResultServer/static-dashboards/builders.js: (loadBuildersList): * TestResultServer/static-dashboards/dashboard_base.js: (currentBuilderGroupCategory): 2012-09-27 Florin Malita [Perftest] PerfTestRunner exception when using nested git checkouts https://bugs.webkit.org/show_bug.cgi?id=97796 Reviewed by Ryosuke Niwa. In order to support separate Chromium vs. WebKit git trees, PerfTestsRunner needs to instantiate per-repository SCM objects when collecting revision information. * Scripts/webkitpy/performance_tests/perftestsrunner.py: (PerfTestsRunner._generate_results_dict): 2012-09-27 Sudarsana Nagineni [Mac][DRT] Add support to allow non-array modifier arguments in keyDown() https://bugs.webkit.org/show_bug.cgi?id=97805 Reviewed by Alexey Proskuryakov. Add support for handling a string as modifier argument to keyDown(). This support has already been added to other ports, so implementing this on Mac too, to be consistent with the other ports. * DumpRenderTree/mac/EventSendingController.mm: (modifierFlags): (buildModifierFlags): 2012-09-27 Dirk Pranke efl wk2 bots weren't looking at platform/wk2/TestExpectations https://bugs.webkit.org/show_bug.cgi?id=97815 Unreviewed, build fix. Should clean up this logic later so that we're just using the implementation in base ... * Scripts/webkitpy/layout_tests/port/efl.py: (EflPort._search_paths): (EflPort.expectations_files): 2012-09-27 Dirk Pranke webkitpy: make warning about missing BUG identifiers per-port configurable https://bugs.webkit.org/show_bug.cgi?id=97751 Reviewed by Ojan Vafai. Prior to this change linting TestExpectations files (checking their style) would raise warnings if lines were missing a BUG modifier, even though such a modifier is actually optional in the syntax. As we migrate the entries over from the Skipped files, these warnings will generate a lot of noise, and it's not yet clear that we actually want to require the modifiers on all ports. So, this change makes this per-port configurable so that they will generate warnings in the Chromium TestExpectations and not anywhere else. * Scripts/webkitpy/layout_tests/models/test_expectations.py: (TestExpectationParser._parse_modifiers): * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py: (MiscTests.test_parse_warning): (SemanticTests.test_missing_bugid): * Scripts/webkitpy/layout_tests/port/base.py: (Port.warn_if_bug_missing_in_test_expectations): * Scripts/webkitpy/layout_tests/port/chromium.py: (ChromiumPort.warn_if_bug_missing_in_test_expectations): 2012-09-27 Xianzhu Wang [Chromium-Android] Push more fonts for layout tests to match chromium-linux https://bugs.webkit.org/show_bug.cgi?id=97746 Reviewed by Dirk Pranke. * DumpRenderTree/chromium/android_fallback_fonts.xml: Added the new fonts into fallback list. Removed the Android system fallback font DroidSansFallback.ttf. * Scripts/webkitpy/layout_tests/port/builders.py: Add chromium-android to pass style check. * Scripts/webkitpy/layout_tests/port/chromium_android.py: (ChromiumAndroidPort.check_build): Added check for md5sum and forwarder utilities to give better error message when they are missing. (ChromiumAndroidPort.check_sys_deps): Allow host font files to come from one of multiple directories. (ChromiumAndroidPort._path_to_md5sum): (ChromiumAndroidDriver._setup_md5sum_and_push_data_if_needed): (ChromiumAndroidDriver._push_fonts): (ChromiumAndroidDriver._push_test_resources): 2012-09-27 Tommy Widenflycht MediaStream API: Enhance MediaConstraints to make it easier to get the constraint data https://bugs.webkit.org/show_bug.cgi?id=97559 Reviewed by Adam Barth. Refactoring for the new WebMediaConstraints api. * DumpRenderTree/chromium/MockConstraints.cpp: (MockConstraints::verify): 2012-09-27 Tommy Widenflycht MediaStream API: Rename MockConstraints::verify to verifyConstraints https://bugs.webkit.org/show_bug.cgi?id=97779 Reviewed by Csaba Osztrogonác. The Mac OS X sdk has a macro called verify :/ * DumpRenderTree/chromium/MockConstraints.cpp: (MockConstraints::verifyConstraints): * DumpRenderTree/chromium/MockConstraints.h: (MockConstraints): * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp: (MockWebRTCPeerConnectionHandler::initialize): * DumpRenderTree/chromium/WebUserMediaClientMock.cpp: (WebUserMediaClientMock::requestUserMedia): 2012-09-27 Tommy Widenflycht MediaStream API: Update getUserMedia to match the latest specification https://bugs.webkit.org/show_bug.cgi?id=97540 Reviewed by Adam Barth. http://dev.w3.org/2011/webrtc/editor/getusermedia.html#navigatorusermedia Navigator.getUserMedia is changed so that the audio and video members can either be a bool or a constraints object. * public/WebUserMediaRequest.h: (WebKit): (WebUserMediaRequest): * src/WebUserMediaRequest.cpp: (WebKit::WebUserMediaRequest::audioConstraints): (WebKit): (WebKit::WebUserMediaRequest::videoConstraints): 2012-09-26 Laszlo Gombos Unreviewed. Update my e-mail address. * Scripts/webkitpy/common/config/committers.py: 2012-09-26 Dirk Pranke modify old-run-webkit-tests to support TestExpectations files a little https://bugs.webkit.org/show_bug.cgi?id=97276 Reviewed by Daniel Bates. This patch adds minimal support to old-run-webkit-tests so that it can read a TestExpectations file and skip the tests listed there. It will skip *all* tests, regardless of the expectation (even if the test is listed as [ Pass ]), and it will only look at the TestExpectations file if there isn't a Skipped file next to it. This will allow us to switch to using just using TestExpectations files without making old-run-webkit-tests totally useless. * Scripts/old-run-webkit-tests: (readSkippedFiles): (processSkippedFileEntry): Added. (startsWith): Added. 2012-09-26 Dirk Pranke The style bot spams about skia_test_expectations.txt https://bugs.webkit.org/show_bug.cgi?id=97699 Reviewed by Adam Barth. Remove the warning about a missing skia_test_expectations.txt file for now. There are some situations where it would be helpful to get this warning as it might indicate that the user is going to get results different than what they're expecting, but at the moment it looks difficult if not impossible to get those warnings and not also get warnings that we don't care about, so the noise is outweighing the value of the signal. This at least will stop the false negatives we're getting on the style bots. If it turns out people do need the warning we can add it back in in some other more conditional way. * Scripts/webkitpy/layout_tests/port/chromium.py: (ChromiumPort.expectations_files): * Scripts/webkitpy/tool/commands/rebaseline_unittest.py: (TestRebaseline.test_rebaseline_updates_expectations_file_noop): (test_rebaseline_updates_expectations_file): (test_rebaseline_does_not_include_overrides): (test_rebaseline_expectations): (_assert_command): 2012-09-26 David Michael Barr Unreviewed. Upgrade myself from contributor to committer. * Scripts/webkitpy/common/config/committers.py: 2012-09-26 Ryosuke Niwa Remove deprecated code from perftestrunner.py https://bugs.webkit.org/show_bug.cgi?id=97724 Reviewed by Adam Barth. Remove the code deprecated in r129580 now that we have landed r129597, which updated master.cfg to use new options, and restarted the buildbot master. * Scripts/webkitpy/performance_tests/perftestsrunner.py: (PerfTestsRunner._parse_args): (PerfTestsRunner._generate_and_show_results): * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py: (test_run_with_slave_config_json): (test_parse_args): 2012-09-26 Beth Dakin https://bugs.webkit.org/show_bug.cgi?id=97629 http/tests/security/cross-frame-access-put.html failing on Mac WK2 bots after being unskipped Reviewed by Tim Horton. The test was failing because we were failing to use the fake window origin. We should really always use the fake origin. This patch eliminates _shouldUseFakeOrigin in favor of always using it. * WebKitTestRunner/mac/PlatformWebViewMac.mm: (-[WebKitTestRunnerWindow setFrameOrigin:]): (-[WebKitTestRunnerWindow setFrame:display:animate:]): (-[WebKitTestRunnerWindow setFrame:display:]): (-[WebKitTestRunnerWindow frameRespectingFakeOrigin]): 2012-09-26 Tony Chang C++ style checker should warn when the indentation is wrong https://bugs.webkit.org/show_bug.cgi?id=97602 Reviewed by Ojan Vafai. Rewrite the indentation checker to ensure that indentation is always a factor of 4 and that we only indent 4 spaces from the previous line. I deleted some of the old indentation checking code since it was filtered out and didn't match the webkit style. * Scripts/webkitpy/style/checker.py: * Scripts/webkitpy/style/checkers/cpp.py: (check_indentation_amount): New function that checks indentation. Intentionally runs after other indentation checks. (check_style): Delete the old indentation code since we were already filtering out the whitespace/labels warnings. (CppChecker): Remove the whitespace/labels filter. * Scripts/webkitpy/style/checkers/cpp_unittest.py: (CppStyleTest.test_multi_line_comments): Force 4 space indent. (CppStyleTest.test_explicit_single_argument_constructors): (CppStyleTest.test_explicit_single_argument_constructors.Foo): (CppStyleTest.test_explicit_single_argument_constructors.Qualifier): (CppStyleTest.test_slash_star_comment_on_single_line): (CppStyleTest.test_braces): (CppStyleTest.test_spacing_before_last_semicolon): (CppStyleTest.test_static_or_global_stlstrings): (CppStyleTest.test_indent): Added macro test case. (CppStyleTest.test_build_class): (NoNonVirtualDestructorsTest.test_no_error): (NoNonVirtualDestructorsTest.test_no_error.Foo): (NoNonVirtualDestructorsTest.test_no_error.Qualified): (NoNonVirtualDestructorsTest.test_no_destructor_when_virtual_needed): (NoNonVirtualDestructorsTest.test_no_destructor_when_virtual_needed.Foo): (NoNonVirtualDestructorsTest.test_destructor_non_virtual_when_virtual_needed): (NoNonVirtualDestructorsTest.test_destructor_non_virtual_when_virtual_needed.Foo): (NoNonVirtualDestructorsTest.test_no_warn_when_derived): (NoNonVirtualDestructorsTest.test_no_warn_when_derived.Foo): (NoNonVirtualDestructorsTest.test_internal_braces): (NoNonVirtualDestructorsTest.test_internal_braces.Foo): (NoNonVirtualDestructorsTest.test_inner_class_needs_virtual_destructor): (NoNonVirtualDestructorsTest.test_inner_class_needs_virtual_destructor.Foo): (NoNonVirtualDestructorsTest.test_inner_class_needs_virtual_destructor.Foo.Goo): (NoNonVirtualDestructorsTest.test_outer_class_needs_virtual_destructor): (NoNonVirtualDestructorsTest.test_outer_class_needs_virtual_destructor.Foo): (NoNonVirtualDestructorsTest.test_outer_class_needs_virtual_destructor.Foo.Goo): (NoNonVirtualDestructorsTest.test_qualified_class_needs_virtual_destructor): (NoNonVirtualDestructorsTest.test_qualified_class_needs_virtual_destructor.Qualified): (NoNonVirtualDestructorsTest.test_multi_line_declaration_no_error): (NoNonVirtualDestructorsTest.test_multi_line_declaration_no_error.Foo): (NoNonVirtualDestructorsTest.test_multi_line_declaration_with_error): (NoNonVirtualDestructorsTest.test_multi_line_declaration_with_error.Foo): (WebKitStyleTest.test_indentation): (WebKitStyleTest.test_braces): Add test for call params spanning lines. 2012-09-26 Adam Barth Rollout messages should be clickable in bugzilla https://bugs.webkit.org/show_bug.cgi?id=97711 Reviewed by Simon Fraser. If we say Bug NNNN instead of just NNNN, bugzilla will autolink to the actual bug. * Scripts/webkitpy/tool/commands/download_unittest.py: * Scripts/webkitpy/tool/steps/createbug.py: (CreateBug.run): 2012-09-26 Marcelo Lira run-perf-tests must expand environment variables in user provided paths https://bugs.webkit.org/show_bug.cgi?id=97686 Reviewed by Ryosuke Niwa. The run-perf-tests command line options that receive paths from the user now expand any possible environment variables, because Python's file handling methods do not handle those. Examples: run-perf-tests --platform=qt --release --output-json-path=~/perf-results run-perf-tests --platform=qt --release --output-json-path=$HOME/perf-results Also removed unused imports. * Scripts/webkitpy/performance_tests/perftestsrunner.py: (PerfTestsRunner._parse_args._expand_path): expand environment variables in a path passed via command line (PerfTestsRunner._parse_args): 2012-09-26 Sheriff Bot Unreviewed, rolling out r129654. http://trac.webkit.org/changeset/129654 https://bugs.webkit.org/show_bug.cgi?id=97702 breaks chromium windows build (Requested by schenney on #webkit). * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp: * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h: (MockWebRTCPeerConnectionHandler): 2012-09-26 Michael Saboff Unreviewed build change. Reverting inadvertent change to project file. * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: 2012-09-26 Harald Tveit Alvestrand Implement the GetStats interface on PeerConnection https://bugs.webkit.org/show_bug.cgi?id=95193 Reviewed by Adam Barth. * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp: (RTCStatsRequestSucceededTask): (RTCStatsRequestSucceededTask::RTCStatsRequestSucceededTask): (MockWebRTCPeerConnectionHandler::getStats): * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h: (MockWebRTCPeerConnectionHandler): 2012-09-26 Mikhail Pozdnyakov [WK2][WTR] Policy client: dumping from decidePolicyForResponse callback https://bugs.webkit.org/show_bug.cgi?id=97034 Reviewed by Kenneth Rohde Christiansen. Provided dumping from WTR Policy client 'decidePolicyForResponse' callback. * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: (WTR::InjectedBundlePage::decidePolicyForResponse): 2012-09-26 Zoltan Arvai [Qt][WTR] Build fix for MSVC. https://bugs.webkit.org/show_bug.cgi?id=97667 Reviewed by Csaba Osztrogonác. WTR misses InjectedBundle headers. Adding $$PWD to Target.pri is required for MSVC. Clean build is necessary on Windows. * WebKitTestRunner/InjectedBundle/Target.pri: 2012-09-26 Xiaobo Wang [BlackBerry] [DRT] eventSender.keyDown() doesn't support Ctrl key modifier https://bugs.webkit.org/show_bug.cgi?id=97665 Reviewed by Rob Buis. This patch fixes test fast/forms/input-text-option-delete.html. * DumpRenderTree/blackberry/EventSender.cpp: (keyDownCallback): 2012-09-26 Dinu Jacob Unreviewed. Adding myself as a committer. * Scripts/webkitpy/common/config/committers.py: 2012-09-26 Carlos Garcia Campos [GTK] Remove color codes characters from run-gtk-tests output when not writing to a TTY https://bugs.webkit.org/show_bug.cgi?id=97660 Reviewed by Philippe Normand. Remove also the '\r' characters returned by TTY output to try to fix the double line endings of the script output in the bots. * Scripts/run-gtk-tests: (TestRunner.__init__): Compile a regexp for color codes if stdout it not a TTY. (TestRunner._run_test_command.parse_line): Remove color codes and '\r' characters from the line returned by the pseudo-terminal if stdout is not a TTY. * gtk/common.py: (parse_output_lines): Fix the last chunk check to make sure we always send entire lines to the callback, otherwise color codes regexp might fail if the line is not complete. 2012-09-25 Raphael Kubo da Costa [DRT][WTR] Support overriding the 'WebKitDisplayImagesKey' preference https://bugs.webkit.org/show_bug.cgi?id=96883 Reviewed by Kenneth Rohde Christiansen. * DumpRenderTree/efl/TestRunnerEfl.cpp: (TestRunner::overridePreference): Support the 'WebKitDisplayImagesKey' preference. 2012-09-26 Zan Dobersek [GTK] Enable some of the unstable CSS features https://bugs.webkit.org/show_bug.cgi?id=97572 Reviewed by Martin Robinson. Enable the