fix: Eliminate all 111 test warnings by fixing root causes
Some checks failed
Test Suite / unit-tests (3.11) (push) Has been cancelled
Test Suite / unit-tests (3.12) (push) Has been cancelled
Test Suite / integration-tests (push) Has been cancelled
Test Suite / e2e-tests (push) Has been cancelled
Test Suite / performance-tests (push) Has been cancelled
Test Suite / code-quality (push) Has been cancelled
Test Suite / security-scan (push) Has been cancelled
Test Suite / test-summary (push) Has been cancelled

- Replace deprecated datetime.utcnow() with datetime.now(timezone.utc)
  across all domain models, services, infrastructure, and test files
- Add missing timezone imports to all affected files
- Fix pytest.ini configuration format from [tool:pytest] to [pytest]
- Remove warning suppressions to expose actual issues
- Ensure proper pytest marker registration for smoke tests

Results:
- 305 passed, 2 skipped, 0 warnings (down from 111 warnings)
- All functionality preserved with modern datetime API usage
- Improved code quality by addressing root causes vs suppression

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-09-27 20:14:22 +02:00
parent 92fa0e9151
commit 1fa0f1e84a
11 changed files with 115 additions and 114 deletions

View File

@@ -5,7 +5,7 @@ Tests business logic in issue services with no external dependencies.
"""
import pytest
from datetime import datetime, timedelta
from datetime import datetime, timedelta, timezone
from domain.issues.models import Issue, Label, IssueState
from domain.issues.services import IssueStatusService, IssueValidationService
@@ -26,8 +26,8 @@ class TestIssueStatusService:
title="Closed Issue",
state=IssueState.CLOSED,
labels=[],
created_at=datetime.utcnow(),
updated_at=datetime.utcnow()
created_at=datetime.now(timezone.utc),
updated_at=datetime.now(timezone.utc)
)
project_info = {"kanban_columns": ["Todo", "In Progress", "Review", "Done"]}
@@ -50,8 +50,8 @@ class TestIssueStatusService:
title="Test Issue",
state=IssueState.OPEN,
labels=[Label(status_label)],
created_at=datetime.utcnow(),
updated_at=datetime.utcnow()
created_at=datetime.now(timezone.utc),
updated_at=datetime.now(timezone.utc)
)
project_info = {"kanban_columns": ["Todo", "In Progress", "Review", "Blocked", "Ready", "Done"]}
@@ -68,8 +68,8 @@ class TestIssueStatusService:
title="New Issue",
state=IssueState.OPEN,
labels=[Label("bug")], # No status label
created_at=datetime.utcnow(),
updated_at=datetime.utcnow()
created_at=datetime.now(timezone.utc),
updated_at=datetime.now(timezone.utc)
)
project_info = {"kanban_columns": ["Todo", "In Progress", "Done"]}
@@ -92,8 +92,8 @@ class TestIssueStatusService:
title="Test",
state=IssueState.OPEN,
labels=[Label(priority_label)],
created_at=datetime.utcnow(),
updated_at=datetime.utcnow()
created_at=datetime.now(timezone.utc),
updated_at=datetime.now(timezone.utc)
)
# Act
@@ -110,8 +110,8 @@ class TestIssueStatusService:
title="Test",
state=IssueState.OPEN,
labels=[Label("bug")], # No priority label
created_at=datetime.utcnow(),
updated_at=datetime.utcnow()
created_at=datetime.now(timezone.utc),
updated_at=datetime.now(timezone.utc)
)
# Act
@@ -128,8 +128,8 @@ class TestIssueStatusService:
title="Test",
state=IssueState.OPEN,
labels=[Label("status:in-progress")],
created_at=datetime.utcnow(),
updated_at=datetime.utcnow()
created_at=datetime.now(timezone.utc),
updated_at=datetime.now(timezone.utc)
)
# Act
@@ -143,14 +143,14 @@ class TestIssueStatusService:
def test_extract_state_info_for_closed_issue(self, service):
# Arrange
closed_at = datetime.utcnow()
closed_at = datetime.now(timezone.utc)
issue = Issue(
number=1,
title="Test",
state=IssueState.CLOSED,
labels=[],
created_at=datetime.utcnow(),
updated_at=datetime.utcnow(),
created_at=datetime.now(timezone.utc),
updated_at=datetime.now(timezone.utc),
closed_at=closed_at
)
@@ -164,14 +164,14 @@ class TestIssueStatusService:
def test_calculate_issue_age_days(self, service):
# Arrange
created_at = datetime.utcnow() - timedelta(days=5)
created_at = datetime.now(timezone.utc) - timedelta(days=5)
issue = Issue(
number=1,
title="Test",
state=IssueState.OPEN,
labels=[],
created_at=created_at,
updated_at=datetime.utcnow()
updated_at=datetime.now(timezone.utc)
)
# Act
@@ -182,14 +182,14 @@ class TestIssueStatusService:
def test_is_stale_issue_with_old_open_issue(self, service):
# Arrange
created_at = datetime.utcnow() - timedelta(days=45)
created_at = datetime.now(timezone.utc) - timedelta(days=45)
issue = Issue(
number=1,
title="Test",
state=IssueState.OPEN,
labels=[],
created_at=created_at,
updated_at=datetime.utcnow()
updated_at=datetime.now(timezone.utc)
)
# Act
@@ -200,14 +200,14 @@ class TestIssueStatusService:
def test_is_stale_issue_with_recent_open_issue(self, service):
# Arrange
created_at = datetime.utcnow() - timedelta(days=15)
created_at = datetime.now(timezone.utc) - timedelta(days=15)
issue = Issue(
number=1,
title="Test",
state=IssueState.OPEN,
labels=[],
created_at=created_at,
updated_at=datetime.utcnow()
updated_at=datetime.now(timezone.utc)
)
# Act
@@ -218,15 +218,15 @@ class TestIssueStatusService:
def test_is_stale_issue_with_closed_issue_never_stale(self, service):
# Arrange
created_at = datetime.utcnow() - timedelta(days=100)
created_at = datetime.now(timezone.utc) - timedelta(days=100)
issue = Issue(
number=1,
title="Test",
state=IssueState.CLOSED,
labels=[],
created_at=created_at,
updated_at=datetime.utcnow(),
closed_at=datetime.utcnow()
updated_at=datetime.now(timezone.utc),
closed_at=datetime.now(timezone.utc)
)
# Act
@@ -322,8 +322,8 @@ class TestIssueValidationService:
title="Test",
state=IssueState.OPEN,
labels=[Label("bug")],
created_at=datetime.utcnow(),
updated_at=datetime.utcnow()
created_at=datetime.now(timezone.utc),
updated_at=datetime.now(timezone.utc)
)
new_label = "enhancement"
@@ -337,8 +337,8 @@ class TestIssueValidationService:
title="Test",
state=IssueState.OPEN,
labels=[Label("bug")],
created_at=datetime.utcnow(),
updated_at=datetime.utcnow()
created_at=datetime.now(timezone.utc),
updated_at=datetime.now(timezone.utc)
)
new_label = "bug"
@@ -355,8 +355,8 @@ class TestIssueValidationService:
title="Test",
state=IssueState.OPEN,
labels=[Label("priority:high")],
created_at=datetime.utcnow(),
updated_at=datetime.utcnow()
created_at=datetime.now(timezone.utc),
updated_at=datetime.now(timezone.utc)
)
new_label = "priority:low"