summaryrefslogtreecommitdiff
blob: 3cedaba4ffc379f7376f0299c493491b4eb183ca (plain)
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
From d44a24b3744b568fc12209ede6be782babb847b7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Fri, 26 Mar 2021 13:42:49 +0100
Subject: [PATCH] Increase image comparison limits

Most of the tests require exact match which apparently doesn't always
happen in non-pristine environments.  Some of them have very big
differences due to texlive font rendering changes.
---
 lib/matplotlib/tests/test_arrow_patches.py                | 6 +++---
 lib/matplotlib/tests/test_axes.py                         | 4 ++--
 lib/matplotlib/tests/test_backend_pgf.py                  | 8 +++++---
 lib/matplotlib/tests/test_figure.py                       | 5 +++--
 lib/matplotlib/tests/test_legend.py                       | 6 +++---
 lib/matplotlib/tests/test_units.py                        | 4 ++--
 lib/matplotlib/tests/test_usetex.py                       | 3 ++-
 lib/mpl_toolkits/tests/test_axes_grid1.py                 | 2 +-
 .../tests/test_axisartist_grid_helper_curvelinear.py      | 2 +-
 lib/mpl_toolkits/tests/test_mplot3d.py                    | 2 +-
 10 files changed, 23 insertions(+), 19 deletions(-)

diff --git a/lib/matplotlib/tests/test_arrow_patches.py b/lib/matplotlib/tests/test_arrow_patches.py
index 3c95535e0..c4fad3486 100644
--- a/lib/matplotlib/tests/test_arrow_patches.py
+++ b/lib/matplotlib/tests/test_arrow_patches.py
@@ -67,7 +67,7 @@ def __prepare_fancyarrow_dpi_cor_test():
 
 
 @image_comparison(['fancyarrow_dpi_cor_100dpi.png'], remove_text=True,
-                  tol=0 if platform.machine() == 'x86_64' else 0.02,
+                  tol=0.015 if platform.machine() == 'x86_64' else 0.02,
                   savefig_kwarg=dict(dpi=100))
 def test_fancyarrow_dpi_cor_100dpi():
     """
@@ -82,7 +82,7 @@ def test_fancyarrow_dpi_cor_100dpi():
 
 
 @image_comparison(['fancyarrow_dpi_cor_200dpi.png'], remove_text=True,
-                  tol=0 if platform.machine() == 'x86_64' else 0.02,
+                  tol=0.018 if platform.machine() == 'x86_64' else 0.02,
                   savefig_kwarg=dict(dpi=200))
 def test_fancyarrow_dpi_cor_200dpi():
     """
@@ -115,7 +115,7 @@ def test_fancyarrow_dash():
 
 
 @image_comparison(['arrow_styles.png'], style='mpl20', remove_text=True,
-                  tol=0 if platform.machine() == 'x86_64' else 0.005)
+                  tol=0.005)
 def test_arrow_styles():
     styles = mpatches.ArrowStyle.get_styles()
 
diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py
index ed76af576..772f96177 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -3807,7 +3807,7 @@ def test_hist_labels():
     assert bars[0].get_label() == '00'
 
 
-@image_comparison(['transparent_markers'], remove_text=True)
+@image_comparison(['transparent_markers'], remove_text=True, tol=5)
 def test_transparent_markers():
     np.random.seed(0)
     data = np.random.random(50)
@@ -4083,7 +4083,7 @@ def test_vertex_markers():
 
 
 @image_comparison(['vline_hline_zorder', 'errorbar_zorder'],
-                  tol=0 if platform.machine() == 'x86_64' else 0.02)
+                  tol=0.015 if platform.machine() == 'x86_64' else 0.02)
 def test_eb_line_zorder():
     x = list(range(10))
 
