[webkit-reviews] review denied: [Bug 99588] Use the new forwarder2 : [Attachment 170423] Patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Oct 24 11:55:24 PDT 2012
Tony Chang <tony at chromium.org> has denied felipe <felipeg at chromium.org>'s
request for review:
Bug 99588: Use the new forwarder2
https://bugs.webkit.org/show_bug.cgi?id=99588
Attachment 170423: Patch
https://bugs.webkit.org/attachment.cgi?id=170423&action=review
------- Additional Comments from Tony Chang <tony at chromium.org>
View in context: https://bugs.webkit.org/attachment.cgi?id=170423&action=review
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:42
> +import webkitpy.thirdparty.autoinstalled.pexepct as pexpect
Why not 'from webkitpy.thirdparty.autoinstalled import pexpect' like the other
import statements?
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:78
> +FORWARD_PORTS = [8000, 8080, 8443, 8880, 9323]
Use a tuple instead of a list since this is a constant.
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:348
> +class AndroidCommands(Object):
Object? I think you mean object.
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:353
> + self._original_governors = {}
Maybe _original_governors_file_contents? It wasn't obvious to me what this
dictionary is for.
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:368
> + # Disable CPU scaling and drop ram cache to reduce noise in tests
Nit: Please end the sentence with a period.
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:416
> + result = self._port._executive.run_command(cmd,
error_handler=error_handler, return_exit_code=return_exit_code)
> + return result
Nit: Maybe return directly and remove the temp variable?
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:450
> + port_pairs: A list of tuples (device_port, host_port) to
forward. Note
> + that you can specify 0 as a device_port, in which
case a
> + port will by dynamically assigned on the device. You
can
> + get the number of the assigned port using the
> + device_port_for_host_port method.
Rather than passing in a list of tuples, can you make a small class for device
port and host port and pass in a list of the class? E.g.,
class Ports(object):
def __init__(device_port, host_port):
self.device_port = device_port
self.host_port = host_port
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:458
> + self._host_to_device_port_map = dict()
Nit: Why dict() rather than {}? You use {} above.
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:473
> + timeout_sec = 5
This looks like a constant. Maybe name it TIMEOUT_SECONDS or
KILL_TIMEOUT_SECONDS?
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:505
> + # Failure
I would remove this comment. It seems obvious from the exception being raised.
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:522
> + self._host_process = pexpect.spawn(self._host_forwarder_path,
> + ['--adb_port=%s' % (
> + self._host_adb_control_port)]
+
> + forward_string)
The wrapping makes this hard for me to read. Maybe put it on a single line
(WebKit doesn't have an 80 col limit) or just do a 4 space indent rather than
trying to align with the open paren.
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:536
> + # Success
I would remove this comment. It seems obvious from the lack of exception being
raised.
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:542
> + # Failure
I would remove this comment. It seems obvious from the exception being raised.
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:563
> + elapsed = 0
> + wait_period = 0.1
Nit: elapsed_seconds and wait_period_seconds.
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:577
> + elapsed = 0
> + wait_period = 0.1
Nit: elapsed_seconds and wait_period_seconds.
> Tools/Scripts/webkitpy/layout_tests/port/chromium_android.py:599
> + def close(self):
> + self._close_process()
Do we need both close and _close_process? I would just have a single
close_process.
> Tools/Scripts/webkitpy/thirdparty/__init__.py:96
> + def _install_pexpect(self):
> + return
self._install("http://pexpect.sourceforge.net/pexpect-2.3.tar.gz",
> + "pexpect-2.3")
It looks like pexpect is MIT licensed: http://www.noah.org/wiki/Pexpect#License
That means we can just check in the files rather than using autoinstall. It'll
be much less flaky to check the files in.
More information about the webkit-reviews
mailing list