From dfa961072e859c056d49a0eb6e85f1f99f05211f Mon Sep 17 00:00:00 2001 From: David Dworken Date: Tue, 10 Oct 2023 07:43:37 -0700 Subject: [PATCH] Add more precise assertions for update tests --- client/client_test.go | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/client/client_test.go b/client/client_test.go index f8d81dc..f0d9f02 100644 --- a/client/client_test.go +++ b/client/client_test.go @@ -547,7 +547,7 @@ func installFromPrev(t *testing.T, tester shellTester) (string, string) { os.Setenv("HISHTORY_FORCE_CLIENT_VERSION", previousVersion.String()) userSecret := installHishtory(t, tester, "") out := tester.RunInteractiveShell(t, ` hishtory update`) - require.Regexp(t, regexp.MustCompile(`Successfully updated hishtory from v0[.]Unknown to `+previousVersion.String()), out) + require.Regexp(t, regexp.MustCompile(`^Successfully updated hishtory from v0[.]Unknown to `+previousVersion.String()+`\n$`), out) return userSecret, previousVersion.String() } @@ -557,14 +557,12 @@ func updateToRelease(t *testing.T, tester shellTester) string { // Update out := tester.RunInteractiveShell(t, " hishtory update\necho postupdate") - require.Regexp(t, regexp.MustCompile(`Successfully updated hishtory from v0[.][a-zA-Z0-9]+ to `+dd.Version), out) + require.Regexp(t, regexp.MustCompile(`^Successfully updated hishtory from v0[.][a-zA-Z0-9]+ to `+dd.Version+`\npostupdate\n$`), out) require.NotContains(t, out, "skipping SLSA validation") // Update again and assert that it skipped the update out = tester.RunInteractiveShell(t, " hishtory update") - if strings.Count(out, "\n") != 1 || !strings.Contains(out, "is already installed") { - t.Fatalf("repeated hishtory update didn't skip the update, out=%#v", out) - } + require.Equal(t, fmt.Sprintf("Latest version (%s) is already installed\n", dd.Version), out) return dd.Version }