diff --git a/model/integration_action.go b/model/integration_action.go index c61cc6d457..4c645d0288 100644 --- a/model/integration_action.go +++ b/model/integration_action.go @@ -115,6 +115,14 @@ func (p *PostAction) Equals(input *PostAction) bool { } // Compare PostActionIntegration + + // If input is nil, then return true if original is also nil. + // Else return false. + if input.Integration == nil { + return p.Integration == nil + } + + // Both are unequal and not nil. if p.Integration.URL != input.Integration.URL { return false } diff --git a/model/integration_action_test.go b/model/integration_action_test.go index ac378bdd8f..1123cf44ea 100644 --- a/model/integration_action_test.go +++ b/model/integration_action_test.go @@ -142,4 +142,16 @@ func TestPostActionIntegrationEquals(t *testing.T) { } require.False(t, pa1.Equals(pa2)) }) + + t.Run("nil check", func(t *testing.T) { + pa1 := &PostAction{ + Integration: &PostActionIntegration{}, + } + + pa2 := &PostAction{ + Integration: nil, + } + + require.False(t, pa1.Equals(pa2)) + }) }