diff options
Diffstat (limited to 'tests/core/strtol.c')
-rw-r--r-- | tests/core/strtol.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/core/strtol.c b/tests/core/strtol.c new file mode 100644 index 000000000..8765e042b --- /dev/null +++ b/tests/core/strtol.c @@ -0,0 +1,37 @@ +#include "clar_libgit2.h" + +void test_core_strtol__int32(void) +{ + int32_t i; + + cl_git_pass(git__strtol32(&i, "123", NULL, 10)); + cl_assert(i == 123); + cl_git_pass(git__strtol32(&i, " +123 ", NULL, 10)); + cl_assert(i == 123); + cl_git_pass(git__strtol32(&i, " +2147483647 ", NULL, 10)); + cl_assert(i == 2147483647); + cl_git_pass(git__strtol32(&i, " -2147483648 ", NULL, 10)); + cl_assert(i == -2147483648LL); + + cl_git_fail(git__strtol32(&i, " 2147483657 ", NULL, 10)); + cl_git_fail(git__strtol32(&i, " -2147483657 ", NULL, 10)); +} + +void test_core_strtol__int64(void) +{ + int64_t i; + + cl_git_pass(git__strtol64(&i, "123", NULL, 10)); + cl_assert(i == 123); + cl_git_pass(git__strtol64(&i, " +123 ", NULL, 10)); + cl_assert(i == 123); + cl_git_pass(git__strtol64(&i, " +2147483647 ", NULL, 10)); + cl_assert(i == 2147483647); + cl_git_pass(git__strtol64(&i, " -2147483648 ", NULL, 10)); + cl_assert(i == -2147483648LL); + cl_git_pass(git__strtol64(&i, " 2147483657 ", NULL, 10)); + cl_assert(i == 2147483657LL); + cl_git_pass(git__strtol64(&i, " -2147483657 ", NULL, 10)); + cl_assert(i == -2147483657LL); +} + |