summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/test_status.c (renamed from test/test_strerror.c)33
1 files changed, 31 insertions, 2 deletions
diff --git a/test/test_strerror.c b/test/test_status.c
index 2f4c090..eb11bc1 100644
--- a/test/test_strerror.c
+++ b/test/test_status.c
@@ -6,11 +6,33 @@
#include "zix/common.h"
#include <assert.h>
+#include <errno.h>
+#include <limits.h>
#include <stdio.h>
#include <string.h>
-int
-main(void)
+static void
+test_errno_status(void)
+{
+ assert(zix_errno_status(0) == ZIX_STATUS_SUCCESS);
+ assert(zix_errno_status(INT_MAX) == ZIX_STATUS_ERROR);
+
+#ifdef EAGAIN
+ assert(zix_errno_status(EAGAIN) == ZIX_STATUS_NO_MEM);
+#endif
+#ifdef EEXIST
+ assert(zix_errno_status(EEXIST) == ZIX_STATUS_EXISTS);
+#endif
+#ifdef EINVAL
+ assert(zix_errno_status(EINVAL) == ZIX_STATUS_BAD_ARG);
+#endif
+#ifdef EPERM
+ assert(zix_errno_status(EPERM) == ZIX_STATUS_BAD_PERMS);
+#endif
+}
+
+static void
+test_strerror(void)
{
const char* msg = zix_strerror(ZIX_STATUS_SUCCESS);
assert(!strcmp(msg, "Success"));
@@ -27,5 +49,12 @@ main(void)
assert(!strcmp(msg, "Unknown error"));
printf("Success\n");
+}
+
+int
+main(void)
+{
+ test_errno_status();
+ test_strerror();
return 0;
}