1#!/usr/bin/env python3
2#
3#   Copyright 2016 - The Android Open Source Project
4#
5#   Licensed under the Apache License, Version 2.0 (the "License");
6#   you may not use this file except in compliance with the License.
7#   You may obtain a copy of the License at
8#
9#       http://www.apache.org/licenses/LICENSE-2.0
10#
11#   Unless required by applicable law or agreed to in writing, software
12#   distributed under the License is distributed on an "AS IS" BASIS,
13#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14#   See the License for the specific language governing permissions and
15#   limitations under the License.
16
17import sys
18import unittest
19
20import acts_android_device_test
21import acts_asserts_test
22import acts_base_class_test
23import acts_host_utils_test
24import acts_logger_test
25import acts_records_test
26import acts_test_runner_test
27import acts_utils_test
28
29
30def compile_suite():
31    test_classes_to_run = [
32        acts_asserts_test.ActsAssertsTest,
33        acts_base_class_test.ActsBaseClassTest,
34        acts_test_runner_test.ActsTestRunnerTest,
35        acts_android_device_test.ActsAndroidDeviceTest,
36        acts_records_test.ActsRecordsTest, acts_utils_test.ActsUtilsTest,
37        acts_logger_test.ActsLoggerTest, acts_host_utils_test.ActsHostUtilsTest
38    ]
39
40    loader = unittest.TestLoader()
41
42    suites_list = []
43    for test_class in test_classes_to_run:
44        suite = loader.loadTestsFromTestCase(test_class)
45        suites_list.append(suite)
46
47    big_suite = unittest.TestSuite(suites_list)
48    return big_suite
49
50
51if __name__ == "__main__":
52    # This is the entry point for running all ACTS unit tests.
53    runner = unittest.TextTestRunner()
54    results = runner.run(compile_suite())
55    sys.exit(not results.wasSuccessful())
56