"""#47/#48: liste Tipo/Unita e tolleranze generali dalle Impostazioni nel task editor.""" import json import os import re import shutil import subprocess import tempfile import pytest from tests.conftest import api_get_router _RECIPE_ROUTES = { "/api/recipes/3": {"id": 3, "code": "R", "name": "R"}, "/api/recipes/3/tasks": [{ "id": 11, "title": "T", "task_type": "measure", "subtasks": [], "file_path": None, "order_index": 1, }], } def _render(logged_in_client, mock_api_client, settings): mock_api_client.get.side_effect = api_get_router({**_RECIPE_ROUTES, "/api/settings": settings}) resp = logged_in_client.get("/maker/recipes/3/tasks") assert resp.status_code == 200 return resp.get_data(as_text=True) class TestTaskEditorSettings: def test_configured_lists_reach_template(self, logged_in_client, mock_api_client): html = _render(logged_in_client, mock_api_client, { "list_measurement_types": json.dumps(["Planarita", "Concentricita"]), "list_units": json.dumps(["mm", "thou"]), }) assert 'configuredTypes: ["Planarita", "Concentricita"]' in html assert 'configuredUnits: ["mm", "thou"]' in html # le select leggono le liste, non hanno piu' le option scritte a mano assert 'x-for="o in measurementTypeOptions()"' in html assert 'x-for="o in unitOptions()"' in html assert '