adb: add test for forward/reverse commands.

Bug: 25355808
Change-Id: Idc636569b0699c2acc3bf674fdcfd25c74b83121
This commit is contained in:
Yabin Cui
2015-10-30 19:33:14 -07:00
parent 2a74fe2f63
commit 0e54d10df7
2 changed files with 56 additions and 9 deletions

View File

@@ -415,9 +415,6 @@ class AndroidDevice(object):
cmd.append(directory) cmd.append(directory)
return self._simple_call(cmd) return self._simple_call(cmd)
def forward(self, local, remote):
return self._simple_call(['forward', local, remote])
def tcpip(self, port): def tcpip(self, port):
return self._simple_call(['tcpip', port]) return self._simple_call(['tcpip', port])
@@ -436,21 +433,30 @@ class AndroidDevice(object):
def unroot(self): def unroot(self):
return self._simple_call(['unroot']) return self._simple_call(['unroot'])
def forward_remove(self, local):
return self._simple_call(['forward', '--remove', local])
def forward_remove_all(self):
return self._simple_call(['forward', '--remove-all'])
def connect(self, host): def connect(self, host):
return self._simple_call(['connect', host]) return self._simple_call(['connect', host])
def disconnect(self, host): def disconnect(self, host):
return self._simple_call(['disconnect', host]) return self._simple_call(['disconnect', host])
def forward(self, local, remote):
return self._simple_call(['forward', local, remote])
def forward_list(self):
return self._simple_call(['forward', '--list'])
def forward_remove(self, local):
return self._simple_call(['forward', '--remove', local])
def forward_remove_all(self):
return self._simple_call(['forward', '--remove-all'])
def reverse(self, remote, local): def reverse(self, remote, local):
return self._simple_call(['reverse', remote, local]) return self._simple_call(['reverse', remote, local])
def reverse_list(self):
return self._simple_call(['reverse', '--list'])
def reverse_remove_all(self): def reverse_remove_all(self):
return self._simple_call(['reverse', '--remove-all']) return self._simple_call(['reverse', '--remove-all'])

View File

@@ -21,6 +21,7 @@ import hashlib
import os import os
import posixpath import posixpath
import random import random
import re
import shlex import shlex
import shutil import shutil
import signal import signal
@@ -130,6 +131,46 @@ class DeviceTest(unittest.TestCase):
self.device = adb.get_device() self.device = adb.get_device()
class ForwardReverseTest(DeviceTest):
def test_forward(self):
msg = self.device.forward_list()
self.assertEqual('', msg.strip(),
'Forwarding list must be empty to run this test.')
self.device.forward('tcp:5566', 'tcp:6655')
msg = self.device.forward_list()
self.assertTrue(re.search(r'tcp:5566.+tcp:6655', msg))
self.device.forward('tcp:7788', 'tcp:8877')
msg = self.device.forward_list()
self.assertTrue(re.search(r'tcp:5566.+tcp:6655', msg))
self.assertTrue(re.search(r'tcp:7788.+tcp:8877', msg))
self.device.forward_remove('tcp:5566')
msg = self.device.forward_list()
self.assertFalse(re.search(r'tcp:5566.+tcp:6655', msg))
self.assertTrue(re.search(r'tcp:7788.+tcp:8877', msg))
self.device.forward_remove_all()
msg = self.device.forward_list()
self.assertEqual('', msg.strip())
def test_reverse(self):
msg = self.device.reverse_list()
self.assertEqual('', msg.strip(),
'Reverse forwarding list must be empty to run this test.')
self.device.reverse('tcp:5566', 'tcp:6655')
msg = self.device.reverse_list()
self.assertTrue(re.search(r'tcp:5566.+tcp:6655', msg))
self.device.reverse('tcp:7788', 'tcp:8877')
msg = self.device.reverse_list()
self.assertTrue(re.search(r'tcp:5566.+tcp:6655', msg))
self.assertTrue(re.search(r'tcp:7788.+tcp:8877', msg))
self.device.reverse_remove('tcp:5566')
msg = self.device.reverse_list()
self.assertFalse(re.search(r'tcp:5566.+tcp:6655', msg))
self.assertTrue(re.search(r'tcp:7788.+tcp:8877', msg))
self.device.reverse_remove_all()
msg = self.device.reverse_list()
self.assertEqual('', msg.strip())
class ShellTest(DeviceTest): class ShellTest(DeviceTest):
def _interactive_shell(self, shell_args, input): def _interactive_shell(self, shell_args, input):
"""Runs an interactive adb shell. """Runs an interactive adb shell.