diff --git a/server/embed/config_test.go b/server/embed/config_test.go index a0550a6a288a..25331da2d359 100644 --- a/server/embed/config_test.go +++ b/server/embed/config_test.go @@ -42,12 +42,13 @@ func TestConfigFileOtherFields(t *testing.T) { ctls := securityConfig{TrustedCAFile: "cca", CertFile: "ccert", KeyFile: "ckey"} ptls := securityConfig{TrustedCAFile: "pca", CertFile: "pcert", KeyFile: "pkey"} yc := struct { - ClientSecurityCfgFile securityConfig `json:"client-transport-security"` - PeerSecurityCfgFile securityConfig `json:"peer-transport-security"` - ForceNewCluster bool `json:"force-new-cluster"` - Logger string `json:"logger"` - LogOutputs []string `json:"log-outputs"` - Debug bool `json:"debug"` + ClientSecurityCfgFile securityConfig `json:"client-transport-security"` + PeerSecurityCfgFile securityConfig `json:"peer-transport-security"` + ForceNewCluster bool `json:"force-new-cluster"` + Logger string `json:"logger"` + LogOutputs []string `json:"log-outputs"` + Debug bool `json:"debug"` + SocketOpts transport.SocketOpts `json:"socket-options"` }{ ctls, ptls, @@ -55,6 +56,9 @@ func TestConfigFileOtherFields(t *testing.T) { "zap", []string{"/dev/null"}, false, + transport.SocketOpts{ + ReusePort: true, + }, } b, err := yaml.Marshal(&yc) @@ -70,16 +74,18 @@ func TestConfigFileOtherFields(t *testing.T) { t.Fatal(err) } - if !cfg.ForceNewCluster { - t.Errorf("ForceNewCluster = %v, want %v", cfg.ForceNewCluster, true) - } - if !ctls.equals(&cfg.ClientTLSInfo) { t.Errorf("ClientTLS = %v, want %v", cfg.ClientTLSInfo, ctls) } if !ptls.equals(&cfg.PeerTLSInfo) { t.Errorf("PeerTLS = %v, want %v", cfg.PeerTLSInfo, ptls) } + + assert.Equal(t, true, cfg.ForceNewCluster, "ForceNewCluster does not match") + + assert.Equal(t, true, cfg.SocketOpts.ReusePort, "ReusePort does not match") + + assert.Equal(t, false, cfg.SocketOpts.ReuseAddress, "ReuseAddress does not match") } // TestUpdateDefaultClusterFromName ensures that etcd can start with 'etcd --name=abc'.