Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 169d30b

Browse files
bearomorphismLee-W
authored andcommitted
test(git): add test for from_rev_and_commit
1 parent c61b9dd commit 169d30b

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed

tests/test_git.py

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -405,3 +405,47 @@ def test_get_filenames_in_commit_error(mocker: MockFixture):
405405
with pytest.raises(exceptions.GitCommandError) as excinfo:
406406
git.get_filenames_in_commit()
407407
assert str(excinfo.value) == "fatal: bad object HEAD"
408+
409+
410+
def test_git_commit_from_rev_and_commit():
411+
# Test data with all fields populated
412+
rev_and_commit = (
413+
"abc123\n" # rev
414+
"def456 ghi789\n" # parents
415+
"feat: add new feature\n" # title
416+
"John Doe\n" # author
417+
"john@example.com\n" # author_email
418+
"This is a detailed description\n" # body
419+
"of the new feature\n"
420+
"with multiple lines"
421+
)
422+
423+
commit = git.GitCommit.from_rev_and_commit(rev_and_commit)
424+
425+
assert commit.rev == "abc123"
426+
assert commit.title == "feat: add new feature"
427+
assert (
428+
commit.body
429+
== "This is a detailed description\nof the new feature\nwith multiple lines"
430+
)
431+
assert commit.author == "John Doe"
432+
assert commit.author_email == "john@example.com"
433+
assert commit.parents == ["def456", "ghi789"]
434+
435+
# Test with minimal data
436+
minimal_commit = (
437+
"abc123\n" # rev
438+
"\n" # no parents
439+
"feat: minimal commit\n" # title
440+
"John Doe\n" # author
441+
"john@example.com\n" # author_email
442+
)
443+
444+
commit = git.GitCommit.from_rev_and_commit(minimal_commit)
445+
446+
assert commit.rev == "abc123"
447+
assert commit.title == "feat: minimal commit"
448+
assert commit.body == ""
449+
assert commit.author == "John Doe"
450+
assert commit.author_email == "john@example.com"
451+
assert commit.parents == []

0 commit comments

Comments
 (0)