diff --git a/internal/argparser/argparser_test.go b/internal/argparser/argparser_test.go new file mode 100644 index 0000000..4a37154 --- /dev/null +++ b/internal/argparser/argparser_test.go @@ -0,0 +1,23 @@ +package argparser + +import ( + "testing" + "gitea.kevinnlsamuel.com/kevinnls/qc/internal/testing/assert" +) + +func TestParse(t *testing.T) { + t.Run("no args", func(t *testing.T) { + error,ctype,cscope,shouldCommit,shouldStage,cmessage := Parse([]string{}) + assert.Equal(t, error, nil) + assert.Equal(t, ctype, "") + assert.Equal(t, cscope, "") + wantedMessage := []string{} + for i := 0; i < len(wantedMessage); i++ { + if wantedMessage[i] != cmessage[i] { + t.Errorf("messages do not match") + } + } + assert.Equal(t, shouldCommit, false) + assert.Equal(t, shouldStage, false) + }) +} diff --git a/internal/testing/assert/assert.go b/internal/testing/assert/assert.go new file mode 100644 index 0000000..9d09b60 --- /dev/null +++ b/internal/testing/assert/assert.go @@ -0,0 +1,15 @@ +package assert + +import "testing" + +func Equal[T comparable](t *testing.T, got, want T) { + if (got != want) { + t.Errorf("not equal %v and %v", got, want) + } +} + +func NotEqual[T comparable](t *testing.T, got, want T) { + if (got == want) { + t.Errorf("unexpected equal %v and %v", got, want) + } +}