🌐 AI搜索 & 代理 主页
Skip to content

Commit 0086a0e

Browse files
Added machinery for the mpl_baseline package
1 parent e024508 commit 0086a0e

File tree

17 files changed

+175
-46
lines changed

17 files changed

+175
-46
lines changed

.flake8

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ per-file-ignores =
6464
lib/matplotlib/pylab.py: F401, F403
6565
lib/matplotlib/pyplot.py: F401, F811
6666
lib/matplotlib/style/__init__.py: F401
67+
lib/matplotlib/tests/__init__.py F401
6768
lib/matplotlib/testing/conftest.py: F401
6869
lib/matplotlib/testing/decorators.py: F401
6970
lib/matplotlib/tests/conftest.py: F401
@@ -82,6 +83,7 @@ per-file-ignores =
8283
lib/mpl_toolkits/axisartist/axes_rgb.py: F401
8384
lib/mpl_toolkits/axisartist/axislines.py: F401
8485
lib/mpl_toolkits/mplot3d/__init__.py: F401
86+
lib/mpl_toolkits/tests/__init__.py F401
8587
lib/mpl_toolkits/tests/conftest.py: F401
8688
lib/pylab.py: F401, F403
8789

MANIFEST.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,4 @@ recursive-include tutorials *
2121
include versioneer.py
2222
include lib/matplotlib/_version.py
2323
include tests.py
24+
prune sub-wheels

azure-pipelines.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ steps:
9494

9595
- bash: |
9696
python -m pip install --upgrade pip
97+
python -m pip install --upgrade setuptools
9798
python -m pip install -r requirements/testing/travis_all.txt -r requirements/testing/travis_extra.txt ||
9899
[[ "$PYTHON_VERSION" = 'Pre' ]]
99100
displayName: 'Install dependencies with pip'

doc/devel/testing.rst

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -148,9 +148,10 @@ The first time this test is run, there will be no baseline image to compare
148148
against, so the test will fail. Copy the output images (in this case
149149
:file:`result_images/test_lines/test_line_dashes.png`) to the correct
150150
subdirectory of :file:`baseline_images` tree in the source directory (in this
151-
case :file:`lib/matplotlib/tests/baseline_images/test_lines`). Put this new
152-
file under source code revision control (with ``git add``). When rerunning
153-
the tests, they should now pass.
151+
case :file:`sub-wheels/matplotlib-baseline-images/lib/'
152+
'matplotlib_baseline_images/test_lines`). Put this new file under source code
153+
revision control (with ``git add``). When rerunning the tests,
154+
they should now pass.
154155

155156
Baseline images take a lot of space in the Matplotlib repository.
156157
An alternative approach for image comparison tests is to use the

lib/matplotlib/testing/decorators.py

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -482,7 +482,25 @@ def _image_directories(func):
482482
doesn't exist.
483483
"""
484484
module_path = Path(sys.modules[func.__module__].__file__)
485-
baseline_dir = module_path.parent / "baseline_images" / module_path.stem
485+
if func.__module__.startswith("matplotlib."):
486+
try:
487+
import matplotlib_baseline_images
488+
except:
489+
raise ImportError("Not able to import matplotlib_baseline_images")
490+
baseline_dir = (Path(matplotlib_baseline_images.__file__).parent /
491+
module_path.stem)
492+
elif func.__module__.startswith("mpl_toolkits."):
493+
try:
494+
import mpl_toolkits_baseline_images
495+
except:
496+
raise ImportError("Not able to import "
497+
"mpl_toolkits_baseline_images")
498+
baseline_dir = (Path(mpl_toolkits_baseline_images.__file__).parent /
499+
module_path.stem)
500+
else:
501+
baseline_dir = (module_path.parent /
502+
"baseline_images" /
503+
module_path.stem)
486504
result_dir = Path().resolve() / "result_images" / module_path.stem
487505
result_dir.mkdir(parents=True, exist_ok=True)
488506
return baseline_dir, result_dir

lib/matplotlib/tests/__init__.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
from pathlib import Path
2-
3-
4-
# Check that the test directories exist.
5-
if not (Path(__file__).parent / 'baseline_images').exists():
6-
raise IOError(
1+
# Check for the matplotlib_baseline_images.
2+
try:
3+
import matplotlib_baseline_images
4+
except:
5+
raise ImportError(
76
'The baseline image directory does not exist. '
87
'This is most likely because the test data is not installed. '
9-
'You may need to install matplotlib from source to get the '
8+
'You may need to install matplotlib_baseline_images to get the '
109
'test data.')

lib/mpl_toolkits/tests/__init__.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
from pathlib import Path
2-
3-
4-
# Check that the test directories exist
5-
if not (Path(__file__).parent / "baseline_images").exists():
6-
raise IOError(
1+
# Check for the mpl_toolkits_baseline_images.
2+
try:
3+
import mpl_toolkits_baseline_images
4+
except:
5+
raise ImportError(
76
'The baseline image directory does not exist. '
87
'This is most likely because the test data is not installed. '
9-
'You may need to install matplotlib from source to get the '
8+
'You may need to install mpl_toolkits_baseline_images to get the '
109
'test data.')

requirements/testing/travis_all.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@ pytest-timeout
88
pytest-xdist
99
python-dateutil
1010
tornado
11+
-e sub-wheels/matplotlib-baseline-images

setup.cfg.template

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,8 @@
1414

1515
[packages]
1616
# There are a number of data subpackages from Matplotlib that are
17-
# considered optional. All except 'tests' data (meaning the baseline
18-
# image files) are installed by default, but that can be changed here.
19-
#tests = False
17+
# considered optional. Sample data are installed by default, but that can be
18+
# changed here.
2019
#sample_data = True
2120

2221
[gui_support]

setup.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,6 @@
5959
setupext.Platform(),
6060
setupext.FreeType(),
6161
setupext.SampleData(),
62-
setupext.Tests(),
6362
setupext.BackendMacOSX(),
6463
]
6564

0 commit comments

Comments
 (0)