From 2ffc3e48d78bb8c6f374109d8892868075981ead Mon Sep 17 00:00:00 2001 From: caicandong Date: Tue, 11 Jul 2023 16:10:07 +0800 Subject: [PATCH] Fix incorrect aggregated status of commit statuses --- modules/structs/commit_status.go | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/modules/structs/commit_status.go b/modules/structs/commit_status.go index 7e3b629b7ae20..407e495361e96 100644 --- a/modules/structs/commit_status.go +++ b/modules/structs/commit_status.go @@ -24,18 +24,15 @@ const ( // NoBetterThan returns true if this State is no better than the given State func (css CommitStatusState) NoBetterThan(css2 CommitStatusState) bool { - switch css { - case CommitStatusError: - return true - case CommitStatusFailure: - return css2 != CommitStatusError - case CommitStatusWarning: - return css2 != CommitStatusError && css2 != CommitStatusFailure - case CommitStatusPending: - return css2 != CommitStatusError && css2 != CommitStatusFailure && css2 != CommitStatusWarning - default: - return css2 != CommitStatusError && css2 != CommitStatusFailure && css2 != CommitStatusWarning && css2 != CommitStatusPending + commitStatusPriorities := map[CommitStatusState]int{ + CommitStatusError: 0, + CommitStatusFailure: 1, + CommitStatusWarning: 2, + CommitStatusPending: 3, + CommitStatusRunning: 4, + CommitStatusSuccess: 5, } + return commitStatusPriorities[css] <= commitStatusPriorities[css2] } // IsPending represents if commit status state is pending