Various coverage improvements.
Mostly from extra test cases, but also:
* Move the fgets size < 0 assertion into fgets.
* Use ELF aliases for strtoq/strtouq rather than duplicating code.
* Don't check uname() succeeded, since it can't fail.
Test: treehugger
Change-Id: I2e6b3b88b0a3eb16bd68be68b9bc9f40d8043291
diff --git a/tests/dirent_test.cpp b/tests/dirent_test.cpp
index 378aea4..56929d1 100644
--- a/tests/dirent_test.cpp
+++ b/tests/dirent_test.cpp
@@ -113,6 +113,18 @@
ASSERT_EQ(unsorted_name_list, unsorted_name_list_at64);
}
+static int is_version_filter(const dirent* de) {
+ return !strcmp(de->d_name, "version");
+}
+
+TEST(dirent, scandir_filter) {
+ dirent** entries;
+ errno = 0;
+ ASSERT_EQ(1, scandir("/proc", &entries, is_version_filter, nullptr));
+ ASSERT_STREQ("version", entries[0]->d_name);
+ free(entries);
+}
+
TEST(dirent, scandir_ENOENT) {
dirent** entries;
errno = 0;