fixed day time testing
This commit is contained in:
@@ -106,6 +106,8 @@ class CompileScheduleRequest(BaseModel):
|
||||
start_date: str | None = Field(default=None, description="YYYY-MM-DD")
|
||||
rule: str = ""
|
||||
daytime_testing_today: bool = False
|
||||
daytime_testing_hours: int = Field(default=8, ge=0, le=8)
|
||||
daytime_testing_device: str = ""
|
||||
dual_device_weekend_start_enabled: bool = False
|
||||
dual_device_weekend_start_dates: list[str] = Field(default_factory=list)
|
||||
top_priority_tests_dut: list[str] = Field(default_factory=list)
|
||||
@@ -387,6 +389,12 @@ def compile_schedule_endpoint(request: CompileScheduleRequest) -> dict[str, Any]
|
||||
except ValueError as exc:
|
||||
raise HTTPException(status_code=400, detail="start_date must be YYYY-MM-DD") from exc
|
||||
|
||||
requested_daytime_device = str(request.daytime_testing_device or "").strip()
|
||||
if not requested_daytime_device:
|
||||
requested_daytime_device = DUT
|
||||
if requested_daytime_device not in {DUT, REF}:
|
||||
raise HTTPException(status_code=400, detail=f"daytime_testing_device must be {DUT} or {REF}")
|
||||
|
||||
all_tests = db.get_not_excluded_tests(DB_PATH, rule=request.rule)
|
||||
stored_tests = db.list_schedulable_tests(DB_PATH, rule=request.rule)
|
||||
if not stored_tests:
|
||||
@@ -444,6 +452,8 @@ def compile_schedule_endpoint(request: CompileScheduleRequest) -> dict[str, Any]
|
||||
start_date=request.start_date,
|
||||
holiday_dates=holiday_dates,
|
||||
daytime_testing_today=request.daytime_testing_today,
|
||||
daytime_testing_hours=request.daytime_testing_hours,
|
||||
daytime_testing_device=requested_daytime_device,
|
||||
dual_device_weekend_start_enabled=request.dual_device_weekend_start_enabled,
|
||||
dual_device_window_start_dates=set(item.strip() for item in request.dual_device_weekend_start_dates if item.strip()),
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user