Prepare treble_sepolicy_tests for inclusion in CTS
Unconditionally compile treble_sepolicy_tests. Make compat
files conditional on running the compat tests.
Bug: 37008075
Test: build
Change-Id: Ib3aee6e93d285ca141803a13958fbcb38b891b68
diff --git a/Android.mk b/Android.mk
index f2efb1d..e0c9919 100644
--- a/Android.mk
+++ b/Android.mk
@@ -204,12 +204,6 @@
secilc \
plat_sepolicy_vers.txt \
-ifneq ($(with_asan),true)
-LOCAL_REQUIRED_MODULES += \
- treble_sepolicy_tests \
-
-endif
-
# Include precompiled policy, unless told otherwise
ifneq ($(PRODUCT_PRECOMPILED_SEPOLICY),false)
LOCAL_REQUIRED_MODULES += precompiled_sepolicy precompiled_sepolicy.plat_and_mapping.sha256
@@ -247,6 +241,7 @@
ifneq ($(with_asan),true)
LOCAL_REQUIRED_MODULES += \
sepolicy_tests \
+ treble_sepolicy_tests \
endif
diff --git a/tests/treble_sepolicy_tests.py b/tests/treble_sepolicy_tests.py
index ea03731..9f2526e 100644
--- a/tests/treble_sepolicy_tests.py
+++ b/tests/treble_sepolicy_tests.py
@@ -332,18 +332,11 @@
if not os.path.exists(options.libpath):
sys.exit("Error: library-path " + options.libpath + " does not exist\n"
+ parser.usage)
- if not options.basepolicy:
- sys.exit("Must specify the current platform-only policy file\n" + parser.usage)
- if not options.mapping:
- sys.exit("Must specify a compatibility mapping file\n" + parser.usage)
- if not options.oldpolicy:
- sys.exit("Must specify the previous monolithic policy file\n" + parser.usage)
if not options.policy:
sys.exit("Must specify current monolithic policy file\n" + parser.usage)
if not os.path.exists(options.policy):
sys.exit("Error: policy file " + options.policy + " does not exist\n"
+ parser.usage)
-
if not options.file_contexts:
sys.exit("Error: Must specify file_contexts file(s)\n" + parser.usage)
for f in options.file_contexts:
@@ -351,15 +344,25 @@
sys.exit("Error: File_contexts file " + f + " does not exist\n" +
parser.usage)
+ # Mapping files are only necessary for the TrebleCompatMapping test
+ if options.tests is None or options.tests is "TrebleCompatMapping":
+ if not options.basepolicy:
+ sys.exit("Must specify the current platform-only policy file\n" + parser.usage)
+ if not options.mapping:
+ sys.exit("Must specify a compatibility mapping file\n" + parser.usage)
+ if not options.oldpolicy:
+ sys.exit("Must specify the previous monolithic policy file\n" + parser.usage)
+ basepol = policy.Policy(options.basepolicy, None, options.libpath)
+ oldpol = policy.Policy(options.oldpolicy, None, options.libpath)
+ mapping = mini_parser.MiniCilParser(options.mapping)
+ compatSetup(basepol, oldpol, mapping)
+
+
if options.faketreble:
FakeTreble = True
pol = policy.Policy(options.policy, options.file_contexts, options.libpath)
setup(pol)
- basepol = policy.Policy(options.basepolicy, None, options.libpath)
- oldpol = policy.Policy(options.oldpolicy, None, options.libpath)
- mapping = mini_parser.MiniCilParser(options.mapping)
- compatSetup(basepol, oldpol, mapping)
if DEBUG:
PrintScontexts()