mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
utils.MINUTE -> utils.MetaEveryMinute, utils.HOUR -> utils.MetaHourly
This commit is contained in:
@@ -95,15 +95,7 @@ func (at *ActionTiming) GetNextStartTime(now time.Time) (t time.Time) {
|
||||
if len(i.Timing.Months) > 0 && len(i.Timing.MonthDays) == 0 {
|
||||
i.Timing.MonthDays = append(i.Timing.MonthDays, 1)
|
||||
}
|
||||
|
||||
if i.Timing.StartTime == utils.MINUTE {
|
||||
at.stCache = cronexpr.MustParse("0 * * * * * *").Next(now)
|
||||
} else if i.Timing.StartTime == utils.HOUR {
|
||||
at.stCache = cronexpr.MustParse("0 0 * * * * *").Next(now)
|
||||
} else {
|
||||
at.stCache = cronexpr.MustParse(i.Timing.CronString()).Next(now)
|
||||
}
|
||||
|
||||
at.stCache = cronexpr.MustParse(i.Timing.CronString()).Next(now)
|
||||
return at.stCache
|
||||
}
|
||||
|
||||
|
||||
@@ -53,9 +53,14 @@ func (rit *RITiming) CronString() string {
|
||||
return rit.cronString
|
||||
}
|
||||
var sec, min, hour, monthday, month, weekday, year string
|
||||
if len(rit.StartTime) == 0 {
|
||||
switch rit.StartTime {
|
||||
case "":
|
||||
hour, min, sec = "*", "*", "*"
|
||||
} else {
|
||||
case utils.MetaEveryMinute:
|
||||
hour, min, sec = "*", "*", "0"
|
||||
case utils.MetaHourly:
|
||||
hour, min, sec = "*", "0", "0"
|
||||
default:
|
||||
hms := strings.Split(rit.StartTime, ":")
|
||||
if len(hms) == 3 {
|
||||
hour, min, sec = hms[0], hms[1], hms[2]
|
||||
|
||||
@@ -348,6 +348,23 @@ func TestRateIntervalCronEmpty(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestRITimingCronEveryX(t *testing.T) {
|
||||
rit := &RITiming{
|
||||
StartTime: utils.MetaEveryMinute,
|
||||
}
|
||||
eCronStr := "0 * * * * * *"
|
||||
if cronStr := rit.CronString(); cronStr != eCronStr {
|
||||
t.Errorf("Expecting: <%s>, received: <%s>", eCronStr, cronStr)
|
||||
}
|
||||
rit = &RITiming{
|
||||
StartTime: utils.MetaHourly,
|
||||
}
|
||||
eCronStr = "0 0 * * * * *"
|
||||
if cronStr := rit.CronString(); cronStr != eCronStr {
|
||||
t.Errorf("Expecting: <%s>, received: <%s>", eCronStr, cronStr)
|
||||
}
|
||||
}
|
||||
|
||||
func TestRateIntervalCost(t *testing.T) {
|
||||
ri := &RateInterval{
|
||||
Rating: &RIRate{
|
||||
|
||||
@@ -85,22 +85,22 @@ func NewTpReader(db DataDB, lr LoadReader, tpid, timezone string) *TpReader {
|
||||
StartTime: utils.ASAP,
|
||||
EndTime: "",
|
||||
}
|
||||
tpr.timings[utils.MINUTE] = &utils.TPTiming{
|
||||
ID: utils.MINUTE,
|
||||
tpr.timings[utils.MetaEveryMinute] = &utils.TPTiming{
|
||||
ID: utils.MetaEveryMinute,
|
||||
Years: utils.Years{},
|
||||
Months: utils.Months{},
|
||||
MonthDays: utils.MonthDays{},
|
||||
WeekDays: utils.WeekDays{},
|
||||
StartTime: utils.MINUTE,
|
||||
StartTime: utils.MetaEveryMinute,
|
||||
EndTime: "",
|
||||
}
|
||||
tpr.timings[utils.HOUR] = &utils.TPTiming{
|
||||
ID: utils.HOUR,
|
||||
tpr.timings[utils.MetaHourly] = &utils.TPTiming{
|
||||
ID: utils.MetaHourly,
|
||||
Years: utils.Years{},
|
||||
Months: utils.Months{},
|
||||
MonthDays: utils.MonthDays{},
|
||||
WeekDays: utils.WeekDays{},
|
||||
StartTime: utils.HOUR,
|
||||
StartTime: utils.MetaHourly,
|
||||
EndTime: "",
|
||||
}
|
||||
return tpr
|
||||
|
||||
@@ -108,8 +108,6 @@ const (
|
||||
UNLIMITED = "*unlimited"
|
||||
ZERO = "*zero"
|
||||
ASAP = "*asap"
|
||||
MINUTE = "*minute"
|
||||
HOUR = "*hour"
|
||||
USERS = "*users"
|
||||
COMMENT_CHAR = '#'
|
||||
CSV_SEP = ','
|
||||
@@ -372,4 +370,6 @@ const (
|
||||
MetaFileCSV = "*file_csv"
|
||||
MetaFileFWV = "*file_fwv"
|
||||
Accounts = "Accounts"
|
||||
MetaEveryMinute = "*every_minute"
|
||||
MetaHourly = "*hourly"
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user