Chromium Code Reviews| Index: build/android/pylib/gtest/test_runner.py |
| diff --git a/build/android/pylib/gtest/test_runner.py b/build/android/pylib/gtest/test_runner.py |
| index 75892ee6e9c32bbb235a9dc0b1ab671aa43b2abd..56e7449c55fd07dd69a9a72ad3835f06292d06fd 100644 |
| --- a/build/android/pylib/gtest/test_runner.py |
| +++ b/build/android/pylib/gtest/test_runner.py |
| @@ -7,9 +7,11 @@ import os |
| import re |
| from pylib import pexpect |
| +from pylib import ports |
| from pylib.base import base_test_result |
| from pylib.base import base_test_runner |
| from pylib.device import device_errors |
| +from pylib.local import local_test_server_spawner |
| from pylib.perf import perf_control |
| @@ -53,6 +55,13 @@ class TestRunner(base_test_runner.BaseTestRunner): |
| if _TestSuiteRequiresHighPerfMode(self.test_package.suite_name): |
| self._perf_controller = perf_control.PerfControl(self.device) |
| + if _TestSuiteRequiresMockTestServer(self.test_package.suite_name): |
| + self._servers = [ |
| + local_test_server_spawner.LocalTestServerSpawner( |
| + ports.AllocateTestServerPort(), self.device, self.tool)] |
|
klundberg
2014/11/11 19:24:57
I'm wondering if you should have a TODO here to su
jbudorick
2014/11/11 23:19:21
No, having the new module be specific to local was
|
| + else: |
| + self._servers = [] |
| + |
| #override |
| def InstallTestPackage(self): |
| self.test_package.Install(self.device) |
| @@ -149,7 +158,8 @@ class TestRunner(base_test_runner.BaseTestRunner): |
| test_results = self._ParseTestOutput( |
| self.test_package.SpawnTestProcess(self.device)) |
| finally: |
| - self.CleanupSpawningServerState() |
| + for s in self._servers: |
| + s.Reset() |
| # Calculate unknown test results. |
| all_tests = set(test.split(':')) |
| all_tests_ran = set([t.GetName() for t in test_results.GetAll()]) |
| @@ -164,8 +174,8 @@ class TestRunner(base_test_runner.BaseTestRunner): |
| def SetUp(self): |
| """Sets up necessary test enviroment for the test suite.""" |
| super(TestRunner, self).SetUp() |
| - if _TestSuiteRequiresMockTestServer(self.test_package.suite_name): |
| - self.LaunchChromeTestServerSpawner() |
| + for s in self._servers: |
| + s.SetUp() |
| if _TestSuiteRequiresHighPerfMode(self.test_package.suite_name): |
| self._perf_controller.SetHighPerfMode() |
| self.tool.SetupEnvironment() |
| @@ -173,6 +183,8 @@ class TestRunner(base_test_runner.BaseTestRunner): |
| #override |
| def TearDown(self): |
| """Cleans up the test enviroment for the test suite.""" |
| + for s in self._servers: |
| + s.TearDown() |
| if _TestSuiteRequiresHighPerfMode(self.test_package.suite_name): |
| self._perf_controller.SetDefaultPerfMode() |
| self.test_package.ClearApplicationState(self.device) |