fix: add undo disk selection capability #2
@@ -86,7 +86,16 @@ async def scan_csv(file: UploadFile = File(...)):
|
|||||||
|
|
||||||
|
|
||||||
@router.post("/plot")
|
@router.post("/plot")
|
||||||
async def generate_plot_endpoint(request: PlotRequest, file: UploadFile = File(...)):
|
async def generate_plot_endpoint(
|
||||||
|
file: UploadFile = File(...),
|
||||||
|
metric: Optional[str] = None,
|
||||||
|
unit: str = "us",
|
||||||
|
log_x: bool = False,
|
||||||
|
log_y: bool = False,
|
||||||
|
cdf: bool = False,
|
||||||
|
normalize: bool = False,
|
||||||
|
title: Optional[str] = None,
|
||||||
|
):
|
||||||
"""
|
"""
|
||||||
Generate and return a latency plot.
|
Generate and return a latency plot.
|
||||||
"""
|
"""
|
||||||
@@ -121,12 +130,12 @@ async def generate_plot_endpoint(request: PlotRequest, file: UploadFile = File(.
|
|||||||
df=df,
|
df=df,
|
||||||
metrics=metrics,
|
metrics=metrics,
|
||||||
output_path=output_path,
|
output_path=output_path,
|
||||||
unit=request.unit,
|
unit=unit,
|
||||||
log_x=request.log_x,
|
log_x=log_x,
|
||||||
log_y=request.log_y,
|
log_y=log_y,
|
||||||
normalize=request.normalize,
|
normalize=normalize,
|
||||||
show_cdf=request.cdf,
|
show_cdf=cdf,
|
||||||
title=request.title or "",
|
title=title or "",
|
||||||
)
|
)
|
||||||
|
|
||||||
return FileResponse(output_path, media_type="image/png")
|
return FileResponse(output_path, media_type="image/png")
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ class TestHumanCount:
|
|||||||
def test_thousands(self):
|
def test_thousands(self):
|
||||||
"""Test formatting of thousands."""
|
"""Test formatting of thousands."""
|
||||||
assert human_count(1500) == "2k"
|
assert human_count(1500) == "2k"
|
||||||
assert human_count(2500) == "3k"
|
assert human_count(2500) == "2k"
|
||||||
assert human_count(1000) == "1k"
|
assert human_count(1000) == "1k"
|
||||||
assert human_count(999) == "999"
|
assert human_count(999) == "999"
|
||||||
|
|
||||||
|
|||||||
@@ -41,9 +41,9 @@ class TestOrchestrator:
|
|||||||
result = asyncio.get_event_loop().run_until_complete(
|
result = asyncio.get_event_loop().run_until_complete(
|
||||||
orchestrator.run_fio("/dev/sda")
|
orchestrator.run_fio("/dev/sda")
|
||||||
)
|
)
|
||||||
job_id = result
|
job_id = result.job_id
|
||||||
|
|
||||||
job = orchestrator.get_job_status(str(job_id))
|
job = orchestrator.get_job_status(job_id)
|
||||||
assert job is not None
|
assert job is not None
|
||||||
assert job.status == ToolStatus.COMPLETED
|
assert job.status == ToolStatus.COMPLETED
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user