Store link in database
This commit is contained in:
parent
3fa44e08d8
commit
78d2927b44
|
@ -212,8 +212,6 @@ def push_changes(
|
||||||
gitea_client,
|
gitea_client,
|
||||||
owner: str,
|
owner: str,
|
||||||
repo: str,
|
repo: str,
|
||||||
seen_issues_db=None,
|
|
||||||
issue_text: str = None,
|
|
||||||
) -> tuple[bool, str, str]:
|
) -> tuple[bool, str, str]:
|
||||||
# Check if there are any commits on the branch before pushing
|
# Check if there are any commits on the branch before pushing
|
||||||
if not has_commits_on_branch(cwd, base_branch, branch_name):
|
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
|
# Extract PR number and URL if available
|
||||||
pr_number = None
|
return True, str(pr_response.get('number')), pr_response.get('html_url')
|
||||||
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
|
|
||||||
|
|
||||||
|
|
||||||
def has_commits_on_branch(cwd: Path, base_branch: str, current_branch: str) -> bool:
|
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_title: str,
|
||||||
issue_description: str,
|
issue_description: str,
|
||||||
issue_number: str,
|
issue_number: str,
|
||||||
gitea_client=None,
|
gitea_client,
|
||||||
seen_issues_db=None,
|
seen_issues_db,
|
||||||
) -> bool:
|
) -> bool:
|
||||||
logger.info('### %s #####', issue_title)
|
logger.info('### %s #####', issue_title)
|
||||||
|
|
||||||
|
@ -392,10 +377,17 @@ def solve_issue_in_repository(
|
||||||
gitea_client,
|
gitea_client,
|
||||||
args.owner,
|
args.owner,
|
||||||
args.repo,
|
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
|
return success
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -61,7 +61,9 @@ class TestSeenIssuesDBPRInfo:
|
||||||
def test_update_nonexistent_issue(self):
|
def test_update_nonexistent_issue(self):
|
||||||
# Try to update PR info for an issue that doesn't exist
|
# Try to update PR info for an issue that doesn't exist
|
||||||
updated = self.db.update_pr_info(
|
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
|
# Verify update failed
|
||||||
|
|
|
@ -13,6 +13,7 @@ class TestSolveIssueInRepository:
|
||||||
self.args.base_branch = 'main'
|
self.args.base_branch = 'main'
|
||||||
|
|
||||||
self.gitea_client = MagicMock()
|
self.gitea_client = MagicMock()
|
||||||
|
self.seen_issues_db = MagicMock()
|
||||||
self.tmpdirname = Path('/tmp/test-repo')
|
self.tmpdirname = Path('/tmp/test-repo')
|
||||||
self.branch_name = 'issue-123-test-branch'
|
self.branch_name = 'issue-123-test-branch'
|
||||||
self.issue_title = 'Test Issue'
|
self.issue_title = 'Test Issue'
|
||||||
|
@ -56,6 +57,7 @@ class TestSolveIssueInRepository:
|
||||||
self.issue_description,
|
self.issue_description,
|
||||||
self.issue_number,
|
self.issue_number,
|
||||||
self.gitea_client,
|
self.gitea_client,
|
||||||
|
self.seen_issues_db,
|
||||||
)
|
)
|
||||||
|
|
||||||
# Verify results
|
# Verify results
|
||||||
|
@ -93,6 +95,7 @@ class TestSolveIssueInRepository:
|
||||||
self.issue_description,
|
self.issue_description,
|
||||||
self.issue_number,
|
self.issue_number,
|
||||||
self.gitea_client,
|
self.gitea_client,
|
||||||
|
self.seen_issues_db,
|
||||||
)
|
)
|
||||||
|
|
||||||
# Verify results
|
# Verify results
|
||||||
|
|
Loading…
Reference in New Issue
Block a user