diff options
author | 2023-11-28 21:14:10 -0800 | |
---|---|---|
committer | 2023-11-29 19:52:14 -0800 | |
commit | 70b69ecd19a87e6d2bab8b73d38e8b14999aca0e (patch) | |
tree | 7ecf328975f1001c78c232aafdffb6941e14ce03 /internal/model/feed_test.go | |
parent | fe0ef8b5795e4e2a4092a22d6a4ace9b6b0a7783 (diff) | |
download | v2-70b69ecd19a87e6d2bab8b73d38e8b14999aca0e.tar.gz v2-70b69ecd19a87e6d2bab8b73d38e8b14999aca0e.tar.zst v2-70b69ecd19a87e6d2bab8b73d38e8b14999aca0e.zip |
Add SCHEDULER_ROUND_ROBIN_MIN_INTERVAL
Separated from POLLING_FREQUENCY.
Diffstat (limited to 'internal/model/feed_test.go')
-rw-r--r-- | internal/model/feed_test.go | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/internal/model/feed_test.go b/internal/model/feed_test.go index 394279dd..6541520a 100644 --- a/internal/model/feed_test.go +++ b/internal/model/feed_test.go @@ -83,6 +83,31 @@ func TestFeedScheduleNextCheckDefault(t *testing.T) { } } +func TestFeedScheduleNextCheckRoundRobinMinInterval(t *testing.T) { + minInterval := 1 + os.Clearenv() + os.Setenv("POLLING_SCHEDULER", "round_robin") + os.Setenv("SCHEDULER_ROUND_ROBIN_MIN_INTERVAL", fmt.Sprintf("%d", minInterval)) + + var err error + parser := config.NewParser() + config.Opts, err = parser.ParseEnvironmentVariables() + if err != nil { + t.Fatalf(`Parsing failure: %v`, err) + } + feed := &Feed{} + weeklyCount := 100 + feed.ScheduleNextCheck(weeklyCount) + + if feed.NextCheckAt.IsZero() { + t.Error(`The next_check_at must be set`) + } + + if feed.NextCheckAt.After(time.Now().Add(time.Minute * time.Duration(minInterval))) { + t.Error(`The next_check_at should not be after the now + min interval`) + } +} + func TestFeedScheduleNextCheckEntryCountBasedMaxInterval(t *testing.T) { maxInterval := 5 minInterval := 1 |