From 5465be187e5cf6018c19cba6bd8620792507dc6a Mon Sep 17 00:00:00 2001
From: "daniel.naude" <danieln@bob.co.za>
Date: Thu, 5 Sep 2024 11:36:27 +0200
Subject: [PATCH] Refactor TradingHoursDay validation logic

---
 date_utils/date_utils.go | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/date_utils/date_utils.go b/date_utils/date_utils.go
index b9f585a..3893eff 100644
--- a/date_utils/date_utils.go
+++ b/date_utils/date_utils.go
@@ -371,14 +371,9 @@ func (day TradingHoursDay) Validate() error {
 		return nil
 	}
 
-	if !TimeBefore(day.StartTime, day.EndTime) {
-		return errors.Error("start time must be before end time")
-	}
-
 	if len(day.StartTime) != 5 || len(day.EndTime) != 5 {
 		return errors.Error("time must be in the format HH:MM")
 	}
-
 	startHourMinSlice := strings.Split(day.StartTime, ":")
 	if len(startHourMinSlice) != 2 {
 		return errors.Error("time must be in the format HH:MM")
@@ -407,6 +402,10 @@ func (day TradingHoursDay) Validate() error {
 		return errors.Error("end minute must be 0, 30 or 59")
 	}
 
+	if !TimeBefore(day.StartTime, day.EndTime) {
+		return errors.Error("start time must be before end time")
+	}
+
 	return nil
 }
 
-- 
GitLab