Index: build/android/pylib/gtest/test_package.py |
diff --git a/build/android/pylib/gtest/test_package.py b/build/android/pylib/gtest/test_package.py |
new file mode 100644 |
index 0000000000000000000000000000000000000000..4042a98a1320ef0e58b12cbfba279f8559b70afc |
--- /dev/null |
+++ b/build/android/pylib/gtest/test_package.py |
@@ -0,0 +1,76 @@ |
+# Copyright (c) 2012 The Chromium Authors. All rights reserved. |
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+ |
+"""Base class representing GTest test packages.""" |
+# pylint: disable=R0201 |
+ |
+ |
+class TestPackage(object): |
+ |
+ """A helper base class for both APK and stand-alone executables. |
+ |
+ Args: |
+ suite_name: Name of the test suite (e.g. base_unittests). |
+ """ |
+ def __init__(self, suite_name): |
+ self.suite_name = suite_name |
+ |
+ def ClearApplicationState(self, device): |
+ """Clears the application state. |
+ |
+ Args: |
+ device: Instance of DeviceUtils. |
+ """ |
+ raise NotImplementedError('Method must be overridden.') |
+ |
+ def CreateCommandLineFileOnDevice(self, device, test_filter, test_arguments): |
+ """Creates a test runner script and pushes to the device. |
+ |
+ Args: |
+ device: Instance of DeviceUtils. |
+ test_filter: A test_filter flag. |
+ test_arguments: Additional arguments to pass to the test binary. |
+ """ |
+ raise NotImplementedError('Method must be overridden.') |
+ |
+ def GetAllTests(self, device): |
+ """Returns a list of all tests available in the test suite. |
+ |
+ Args: |
+ device: Instance of DeviceUtils. |
+ """ |
+ raise NotImplementedError('Method must be overridden.') |
+ |
+ def GetGTestReturnCode(self, _device): |
+ return None |
+ |
+ def SpawnTestProcess(self, device): |
+ """Spawn the test process. |
+ |
+ Args: |
+ device: Instance of DeviceUtils. |
+ |
+ Returns: |
+ An instance of pexpect spawn class. |
+ """ |
+ raise NotImplementedError('Method must be overridden.') |
+ |
+ def Install(self, device): |
+ """Install the test package to the device. |
+ |
+ Args: |
+ device: Instance of DeviceUtils. |
+ """ |
+ raise NotImplementedError('Method must be overridden.') |
+ |
+ def PullAppFiles(self, device, files, directory): |
+ """Pull application data from the device. |
+ |
+ Args: |
+ device: Instance of DeviceUtils. |
+ files: A list of paths relative to the application data directory to |
+ retrieve from the device. |
+ directory: The host directory to which files should be pulled. |
+ """ |
+ raise NotImplementedError('Method must be overridden.') |