| # Copyright 2014 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| |
| from pylib.gtest import gtest_test_instance |
| from pylib.instrumentation import instrumentation_test_instance |
| from pylib.junit import junit_test_instance |
| from pylib.monkey import monkey_test_instance |
| from pylib.utils import device_dependencies |
| |
| |
| def CreateTestInstance(args, error_func): |
| |
| if args.command == 'gtest': |
| return gtest_test_instance.GtestTestInstance( |
| args, device_dependencies.GetDataDependencies, error_func) |
| if args.command == 'instrumentation': |
| return instrumentation_test_instance.InstrumentationTestInstance( |
| args, device_dependencies.GetDataDependencies, error_func) |
| if args.command == 'junit': |
| return junit_test_instance.JunitTestInstance(args, error_func) |
| if args.command == 'monkey': |
| return monkey_test_instance.MonkeyTestInstance(args, error_func) |
| |
| error_func('Unable to create %s test instance.' % args.command) |
| raise RuntimeError('error_func must call exit inside.') |