File tree Expand file tree Collapse file tree 1 file changed +38
-0
lines changed
Expand file tree Collapse file tree 1 file changed +38
-0
lines changed Original file line number Diff line number Diff line change 1+ import importlib
2+ import sys
3+ from unittest .mock import patch
4+
5+ import pytest
6+
7+
8+ @pytest .mark .ci
9+ def test_version_from_version_file ():
10+ """Test version is imported from _version.py when available."""
11+ import doubleml
12+
13+ assert hasattr (doubleml , "__version__" )
14+ assert isinstance (doubleml .__version__ , str )
15+
16+
17+ @pytest .mark .ci
18+ def test_version_fallback_to_metadata ():
19+ """Test fallback to importlib.metadata when _version.py is missing."""
20+ with patch .dict (sys .modules , {"doubleml._version" : None }):
21+ with patch ("importlib.metadata.version" , return_value = "1.2.3" ):
22+ # Re-import to trigger the fallback
23+ importlib .reload (importlib .import_module ("doubleml" ))
24+ import doubleml
25+
26+ assert doubleml .__version__ == "1.2.3"
27+
28+
29+ @pytest .mark .ci
30+ def test_version_fallback_to_unknown ():
31+ """Test fallback to 0.0.0+unknown when package not found."""
32+ mock_error = importlib .metadata .PackageNotFoundError ()
33+ with patch .dict (sys .modules , {"doubleml._version" : None }):
34+ with patch ("importlib.metadata.version" , side_effect = mock_error ):
35+ importlib .reload (importlib .import_module ("doubleml" ))
36+ import doubleml
37+
38+ assert doubleml .__version__ == "0.0.0+unknown"
You can’t perform that action at this time.
0 commit comments