Set embedded_launcher: true for minijail tests

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>
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 @@
         "compiler.py",
         "parser.py",
     ],
-    version: {
-        py2: {
-            enabled: false,
-        },
-        py3: {
-            enabled: true,
-        },
-    },
 }
 
 python_test_host {
@@ -54,11 +46,8 @@
         "testdata/arch_64.json",
     ],
     version: {
-        py2: {
-            enabled: false,
-        },
         py3: {
-            enabled: true,
+            embedded_launcher: true,
         },
     },
 }
@@ -77,11 +66,8 @@
         "testdata/arch_64.json",
     ],
     version: {
-        py2: {
-            enabled: false,
-        },
         py3: {
-            enabled: true,
+            embedded_launcher: true,
         },
     },
 }
@@ -92,14 +78,6 @@
     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 @@
     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 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 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()
 )