style: normalize python formatting gates
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
from packages.application import SubmitClassificationJobCommand, SubmitClassificationJobUseCase
|
||||
from packages.adapters.in_memory import InMemoryClassificationJobRepository
|
||||
from packages.domain import ClassificationJobStatus, AssetClassification
|
||||
from packages.application import (
|
||||
SubmitClassificationJobCommand,
|
||||
SubmitClassificationJobUseCase,
|
||||
)
|
||||
from packages.domain import AssetClassification, ClassificationJobStatus
|
||||
|
||||
|
||||
def simulate_classify_asset(job_id: str, job_repo: InMemoryClassificationJobRepository) -> dict:
|
||||
@@ -8,24 +11,24 @@ def simulate_classify_asset(job_id: str, job_repo: InMemoryClassificationJobRepo
|
||||
job = job_repo.get(job_id)
|
||||
if job is None:
|
||||
return {"status": "failed", "error": "job not found"}
|
||||
|
||||
|
||||
try:
|
||||
# Update job status to PROCESSING
|
||||
job.status = ClassificationJobStatus.PROCESSING
|
||||
job_repo.update(job)
|
||||
|
||||
|
||||
# Mock classification
|
||||
asset_id_hash = sum(ord(c) for c in job.asset_id)
|
||||
classifications = list(AssetClassification)
|
||||
classification = classifications[asset_id_hash % len(classifications)]
|
||||
confidence = 0.85
|
||||
|
||||
|
||||
# Update job status to COMPLETED
|
||||
job.status = ClassificationJobStatus.COMPLETED
|
||||
job.classification = classification.value
|
||||
job.confidence = confidence
|
||||
job_repo.update(job)
|
||||
|
||||
|
||||
return {
|
||||
"status": "completed",
|
||||
"job_id": job.id,
|
||||
@@ -37,7 +40,7 @@ def simulate_classify_asset(job_id: str, job_repo: InMemoryClassificationJobRepo
|
||||
job.status = ClassificationJobStatus.FAILED
|
||||
job.error_message = str(e)
|
||||
job_repo.update(job)
|
||||
|
||||
|
||||
return {
|
||||
"status": "failed",
|
||||
"job_id": job.id,
|
||||
@@ -48,7 +51,7 @@ def simulate_classify_asset(job_id: str, job_repo: InMemoryClassificationJobRepo
|
||||
def test_classification_pipeline():
|
||||
"""Test the full classification pipeline: submit job -> worker processes -> result."""
|
||||
job_repo = InMemoryClassificationJobRepository()
|
||||
|
||||
|
||||
# Submit classification job
|
||||
use_case = SubmitClassificationJobUseCase(job_repo)
|
||||
job = use_case.execute(
|
||||
@@ -58,18 +61,18 @@ def test_classification_pipeline():
|
||||
asset_id="asset-123",
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
assert job.status == ClassificationJobStatus.PENDING
|
||||
assert job.classification == ""
|
||||
assert job.confidence == 0.0
|
||||
|
||||
|
||||
# Simulate worker task execution
|
||||
result = simulate_classify_asset(job.id, job_repo)
|
||||
|
||||
|
||||
assert result["status"] == "completed"
|
||||
assert "classification" in result
|
||||
assert "confidence" in result
|
||||
|
||||
|
||||
# Verify job was updated
|
||||
updated_job = job_repo.get(job.id)
|
||||
assert updated_job is not None
|
||||
|
||||
Reference in New Issue
Block a user