[A] Add ft_strerror function

This commit is contained in:
seleznevae
2020-02-08 12:15:35 +03:00
parent bff48549de
commit 58a63f90f2
9 changed files with 137 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
#include "tests.h"
#include "fort.h"
void test_error_codes(void)
{
// Nonnegative code is success
{
assert_str_equal(ft_strerror(0), "Libfort success");
assert_str_equal(ft_strerror(1), "Libfort success");
assert_str_equal(ft_strerror(2), "Libfort success");
assert_str_equal(ft_strerror(42), "Libfort success");
assert_str_equal(ft_strerror(INT_MAX), "Libfort success");
}
// Error codes
{
assert_str_equal(ft_strerror(FT_MEMORY_ERROR), "Libfort error (out of memory)");
assert_str_equal(ft_strerror(FT_ERROR), "Libfort error (general error)");
assert_str_equal(ft_strerror(FT_EINVAL), "Libfort error (invalid argument)");
assert_str_equal(ft_strerror(FT_INTERN_ERROR), "Libfort error (internal logic error)");
assert_str_equal(ft_strerror(-42), "Libfort unknown error");
assert_str_equal(ft_strerror(-666), "Libfort unknown error");
assert_str_equal(ft_strerror(-INT_MAX), "Libfort unknown error");
}
}