Test ld-android.so directly
This CL addresses review comments from
https://android-review.googlesource.com/c/platform/bionic/+/595067
Test: bionic-unit-tests --gtest_filter=dl*
Change-Id: I2c0fdf2a89fe6ff134308e202fb99a74080ee0ed
diff --git a/tests/dlext_test.cpp b/tests/dlext_test.cpp
index bb2d8a3..9ed1a56 100644
--- a/tests/dlext_test.cpp
+++ b/tests/dlext_test.cpp
@@ -1737,6 +1737,9 @@
ASSERT_EQ(expected_dlerror, dlerror());
}
+extern "C" bool __loader_android_link_namespaces_all_libs(android_namespace_t* namespace_from,
+ android_namespace_t* namespace_to);
+
TEST(dlext, ns_link_namespaces_invalid_arguments) {
ASSERT_TRUE(android_init_anonymous_namespace(g_core_shared_libs.c_str(), nullptr));
@@ -1764,16 +1767,16 @@
"error linking namespaces \"private\"->\"(default)\": "
"the list of shared libraries is empty.", dlerror());
- // Test android_link_namespaces_all_libs()
- ASSERT_FALSE(android_link_namespaces_all_libs(nullptr, nullptr));
+ // Test __loader_android_link_namespaces_all_libs()
+ ASSERT_FALSE(__loader_android_link_namespaces_all_libs(nullptr, nullptr));
ASSERT_STREQ("android_link_namespaces_all_libs failed: "
"error linking namespaces: namespace_from is null.", dlerror());
- ASSERT_FALSE(android_link_namespaces_all_libs(nullptr, ns));
+ ASSERT_FALSE(__loader_android_link_namespaces_all_libs(nullptr, ns));
ASSERT_STREQ("android_link_namespaces_all_libs failed: "
"error linking namespaces: namespace_from is null.", dlerror());
- ASSERT_FALSE(android_link_namespaces_all_libs(ns, nullptr));
+ ASSERT_FALSE(__loader_android_link_namespaces_all_libs(ns, nullptr));
ASSERT_STREQ("android_link_namespaces_all_libs failed: "
"error linking namespaces: namespace_to is null.", dlerror());
}
@@ -1802,7 +1805,7 @@
ASSERT_TRUE(android_link_namespaces(ns_b, nullptr, g_core_shared_libs.c_str())) << dlerror();
ASSERT_TRUE(android_link_namespaces(ns_b, ns_a, "libnstest_ns_a_public1.so")) << dlerror();
- ASSERT_TRUE(android_link_namespaces_all_libs(ns_a, ns_b)) << dlerror();
+ ASSERT_TRUE(__loader_android_link_namespaces_all_libs(ns_a, ns_b)) << dlerror();
// Load libs with android_dlopen_ext() from namespace b
android_dlextinfo extinfo;