blob: 06a012a2065bdb55ac05af5279ced6542b3dd042 [file] [log] [blame]
John Park33858a32018-09-28 23:05:48 -07001#include "aos/libc/aos_strerror.h"
Brian Silvermanaf784862014-05-13 08:14:55 -07002
Tyler Chatowbf0609c2021-07-31 16:13:27 -07003#include <cerrno>
Brian Silvermanaf784862014-05-13 08:14:55 -07004
5#include "gtest/gtest.h"
6
Stephan Pleinesf63bde82024-01-13 15:59:33 -08007namespace aos::libc::testing {
Brian Silvermanaf784862014-05-13 08:14:55 -07008
9// Tries a couple of easy ones.
10TEST(StrerrorTest, Basic) {
11 EXPECT_STREQ("Argument list too long", aos_strerror(E2BIG));
12 EXPECT_STREQ("Bad file descriptor", aos_strerror(EBADF));
13 EXPECT_STREQ("Unknown error 4021", aos_strerror(4021));
14}
15
16// Runs through all errno values and makes sure it gives the same result as
17// strerror(3).
18TEST(StrerrorTest, All) {
19 for (int i = 0; i < 4095; ++i) {
20 SCOPED_TRACE("iteration " + ::std::to_string(i));
21 EXPECT_STREQ(strerror(i), aos_strerror(i));
22 }
23}
24
Stephan Pleinesf63bde82024-01-13 15:59:33 -080025} // namespace aos::libc::testing