33 lines
1.0 KiB
Python
33 lines
1.0 KiB
Python
from fastapi.testclient import TestClient
|
|
|
|
from server.main import app, manager
|
|
|
|
test_client = TestClient(app)
|
|
|
|
|
|
def test_plan_endpoint(default_grid_request):
|
|
init_response = test_client.post("/grid/init", json=default_grid_request)
|
|
grid_id = init_response.json()["grid_id"]
|
|
|
|
plan_response = test_client.post(
|
|
f"/grid/{grid_id}/plan",
|
|
json={"preferred_label": None, "action": "click", "text": "hello"},
|
|
)
|
|
assert plan_response.status_code == 200
|
|
payload = plan_response.json()
|
|
assert payload["plan"]["grid_id"] == grid_id
|
|
assert payload["result"]["success"]
|
|
|
|
|
|
def test_refresh_endpoint(default_grid_request):
|
|
init_response = test_client.post("/grid/init", json=default_grid_request)
|
|
grid_id = init_response.json()["grid_id"]
|
|
|
|
refresh_response = test_client.post(
|
|
f"/grid/{grid_id}/refresh", json={"screenshot_base64": "AAA", "memo": "updated"}
|
|
)
|
|
assert refresh_response.status_code == 200
|
|
grid = manager.get_grid(grid_id)
|
|
assert grid.screenshot == "AAA"
|
|
assert grid.memo == "updated"
|