diff options
Diffstat (limited to 'test/pkstn.cpp')
| -rw-r--r-- | test/pkstn.cpp | 63 |
1 files changed, 33 insertions, 30 deletions
diff --git a/test/pkstn.cpp b/test/pkstn.cpp index 21f0319..443e4a5 100644 --- a/test/pkstn.cpp +++ b/test/pkstn.cpp @@ -2,6 +2,7 @@ #define PK_IMPL_STN #include "../pkstn.h" +#include "../pktst.h" #include <cstring> #include <iostream> @@ -58,49 +59,49 @@ void test() { if constexpr (t & TEST_SCALAR_NIL) { res = pk_stn(&i, STRNUM_NIL, &s); std::cout << "pkstn: TEST_SCALAR_NIL res: " << i << "\n"; - if (s != STRNUM_NIL) exit(1); - if (res != PK_STN_RES_INCONVERTIBLE) exit(1); + PK_TEST_ASSERT_EQ_EXIT(STRNUM_NIL, s); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_INCONVERTIBLE, res); } if constexpr (t & TEST_FLOATING_NIL) { res = pk_stn(&i, STRNUM_FLOAT_NIL, &s); std::cout << "pkstn: TEST_FLOATING_NIL res: " << i << "\n"; - if (s != STRNUM_FLOAT_NIL) exit(1); - if (res != PK_STN_RES_INCONVERTIBLE) exit(1); + PK_TEST_ASSERT_EQ_EXIT(STRNUM_FLOAT_NIL, s); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_INCONVERTIBLE, res); } if constexpr (t & TEST_SCALAR_ZED) { res = pk_stn(&i, STRNUM_ZED, &s); std::cout << "pkstn: TEST_SCALAR_ZED res: " << i << "\n"; - if (s != STRNUM_ZED + strlen(STRNUM_ZED)) exit(1); - if (res != PK_STN_RES_SUCCESS) exit(1); - if (T(VAL_SCALAR_ZED) != i) exit(1); + PK_TEST_ASSERT_EQ_EXIT(STRNUM_ZED + strlen(STRNUM_ZED), s); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_SUCCESS, res); + PK_TEST_ASSERT_EQ_EXIT(T(VAL_SCALAR_ZED), i); } if constexpr (t & TEST_FLOATING_ZED) { res = pk_stn(&i, STRNUM_FLOAT_ZED, &s); std::cout << "pkstn: TEST_FLOATING_ZED res: " << i << "\n"; - if (s != STRNUM_FLOAT_ZED + strlen(STRNUM_FLOAT_ZED)) exit(1); - if (res != PK_STN_RES_SUCCESS) exit(1); - if (T(VAL_FLOATING_ZED) != i) exit(1); + PK_TEST_ASSERT_EQ_EXIT(STRNUM_FLOAT_ZED + strlen(STRNUM_FLOAT_ZED), s); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_SUCCESS, res); + PK_TEST_ASSERT_EQ_EXIT(T(VAL_FLOATING_ZED), i); } if constexpr (t & TEST_SCALAR_ONE) { res = pk_stn(&i, STRNUM_ONE, &s); std::cout << "pkstn: TEST_SCALAR_ONE res: " << i << "\n"; - if (s != STRNUM_ONE + strlen(STRNUM_ONE)) exit(1); - if (res != PK_STN_RES_SUCCESS) exit(1); - if (T(VAL_SCALAR_ONE) != i) exit(1); + PK_TEST_ASSERT_EQ_EXIT(STRNUM_ONE + strlen(STRNUM_ONE), s); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_SUCCESS, res); + PK_TEST_ASSERT_EQ_EXIT(T(VAL_SCALAR_ONE), i); } if constexpr (t & TEST_FLOATING_ONE) { res = pk_stn(&i, STRNUM_FLOAT_ONE, &s); std::cout << "pkstn: TEST_FLOATING_ONE res: " << i << "\n"; - if (s != STRNUM_FLOAT_ONE + strlen(STRNUM_FLOAT_ONE)) exit(1); - if (res != PK_STN_RES_SUCCESS) exit(1); - if (T(VAL_FLOATING_ONE) != i) exit(1); + PK_TEST_ASSERT_EQ_EXIT(STRNUM_FLOAT_ONE + strlen(STRNUM_FLOAT_ONE), s); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_SUCCESS, res); + PK_TEST_ASSERT_EQ_EXIT(T(VAL_FLOATING_ONE), i); } if constexpr (t & TEST_SCALAR_ONE_MINUS) { res = pk_stn(&i, STRNUM_ONE_MINUS, &s); std::cout << "pkstn: TEST_SCALAR_ONE_MINUS res: " << i << "\n"; - if (s != STRNUM_ONE_MINUS + strlen(STRNUM_ONE_MINUS)) exit(1); - if (res != PK_STN_RES_SUCCESS) exit(1); - if (T(VAL_SCALAR_ONE_MINUS) != i) exit(1); + PK_TEST_ASSERT_EQ_EXIT(STRNUM_ONE_MINUS + strlen(STRNUM_ONE_MINUS), s); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_SUCCESS, res); + PK_TEST_ASSERT_EQ_EXIT(T(VAL_SCALAR_ONE_MINUS), i); } if constexpr (t & TEST_FLOATING_ONE_MINUS) { res = pk_stn(&i, STRNUM_FLOAT_ONE_MINUS, &s); @@ -108,40 +109,42 @@ void test() { if (s != STRNUM_FLOAT_ONE_MINUS + strlen(STRNUM_FLOAT_ONE_MINUS)) exit(1); if (res != PK_STN_RES_SUCCESS) exit(1); if (T(VAL_FLOATING_ONE_MINUS) != i) exit(1); + PK_TEST_ASSERT_EQ_EXIT(STRNUM_FLOAT_ONE_MINUS + strlen(STRNUM_FLOAT_ONE_MINUS), s); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_SUCCESS, res); } if constexpr (t & TEST_SCALAR_UNDERFLOW) { res = pk_stn(&i, STRNUM_UNDERFLOW, &s); std::cout << "pkstn: TEST_SCALAR_UNDERFLOW res: " << i << "\n"; - if (s != STRNUM_UNDERFLOW + strlen(STRNUM_UNDERFLOW)) exit(1); + PK_TEST_ASSERT_EQ_EXIT(STRNUM_UNDERFLOW + strlen(STRNUM_UNDERFLOW), s); if constexpr(std::is_unsigned_v<T> == true) { - if (res != PK_STN_RES_OVERFLOW) exit(1); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_OVERFLOW, res); } else { - if (res != PK_STN_RES_UNDERFLOW) exit(1); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_UNDERFLOW, res); } } if constexpr (t & TEST_FLOATING_UNDERFLOW) { res = pk_stn(&i, STRNUM_UNDERFLOW_FLOAT, &s); std::cout << "pkstn: TEST_FLOATING_UNDERFLOW res: " << i << "\n"; - if (s != STRNUM_UNDERFLOW_FLOAT + strlen(STRNUM_UNDERFLOW_FLOAT)) exit(1); - if (res != PK_STN_RES_UNDERFLOW) exit(1); + PK_TEST_ASSERT_EQ_EXIT(STRNUM_UNDERFLOW_FLOAT + strlen(STRNUM_UNDERFLOW_FLOAT), s); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_UNDERFLOW, res); } if constexpr (t & TEST_SCALAR_OVERFLOW) { res = pk_stn(&i, STRNUM_OVERFLOW, &s); std::cout << "pkstn: TEST_SCALAR_OVERFLOW res: " << i << "\n"; - if (s != STRNUM_OVERFLOW + strlen(STRNUM_OVERFLOW)) exit(1); - if (res != PK_STN_RES_OVERFLOW) exit(1); + PK_TEST_ASSERT_EQ_EXIT(STRNUM_OVERFLOW + strlen(STRNUM_OVERFLOW), s); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_OVERFLOW, res); } if constexpr (t & TEST_FLOATING_OVERFLOW) { res = pk_stn(&i, STRNUM_OVERFLOW_FLOAT, &s); std::cout << "pkstn: TEST_FLOATING_OVERFLOW res: " << i << "\n"; - if (s != STRNUM_OVERFLOW_FLOAT + strlen(STRNUM_OVERFLOW_FLOAT)) exit(1); - if (res != PK_STN_RES_OVERFLOW) exit(1); + PK_TEST_ASSERT_EQ_EXIT(STRNUM_OVERFLOW_FLOAT + strlen(STRNUM_OVERFLOW_FLOAT), s); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_OVERFLOW, res); } if constexpr (t & TEST_INCONVERTIBLE) { res = pk_stn(&i, STRNUM_INCONVERTIBLE, &s); std::cout << "pkstn: TEST_INCONVERTIBLE res: " << i << "\n"; - if (s != STRNUM_INCONVERTIBLE) exit(1); - if (res != PK_STN_RES_INCONVERTIBLE) exit(1); + PK_TEST_ASSERT_NEQ_EXIT(STRNUM_INCONVERTIBLE + strlen(STRNUM_INCONVERTIBLE), s); + PK_TEST_ASSERT_EQ_EXIT(PK_STN_RES_INCONVERTIBLE, res); } }; |
