This commit is contained in:
2025-10-14 15:37:37 -05:00
commit 6821e717cd
39 changed files with 3346 additions and 0 deletions

3
app/schemas/__init__.py Normal file
View File

@@ -0,0 +1,3 @@
from .artifact import ArtifactCreate, ArtifactResponse, ArtifactQuery
__all__ = ["ArtifactCreate", "ArtifactResponse", "ArtifactQuery"]

51
app/schemas/artifact.py Normal file
View File

@@ -0,0 +1,51 @@
from pydantic import BaseModel, Field
from typing import Optional, Dict, Any, List
from datetime import datetime
class ArtifactCreate(BaseModel):
test_name: Optional[str] = None
test_suite: Optional[str] = None
test_config: Optional[Dict[str, Any]] = None
test_result: Optional[str] = None
metadata: Optional[Dict[str, Any]] = None
description: Optional[str] = None
tags: Optional[List[str]] = None
version: Optional[str] = None
parent_id: Optional[int] = None
class ArtifactResponse(BaseModel):
id: int
filename: str
file_type: str
file_size: int
storage_path: str
content_type: Optional[str] = None
test_name: Optional[str] = None
test_suite: Optional[str] = None
test_config: Optional[Dict[str, Any]] = None
test_result: Optional[str] = None
metadata: Optional[Dict[str, Any]] = None
description: Optional[str] = None
tags: Optional[List[str]] = None
created_at: datetime
updated_at: datetime
version: Optional[str] = None
parent_id: Optional[int] = None
class Config:
from_attributes = True
class ArtifactQuery(BaseModel):
filename: Optional[str] = None
file_type: Optional[str] = None
test_name: Optional[str] = None
test_suite: Optional[str] = None
test_result: Optional[str] = None
tags: Optional[List[str]] = None
start_date: Optional[datetime] = None
end_date: Optional[datetime] = None
limit: int = Field(default=100, le=1000)
offset: int = Field(default=0, ge=0)