You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
1.1 KiB
38 lines
1.1 KiB
package framework
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
|
|
"github.com/seaweedfs/seaweedfs/test/volume_server/matrix"
|
|
)
|
|
|
|
func TestRustVolumeArgsIncludeReadMode(t *testing.T) {
|
|
profile := matrix.P1()
|
|
profile.ReadMode = "redirect"
|
|
profile.ConcurrentUploadLimitMB = 7
|
|
profile.ConcurrentDownloadLimitMB = 9
|
|
profile.InflightUploadTimeout = 3 * time.Second
|
|
profile.InflightDownloadTimeout = 4 * time.Second
|
|
|
|
args := rustVolumeArgs(profile, "/tmp/config", 9333, 18080, 28080, 38080, "/tmp/data")
|
|
|
|
assertArgPair(t, args, "--readMode", "redirect")
|
|
assertArgPair(t, args, "--concurrentUploadLimitMB", "7")
|
|
assertArgPair(t, args, "--concurrentDownloadLimitMB", "9")
|
|
assertArgPair(t, args, "--inflightUploadDataTimeout", "3s")
|
|
assertArgPair(t, args, "--inflightDownloadDataTimeout", "4s")
|
|
}
|
|
|
|
func assertArgPair(t *testing.T, args []string, flag string, want string) {
|
|
t.Helper()
|
|
for i := 0; i+1 < len(args); i += 2 {
|
|
if args[i] == flag {
|
|
if args[i+1] != want {
|
|
t.Fatalf("%s value mismatch: got %q want %q", flag, args[i+1], want)
|
|
}
|
|
return
|
|
}
|
|
}
|
|
t.Fatalf("missing %s in args: %v", flag, args)
|
|
}
|