Modified: trunk/Tools/ChangeLog (90773 => 90774)
--- trunk/Tools/ChangeLog 2011-07-11 19:02:17 UTC (rev 90773)
+++ trunk/Tools/ChangeLog 2011-07-11 19:04:10 UTC (rev 90774)
@@ -1,5 +1,19 @@
2011-07-11 Adam Barth <aba...@webkit.org>
+ garden-o-matic should be able to rebaseline tests
+ https://bugs.webkit.org/show_bug.cgi?id=64186
+
+ Reviewed by Eric Seidel.
+
+ This patch contains a simple HTTP server binding for the
+ rebaseline-test command. The frontend will appear in another patch.
+
+ * Scripts/webkitpy/tool/servers/gardeningserver.py:
+ * Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
+ * Scripts/webkitpy/tool/servers/reflectionhandler.py:
+
+2011-07-11 Adam Barth <aba...@webkit.org>
+
Add some basic UI for showing regression ranges
https://bugs.webkit.org/show_bug.cgi?id=64243
Modified: trunk/Tools/Scripts/webkitpy/tool/servers/gardeningserver.py (90773 => 90774)
--- trunk/Tools/Scripts/webkitpy/tool/servers/gardeningserver.py 2011-07-11 19:02:17 UTC (rev 90773)
+++ trunk/Tools/Scripts/webkitpy/tool/servers/gardeningserver.py 2011-07-11 19:04:10 UTC (rev 90774)
@@ -62,3 +62,16 @@
revision,
reason,
])
+ self._serve_text('success')
+
+ def rebaseline(self):
+ builder = self.query['builder'][0]
+ test = self.query['test'][0]
+ suffix = self.query['suffix'][0]
+ self._run_webkit_patch([
+ 'rebaseline-test',
+ builder,
+ test,
+ suffix,
+ ])
+ self._serve_text('success')
Modified: trunk/Tools/Scripts/webkitpy/tool/servers/gardeningserver_unittest.py (90773 => 90774)
--- trunk/Tools/Scripts/webkitpy/tool/servers/gardeningserver_unittest.py 2011-07-11 19:02:17 UTC (rev 90773)
+++ trunk/Tools/Scripts/webkitpy/tool/servers/gardeningserver_unittest.py 2011-07-11 19:04:10 UTC (rev 90774)
@@ -46,13 +46,24 @@
def __init__(self, server):
self.server = server
+ def _serve_text(self, text):
+ print "== Begin Response =="
+ print text
+ print "== End Response =="
+
class GardeningServerTest(unittest.TestCase):
- def _post_to_path(self, path, expected_stderr=None):
+ def _post_to_path(self, path, expected_stderr=None, expected_stdout=None):
handler = TestGardeningHTTPRequestHandler(MockServer())
handler.path = path
- OutputCapture().assert_outputs(self, handler.do_POST, expected_stderr=expected_stderr)
+ OutputCapture().assert_outputs(self, handler.do_POST, expected_stderr=expected_stderr, expected_stdout=expected_stdout)
- def test_empty_state(self):
+ def test_rollout(self):
expected_stderr = "MOCK run_command: ['echo', 'rollout', '--force-clean', '--non-interactive', '2314', 'MOCK rollout reason']\n"
- self._post_to_path("/rollout?revision=2314&reason=MOCK+rollout+reason", expected_stderr=expected_stderr)
+ expected_stdout = "== Begin Response ==\nsuccess\n== End Response ==\n"
+ self._post_to_path("/rollout?revision=2314&reason=MOCK+rollout+reason", expected_stderr=expected_stderr, expected_stdout=expected_stdout)
+
+ def test_rebaseline_test(self):
+ expected_stderr = "MOCK run_command: ['echo', 'rebaseline-test', 'MOCK builder', 'user-scripts/another-test.html', 'txt']\n"
+ expected_stdout = "== Begin Response ==\nsuccess\n== End Response ==\n"
+ self._post_to_path("/rebaseline?builder=MOCK+builder&test=user-scripts/another-test.html&suffix=txt", expected_stderr=expected_stderr, expected_stdout=expected_stdout)
Modified: trunk/Tools/Scripts/webkitpy/tool/servers/reflectionhandler.py (90773 => 90774)
--- trunk/Tools/Scripts/webkitpy/tool/servers/reflectionhandler.py 2011-07-11 19:02:17 UTC (rev 90773)
+++ trunk/Tools/Scripts/webkitpy/tool/servers/reflectionhandler.py 2011-07-11 19:04:10 UTC (rev 90774)
@@ -86,11 +86,11 @@
# otherwise there's a deadlock
threading.Thread(target=lambda: self.server.shutdown()).start()
- def _serve_text(self, html):
+ def _serve_text(self, text):
self.send_response(200)
self.send_header("Content-type", "text/plain")
self.end_headers()
- self.wfile.write(html)
+ self.wfile.write(text)
def _serve_json(self, json):
self.send_response(200)