From 8282085b99e1099e2ab05cdda962d910aa5987c4 Mon Sep 17 00:00:00 2001 From: athatheo <athatheoc@gmail.com> Date: Sun, 5 Jun 2022 15:30:19 +0200 Subject: [PATCH] Fix Time Operators --- inc/Time/Time.hpp | 18 +++++++++++++++--- test/Services/TimeBasedSchedulingService.cpp | 2 +- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/inc/Time/Time.hpp b/inc/Time/Time.hpp index 77c0cb08..3ec4436a 100644 --- a/inc/Time/Time.hpp +++ b/inc/Time/Time.hpp @@ -272,22 +272,34 @@ namespace Time { typedef int64_t RelativeTime; inline Time::CustomCUC_t operator+(const Time::CustomCUC_t time, RelativeTime relativeTime) { - return Time::CustomCUC_t{time.elapsed100msTicks + relativeTime / 10}; + return Time::CustomCUC_t{time.elapsed100msTicks + relativeTime * 10}; } inline Time::CustomCUC_t operator-(const Time::CustomCUC_t time, RelativeTime relativeTime) { - return Time::CustomCUC_t{time.elapsed100msTicks - relativeTime / 10}; + return Time::CustomCUC_t{time.elapsed100msTicks - relativeTime * 10}; } inline Time::CustomCUC_t& operator+=(Time::CustomCUC_t& time, RelativeTime relativeTime) { - time.elapsed100msTicks += relativeTime / 10; + time.elapsed100msTicks += relativeTime * 10; return time; } + inline bool operator - (Time::CustomCUC_t time1, Time::CustomCUC_t time2) { + return time1.elapsed100msTicks - time2.elapsed100msTicks; + } + + inline bool operator + (Time::CustomCUC_t time1, Time::CustomCUC_t time2) { + return time1.elapsed100msTicks + time2.elapsed100msTicks; + } + inline bool operator<(Time::CustomCUC_t time1, Time::CustomCUC_t time2) { return time1.elapsed100msTicks < time2.elapsed100msTicks; } + inline bool operator>(Time::CustomCUC_t time1, Time::CustomCUC_t time2) { + return time1.elapsed100msTicks > time2.elapsed100msTicks; + } + inline bool operator==(const Time::CustomCUC_t time1, Time::CustomCUC_t time2) { return time1.elapsed100msTicks == time2.elapsed100msTicks; } diff --git a/test/Services/TimeBasedSchedulingService.cpp b/test/Services/TimeBasedSchedulingService.cpp index 55dadb1c..bedd6836 100644 --- a/test/Services/TimeBasedSchedulingService.cpp +++ b/test/Services/TimeBasedSchedulingService.cpp @@ -129,7 +129,7 @@ TEST_CASE("TC[11,4] Activity Insertion", "[service][st11]") { Message receivedMessage(TimeBasedSchedulingService::ServiceType, TimeBasedSchedulingService::MessageType::InsertActivities, Message::TC, 1); receivedMessage.appendUint16(1); // Total number of requests - receivedMessage.appendCustomCUCTimeStamp(currentTime - 15564350); + receivedMessage.appendCustomCUCTimeStamp(currentTime - 1556435); MessageParser::execute(receivedMessage); //timeService.insertActivities(receivedMessage); REQUIRE(ServiceTests::thrownError(ErrorHandler::InstructionExecutionStartError)); -- GitLab