diff --git a/platformtest/tests/replication.go b/platformtest/tests/replication.go index ed143c0..ebb4265 100644 --- a/platformtest/tests/replication.go +++ b/platformtest/tests/replication.go @@ -20,6 +20,7 @@ import ( "github.com/zrepl/zrepl/replication/logic" "github.com/zrepl/zrepl/replication/logic/pdu" "github.com/zrepl/zrepl/replication/report" + "github.com/zrepl/zrepl/util/bandwidthlimit" "github.com/zrepl/zrepl/util/limitio" "github.com/zrepl/zrepl/util/nodefault" "github.com/zrepl/zrepl/zfs" @@ -63,9 +64,10 @@ func (i replicationInvocation) Do(ctx *platformtest.Context) *report.Report { } senderConfig := endpoint.SenderConfig{ - FSF: i.sfilter.AsFilter(), - Encrypt: &nodefault.Bool{B: false}, - JobID: i.sjid, + FSF: i.sfilter.AsFilter(), + Encrypt: &nodefault.Bool{B: false}, + JobID: i.sjid, + BandwidthLimit: bandwidthlimit.NoLimitConfig(), } if i.senderConfigHook != nil { i.senderConfigHook(&senderConfig) @@ -75,6 +77,7 @@ func (i replicationInvocation) Do(ctx *platformtest.Context) *report.Report { JobID: i.rjid, AppendClientIdentity: false, RootWithoutClientComponent: mustDatasetPath(i.rfsRoot), + BandwidthLimit: bandwidthlimit.NoLimitConfig(), } if i.receiverConfigHook != nil { i.receiverConfigHook(&receiverConfig) diff --git a/util/bandwidthlimit/bandwidthlimit.go b/util/bandwidthlimit/bandwidthlimit.go index 24463b7..cc03a47 100644 --- a/util/bandwidthlimit/bandwidthlimit.go +++ b/util/bandwidthlimit/bandwidthlimit.go @@ -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") diff --git a/util/bandwidthlimit/bandwidthlimit_test.go b/util/bandwidthlimit/bandwidthlimit_test.go new file mode 100644 index 0000000..d2a16ae --- /dev/null +++ b/util/bandwidthlimit/bandwidthlimit_test.go @@ -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) + }) +}