Increase tolerances on non-x86 systems.

This commit is contained in:
Elliott Sales de Andrade
2018-01-24 03:02:57 -05:00
parent b470c189c1
commit 8d6885671d
6 changed files with 299 additions and 44 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
From 69b627b84fa8081748d93d180deb2218b99270a4 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Wed, 27 Sep 2017 19:35:59 -0400
Subject: [PATCH 1/3] matplotlibrc path search fix
Subject: [PATCH 1/4] matplotlibrc path search fix
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
@@ -1,18 +1,17 @@
From 593459d2a9223d69180fed80622f4e7e2cf96239 Mon Sep 17 00:00:00 2001
From f146998e2bf6db54dae926ceec57d2baa6003ea0 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Sun, 15 Oct 2017 17:35:47 -0400
Subject: [PATCH 2/3] TST: Increase tolerances for FreeType 2.7.1.
Date: Tue, 23 Jan 2018 20:22:05 -0500
Subject: [PATCH 2/4] Increase tolerances for FreeType 2.7.1.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/testing/decorators.py | 2 +-
lib/matplotlib/tests/test_axes.py | 5 ++---
lib/matplotlib/tests/test_mathtext.py | 4 ++--
lib/matplotlib/tests/test_patches.py | 3 +--
lib/matplotlib/tests/test_patheffects.py | 2 +-
lib/matplotlib/tests/test_streamplot.py | 6 ++----
lib/mpl_toolkits/tests/test_mplot3d.py | 2 +-
7 files changed, 10 insertions(+), 14 deletions(-)
lib/matplotlib/testing/decorators.py | 2 +-
lib/matplotlib/tests/test_axes.py | 5 ++---
lib/matplotlib/tests/test_mathtext.py | 4 ++--
lib/matplotlib/tests/test_patches.py | 3 +--
lib/matplotlib/tests/test_streamplot.py | 3 +--
lib/mpl_toolkits/tests/test_mplot3d.py | 2 +-
6 files changed, 8 insertions(+), 11 deletions(-)
diff --git a/lib/matplotlib/testing/decorators.py b/lib/matplotlib/testing/decorators.py
index c5e069b31..ebd68cfab 100644
@@ -87,21 +86,8 @@ index 20ffa6b08..81737c84d 100644
def test_wedge_range():
ax = plt.axes()
diff --git a/lib/matplotlib/tests/test_patheffects.py b/lib/matplotlib/tests/test_patheffects.py
index 9b8a4379c..b46d8cec4 100644
--- a/lib/matplotlib/tests/test_patheffects.py
+++ b/lib/matplotlib/tests/test_patheffects.py
@@ -125,7 +125,7 @@ def test_SimplePatchShadow_offset():
assert pe._offset == (4, 5)
-@image_comparison(baseline_images=['collection'], tol=0.015)
+@image_comparison(baseline_images=['collection'])
def test_collection():
x, y = np.meshgrid(np.linspace(0, 10, 150), np.linspace(-5, 5, 100))
data = np.sin(x) + np.cos(y)
diff --git a/lib/matplotlib/tests/test_streamplot.py b/lib/matplotlib/tests/test_streamplot.py
index 1d7e09fef..b62ca2198 100644
index 1d7e09fef..48f1e0683 100644
--- a/lib/matplotlib/tests/test_streamplot.py
+++ b/lib/matplotlib/tests/test_streamplot.py
@@ -40,8 +40,7 @@ def test_startpoints():
@@ -114,16 +100,6 @@ index 1d7e09fef..b62ca2198 100644
def test_colormap():
X, Y, U, V = velocity_field()
plt.streamplot(X, Y, U, V, color=U, density=0.6, linewidth=2,
@@ -59,8 +58,7 @@ def test_linewidth():
linewidth=lw)
-@image_comparison(baseline_images=['streamplot_masks_and_nans'],
- tol=0.04 if on_win else 0)
+@image_comparison(baseline_images=['streamplot_masks_and_nans'])
def test_masks_and_nans():
X, Y, U, V = velocity_field()
mask = np.zeros(U.shape, dtype=bool)
diff --git a/lib/mpl_toolkits/tests/test_mplot3d.py b/lib/mpl_toolkits/tests/test_mplot3d.py
index c157433c7..c13f3be2f 100644
--- a/lib/mpl_toolkits/tests/test_mplot3d.py
@@ -0,0 +1,41 @@
From 1e4e5f12b804561ab5b6bfa4ad76d44523d1568e Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Tue, 23 Jan 2018 20:27:17 -0500
Subject: [PATCH 3/4] Increase tolerances for FT 2.7.1 and other arches.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/tests/test_patheffects.py | 2 +-
lib/matplotlib/tests/test_streamplot.py | 3 +--
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/lib/matplotlib/tests/test_patheffects.py b/lib/matplotlib/tests/test_patheffects.py
index 9b8a4379c..e36d6deb6 100644
--- a/lib/matplotlib/tests/test_patheffects.py
+++ b/lib/matplotlib/tests/test_patheffects.py
@@ -125,7 +125,7 @@ def test_SimplePatchShadow_offset():
assert pe._offset == (4, 5)
-@image_comparison(baseline_images=['collection'], tol=0.015)
+@image_comparison(baseline_images=['collection'], tol=0.019)
def test_collection():
x, y = np.meshgrid(np.linspace(0, 10, 150), np.linspace(-5, 5, 100))
data = np.sin(x) + np.cos(y)
diff --git a/lib/matplotlib/tests/test_streamplot.py b/lib/matplotlib/tests/test_streamplot.py
index 48f1e0683..aadcf6bfd 100644
--- a/lib/matplotlib/tests/test_streamplot.py
+++ b/lib/matplotlib/tests/test_streamplot.py
@@ -58,8 +58,7 @@ def test_linewidth():
linewidth=lw)
-@image_comparison(baseline_images=['streamplot_masks_and_nans'],
- tol=0.04 if on_win else 0)
+@image_comparison(baseline_images=['streamplot_masks_and_nans'], tol=0.01)
def test_masks_and_nans():
X, Y, U, V = velocity_field()
mask = np.zeros(U.shape, dtype=bool)
--
2.14.3
@@ -1,7 +1,7 @@
From 61eac9a522a7907db3fe01680d249789d1cff710 Mon Sep 17 00:00:00 2001
From 25c7d1af15f4478e795250360d2f778a76c2358d Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Sun, 15 Oct 2017 21:11:26 -0400
Subject: [PATCH 3/3] TST: Increase some tolerances for 32-bit systems.
Date: Wed, 24 Jan 2018 01:38:52 -0500
Subject: [PATCH 4/4] Increase some tolerances for 32-bit systems.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
@@ -11,11 +11,12 @@ Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
lib/matplotlib/tests/test_colorbar.py | 11 +++++----
lib/matplotlib/tests/test_contour.py | 6 ++---
lib/matplotlib/tests/test_image.py | 2 +-
lib/matplotlib/tests/test_patheffects.py | 2 +-
lib/matplotlib/tests/test_pickle.py | 2 +-
lib/matplotlib/tests/test_quiver.py | 2 +-
lib/matplotlib/tests/test_transforms.py | 2 +-
lib/mpl_toolkits/tests/test_mplot3d.py | 2 +-
10 files changed, 38 insertions(+), 36 deletions(-)
11 files changed, 39 insertions(+), 37 deletions(-)
diff --git a/lib/matplotlib/tests/test_artist.py b/lib/matplotlib/tests/test_artist.py
index 786d50903..105714ef4 100644
@@ -331,6 +332,19 @@ index fd6430d56..e9bf1b1db 100644
def test_imshow_masked_interpolation():
cm = copy(plt.get_cmap('viridis'))
diff --git a/lib/matplotlib/tests/test_patheffects.py b/lib/matplotlib/tests/test_patheffects.py
index e36d6deb6..985d69cb2 100644
--- a/lib/matplotlib/tests/test_patheffects.py
+++ b/lib/matplotlib/tests/test_patheffects.py
@@ -125,7 +125,7 @@ def test_SimplePatchShadow_offset():
assert pe._offset == (4, 5)
-@image_comparison(baseline_images=['collection'], tol=0.019)
+@image_comparison(baseline_images=['collection'], tol=0.084)
def test_collection():
x, y = np.meshgrid(np.linspace(0, 10, 150), np.linspace(-5, 5, 100))
data = np.sin(x) + np.cos(y)
diff --git a/lib/matplotlib/tests/test_pickle.py b/lib/matplotlib/tests/test_pickle.py
index bd6ac6862..512f07948 100644
--- a/lib/matplotlib/tests/test_pickle.py
@@ -0,0 +1,216 @@
From cd26dbd863d0cf2cce4d249c4941cf68d6f838ba Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Wed, 24 Jan 2018 03:02:19 -0500
Subject: [PATCH 4/4] Increase some tolerances for non-x86 arches.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/tests/test_arrow_patches.py | 4 ++--
lib/matplotlib/tests/test_axes.py | 5 +++--
lib/matplotlib/tests/test_collections.py | 2 +-
lib/matplotlib/tests/test_cycles.py | 6 +++---
lib/matplotlib/tests/test_image.py | 2 +-
lib/matplotlib/tests/test_legend.py | 6 +++---
lib/matplotlib/tests/test_pickle.py | 2 +-
lib/matplotlib/tests/test_scale.py | 2 +-
lib/matplotlib/tests/test_streamplot.py | 2 +-
lib/matplotlib/tests/test_units.py | 4 ++--
10 files changed, 18 insertions(+), 17 deletions(-)
diff --git a/lib/matplotlib/tests/test_arrow_patches.py b/lib/matplotlib/tests/test_arrow_patches.py
index 0a5894a30..1f75169ca 100644
--- a/lib/matplotlib/tests/test_arrow_patches.py
+++ b/lib/matplotlib/tests/test_arrow_patches.py
@@ -69,7 +69,7 @@ def __prepare_fancyarrow_dpi_cor_test():
@image_comparison(baseline_images=['fancyarrow_dpi_cor_100dpi'],
- remove_text=True, extensions=['png'],
+ remove_text=True, extensions=['png'], tol=0.016,
savefig_kwarg=dict(dpi=100))
def test_fancyarrow_dpi_cor_100dpi():
"""
@@ -84,7 +84,7 @@ def test_fancyarrow_dpi_cor_100dpi():
@image_comparison(baseline_images=['fancyarrow_dpi_cor_200dpi'],
- remove_text=True, extensions=['png'],
+ remove_text=True, extensions=['png'], tol=0.019,
savefig_kwarg=dict(dpi=200))
def test_fancyarrow_dpi_cor_200dpi():
"""
diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py
index 6492cc140..3bd1c0fda 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -3229,7 +3229,8 @@ def test_vertex_markers():
@image_comparison(baseline_images=['vline_hline_zorder',
- 'errorbar_zorder'])
+ 'errorbar_zorder'],
+ tol=0.02)
def test_eb_line_zorder():
x = list(xrange(10))
@@ -4866,7 +4867,7 @@ def test_title_location_roundtrip():
@image_comparison(baseline_images=["loglog"], remove_text=True,
- extensions=['png'])
+ extensions=['png'], tol=0.009)
def test_loglog():
fig, ax = plt.subplots()
x = np.arange(1, 11)
diff --git a/lib/matplotlib/tests/test_collections.py b/lib/matplotlib/tests/test_collections.py
index c27aeb11a..969bf41cf 100644
--- a/lib/matplotlib/tests/test_collections.py
+++ b/lib/matplotlib/tests/test_collections.py
@@ -444,7 +444,7 @@ def test_barb_limits():
@image_comparison(baseline_images=['EllipseCollection_test_image'],
- extensions=['png'],
+ extensions=['png'], tol=0.012,
remove_text=True)
def test_EllipseCollection():
# Test basic functionality
diff --git a/lib/matplotlib/tests/test_cycles.py b/lib/matplotlib/tests/test_cycles.py
index eadaf2508..5d1144f5e 100644
--- a/lib/matplotlib/tests/test_cycles.py
+++ b/lib/matplotlib/tests/test_cycles.py
@@ -10,7 +10,7 @@ from cycler import cycler
@image_comparison(baseline_images=['color_cycle_basic'], remove_text=True,
- extensions=['png'])
+ extensions=['png'], tol=0.008)
def test_colorcycle_basic():
fig = plt.figure()
ax = fig.add_subplot(111)
@@ -28,7 +28,7 @@ def test_colorcycle_basic():
@image_comparison(baseline_images=['marker_cycle', 'marker_cycle'],
- remove_text=True, extensions=['png'])
+ remove_text=True, extensions=['png'], tol=0.008)
def test_marker_cycle():
fig = plt.figure()
ax = fig.add_subplot(111)
@@ -63,7 +63,7 @@ def test_marker_cycle():
@image_comparison(baseline_images=['lineprop_cycle_basic'], remove_text=True,
- extensions=['png'])
+ extensions=['png'], tol=0.009)
def test_linestylecycle_basic():
fig = plt.figure()
ax = fig.add_subplot(111)
diff --git a/lib/matplotlib/tests/test_image.py b/lib/matplotlib/tests/test_image.py
index fd6430d56..b4190713f 100644
--- a/lib/matplotlib/tests/test_image.py
+++ b/lib/matplotlib/tests/test_image.py
@@ -754,7 +754,7 @@ def test_imshow_endianess():
@image_comparison(baseline_images=['imshow_masked_interpolation'],
- remove_text=True, style='mpl20')
+ remove_text=True, style='mpl20', tol=0.006)
def test_imshow_masked_interpolation():
cm = copy(plt.get_cmap('viridis'))
diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py
index e63aa8ef9..d984bcac1 100644
--- a/lib/matplotlib/tests/test_legend.py
+++ b/lib/matplotlib/tests/test_legend.py
@@ -141,7 +141,7 @@ def test_multiple_keys():
@image_comparison(baseline_images=['rgba_alpha'],
- extensions=['png'], remove_text=True)
+ extensions=['png'], remove_text=True, tol=0.007)
def test_alpha_rgba():
import matplotlib.pyplot as plt
@@ -152,7 +152,7 @@ def test_alpha_rgba():
@image_comparison(baseline_images=['rcparam_alpha'],
- extensions=['png'], remove_text=True)
+ extensions=['png'], remove_text=True, tol=0.007)
def test_alpha_rcparam():
import matplotlib.pyplot as plt
@@ -179,7 +179,7 @@ def test_fancy():
ncol=2, shadow=True, title="My legend", numpoints=1)
-@image_comparison(baseline_images=['framealpha'], remove_text=True)
+@image_comparison(baseline_images=['framealpha'], remove_text=True, tol=0.018)
def test_framealpha():
x = np.linspace(1, 100, 100)
y = x
diff --git a/lib/matplotlib/tests/test_pickle.py b/lib/matplotlib/tests/test_pickle.py
index bd6ac6862..ea8afd807 100644
--- a/lib/matplotlib/tests/test_pickle.py
+++ b/lib/matplotlib/tests/test_pickle.py
@@ -41,7 +41,7 @@ def test_simple():
pickle.dump(fig, BytesIO(), pickle.HIGHEST_PROTOCOL)
-@image_comparison(baseline_images=['multi_pickle'],
+@image_comparison(baseline_images=['multi_pickle'], tol=0.004,
extensions=['png'], remove_text=True,
style='mpl20')
def test_complete():
diff --git a/lib/matplotlib/tests/test_scale.py b/lib/matplotlib/tests/test_scale.py
index 9b78377b2..4994ba91d 100644
--- a/lib/matplotlib/tests/test_scale.py
+++ b/lib/matplotlib/tests/test_scale.py
@@ -75,7 +75,7 @@ def test_extra_kwargs_raise():
@image_comparison(baseline_images=['logscale_nonpos_values'], remove_text=True,
- extensions=['png'], style='mpl20')
+ extensions=['png'], style='mpl20', tol=0.008)
def test_logscale_nonpos_values():
np.random.seed(19680801)
xs = np.random.normal(size=int(1e3))
diff --git a/lib/matplotlib/tests/test_streamplot.py b/lib/matplotlib/tests/test_streamplot.py
index aadcf6bfd..473991268 100644
--- a/lib/matplotlib/tests/test_streamplot.py
+++ b/lib/matplotlib/tests/test_streamplot.py
@@ -48,7 +48,7 @@ def test_colormap():
plt.colorbar()
-@image_comparison(baseline_images=['streamplot_linewidth'])
+@image_comparison(baseline_images=['streamplot_linewidth'], tol=0.002)
def test_linewidth():
X, Y, U, V = velocity_field()
speed = np.sqrt(U*U + V*V)
diff --git a/lib/matplotlib/tests/test_units.py b/lib/matplotlib/tests/test_units.py
index f72ac2c60..781a3850e 100644
--- a/lib/matplotlib/tests/test_units.py
+++ b/lib/matplotlib/tests/test_units.py
@@ -39,7 +39,7 @@ class Quantity(object):
# Tests that the conversion machinery works properly for classes that
# work as a facade over numpy arrays (like pint)
-@image_comparison(baseline_images=['plot_pint'],
+@image_comparison(baseline_images=['plot_pint'], tol=0.003,
extensions=['png'], remove_text=False, style='mpl20')
def test_numpy_facade():
# Create an instance of the conversion interface and
@@ -83,7 +83,7 @@ def test_numpy_facade():
# Tests gh-8908
-@image_comparison(baseline_images=['plot_masked_units'],
+@image_comparison(baseline_images=['plot_masked_units'], tol=0.007,
extensions=['png'], remove_text=True, style='mpl20')
def test_plot_masked_units():
data = np.linspace(-5, 5)
--
2.14.3
+12 -4
View File
@@ -67,8 +67,10 @@ Source1: setup.cfg
# Fedora-specific patches.
Source1000: matplotlib-%{version}-with-freetype-2.8.tar.gz
Patch1001: 0001-matplotlibrc-path-search-fix.patch
Patch1002: 0002-TST-Increase-tolerances-for-FreeType-2.7.1.patch
Patch1686: 0003-TST-Increase-some-tolerances-for-32-bit-systems.patch
Patch1002: 0002-Increase-tolerances-for-FreeType-2.7.1.patch
Patch1003: 0003-Increase-tolerances-for-FT-2.7.1-and-other-arches.patch
Patch1004: 0004-Increase-some-tolerances-for-32-bit-systems.patch
Patch1005: 0004-Increase-some-tolerances-for-non-x86-arches.patch
BuildRequires: freetype-devel
BuildRequires: libpng-devel
@@ -389,13 +391,19 @@ gzip -dc %SOURCE1000 | tar xvf - --transform='s~^\([^/]\+\)/~lib/\1/tests/baseli
# Apply this because 32-bit output is a bit off.
%patch1002 -p1
%endif
%ifnarch x86_64
%patch1003 -p1
%endif
%ifarch aarch64 ppc64 ppc64le s390x
%patch1005 -p1
%endif
%else
# Small tweaks to tolerances for FreeType 2.7.1.
%patch1002 -p1
%patch1003 -p1
%endif
%ifarch i686
# Switch to full autosetup when 32-bit systems are dropped.
%patch1686 -p1
%patch1004 -p1
%endif
rm -r extern/libqhull