From f4df39ac2332feb4c7f71d3b8a2137024a23473a Mon Sep 17 00:00:00 2001 From: tsygankoviva Date: Fri, 30 Oct 2026 13:58:52 +0300 Subject: [PATCH] AURORA-1677: arm_statements 0.1.2 --- api/pyproject.toml | 5 ----- api/requirements.txt | 2 +- api/src/parser/__init__.py | 9 ++++----- api/tests/unit/test_worker.py | 16 +++++++--------- 4 files changed, 12 insertions(+), 20 deletions(-) diff --git a/api/pyproject.toml b/api/pyproject.toml index c3bdf82..28a74f1 100644 --- a/api/pyproject.toml +++ b/api/pyproject.toml @@ -38,8 +38,3 @@ ignore_missing_imports = true [[tool.mypy.overrides]] module = ["src.parser", "src.parser.*"] disallow_untyped_defs = true - -# Установленная библиотека не поставляет py.typed. -[[tool.mypy.overrides]] -module = ["arm_statements", "arm_statements.*"] -ignore_missing_imports = true diff --git a/api/requirements.txt b/api/requirements.txt index e86100c..8ce7059 100644 --- a/api/requirements.txt +++ b/api/requirements.txt @@ -43,7 +43,7 @@ Pygments==2.20.0 PyNaCl==1.5.0 python-dotenv==1.2.2 python-multipart==0.0.32 -pylib_ai_arm_statements==0.1.1 +pylib_ai_arm_statements==0.1.2 pyxlsb==1.0.10 PyYAML==6.0.3 rich==15.0.0 diff --git a/api/src/parser/__init__.py b/api/src/parser/__init__.py index 7045635..c548f59 100644 --- a/api/src/parser/__init__.py +++ b/api/src/parser/__init__.py @@ -63,15 +63,14 @@ class NullParser: ) -def require_statements_version(path: Path | None = None) -> str: +def require_statements_version() -> str: """Версия библиотеки `arm_statements` для `service.statements_version`. - Библиотека читает VERSION или метаданные установленного пакета. - `path` позволяет явно указать файл версии в тестах. Без версии сервис не стартует. + Библиотека читает метаданные установленного пакета. Без версии сервис не стартует. """ - version = statements_version(path) + version = statements_version() if version is None: - raise RuntimeError("библиотека arm_statements без VERSION и версии пакета: выполните make install") + raise RuntimeError("библиотека arm_statements без версии пакета: выполните make install") return version diff --git a/api/tests/unit/test_worker.py b/api/tests/unit/test_worker.py index f6ce5dd..cbaee4a 100644 --- a/api/tests/unit/test_worker.py +++ b/api/tests/unit/test_worker.py @@ -925,17 +925,15 @@ async def test_worker_with_form_result_has_statements_version_in_result_file() - assert [error.message for error in VALIDATORS["result"].iter_errors(stored)] == [] -def test_require_statements_version_fails_without_file(tmp_path: Path) -> None: - with pytest.raises(RuntimeError, match="VERSION"): - require_statements_version(tmp_path / "VERSION") +def test_require_statements_version_fails_without_metadata(monkeypatch: pytest.MonkeyPatch) -> None: + monkeypatch.setattr("src.parser.statements_version", lambda: None) + with pytest.raises(RuntimeError, match="без версии пакета"): + require_statements_version() -def test_require_statements_version_reads_the_marker(tmp_path: Path) -> None: - marker = tmp_path / "VERSION" - marker.write_text("abc1234\n", encoding="utf-8") - - assert require_statements_version(marker) == "abc1234" - assert require_statements_version() # версия установленной библиотеки +def test_require_statements_version_reads_distribution(monkeypatch: pytest.MonkeyPatch) -> None: + monkeypatch.setattr("src.parser.statements_version", lambda: "0.1.2") + assert require_statements_version() == "0.1.2" def test_get_parser_wraps_rules_error_into_runtime_error(monkeypatch: pytest.MonkeyPatch) -> None: