-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathtest_init.py
More file actions
32 lines (21 loc) · 838 Bytes
/
test_init.py
File metadata and controls
32 lines (21 loc) · 838 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
27
28
29
30
31
32
"""Tests for paperscout package metadata (__version__)."""
from __future__ import annotations
import importlib
import importlib.metadata
from unittest.mock import patch
import pytest
import paperscout
@pytest.fixture(autouse=True)
def restore_paperscout_module():
yield
importlib.reload(paperscout)
def test_version_uses_installed_metadata():
with patch.object(importlib.metadata, "version", return_value="9.9.9-test"):
importlib.reload(paperscout)
assert paperscout.__version__ == "9.9.9-test"
def test_version_fallback_when_package_not_found():
def _missing(_name: str):
raise importlib.metadata.PackageNotFoundError()
with patch.object(importlib.metadata, "version", side_effect=_missing):
importlib.reload(paperscout)
assert paperscout.__version__ == "0.0.0-dev"