diff options
Diffstat (limited to 'contrib/ntp/tests/libntp/tvtots.c')
-rw-r--r-- | contrib/ntp/tests/libntp/tvtots.c | 38 |
1 files changed, 24 insertions, 14 deletions
diff --git a/contrib/ntp/tests/libntp/tvtots.c b/contrib/ntp/tests/libntp/tvtots.c index 6c8345a..a13846d 100644 --- a/contrib/ntp/tests/libntp/tvtots.c +++ b/contrib/ntp/tests/libntp/tvtots.c @@ -4,13 +4,18 @@ #include "timevalops.h" #include "unity.h" -#include <math.h>// Required on Solaris for ldexp. +#include <math.h> /* Required on Solaris for ldexp. */ -void test_Seconds(void) +void test_Seconds(void); +void test_MicrosecondsRounded(void); +void test_MicrosecondsExact(void); + +void +test_Seconds(void) { - struct timeval input = {500, 0}; // 500.0 s - l_fp expected = {500, 0}; + struct timeval input = {500, 0}; /* 500.0 s */ + l_fp expected = {{500}, 0}; l_fp actual; TVTOTS(&input, &actual); @@ -18,37 +23,42 @@ void test_Seconds(void) TEST_ASSERT_TRUE(IsEqual(expected, actual)); } -void test_MicrosecondsRounded(void) + +void +test_MicrosecondsRounded(void) { /* 0.0005 can not be represented exact in a l_fp structure. * It would equal to 2147483,648. This means that * HALF_PROMILLE_UP (which is 2147484) should be * the correct rounding. */ - struct timeval input = {0, 500}; // 0.0005 exact - l_fp expected = {0, HALF_PROMILLE_UP}; + struct timeval input = {0, 500}; /* 0.0005 exact */ + l_fp expected = {{0}, HALF_PROMILLE_UP}; l_fp actual; TVTOTS(&input, &actual); + TEST_ASSERT_TRUE(IsEqual(expected, actual)); } -void test_MicrosecondsExact(void) + +void +test_MicrosecondsExact(void) { - // 0.5 can be represented exact in both l_fp and timeval. - const struct timeval input = {10, 500000}; // 0.5 exact - const l_fp expected = {10, HALF}; // 0.5 exact + /* 0.5 can be represented exact in both l_fp and timeval. */ + const struct timeval input = {10, 500000}; /* 0.5 exact */ + const l_fp expected = {{10}, HALF}; /* 0.5 exact */ l_fp actual; TVTOTS(&input, &actual); - // Compare the fractional part with an absolute error given. + /* Compare the fractional part with an absolute error given. */ TEST_ASSERT_EQUAL_UINT(expected.l_ui, actual.l_ui); double expectedDouble, actualDouble; M_LFPTOD(0, expected.l_uf, expectedDouble); M_LFPTOD(0, actual.l_uf, actualDouble); - // The error should be less than 0.5 us - TEST_ASSERT_DOUBLE_WITHIN(0000005, expectedDouble, actualDouble); + /* The error should be less than 0.5 us */ + TEST_ASSERT_DOUBLE_WITHIN(0.0000005, expectedDouble, actualDouble); } |