Add test and comment

This commit is contained in:
Lunny Xiao 2025-07-19 17:55:54 -07:00
parent 99b5634494
commit be18643bfd
No known key found for this signature in database
GPG Key ID: C3B7C91B632F738A
2 changed files with 15 additions and 0 deletions

View File

@ -194,3 +194,15 @@ func TestParseDiffHunkString(t *testing.T) {
assert.Equal(t, 2, rightLine)
assert.Equal(t, 1, rightHunk)
}
func Test_GetAffectedHunksForTwoCommitsSpecialFile(t *testing.T) {
repoPath := "./tests/repos/repo4_commitsbetween"
hunks, err := GetAffectedHunksForTwoCommitsSpecialFile(t.Context(), repoPath, "fdc1b615bdcff0f0658b216df0c9209e5ecb7c78", "a78e5638b66ccfe7e1b4689d3d5684e42c97d7ca", "test.txt")
assert.NoError(t, err)
assert.Len(t, hunks, 1)
// @@ -1 +1 @@
assert.Equal(t, int64(1), hunks[0].LeftLine)
assert.Equal(t, int64(1), hunks[0].LeftHunk)
assert.Equal(t, int64(1), hunks[0].RightLine)
assert.Equal(t, int64(1), hunks[0].RightHunk)
}

View File

@ -322,6 +322,9 @@ func (repo *Repository) CommitsBetween(lastCommitID, beforeCommitID string) ([]*
return commits, nil
}
// CommitIDsBetween returns a list that contains commit IDs between (beforeCommitID, afterCommitID].
// If beforeCommitID is empty, it will return all commits before afterCommitID.
// If beforeCommitID is given, it will not be included in the result.
func CommitIDsBetween(ctx context.Context, repoPath, beforeCommitID, afterCommitID string) ([]string, error) {
var stdout []byte
var err error