Store link in database
All checks were successful
Run Python tests (through Pytest) / Test (push) Successful in 24s
Verify Python project can be installed, loaded and have version checked / Test (push) Successful in 23s

This commit is contained in:
Jon Michael Aanes 2025-04-15 23:45:15 +02:00
parent 3fa44e08d8
commit 78d2927b44
3 changed files with 18 additions and 21 deletions

View File

@ -212,8 +212,6 @@ def push_changes(
gitea_client,
owner: str,
repo: str,
seen_issues_db=None,
issue_text: str = None,
) -> tuple[bool, str, str]:
# Check if there are any commits on the branch before pushing
if not has_commits_on_branch(cwd, base_branch, branch_name):
@ -245,20 +243,7 @@ def push_changes(
)
# Extract PR number and URL if available
pr_number = None
pr_url = None
if pr_response and isinstance(pr_response, dict):
pr_number = str(pr_response.get('number'))
pr_url = pr_response.get('html_url')
# Store PR information in the database if available
if seen_issues_db and issue_text and pr_number and pr_url:
seen_issues_db.update_pr_info(issue_text, pr_number, pr_url)
logger.info(
'Stored PR #%s information for issue #%s', pr_number, issue_number,
)
return True, pr_number, pr_url
return True, str(pr_response.get('number')), pr_response.get('html_url')
def has_commits_on_branch(cwd: Path, base_branch: str, current_branch: str) -> bool:
@ -311,8 +296,8 @@ def solve_issue_in_repository(
issue_title: str,
issue_description: str,
issue_number: str,
gitea_client=None,
seen_issues_db=None,
gitea_client,
seen_issues_db,
) -> bool:
logger.info('### %s #####', issue_title)
@ -392,10 +377,17 @@ def solve_issue_in_repository(
gitea_client,
args.owner,
args.repo,
seen_issues_db,
issue_text,
)
# Store PR information in the database if available
if success:
seen_issues_db.update_pr_info(issue_text, pr_number, pr_url)
logger.info(
'Stored PR #%s information for issue #%s',
pr_number,
issue_number,
)
return success

View File

@ -61,7 +61,9 @@ class TestSeenIssuesDBPRInfo:
def test_update_nonexistent_issue(self):
# Try to update PR info for an issue that doesn't exist
updated = self.db.update_pr_info(
'Nonexistent issue', self.pr_number, self.pr_url,
'Nonexistent issue',
self.pr_number,
self.pr_url,
)
# Verify update failed

View File

@ -13,6 +13,7 @@ class TestSolveIssueInRepository:
self.args.base_branch = 'main'
self.gitea_client = MagicMock()
self.seen_issues_db = MagicMock()
self.tmpdirname = Path('/tmp/test-repo')
self.branch_name = 'issue-123-test-branch'
self.issue_title = 'Test Issue'
@ -56,6 +57,7 @@ class TestSolveIssueInRepository:
self.issue_description,
self.issue_number,
self.gitea_client,
self.seen_issues_db,
)
# Verify results
@ -93,6 +95,7 @@ class TestSolveIssueInRepository:
self.issue_description,
self.issue_number,
self.gitea_client,
self.seen_issues_db,
)
# Verify results