cleanup: drop redundant @pytest.mark.asyncio + fix log_id type
- pyproject already sets asyncio_mode=auto, so async def tests are collected as async automatically. Removed the redundant decorator from four files (test_i18n, test_llm_csv_parser, test_ticker_validate, test_localization_integration); the bare async def is enough. - StrategicLogTranslation.log_id used the _PK autoincrement type for a non-PK FK column. Replaced with a portable BigInteger that emits Integer on SQLite and BigInteger elsewhere — matches the migration's sa.BigInteger() declaration. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
b47c45e218
commit
308878749f
5 changed files with 3 additions and 33 deletions
|
|
@ -243,7 +243,6 @@ def test_apply_mapping_skips_blank_and_unparseable_rows():
|
|||
assert [p.slice for p in pie.positions] == ["AAPL", "NVDA"]
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_extract_mapping_via_llm_parses_valid_json():
|
||||
from unittest.mock import AsyncMock, MagicMock
|
||||
from app.services.llm_csv_parser import _extract_mapping_via_llm
|
||||
|
|
@ -275,7 +274,6 @@ async def test_extract_mapping_via_llm_parses_valid_json():
|
|||
fake_call_llm.assert_awaited_once()
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_extract_mapping_via_llm_malformed_json_raises():
|
||||
from unittest.mock import AsyncMock, MagicMock
|
||||
from app.services.llm_csv_parser import LLMParseError, _extract_mapping_via_llm
|
||||
|
|
@ -298,7 +296,6 @@ async def test_extract_mapping_via_llm_malformed_json_raises():
|
|||
await _extract_mapping_via_llm(fake_client, ["Symbol"], [["AAPL"]])
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_extract_mapping_via_llm_provider_failure_wraps():
|
||||
from unittest.mock import AsyncMock, MagicMock
|
||||
from app.services.llm_csv_parser import LLMParseError, _extract_mapping_via_llm
|
||||
|
|
@ -313,7 +310,6 @@ async def test_extract_mapping_via_llm_provider_failure_wraps():
|
|||
await _extract_mapping_via_llm(fake_client, ["Symbol"], [["AAPL"]])
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_parse_with_llm_cache_miss_inserts_template(tmp_path):
|
||||
from unittest.mock import AsyncMock
|
||||
from sqlalchemy import select
|
||||
|
|
@ -360,7 +356,6 @@ async def test_parse_with_llm_cache_miss_inserts_template(tmp_path):
|
|||
assert not hasattr(tmpl, "user_id"), "sample row must not be linked to a user"
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_parse_with_llm_cache_hit_skips_llm(tmp_path):
|
||||
from unittest.mock import AsyncMock
|
||||
from sqlalchemy import select
|
||||
|
|
@ -416,7 +411,6 @@ async def test_parse_with_llm_cache_hit_skips_llm(tmp_path):
|
|||
assert rows[0].use_count == 2
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_parse_with_llm_stale_mapping_raises_but_does_not_evict(tmp_path):
|
||||
from unittest.mock import AsyncMock
|
||||
from sqlalchemy import select
|
||||
|
|
@ -458,7 +452,6 @@ async def test_parse_with_llm_stale_mapping_raises_but_does_not_evict(tmp_path):
|
|||
assert len(rows) == 1
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_parse_portfolio_route_falls_through_to_llm(tmp_path, monkeypatch):
|
||||
"""End-to-end: T212 parser raises CSVImportError, LLM fallback runs,
|
||||
response shape matches the existing JSON contract."""
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue