summaryrefslogtreecommitdiff
path: root/tests/stdlib_test.cpp
diff options
context:
space:
mode:
authorColin Cross <ccross@android.com>2021-07-28 11:18:11 -0700
committerColin Cross <ccross@android.com>2021-08-12 11:13:11 -0700
commit7da20341e91a4ece30f628fb91fbc6056c9c8a7c (patch)
tree51db1cace0a75ac9e33aef1efb36e3f1d6832c67 /tests/stdlib_test.cpp
parent4c92da431155174c6bfef91c227fe34becb340c0 (diff)
Build bionic unit tests for musl
Modify bionic unit tests that are built for glibc so that they also build against musl. They don't all pass though: With glibc: 2 SLOW TESTS 4 TIMEOUT TESTS 313 FAILED TESTS YOU HAVE 2 DISABLED TESTS With musl: 11 SLOW TESTS 11 TIMEOUT TESTS 363 FAILED TESTS YOU HAVE 2 DISABLED TESTS Bug: 190084016 Test: m bionic-unit-tests-glibc with musl Test: atest bionic-unit-tests-static Test: atest --host bionic-unit-tests-glibc with glibc Change-Id: I79b6eab04fed3cc4392450df5eef2579412edfe1
Diffstat (limited to 'tests/stdlib_test.cpp')
-rw-r--r--tests/stdlib_test.cpp19
1 files changed, 13 insertions, 6 deletions
diff --git a/tests/stdlib_test.cpp b/tests/stdlib_test.cpp
index 6c7966d72..5b8183458 100644
--- a/tests/stdlib_test.cpp
+++ b/tests/stdlib_test.cpp
@@ -454,7 +454,7 @@ TEST_F(stdlib_DeathTest, getenv_after_main_thread_exits) {
ASSERT_EXIT(TestBug57421_main(), ::testing::ExitedWithCode(0), "");
}
-TEST(stdlib, mkostemp64) {
+TEST(stdlib, mkostemp64_smoke) {
MyTemporaryFile tf([](char* path) { return mkostemp64(path, O_CLOEXEC); });
ASSERT_TRUE(CloseOnExec(tf.fd));
}
@@ -464,7 +464,7 @@ TEST(stdlib, mkostemp) {
ASSERT_TRUE(CloseOnExec(tf.fd));
}
-TEST(stdlib, mkstemp64) {
+TEST(stdlib, mkstemp64_smoke) {
MyTemporaryFile tf(mkstemp64);
struct stat64 sb;
ASSERT_EQ(0, fstat64(tf.fd, &sb));
@@ -632,6 +632,13 @@ TEST(unistd, _Exit) {
AssertChildExited(pid, 99);
}
+#if defined(MUSL)
+// musl doesn't have getpt
+int getpt() {
+ return posix_openpt(O_RDWR|O_NOCTTY);
+}
+#endif
+
TEST(stdlib, pty_smoke) {
// getpt returns a pty with O_RDWR|O_NOCTTY.
int fd = getpt();
@@ -961,8 +968,8 @@ TEST(stdlib, getloadavg) {
}
TEST(stdlib, getprogname) {
-#if defined(__GLIBC__)
- GTEST_SKIP() << "glibc doesn't have getprogname()";
+#if defined(__GLIBC__) || defined(MUSL)
+ GTEST_SKIP() << "glibc and musl don't have getprogname()";
#else
// You should always have a name.
ASSERT_TRUE(getprogname() != nullptr);
@@ -972,8 +979,8 @@ TEST(stdlib, getprogname) {
}
TEST(stdlib, setprogname) {
-#if defined(__GLIBC__)
- GTEST_SKIP() << "glibc doesn't have setprogname()";
+#if defined(__GLIBC__) || defined(MUSL)
+ GTEST_SKIP() << "glibc and musl don't have setprogname()";
#else
// setprogname() only takes the basename of what you give it.
setprogname("/usr/bin/muppet");