Add exporters, utils, and tests
This commit is contained in:
34
.tests/test_git.py
Normal file
34
.tests/test_git.py
Normal file
@@ -0,0 +1,34 @@
|
||||
"""Tests for git parsing."""
|
||||
|
||||
import tempfile
|
||||
from pathlib import Path
|
||||
import pytest
|
||||
|
||||
from termflow.parsers.git_parser import GitLogParser, Commit, WorkflowStats
|
||||
|
||||
|
||||
class TestGitLogParser:
|
||||
"""Test git log parser."""
|
||||
|
||||
def test_is_git_repo_true(self, tmp_path):
|
||||
"""Test detection of git repository."""
|
||||
(tmp_path / ".git").mkdir()
|
||||
parser = GitLogParser(tmp_path)
|
||||
assert parser.is_git_repo() is True
|
||||
|
||||
def test_is_git_repo_false(self, tmp_path):
|
||||
"""Test detection of non-git directory."""
|
||||
parser = GitLogParser(tmp_path)
|
||||
assert parser.is_git_repo() is False
|
||||
|
||||
def test_parse_log_empty(self, tmp_path):
|
||||
"""Test parsing empty git log."""
|
||||
parser = GitLogParser(tmp_path)
|
||||
commits = parser.parse_log()
|
||||
assert commits == []
|
||||
|
||||
def test_analyze_workflow(self):
|
||||
"""Test workflow analysis."""
|
||||
parser = GitLogParser(Path.cwd())
|
||||
stats = parser.analyze_workflow()
|
||||
assert isinstance(stats, WorkflowStats)
|
||||
Reference in New Issue
Block a user