https://bugs.webkit.org/show_bug.cgi?id=64492
Reviewed by Ojan Vafai.
This should fix the bug. Unfortunately this code is currently
impossible to test since it's impossible to mock detect_scm_system at the
moment. I started re-writing scm.detection.py to be mockable, but decided that
was best left for another day.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
* Scripts/webkitpy/layout_tests/port/base.py:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@91023
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2011-07-14 Eric Seidel <eric@webkit.org>
+
+ NRWT doesn't store the svn revision in full_results.json on chromium-win
+ https://bugs.webkit.org/show_bug.cgi?id=64492
+
+ Reviewed by Ojan Vafai.
+
+ This should fix the bug. Unfortunately this code is currently
+ impossible to test since it's impossible to mock detect_scm_system at the
+ moment. I started re-writing scm.detection.py to be mockable, but decided that
+ was best left for another day.
+
+ * Scripts/webkitpy/layout_tests/controllers/manager.py:
+ * Scripts/webkitpy/layout_tests/port/base.py:
+
2011-07-14 Ojan Vafai <ojan@chromium.org>
fix coding style of dashboard_base.js
results['has_wdiff'] = port_obj.wdiff_available()
results['has_pretty_patch'] = port_obj.pretty_patch_available()
try:
- results['revision'] = scm.default_scm().head_svn_revision()
+ results['revision'] = port_object.webkit_scm().head_svn_revision()
except Exception, e:
_log.warn("Failed to determine svn revision for checkout (cwd: %s), leaving 'revision' key blank in full_results.json.\n%s" % (port_obj._filesystem.getcwd(), e))
# Handle cases where we're running outside of version control.
import errno
import os
+from webkitpy.common.memoized import memoized
from webkitpy.common.net.testoutputset import AggregateTestOutputSet
+
# Handle Python < 2.6 where multiprocessing isn't available.
try:
import multiprocessing
_log = logutils.get_logger(__file__)
+
class DummyOptions(object):
"""Fake implementation of optparse.Values. Cloned from webkitpy.tool.mocktool.MockOptions."""
WebKit source tree and the list of path components in |*comps|."""
return self._config.path_from_webkit_base(*comps)
+ @memoized
+ def webkit_scm(self):
+ # On the chromium bots, the cwd is the root of the chromium checkout.
+ # self._config.webkit_base_dir() knows where the webkit root is, no other
+ # object in NRWT seems to keep an SCM around. (Unlike webkit-patch where it's on the Tool/Host object.)
+ # FIXME: We should be able to get the SCM from somewhere else.
+ return scm.detect_scm_system(self._config.webkit_base_dir())
+
def path_to_test_expectations_file(self):
"""Update the test expectations to the passed-in string.