#include "ntp.h"
};
+#define CALC_SYNCH_DISTANCE(a, b) ((a + b)/2.0)
+
class mainTest : public sntptest {
protected:
::testing::AssertionResult LfpEquality(const l_fp &expected, const l_fp &actual) {
rpkt.precision = -16; // 0,000015259
rpkt.rootdelay = HTONS_FP(DTOUFP(0.125));
rpkt.rootdisp = HTONS_FP(DTOUFP(0.25)); //
+ double x_synchDist = CALC_SYNCH_DISTANCE(0.125, 0.25);
l_fp reftime;
get_systime(&reftime);
HTONL_FP(&reftime, &rpkt.reftime);
TSTOTV(&tmp, &dst);
dst.tv_sec -= JAN_1970;
- double offset, precision, root_disp;
- offset_calculation(&rpkt, LEN_PKT_NOMAC, &dst, &offset, &precision, &root_disp);
+ double offset, precision, synch_distance;
+ offset_calculation(&rpkt, LEN_PKT_NOMAC, &dst, &offset, &precision, &synch_distance);
EXPECT_DOUBLE_EQ(1.25, offset);
EXPECT_DOUBLE_EQ(1. / ULOGTOD(16), precision);
- EXPECT_DOUBLE_EQ(0.25, root_disp);
+ EXPECT_DOUBLE_EQ(CALC_SYNCH_DISTANCE(0.125, 0.25), synch_distance);
}
TEST_F(mainTest, OffsetCalculationNegativeOffset) {
rpkt.precision = -1;
rpkt.rootdelay = HTONS_FP(DTOUFP(0.5));
rpkt.rootdisp = HTONS_FP(DTOUFP(0.5));
+ double x_synchDist = CALC_SYNCH_DISTANCE(0.5, 0.5);
l_fp reftime;
get_systime(&reftime);
HTONL_FP(&reftime, &rpkt.reftime);
TSTOTV(&tmp, &dst);
dst.tv_sec -= JAN_1970;
- double offset, precision, root_disp;
- offset_calculation(&rpkt, LEN_PKT_NOMAC, &dst, &offset, &precision, &root_disp);
+ double offset, precision, synch_distance;
+ offset_calculation(&rpkt, LEN_PKT_NOMAC, &dst, &offset, &precision, &synch_distance);
EXPECT_DOUBLE_EQ(-1, offset);
EXPECT_DOUBLE_EQ(1. / ULOGTOD(1), precision);
- EXPECT_DOUBLE_EQ(0.5, root_disp);
+ EXPECT_DOUBLE_EQ(CALC_SYNCH_DISTANCE(0.5, 0.5), synch_distance);
}
TEST_F(mainTest, HandleUnusableServer) {