AURORA-1677: arm_statements 0.1.2
This commit is contained in:
parent
bdc8e555ff
commit
f4df39ac23
@ -38,8 +38,3 @@ ignore_missing_imports = true
|
|||||||
[[tool.mypy.overrides]]
|
[[tool.mypy.overrides]]
|
||||||
module = ["src.parser", "src.parser.*"]
|
module = ["src.parser", "src.parser.*"]
|
||||||
disallow_untyped_defs = true
|
disallow_untyped_defs = true
|
||||||
|
|
||||||
# Установленная библиотека не поставляет py.typed.
|
|
||||||
[[tool.mypy.overrides]]
|
|
||||||
module = ["arm_statements", "arm_statements.*"]
|
|
||||||
ignore_missing_imports = true
|
|
||||||
|
|||||||
@ -43,7 +43,7 @@ Pygments==2.20.0
|
|||||||
PyNaCl==1.5.0
|
PyNaCl==1.5.0
|
||||||
python-dotenv==1.2.2
|
python-dotenv==1.2.2
|
||||||
python-multipart==0.0.32
|
python-multipart==0.0.32
|
||||||
pylib_ai_arm_statements==0.1.1
|
pylib_ai_arm_statements==0.1.2
|
||||||
pyxlsb==1.0.10
|
pyxlsb==1.0.10
|
||||||
PyYAML==6.0.3
|
PyYAML==6.0.3
|
||||||
rich==15.0.0
|
rich==15.0.0
|
||||||
|
|||||||
@ -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`.
|
"""Версия библиотеки `arm_statements` для `service.statements_version`.
|
||||||
|
|
||||||
Библиотека читает VERSION или метаданные установленного пакета.
|
Библиотека читает метаданные установленного пакета. Без версии сервис не стартует.
|
||||||
`path` позволяет явно указать файл версии в тестах. Без версии сервис не стартует.
|
|
||||||
"""
|
"""
|
||||||
version = statements_version(path)
|
version = statements_version()
|
||||||
if version is None:
|
if version is None:
|
||||||
raise RuntimeError("библиотека arm_statements без VERSION и версии пакета: выполните make install")
|
raise RuntimeError("библиотека arm_statements без версии пакета: выполните make install")
|
||||||
return version
|
return version
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -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)] == []
|
assert [error.message for error in VALIDATORS["result"].iter_errors(stored)] == []
|
||||||
|
|
||||||
|
|
||||||
def test_require_statements_version_fails_without_file(tmp_path: Path) -> None:
|
def test_require_statements_version_fails_without_metadata(monkeypatch: pytest.MonkeyPatch) -> None:
|
||||||
with pytest.raises(RuntimeError, match="VERSION"):
|
monkeypatch.setattr("src.parser.statements_version", lambda: None)
|
||||||
require_statements_version(tmp_path / "VERSION")
|
with pytest.raises(RuntimeError, match="без версии пакета"):
|
||||||
|
require_statements_version()
|
||||||
|
|
||||||
|
|
||||||
def test_require_statements_version_reads_the_marker(tmp_path: Path) -> None:
|
def test_require_statements_version_reads_distribution(monkeypatch: pytest.MonkeyPatch) -> None:
|
||||||
marker = tmp_path / "VERSION"
|
monkeypatch.setattr("src.parser.statements_version", lambda: "0.1.2")
|
||||||
marker.write_text("abc1234\n", encoding="utf-8")
|
assert require_statements_version() == "0.1.2"
|
||||||
|
|
||||||
assert require_statements_version(marker) == "abc1234"
|
|
||||||
assert require_statements_version() # версия установленной библиотеки
|
|
||||||
|
|
||||||
|
|
||||||
def test_get_parser_wraps_rules_error_into_runtime_error(monkeypatch: pytest.MonkeyPatch) -> None:
|
def test_get_parser_wraps_rules_error_into_runtime_error(monkeypatch: pytest.MonkeyPatch) -> None:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user