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/netinet_in_test.cpp b/tests/netinet_in_test.cpp
index 2606082..437e180 100644
--- a/tests/netinet_in_test.cpp
+++ b/tests/netinet_in_test.cpp
@@ -31,8 +31,15 @@
static constexpr uint64_t be64 = 0xf0debc9a78563412;
TEST(netinet_in, bindresvport) {
- // This isn't something we can usually test, so just check the symbol's there.
+ // This isn't something we can usually test (because you need to be root),
+ // so just check the symbol's there.
ASSERT_EQ(-1, bindresvport(-1, nullptr));
+
+ // Only AF_INET is supported.
+ sockaddr_in sin = {.sin_family = AF_INET6};
+ errno = 0;
+ ASSERT_EQ(-1, bindresvport(-1, &sin));
+ ASSERT_EQ(EPFNOSUPPORT, errno);
}
TEST(netinet_in, in6addr_any) {