From ab8f25d56f37bc356fed548c6be0b23e2de55810 Mon Sep 17 00:00:00 2001 From: ze0s <43699394+zze0s@users.noreply.github.com> Date: Fri, 29 Jul 2022 15:21:55 +0200 Subject: [PATCH] fix(server): exclude tags from version check (#382) --- pkg/version/version.go | 14 +++++++++++++- pkg/version/version_test.go | 20 ++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/pkg/version/version.go b/pkg/version/version.go index 1ac1a8e..d0999b0 100644 --- a/pkg/version/version.go +++ b/pkg/version/version.go @@ -65,7 +65,7 @@ func (c *Checker) get(ctx context.Context) (*Release, error) { } func (c *Checker) CheckNewVersion(ctx context.Context, version string) (bool, string, error) { - if version == "dev" { + if isDevelop(version) { return false, "", nil } @@ -99,3 +99,15 @@ func (c *Checker) checkNewVersion(version string, release *Release) (bool, strin return false, "", nil } + +func isDevelop(version string) bool { + tags := []string{"dev", "develop", "master", "latest"} + + for _, tag := range tags { + if version == tag { + return true + } + } + + return false +} diff --git a/pkg/version/version_test.go b/pkg/version/version_test.go index 7460b17..f2a379a 100644 --- a/pkg/version/version_test.go +++ b/pkg/version/version_test.go @@ -107,3 +107,23 @@ func TestGitHubReleaseChecker_checkNewVersion(t *testing.T) { }) } } + +func Test_isDevelop(t *testing.T) { + tests := []struct { + name string + version string + want bool + }{ + {name: "test_1", version: "dev", want: true}, + {name: "test_2", version: "develop", want: true}, + {name: "test_3", version: "master", want: true}, + {name: "test_4", version: "latest", want: true}, + {name: "test_5", version: "v1.0.1", want: false}, + {name: "test_6", version: "1.0.1", want: false}, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + assert.Equalf(t, tt.want, isDevelop(tt.version), "isDevelop(%v)", tt.version) + }) + } +}