diff --git a/lib/matplotlib/tests/test_backend_pgf.py b/lib/matplotlib/tests/test_backend_pgf.py
index 75f50ecbf..6973a9681 100644
--- a/lib/matplotlib/tests/test_backend_pgf.py
+++ b/lib/matplotlib/tests/test_backend_pgf.py
@@ -91,7 +91,8 @@ def test_xelatex():
 @needs_pdflatex
 @pytest.mark.skipif(not _has_tex_package('ucs'), reason='needs ucs.sty')
 @pytest.mark.backend('pgf')
-@image_comparison(['pgf_pdflatex.pdf'], style='default')
+@image_comparison(['pgf_pdflatex.pdf'], style='default',
+                  tol=11.669)
 def test_pdflatex():
     if os.environ.get('APPVEYOR'):
         pytest.xfail("pdflatex test does not work on appveyor due to missing "
@@ -127,7 +128,7 @@ def test_rcupdate():
                 'pgf.preamble': ('\\usepackage[utf8x]{inputenc}'
                                  '\\usepackage[T1]{fontenc}'
                                  '\\usepackage{sfmath}')}]
-    tol = [6, 0]
+    tol = [6, 14]
     for i, rc_set in enumerate(rc_sets):
         with mpl.rc_context(rc_set):
             for substring, pkg in [('sfmath', 'sfmath'), ('utf8x', 'ucs')]:
@@ -153,7 +154,8 @@ def test_pathclip():
 # test mixed mode rendering
 @needs_xelatex
 @pytest.mark.backend('pgf')
-@image_comparison(['pgf_mixedmode.pdf'], style='default')
+@image_comparison(['pgf_mixedmode.pdf'], style='default',
+                  tol=1.086)
 def test_mixedmode():
     mpl.rcParams.update({'font.family': 'serif', 'pgf.rcfonts': False})
     Y, X = np.ogrid[-1:1:40j, -1:1:40j]
diff --git a/lib/matplotlib/tests/test_figure.py b/lib/matplotlib/tests/test_figure.py
index 15f084fc1..14fc6b191 100644
--- a/lib/matplotlib/tests/test_figure.py
+++ b/lib/matplotlib/tests/test_figure.py
@@ -21,7 +21,7 @@ import pytest
 
 
 @image_comparison(['figure_align_labels'], extensions=['png', 'svg'],
-                  tol=0 if platform.machine() == 'x86_64' else 0.01)
+                  tol=0.02)
 def test_align_labels():
     fig = plt.figure(tight_layout=True)
     gs = gridspec.GridSpec(3, 3)
@@ -902,7 +902,8 @@ def test_subfigure():
 
 @image_comparison(['test_subfigure_ss.png'], style='mpl20',
                   savefig_kwarg={'facecolor': 'teal'},
-                  remove_text=False)
+                  remove_text=False,
+                  tol=0.013)
 def test_subfigure_ss():
     # test assigning the subfigure via subplotspec
     np.random.seed(19680801)
diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py
index cebf26ea0..d7a5c3a88 100644
--- a/lib/matplotlib/tests/test_legend.py
+++ b/lib/matplotlib/tests/test_legend.py
@@ -100,7 +100,7 @@ def test_multiple_keys():
 
 
 @image_comparison(['rgba_alpha.png'], remove_text=True,
-                  tol=0 if platform.machine() == 'x86_64' else 0.01)
+                  tol=0.02)
 def test_alpha_rgba():
     fig, ax = plt.subplots()
     ax.plot(range(10), lw=5)
@@ -109,7 +109,7 @@ def test_alpha_rgba():
 
 
 @image_comparison(['rcparam_alpha.png'], remove_text=True,
-                  tol=0 if platform.machine() == 'x86_64' else 0.01)
+                  tol=0.02)
 def test_alpha_rcparam():
     fig, ax = plt.subplots()
     ax.plot(range(10), lw=5)
@@ -135,7 +135,7 @@ def test_fancy():
 
 
 @image_comparison(['framealpha'], remove_text=True,
-                  tol=0 if platform.machine() == 'x86_64' else 0.02)
+                  tol=0.02)
 def test_framealpha():
     x = np.linspace(1, 100, 100)
     y = x
