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
|
--- a/python/test/unit/io/test_adios2.py
+++ b/python/test/unit/io/test_adios2.py
@@ -12,6 +12,7 @@
import pytest
import ufl
+import dolfinx.io
from basix.ufl import element
from dolfinx import default_real_type, default_scalar_type
from dolfinx.fem import Function, functionspace
@@ -44,6 +45,9 @@
@pytest.mark.parametrize("simplex", [True, False])
def test_fides_mesh(self, tempdir, dim, simplex):
"""Test writing of a single Fides mesh with changing geometry."""
+ if not hasattr(dolfinx.io, "FidesWriter"):
+ pytest.skip("FidesWriter is not available")
+
from dolfinx.io import FidesWriter
filename = Path(tempdir, "mesh_fides.bp")
@@ -57,6 +61,9 @@
@pytest.mark.parametrize("simplex", [True, False])
def test_two_fides_functions(self, tempdir, dim, simplex):
"""Test saving two functions with Fides."""
+ if not hasattr(dolfinx.io, "FidesWriter"):
+ pytest.skip("FidesWriter is not available")
+
from dolfinx.io import FidesWriter
mesh = generate_mesh(dim, simplex)
@@ -81,6 +88,9 @@
@pytest.mark.parametrize("simplex", [True, False])
def test_fides_single_function(self, tempdir, dim, simplex):
"""Test saving a single first order Lagrange functions."""
+ if not hasattr(dolfinx.io, "FidesWriter"):
+ pytest.skip("FidesWriter is not available")
+
from dolfinx.io import FidesWriter
mesh = generate_mesh(dim, simplex)
@@ -94,6 +104,9 @@
@pytest.mark.parametrize("simplex", [True, False])
def test_fides_function_at_nodes(self, tempdir, dim, simplex):
"""Test saving P1 functions with Fides (with changing geometry)."""
+ if not hasattr(dolfinx.io, "FidesWriter"):
+ pytest.skip("FidesWriter is not available")
+
from dolfinx.io import FidesWriter
mesh = generate_mesh(dim, simplex)
@@ -126,6 +139,9 @@
class TestVTX:
@pytest.mark.skipif(MPI.COMM_WORLD.size > 1, reason="This test should only be run in serial.")
def test_second_order_vtx(self, tempdir):
+ if not hasattr(dolfinx.io, "VTXWriter"):
+ pytest.skip("VTXWriter is not available")
+
from dolfinx.io import VTXWriter
filename = Path(tempdir, "mesh_fides.bp")
@@ -139,6 +155,9 @@
@pytest.mark.parametrize("dim", [2, 3])
@pytest.mark.parametrize("simplex", [True, False])
def test_vtx_mesh(self, tempdir, dim, simplex):
+ if not hasattr(dolfinx.io, "VTXWriter"):
+ pytest.skip("VTXWriter is not available")
+
from dolfinx.io import VTXWriter
filename = Path(tempdir, "mesh_vtx.bp")
@@ -152,6 +171,9 @@
@pytest.mark.parametrize("simplex", [True, False])
def test_vtx_functions_fail(self, tempdir, dim, simplex):
"""Test for error when elements differ."""
+ if not hasattr(dolfinx.io, "VTXWriter"):
+ pytest.skip("VTXWriter is not available")
+
from dolfinx.io import VTXWriter
mesh = generate_mesh(dim, simplex)
@@ -165,6 +187,9 @@
@pytest.mark.parametrize("simplex", [True, False])
def test_vtx_different_meshes_function(self, tempdir, simplex):
"""Test for error when functions do not share a mesh."""
+ if not hasattr(dolfinx.io, "VTXWriter"):
+ pytest.skip("VTXWriter is not available")
+
from dolfinx.io import VTXWriter
mesh = generate_mesh(2, simplex)
@@ -179,6 +204,9 @@
@pytest.mark.parametrize("simplex", [True, False])
def test_vtx_single_function(self, tempdir, dim, simplex):
"""Test saving a single first order Lagrange functions."""
+ if not hasattr(dolfinx.io, "VTXWriter"):
+ pytest.skip("VTXWriter is not available")
+
from dolfinx.io import VTXWriter
mesh = generate_mesh(dim, simplex)
@@ -199,6 +227,9 @@
@pytest.mark.parametrize("simplex", [True, False])
def test_vtx_functions(self, tempdir, dtype, dim, simplex):
"""Test saving high order Lagrange functions."""
+ if not hasattr(dolfinx.io, "VTXWriter"):
+ pytest.skip("VTXWriter is not available")
+
from dolfinx.io import VTXWriter
xtype = np.real(dtype(0)).dtype
@@ -240,6 +271,9 @@
def test_save_vtkx_cell_point(self, tempdir):
"""Test writing point-wise data."""
+ if not hasattr(dolfinx.io, "VTXWriter"):
+ pytest.skip("VTXWriter is not available")
+
from dolfinx.io import VTXWriter
mesh = create_unit_square(MPI.COMM_WORLD, 8, 5)
@@ -257,6 +291,9 @@
def test_empty_rank_mesh(self, tempdir):
"""Test VTXWriter on mesh where some ranks have no cells."""
+ if not hasattr(dolfinx.io, "VTXWriter"):
+ pytest.skip("VTXWriter is not available")
+
from dolfinx.io import VTXWriter
comm = MPI.COMM_WORLD
@@ -291,6 +328,9 @@
@pytest.mark.parametrize("reuse", [True, False])
def test_vtx_reuse_mesh(self, tempdir, dim, simplex, reuse):
"""Test reusage of mesh by VTXWriter."""
+ if not hasattr(dolfinx.io, "VTXWriter"):
+ pytest.skip("VTXWriter is not available")
+
from dolfinx.io import VTXMeshPolicy, VTXWriter
adios2 = pytest.importorskip("adios2", minversion="2.10.0")
|