|
All checks were successful
CI / changes (push) Successful in 7s
CI / changes (pull_request) Successful in 7s
CI / frontend-tests (push) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / backend-tests (push) Successful in 6m28s
CI / backend-tests (pull_request) Successful in 6m26s
UPDATE без проверки rowcount затрагивал 0 строк для несуществующего job_type; get_one возвращал hardcoded _fallback. PUT отвечал 200, админ считал настройку сохранённой — но она терялась (новый job_type до seed-миграции, опечатка в path). Patch: update() проверяет result.rowcount: при 0 делает INSERT с переданными колонками (непереданные → дефолты таблицы из м.81). INSERT использует ON CONFLICT (job_type) DO NOTHING + повторный UPDATE как защита от гонки. Поведение для существующих строк не изменилось. 8 новых тестов (6 service + 2 API). Closes #1223 |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| test_admin_cadastre.py | ||
| test_admin_ekburg_permits.py | ||
| test_admin_jobs_settings.py | ||
| test_analyze_competitors_status.py | ||
| test_analyze_inline_weights.py | ||
| test_analyze_market_price.py | ||
| test_analyze_parcel_meta.py | ||
| test_analyze_recent_permits.py | ||
| test_chat.py | ||
| test_custom_pois.py | ||
| test_insights.py | ||
| test_locations.py | ||
| test_own_projects.py | ||
| test_parcel_best_layouts.py | ||
| test_parcel_by_bbox.py | ||
| test_parcel_competitors.py | ||
| test_parcel_connection_points.py | ||
| test_parcels_forecast.py | ||
| test_run_history_and_response_contract.py | ||