Allow tests to fail if multiprocessing is not available
authorDebian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>
Wed, 11 Jan 2023 23:51:04 +0000 (23:51 +0000)
committerRebecca N. Palmer <rebecca_palmer@zoho.com>
Wed, 11 Jan 2023 23:51:04 +0000 (23:51 +0000)
This is currently the case on hurd-i386

Author: Rebecca N. Palmer <rebecca_palmer@zoho.com>
Forwarded: no

Gbp-Pq: Name xfail_no_multiprocessing.patch

statsmodels/graphics/tests/test_functional.py

index 18b7ca92400974ee85407cf773c3661977ac83a5..ee9692c279dea7beb66f36ed087e103411f14301 100644 (file)
@@ -15,6 +15,12 @@ try:
     import matplotlib.pyplot as plt
 except ImportError:
     pass
+has_multiprocessing = True
+try:
+    import multiprocessing
+    multiprocessing.Pool()
+except ImportError:
+    has_multiprocessing = False
 
 
 data = elnino.load()
@@ -28,6 +34,10 @@ data = data.raw_data[:, 1:]
 def test_hdr_basic(close_figures):
     try:
         _, hdr = hdrboxplot(data, labels=labels, seed=12345)
+    except ImportError:
+        if not has_multiprocessing:
+            pytest.xfail('Multiprocess not available')
+        raise
     except WindowsError:
         pytest.xfail('Multiprocess randomly crashes in Windows testing')
 
@@ -70,6 +80,10 @@ def test_hdr_basic(close_figures):
 def test_hdr_basic_brute(close_figures, reset_randomstate):
     try:
         _, hdr = hdrboxplot(data, ncomp=2, labels=labels, use_brute=True)
+    except ImportError:
+        if not has_multiprocessing:
+            pytest.xfail('Multiprocess not available')
+        raise
     except WindowsError:
         pytest.xfail('Multiprocess randomly crashes in Windows testing')
 
@@ -105,6 +119,10 @@ def test_hdr_plot(close_figures):
 def test_hdr_alpha(close_figures):
     try:
         _, hdr = hdrboxplot(data, alpha=[0.7], seed=12345)
+    except ImportError:
+        if not has_multiprocessing:
+            pytest.xfail('Multiprocess not available')
+        raise
     except WindowsError:
         pytest.xfail('Multiprocess randomly crashes in Windows testing')
 
@@ -120,6 +138,10 @@ def test_hdr_alpha(close_figures):
 def test_hdr_multiple_alpha(close_figures):
     try:
         _, hdr = hdrboxplot(data, alpha=[0.4, 0.92], seed=12345)
+    except ImportError:
+        if not has_multiprocessing:
+            pytest.xfail('Multiprocess not available')
+        raise
     except WindowsError:
         pytest.xfail('Multiprocess randomly crashes in Windows testing')
 
@@ -145,6 +167,10 @@ def test_hdr_threshold(close_figures):
     try:
         _, hdr = hdrboxplot(data, alpha=[0.8], threshold=0.93,
                             seed=12345)
+    except ImportError:
+        if not has_multiprocessing:
+            pytest.xfail('Multiprocess not available')
+        raise
     except WindowsError:
         pytest.xfail('Multiprocess randomly crashes in Windows testing')
 
@@ -158,6 +184,10 @@ def test_hdr_threshold(close_figures):
 def test_hdr_bw(close_figures):
     try:
         _, hdr = hdrboxplot(data, bw='cv_ml', seed=12345)
+    except ImportError:
+        if not has_multiprocessing:
+            pytest.xfail('Multiprocess not available')
+        raise
     except WindowsError:
         pytest.xfail('Multiprocess randomly crashes in Windows testing')
 
@@ -171,6 +201,10 @@ def test_hdr_bw(close_figures):
 def test_hdr_ncomp(close_figures):
     try:
         _, hdr = hdrboxplot(data, ncomp=3, seed=12345)
+    except ImportError:
+        if not has_multiprocessing:
+            pytest.xfail('Multiprocess not available')
+        raise
     except WindowsError:
         pytest.xfail('Multiprocess randomly crashes in Windows testing')