forked from ChelseaKR/exitdrill
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest_packaging.py
More file actions
26 lines (21 loc) · 932 Bytes
/
Copy pathtest_packaging.py
File metadata and controls
26 lines (21 loc) · 932 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import tomllib
from pathlib import Path
import exitdrill
def test_package_metadata_and_typing_marker_are_aligned() -> None:
project = Path(__file__).parents[1]
metadata = tomllib.loads((project / "pyproject.toml").read_text(encoding="utf-8"))
assert metadata["project"]["name"] == "exitdrill"
assert metadata["project"]["version"] == exitdrill.__version__
assert metadata["project"]["scripts"]["exitdrill"] == "exitdrill.cli:main"
assert metadata["project"]["dependencies"] == ["jsonschema>=4.23"]
assert (project / "src" / "exitdrill" / "py.typed").is_file()
def test_public_api_surface_stays_small() -> None:
assert exitdrill.__all__ == [
"compare_receipt_files",
"load_baseline",
"load_export",
"run_drill",
"verify_comparison_document",
"verify_receipt",
]
assert not hasattr(exitdrill, "comparison_has_observed_loss_signal_increase")