blob: 5b328d75c99ffc66c866a83dce48441f98d8c29c [file] [log] [blame]
#include "aos/libc/aos_strerror.h"
#include <string.h>
#include <cerrno>
#include <string>
#include "gtest/gtest.h"
namespace aos::libc::testing {
// Tries a couple of easy ones.
TEST(StrerrorTest, Basic) {
EXPECT_STREQ("Argument list too long", aos_strerror(E2BIG));
EXPECT_STREQ("Bad file descriptor", aos_strerror(EBADF));
EXPECT_STREQ("Unknown error 4021", aos_strerror(4021));
}
// Runs through all errno values and makes sure it gives the same result as
// strerror(3).
TEST(StrerrorTest, All) {
for (int i = 0; i < 4095; ++i) {
SCOPED_TRACE("iteration " + ::std::to_string(i));
EXPECT_STREQ(strerror(i), aos_strerror(i));
}
}
} // namespace aos::libc::testing