diff --git a/lib/matplotlib/tests/test_units.py b/lib/matplotlib/tests/test_units.py
index 3f40a99a2..059a9f9a5 100644
--- a/lib/matplotlib/tests/test_units.py
+++ b/lib/matplotlib/tests/test_units.py
@@ -75,7 +75,7 @@ def quantity_converter():
 # Tests that the conversion machinery works properly for classes that
 # work as a facade over numpy arrays (like pint)
 @image_comparison(['plot_pint.png'], remove_text=False, style='mpl20',
-                  tol=0 if platform.machine() == 'x86_64' else 0.01)
+                  tol=0.002 if platform.machine() == 'x86_64' else 0.01)
 def test_numpy_facade(quantity_converter):
     # use former defaults to match existing baseline image
     plt.rcParams['axes.formatter.limits'] = -7, 7
@@ -102,7 +102,7 @@ def test_numpy_facade(quantity_converter):
 
 # Tests gh-8908
 @image_comparison(['plot_masked_units.png'], remove_text=True, style='mpl20',
-                  tol=0 if platform.machine() == 'x86_64' else 0.01)
+                  tol=0.02)
 def test_plot_masked_units():
     data = np.linspace(-5, 5)
     data_masked = np.ma.array(data, mask=(data > -2) & (data < 2))
diff --git a/lib/matplotlib/tests/test_usetex.py b/lib/matplotlib/tests/test_usetex.py
index 2d79e155e..cc46fe00c 100644
--- a/lib/matplotlib/tests/test_usetex.py
+++ b/lib/matplotlib/tests/test_usetex.py
@@ -14,7 +14,8 @@ if not mpl.checkdep_usetex(True):
 @image_comparison(
     baseline_images=['test_usetex'],
     extensions=['pdf', 'png'],
-    style="mpl20")
+    style="mpl20",
+    tol=21)
 def test_usetex():
     mpl.rcParams['text.usetex'] = True
     fig, ax = plt.subplots()
diff --git a/lib/mpl_toolkits/tests/test_axes_grid1.py b/lib/mpl_toolkits/tests/test_axes_grid1.py
index 0e1602e81..6a54b0d43 100644
--- a/lib/mpl_toolkits/tests/test_axes_grid1.py
+++ b/lib/mpl_toolkits/tests/test_axes_grid1.py
@@ -323,7 +323,7 @@ def test_zooming_with_inverted_axes():
 
 
 @image_comparison(['anchored_direction_arrows.png'],
-                  tol=0 if platform.machine() == 'x86_64' else 0.01)
+                  tol=0.02)
 def test_anchored_direction_arrows():
     fig, ax = plt.subplots()
     ax.imshow(np.zeros((10, 10)), interpolation='nearest')
diff --git a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
index 9a78a2676..09300adac 100644
--- a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
+++ b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
@@ -17,7 +17,7 @@ from mpl_toolkits.axisartist.grid_helper_curvelinear import \
 
 
 @image_comparison(['custom_transform.png'], style='default',
-                  tol=0.03 if platform.machine() == 'x86_64' else 0.04)
+                  tol=0.039)
 def test_custom_transform():
     class MyTransform(Transform):
         input_dims = output_dims = 2
diff --git a/lib/mpl_toolkits/tests/test_mplot3d.py b/lib/mpl_toolkits/tests/test_mplot3d.py
index f55edaa4a..60687be5b 100644
--- a/lib/mpl_toolkits/tests/test_mplot3d.py
+++ b/lib/mpl_toolkits/tests/test_mplot3d.py
@@ -1269,7 +1269,7 @@ def test_errorbar3d():
 
 
 @image_comparison(['stem3d.png'], style='mpl20',
-                  tol=0.0 if platform.machine() == 'x86_64' else 0.003)
+                  tol=0.003)
 def test_stem3d():
     fig, axs = plt.subplots(2, 3, figsize=(8, 6),
                             constrained_layout=True,
-- 
2.31.0