From 9ff85ef8eff18b380f13091e4a5d074b89e4542e Mon Sep 17 00:00:00 2001 From: knight42 Date: Wed, 9 Sep 2020 15:40:56 +0800 Subject: [PATCH] test(portforward): deflake TestGetListener Signed-off-by: knight42 Kubernetes-commit: bb68741fcbe82a7b17e05e82f7a71bd0c4815e02 --- tools/portforward/portforward_test.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/tools/portforward/portforward_test.go b/tools/portforward/portforward_test.go index 5b9afabe..c6e9e6ef 100644 --- a/tools/portforward/portforward_test.go +++ b/tools/portforward/portforward_test.go @@ -17,6 +17,7 @@ limitations under the License. package portforward import ( + "fmt" "net" "net/http" "os" @@ -309,12 +310,13 @@ func TestGetListener(t *testing.T) { } for i, testCase := range testCases { - expectedListenerPort := "12345" - listener, err := pf.getListener(testCase.Protocol, testCase.Hostname, &ForwardedPort{12345, 12345}) + forwardedPort := &ForwardedPort{Local: 0, Remote: 12345} + listener, err := pf.getListener(testCase.Protocol, testCase.Hostname, forwardedPort) if err != nil && strings.Contains(err.Error(), "cannot assign requested address") { t.Logf("Can't test #%d: %v", i, err) continue } + expectedListenerPort := fmt.Sprintf("%d", forwardedPort.Local) errorRaised := err != nil if testCase.ShouldRaiseError != errorRaised { @@ -331,7 +333,7 @@ func TestGetListener(t *testing.T) { } host, port, _ := net.SplitHostPort(listener.Addr().String()) - t.Logf("Asked a %s forward for: %s:%v, got listener %s:%s, expected: %s", testCase.Protocol, testCase.Hostname, 12345, host, port, expectedListenerPort) + t.Logf("Asked a %s forward for: %s:0, got listener %s:%s, expected: %s", testCase.Protocol, testCase.Hostname, host, port, expectedListenerPort) if host != testCase.ExpectedListenerAddress { t.Errorf("Test case #%d failed: Listener does not listen on expected address: asked '%v' got '%v'", i, testCase.ExpectedListenerAddress, host) } @@ -340,7 +342,6 @@ func TestGetListener(t *testing.T) { } listener.Close() - } }