mirror of
https://github.com/zrepl/zrepl.git
synced 2025-08-19 03:06:02 +02:00
platformtest: fix bandwidth-limiting-related panics (missing BucketCapacity in sender/receiver config)
panic while running test: invalid config`Ratelimit` field invalid: BucketCapacity must not be zero
main.runTestCase.func1.1
/home/cs/zrepl/zrepl/platformtest/harness/harness.go:190
runtime.gopanic
/home/cs/go1.13/src/runtime/panic.go:679
github.com/zrepl/zrepl/endpoint.NewSender
/home/cs/zrepl/zrepl/endpoint/endpoint.go:68
github.com/zrepl/zrepl/platformtest/tests.replicationInvocation.Do
/home/cs/zrepl/zrepl/platformtest/tests/replication.go:87
github.com/zrepl/zrepl/platformtest/tests.ReplicationFailingInitialParentProhibitsChildReplication
/home/cs/zrepl/zrepl/platformtest/tests/replication.go:925
main.runTestCase.func1
/home/cs/zrepl/zrepl/platformtest/harness/harness.go:193
main.runTestCase
/home/cs/zrepl/zrepl/platformtest/harness/harness.go:194
main.HarnessRun
/home/cs/zrepl/zrepl/platformtest/harness/harness.go:107
main.main
/home/cs/zrepl/zrepl/platformtest/harness/harness.go:42
runtime.main
/home/cs/go1.13/src/runtime/proc.go:203
runtime.goexit
/home/cs/go1.13/src/runtime/asm_amd64.s:1357
fixup for f5f269bfd5
(bandwidth limiting)
This commit is contained in:
@@ -18,6 +18,13 @@ type Config struct {
|
||||
BucketCapacity int64
|
||||
}
|
||||
|
||||
func NoLimitConfig() Config {
|
||||
return Config{
|
||||
Max: -1,
|
||||
BucketCapacity: -1,
|
||||
}
|
||||
}
|
||||
|
||||
func ValidateConfig(conf Config) error {
|
||||
if conf.BucketCapacity == 0 {
|
||||
return errors.New("BucketCapacity must not be zero")
|
||||
|
19
util/bandwidthlimit/bandwidthlimit_test.go
Normal file
19
util/bandwidthlimit/bandwidthlimit_test.go
Normal file
@@ -0,0 +1,19 @@
|
||||
package bandwidthlimit
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestNoLimitConfig(t *testing.T) {
|
||||
|
||||
conf := NoLimitConfig()
|
||||
|
||||
err := ValidateConfig(conf)
|
||||
require.NoError(t, err)
|
||||
|
||||
require.NotPanics(t, func() {
|
||||
_ = WrapperFromConfig(conf)
|
||||
})
|
||||
}
|
Reference in New Issue
Block a user