| Index: systrace/systrace/tracing_agents/battor_trace_agent_unittest.py
|
| diff --git a/systrace/systrace/tracing_agents/battor_trace_agent_unittest.py b/systrace/systrace/tracing_agents/battor_trace_agent_unittest.py
|
| index 5ef2a3faac04d85288473a9770db923e59edbba4..63471611923e2bfe9644d2a371d76761a6328643 100755
|
| --- a/systrace/systrace/tracing_agents/battor_trace_agent_unittest.py
|
| +++ b/systrace/systrace/tracing_agents/battor_trace_agent_unittest.py
|
| @@ -13,15 +13,14 @@ from systrace.tracing_agents import battor_trace_agent
|
| from battor import battor_wrapper
|
| from devil.android import battery_utils
|
| from devil.utils import battor_device_mapping
|
| +from devil.utils import find_usb_devices
|
|
|
|
|
| mock_opts = namedtuple('mock_opts', ['target', 'device_serial_number',
|
| - 'hub_types', 'battor_path',
|
| - 'update_map', 'serial_map'])
|
| -OPTIONS = mock_opts('android', 'Phn2', ['plugable_7port'],
|
| - None, False, __file__)
|
| + 'battor_path', 'serial_map'])
|
| +OPTIONS = mock_opts('android', 'Phn2', None, __file__)
|
| CATEGORIES = None
|
| -
|
| +_DEFAULT_BATTOR_LIST = ['dev/ttyUSB0']
|
|
|
| def raise_error(*args, **kwargs):
|
| del args
|
| @@ -31,7 +30,8 @@ def raise_error(*args, **kwargs):
|
| battor_device_mapping.GenerateSerialMapFile = raise_error
|
|
|
| def setup_battor_test(StartShell_error, StartTracing_error,
|
| - StopTracing_error, CollectTraceData_error):
|
| + StopTracing_error, CollectTraceData_error,
|
| + battor_paths=None):
|
| wrapper = MockBattOrWrapper(StartShell_error, StartTracing_error,
|
| StopTracing_error, CollectTraceData_error)
|
| def wrapper_maker(*args, **kwargs):
|
| @@ -39,6 +39,10 @@ def setup_battor_test(StartShell_error, StartTracing_error,
|
| del kwargs
|
| return wrapper
|
| battor_wrapper.BattOrWrapper = wrapper_maker
|
| + find_usb_devices.GetBusNumberToDeviceTreeMap = lambda: None
|
| + if battor_paths is None:
|
| + battor_paths = _DEFAULT_BATTOR_LIST
|
| + battor_device_mapping.GetBattOrList = lambda x: battor_paths
|
|
|
|
|
| class MockBattOrWrapper(object):
|
| @@ -152,6 +156,26 @@ class BattOrAgentTest(unittest.TestCase):
|
| x = agent.GetResults()
|
| self.assertEqual(x.raw_data, 'traceout1\ntraceout2')
|
|
|
| + @decorators.HostOnlyTest
|
| + def test_trace_error_no_battor(self):
|
| + setup_battor_test(StartShell_error=False, StartTracing_error=False,
|
| + StopTracing_error=False, CollectTraceData_error=False,
|
| + battor_paths=[])
|
| + agent = battor_trace_agent.BattOrTraceAgent()
|
| + options = mock_opts('android', 'Phn2', None, None)
|
| + with self.assertRaises(AssertionError):
|
| + agent.StartAgentTracing(options, CATEGORIES)
|
| +
|
| + @decorators.HostOnlyTest
|
| + def test_trace_error_multiple_battors_no_battor_path(self):
|
| + setup_battor_test(StartShell_error=False, StartTracing_error=False,
|
| + StopTracing_error=False, CollectTraceData_error=False,
|
| + battor_paths=['a', 'b'])
|
| + agent = battor_trace_agent.BattOrTraceAgent()
|
| + options = mock_opts('android', 'Phn2', None, None)
|
| + with self.assertRaises(AssertionError):
|
| + agent.StartAgentTracing(options, CATEGORIES)
|
| +
|
|
|
| if __name__ == "__main__":
|
| logging.getLogger().setLevel(logging.DEBUG)
|
|
|