From 10d9b7e49309c226950e62bdbb272d627463a4f1 Mon Sep 17 00:00:00 2001 From: Andrew Seigner Date: Tue, 26 Feb 2019 16:37:29 -0800 Subject: [PATCH] Revert integration test check wait (#2400) linkerd/linkerd2#2360 modified the `linkerd check --wait` param from `0` to `1m`. Waiting on a check command causes spinner control characters in the output, making output validation non-trivial. Instead, revert the wait param back to `0`, and use `TestHelper.RetryFor`. Signed-off-by: Andrew Seigner --- test/install_test.go | 43 +++++++++++++++++++++++++++++-------------- 1 file changed, 29 insertions(+), 14 deletions(-) diff --git a/test/install_test.go b/test/install_test.go index 6a8e74a2a..d07ab079b 100644 --- a/test/install_test.go +++ b/test/install_test.go @@ -131,21 +131,29 @@ func TestVersionPostInstall(t *testing.T) { } func TestCheckPostInstall(t *testing.T) { - cmd := []string{"check", "--expected-version", TestHelper.GetVersion(), "--wait=1m"} + cmd := []string{"check", "--expected-version", TestHelper.GetVersion(), "--wait=0"} golden := "check.golden" if TestHelper.SingleNamespace() { cmd = append(cmd, "--single-namespace") golden = "check.single_namespace.golden" } - out, _, err := TestHelper.LinkerdRun(cmd...) - if err != nil { - t.Fatalf("Check command failed\n%s", out) - } + err := TestHelper.RetryFor(time.Minute, func() error { + out, _, err := TestHelper.LinkerdRun(cmd...) - err = TestHelper.ValidateOutput(out, golden) + if err != nil { + return fmt.Errorf("Check command failed\n%s", out) + } + + err = TestHelper.ValidateOutput(out, golden) + if err != nil { + return fmt.Errorf("Received unexpected output\n%s", err.Error()) + } + + return nil + }) if err != nil { - t.Fatalf("Received unexpected output\n%s", err.Error()) + t.Fatal(err.Error()) } } @@ -229,20 +237,27 @@ func TestInject(t *testing.T) { func TestCheckProxy(t *testing.T) { prefixedNs := TestHelper.GetTestNamespace("smoke-test") - cmd := []string{"check", "--proxy", "--expected-version", TestHelper.GetVersion(), "--namespace", prefixedNs, "--wait=1m"} + cmd := []string{"check", "--proxy", "--expected-version", TestHelper.GetVersion(), "--namespace", prefixedNs, "--wait=0"} golden := "check.proxy.golden" if TestHelper.SingleNamespace() { cmd = append(cmd, "--single-namespace") golden = "check.proxy.single_namespace.golden" } - out, _, err := TestHelper.LinkerdRun(cmd...) - if err != nil { - t.Fatalf("Check command failed\n%s", out) - } + err := TestHelper.RetryFor(time.Minute, func() error { + out, _, err := TestHelper.LinkerdRun(cmd...) + if err != nil { + return fmt.Errorf("Check command failed\n%s", out) + } - err = TestHelper.ValidateOutput(out, golden) + err = TestHelper.ValidateOutput(out, golden) + if err != nil { + return fmt.Errorf("Received unexpected output\n%s", err.Error()) + } + + return nil + }) if err != nil { - t.Fatalf("Received unexpected output\n%s", err.Error()) + t.Fatal(err.Error()) } }