diff options
author | Cole Faust <colefaust@google.com> | 2024-04-02 18:07:30 -0700 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2024-04-04 01:37:12 +0000 |
commit | c1df6baf0b619dd29ae6552d4ee1d149173b309f (patch) | |
tree | 9787fe7aaf6e58dd91a50da2125396f6dc429ebe | |
parent | 156ff6494d33e7a797e112ed9bda399e6270f834 (diff) | |
download | minijail-upstream-main.tar.gz |
Set embedded_launcher: true for minijail testsupstream-main
Android is migrating to using embedded_launcher for all python modules,
fix these tests which have problems with embedded_launcher because they
expect their data to be extracted to disk.
Bug: 331488610
Test: In android: m minijail_parser_unittest minijail_compiler_unittest && out/host/linux-x86/nativetest64/minijail_compiler_unittest/minijail_compiler_unittest && out/host/linux-x86/nativetest64/minijail_parser_unittest/minijail_parser_unittest
Change-Id: I47fe3bce2c9b029e65ce84412f00975bf8d0acdf
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/minijail/+/5417234
Tested-by: Cole Faust <colefaust@google.com>
Commit-Queue: Cole Faust <colefaust@google.com>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Auto-Submit: Cole Faust <colefaust@google.com>
-rw-r--r-- | tools/Android.bp | 26 | ||||
-rw-r--r-- | tools/arch.py | 23 | ||||
-rwxr-xr-x | tools/compiler_unittest.py | 7 | ||||
-rwxr-xr-x | tools/parser_unittest.py | 7 |
4 files changed, 22 insertions, 41 deletions
diff --git a/tools/Android.bp b/tools/Android.bp index 71bb82d..3a3e9c6 100644 --- a/tools/Android.bp +++ b/tools/Android.bp @@ -31,14 +31,6 @@ python_binary_host { "compiler.py", "parser.py", ], - version: { - py2: { - enabled: false, - }, - py3: { - enabled: true, - }, - }, } python_test_host { @@ -54,11 +46,8 @@ python_test_host { "testdata/arch_64.json", ], version: { - py2: { - enabled: false, - }, py3: { - enabled: true, + embedded_launcher: true, }, }, } @@ -77,11 +66,8 @@ python_test_host { "testdata/arch_64.json", ], version: { - py2: { - enabled: false, - }, py3: { - enabled: true, + embedded_launcher: true, }, }, } @@ -92,14 +78,6 @@ python_binary_host { srcs: [ "generate_constants_json.py", ], - version: { - py2: { - enabled: false, - }, - py3: { - enabled: true, - }, - }, } diff --git a/tools/arch.py b/tools/arch.py index 3051af7..48782d0 100644 --- a/tools/arch.py +++ b/tools/arch.py @@ -41,12 +41,17 @@ class Arch( def load_from_json(json_path): """Return an Arch from a .json file.""" with open(json_path, "rb") as json_file: - constants = json.load(json_file) - return Arch( - arch_nr=constants["arch_nr"], - arch_name=constants["arch_name"], - bits=constants["bits"], - syscalls=constants["syscalls"], - constants=constants["constants"], - syscall_groups=constants.get("syscall_groups", {}), - ) + return Arch.load_from_json_bytes(json_file.read()) + + @staticmethod + def load_from_json_bytes(json_bytes): + """Return an Arch from a json string.""" + constants = json.loads(json_bytes) + return Arch( + arch_nr=constants["arch_nr"], + arch_name=constants["arch_name"], + bits=constants["bits"], + syscalls=constants["syscalls"], + constants=constants["constants"], + syscall_groups=constants.get("syscall_groups", {}), + ) diff --git a/tools/compiler_unittest.py b/tools/compiler_unittest.py index a9b9b63..131c862 100755 --- a/tools/compiler_unittest.py +++ b/tools/compiler_unittest.py @@ -11,16 +11,15 @@ import random import shutil import tempfile import unittest +from importlib import resources import arch import bpf import compiler -ARCH_64 = arch.Arch.load_from_json( - os.path.join( - os.path.dirname(os.path.abspath(__file__)), "testdata/arch_64.json" - ) +ARCH_64 = arch.Arch.load_from_json_bytes( + resources.files("testdata").joinpath("arch_64.json").read_bytes() ) diff --git a/tools/parser_unittest.py b/tools/parser_unittest.py index 5b2ff8b..31b4099 100755 --- a/tools/parser_unittest.py +++ b/tools/parser_unittest.py @@ -10,15 +10,14 @@ import parser # pylint: disable=wrong-import-order import shutil import tempfile import unittest +from importlib import resources import arch import bpf -ARCH_64 = arch.Arch.load_from_json( - os.path.join( - os.path.dirname(os.path.abspath(__file__)), "testdata/arch_64.json" - ) +ARCH_64 = arch.Arch.load_from_json_bytes( + resources.files("testdata").joinpath("arch_64.json").read_bytes() ) |