1# Copyright 2016 The Chromium Authors 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5 6from pylib.base import test_instance 7from pylib.utils import test_filter 8 9 10class JunitTestInstance(test_instance.TestInstance): 11 12 def __init__(self, args, _): 13 super().__init__() 14 15 self._coverage_dir = args.coverage_dir 16 self._debug_socket = args.debug_socket 17 self._coverage_on_the_fly = args.coverage_on_the_fly 18 self._native_libs_dir = args.native_libs_dir 19 self._package_filter = args.package_filter 20 self._resource_apk = args.resource_apk 21 self._robolectric_runtime_deps_dir = args.robolectric_runtime_deps_dir 22 self._runner_filter = args.runner_filter 23 self._json_config = args.json_config 24 self._shadows_allowlist = args.shadows_allowlist 25 self._shards = args.shards 26 self._shard_filter = None 27 if args.shard_filter: 28 self._shard_filter = {int(x) for x in args.shard_filter.split(',')} 29 self._test_filters = test_filter.InitializeFiltersFromArgs(args) 30 self._test_suite = args.test_suite 31 32 #override 33 def TestType(self): 34 return 'junit' 35 36 #override 37 def SetUp(self): 38 pass 39 40 #override 41 def TearDown(self): 42 pass 43 44 @property 45 def coverage_dir(self): 46 return self._coverage_dir 47 48 @property 49 def coverage_on_the_fly(self): 50 return self._coverage_on_the_fly 51 52 @property 53 def debug_socket(self): 54 return self._debug_socket 55 56 @property 57 def native_libs_dir(self): 58 return self._native_libs_dir 59 60 @property 61 def package_filter(self): 62 return self._package_filter 63 64 @property 65 def resource_apk(self): 66 return self._resource_apk 67 68 @property 69 def robolectric_runtime_deps_dir(self): 70 return self._robolectric_runtime_deps_dir 71 72 @property 73 def runner_filter(self): 74 return self._runner_filter 75 76 @property 77 def shadows_allowlist(self): 78 return self._shadows_allowlist 79 80 @property 81 def test_filters(self): 82 return self._test_filters 83 84 @property 85 def json_config(self): 86 return self._json_config 87 88 @property 89 def shards(self): 90 return self._shards 91 92 @property 93 def shard_filter(self): 94 return self._shard_filter 95 96 @property 97 def suite(self): 98 return self._test_suite 99