Merge "Use the URI returned by the insert for the delete operation"
diff --git a/tests/tests/jni/src/android/jni/cts/JniStaticTest.java b/tests/tests/jni/src/android/jni/cts/JniStaticTest.java
index 6f51d31..4742796b 100644
--- a/tests/tests/jni/src/android/jni/cts/JniStaticTest.java
+++ b/tests/tests/jni/src/android/jni/cts/JniStaticTest.java
@@ -316,8 +316,8 @@
     /**
      * dlopen(3) any of the public lib via file name (non-absolute path) should succeed.
      */
-    public void test_dlopenPublicLibrariesInRuntimeNamespace() {
-        String error = LinkerNamespacesHelper.runDlopenPublicLibrariesInRuntimeNamespace();
+    public void test_dlopenPublicLibraries() {
+        String error = LinkerNamespacesHelper.runDlopenPublicLibraries();
         if (error != null) {
             fail(error);
         }
diff --git a/tests/tests/jni/src/android/jni/cts/LinkerNamespacesHelper.java b/tests/tests/jni/src/android/jni/cts/LinkerNamespacesHelper.java
index 2015143..ae6c09a 100644
--- a/tests/tests/jni/src/android/jni/cts/LinkerNamespacesHelper.java
+++ b/tests/tests/jni/src/android/jni/cts/LinkerNamespacesHelper.java
@@ -349,14 +349,30 @@
         return null;
     }
 
-    public static String runDlopenPublicLibrariesInRuntimeNamespace() {
-        for (String lib : PUBLIC_RUNTIME_LIBRARIES) {
-            String error = LinkerNamespacesHelper.tryDlopen(lib);
-            if (error != null) {
-                return error;
+    public static String runDlopenPublicLibraries() {
+        String error;
+        try {
+            List<String> publicLibs = new ArrayList<>();
+            Collections.addAll(publicLibs, PUBLIC_SYSTEM_LIBRARIES);
+            Collections.addAll(publicLibs, PUBLIC_RUNTIME_LIBRARIES);
+            error = readExtensionConfigFiles(PUBLIC_CONFIG_DIR, publicLibs);
+            if (error != null) return error;
+            error = readExtensionConfigFiles(PRODUCT_CONFIG_DIR, publicLibs);
+            if (error != null) return error;
+            publicLibs.addAll(readPublicLibrariesFile(new File(VENDOR_CONFIG_FILE)));
+            for (String lib : publicLibs) {
+                String result = LinkerNamespacesHelper.tryDlopen(lib);
+                if (result != null) {
+                    if (error == null) {
+                        error = "";
+                    }
+                    error += result + "\n";
+                }
             }
+        } catch (IOException e) {
+            return e.toString();
         }
-        return null;
+        return error;
     }
 
     public static native String tryDlopen(String lib);