fix(parser): continue on unparsable commit message

We should not fail the whole process if a single commit message is
unparsable.

Instead we now log the issue and ignore the commit.
This commit is contained in:
Julian Tölle 2024-09-07 21:10:42 +02:00
parent 2010ac1143
commit 6bae554d05
3 changed files with 13 additions and 7 deletions

View file

@ -1,6 +1,7 @@
package conventionalcommits
import (
"log/slog"
"testing"
"github.com/stretchr/testify/assert"
@ -23,14 +24,14 @@ func TestAnalyzeCommits(t *testing.T) {
wantErr: assert.NoError,
},
{
name: "malformed commit message",
name: "skips malformed commit message",
commits: []git.Commit{
{
Message: "aksdjaklsdjka",
},
},
expectedCommits: nil,
wantErr: assert.Error,
expectedCommits: []commitparser.AnalyzedCommit{},
wantErr: assert.NoError,
},
{
name: "drops unreleasable",
@ -114,7 +115,7 @@ func TestAnalyzeCommits(t *testing.T) {
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
analyzedCommits, err := NewParser().Analyze(tt.commits)
analyzedCommits, err := NewParser(slog.Default()).Analyze(tt.commits)
if !tt.wantErr(t, err) {
return
}