package git import ( "context" "os" "path/filepath" "testing" "time" "github.com/stretchr/testify/require" ) func TestCommit_Success(t *testing.T) { t.Parallel() gitAvailable(t) bare := makeBareRepo(t) r := newTestRunner(t) dst := filepath.Join(t.TempDir(), "wc") ctx, cancel := context.WithTimeout(context.Background(), 30*time.Second) defer cancel() require.NoError(t, r.Clone(ctx, dst, bare, "main", nil)) mustGit(t, dst, "config", "user.email", "test@example.com") mustGit(t, dst, "config", "user.name", "Test") require.NoError(t, os.WriteFile(filepath.Join(dst, "new.txt"), []byte("body\n"), 0o644)) sha, err := r.Commit(ctx, dst, "add new.txt", true) require.NoError(t, err) require.Len(t, sha, 40) }