if 9093/9094 port is in use, test case will fail (#3320)
* Update test Signed-off-by: rongyi <rongyi@onchain.com> * Change port to uint16 Signed-off-by: rongyi <rongyi@onchain.com> * Update testcase Signed-off-by: rongyi <rongyi@onchain.com> * make testcase pass Signed-off-by: rongyi <rongyi@onchain.com> --------- Signed-off-by: rongyi <rongyi@onchain.com>
This commit is contained in:
parent
638f41c215
commit
b22dc1d5e0
|
@ -29,6 +29,13 @@ import (
|
||||||
|
|
||||||
var logger = log.NewNopLogger()
|
var logger = log.NewNopLogger()
|
||||||
|
|
||||||
|
func freeport() int {
|
||||||
|
lis, _ := net.Listen(network, "127.0.0.1:0")
|
||||||
|
defer lis.Close()
|
||||||
|
|
||||||
|
return lis.Addr().(*net.TCPAddr).Port
|
||||||
|
}
|
||||||
|
|
||||||
func newTLSTransport(file, address string, port int) (*TLSTransport, error) {
|
func newTLSTransport(file, address string, port int) (*TLSTransport, error) {
|
||||||
cfg, err := GetTLSTransportConfig(file)
|
cfg, err := GetTLSTransportConfig(file)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -39,6 +46,7 @@ func newTLSTransport(file, address string, port int) (*TLSTransport, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestNewTLSTransport(t *testing.T) {
|
func TestNewTLSTransport(t *testing.T) {
|
||||||
|
port := freeport()
|
||||||
for _, tc := range []struct {
|
for _, tc := range []struct {
|
||||||
bindAddr string
|
bindAddr string
|
||||||
bindPort int
|
bindPort int
|
||||||
|
@ -72,7 +80,7 @@ func TestNewTLSTransport(t *testing.T) {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
bindAddr: localhost,
|
bindAddr: localhost,
|
||||||
bindPort: 9094,
|
bindPort: port,
|
||||||
tlsConfFile: "testdata/tls_config_node2.yml",
|
tlsConfFile: "testdata/tls_config_node2.yml",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -101,6 +109,7 @@ func TestNewTLSTransport(t *testing.T) {
|
||||||
const localhost = "127.0.0.1"
|
const localhost = "127.0.0.1"
|
||||||
|
|
||||||
func TestFinalAdvertiseAddr(t *testing.T) {
|
func TestFinalAdvertiseAddr(t *testing.T) {
|
||||||
|
ports := [...]int{freeport(), freeport(), freeport()}
|
||||||
testCases := []struct {
|
testCases := []struct {
|
||||||
bindAddr string
|
bindAddr string
|
||||||
bindPort int
|
bindPort int
|
||||||
|
@ -110,11 +119,11 @@ func TestFinalAdvertiseAddr(t *testing.T) {
|
||||||
expectedPort int
|
expectedPort int
|
||||||
expectedError string
|
expectedError string
|
||||||
}{
|
}{
|
||||||
{bindAddr: localhost, bindPort: 9094, inputIP: "10.0.0.5", inputPort: 54231, expectedIP: "10.0.0.5", expectedPort: 54231},
|
{bindAddr: localhost, bindPort: ports[0], inputIP: "10.0.0.5", inputPort: 54231, expectedIP: "10.0.0.5", expectedPort: 54231},
|
||||||
{bindAddr: localhost, bindPort: 9093, inputIP: "invalid", inputPort: 54231, expectedError: "failed to parse advertise address \"invalid\""},
|
{bindAddr: localhost, bindPort: ports[1], inputIP: "invalid", inputPort: 54231, expectedError: "failed to parse advertise address \"invalid\""},
|
||||||
{bindAddr: "0.0.0.0", bindPort: 0, inputIP: "", inputPort: 0, expectedIP: "random"},
|
{bindAddr: "0.0.0.0", bindPort: 0, inputIP: "", inputPort: 0, expectedIP: "random"},
|
||||||
{bindAddr: localhost, bindPort: 0, inputIP: "", inputPort: 0, expectedIP: localhost},
|
{bindAddr: localhost, bindPort: 0, inputIP: "", inputPort: 0, expectedIP: localhost},
|
||||||
{bindAddr: localhost, bindPort: 9095, inputIP: "", inputPort: 0, expectedIP: localhost, expectedPort: 9095},
|
{bindAddr: localhost, bindPort: ports[2], inputIP: "", inputPort: 0, expectedIP: localhost, expectedPort: ports[2]},
|
||||||
}
|
}
|
||||||
for _, tc := range testCases {
|
for _, tc := range testCases {
|
||||||
tlsConf := loadTLSTransportConfig(t, "testdata/tls_config_node1.yml")
|
tlsConf := loadTLSTransportConfig(t, "testdata/tls_config_node1.yml")
|
||||||
|
@ -127,7 +136,6 @@ func TestFinalAdvertiseAddr(t *testing.T) {
|
||||||
require.Nil(t, err)
|
require.Nil(t, err)
|
||||||
if tc.expectedPort == 0 {
|
if tc.expectedPort == 0 {
|
||||||
require.True(t, tc.expectedPort < port)
|
require.True(t, tc.expectedPort < port)
|
||||||
require.True(t, uint32(port) <= uint32(1<<32-1))
|
|
||||||
} else {
|
} else {
|
||||||
require.Equal(t, tc.expectedPort, port)
|
require.Equal(t, tc.expectedPort, port)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue