Add basic tests for posix_memalign.
Change-Id: Ie34fcc87aa9e8bfc715e25161752024b11e2032a
diff --git a/tests/stdlib_test.cpp b/tests/stdlib_test.cpp
index a9c62d4..8735100 100644
--- a/tests/stdlib_test.cpp
+++ b/tests/stdlib_test.cpp
@@ -16,6 +16,8 @@
#include <gtest/gtest.h>
+#include <errno.h>
+#include <stdint.h>
#include <stdlib.h>
TEST(stdlib, drand48) {
@@ -57,3 +59,14 @@
EXPECT_EQ(1804534249, mrand48());
EXPECT_EQ(264732262, mrand48());
}
+
+TEST(stdlib, posix_memalign) {
+ void* p;
+
+ ASSERT_EQ(0, posix_memalign(&p, 512, 128));
+ ASSERT_EQ(0U, reinterpret_cast<uintptr_t>(p) % 512);
+ free(p);
+
+ // Can't align to a non-power of 2.
+ ASSERT_EQ(EINVAL, posix_memalign(&p, 81, 128));
+}