38 lines
939 B
Go
38 lines
939 B
Go
|
// Copyright 2024 The Forgejo Authors. All rights reserved.
|
||
|
// SPDX-License-Identifier: MIT
|
||
|
|
||
|
package config
|
||
|
|
||
|
import (
|
||
|
"testing"
|
||
|
"time"
|
||
|
|
||
|
"github.com/stretchr/testify/assert"
|
||
|
)
|
||
|
|
||
|
func TestConfigTune(t *testing.T) {
|
||
|
c := &Config{
|
||
|
Runner: Runner{},
|
||
|
}
|
||
|
|
||
|
t.Run("Public instance tuning", func(t *testing.T) {
|
||
|
c.Runner.FetchInterval = 60 * time.Second
|
||
|
c.Tune("https://codeberg.org")
|
||
|
assert.EqualValues(t, 60*time.Second, c.Runner.FetchInterval)
|
||
|
|
||
|
c.Runner.FetchInterval = 2 * time.Second
|
||
|
c.Tune("https://codeberg.org")
|
||
|
assert.EqualValues(t, 30*time.Second, c.Runner.FetchInterval)
|
||
|
})
|
||
|
|
||
|
t.Run("Non-public instance tuning", func(t *testing.T) {
|
||
|
c.Runner.FetchInterval = 60 * time.Second
|
||
|
c.Tune("https://example.com")
|
||
|
assert.EqualValues(t, 60*time.Second, c.Runner.FetchInterval)
|
||
|
|
||
|
c.Runner.FetchInterval = 2 * time.Second
|
||
|
c.Tune("https://codeberg.com")
|
||
|
assert.EqualValues(t, 2*time.Second, c.Runner.FetchInterval)
|
||
|
})
|
||
|
}
|