Skip to content

Commit 65f2c79

Browse files
ci: skip Linux tests with common approach (#1113)
Co-authored-by: pyansys-ci-bot <pyansys.github.bot@ansys.com>
1 parent 257a630 commit 65f2c79

File tree

6 files changed

+64
-17
lines changed

6 files changed

+64
-17
lines changed

doc/changelog.d/1113.changed.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
ci: skip Linux tests with common approach

tests/integration/conftest.py

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -146,9 +146,3 @@ def clean_plot_result_images():
146146
files = os.listdir(results_dir)
147147
for file in files:
148148
os.remove(Path(results_dir, file))
149-
150-
151-
@pytest.fixture(scope="session")
152-
def skip_not_on_linux_service(modeler: Modeler):
153-
if modeler.client.backend_type == BackendType.LINUX_SERVICE:
154-
return pytest.skip("Implementation not available on Linux service.") # skip!

tests/integration/test_design.py

Lines changed: 35 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -971,8 +971,14 @@ def test_slot_extrusion(modeler: Modeler):
971971
assert len(body.edges) == 12
972972

973973

974-
def test_project_and_imprint_curves(modeler: Modeler, skip_not_on_linux_service):
974+
def test_project_and_imprint_curves(modeler: Modeler):
975975
"""Test the projection of a set of curves on a body."""
976+
977+
# Skip on Linux
978+
skip_if_linux(
979+
modeler, test_project_and_imprint_curves.__name__, "project_curves, imprint_curves"
980+
)
981+
976982
# Create your design on the server side
977983
design = modeler.create_design("ExtrudeSlot")
978984
comp = design.add_component("Comp1")
@@ -1050,9 +1056,12 @@ def test_project_and_imprint_curves(modeler: Modeler, skip_not_on_linux_service)
10501056
assert len(body_copy.faces) == 8
10511057

10521058

1053-
def test_copy_body(modeler: Modeler, skip_not_on_linux_service):
1059+
def test_copy_body(modeler: Modeler):
10541060
"""Test copying a body."""
10551061

1062+
# Skip on Linux
1063+
skip_if_linux(modeler, test_copy_body.__name__, "copy")
1064+
10561065
# Create your design on the server side
10571066
design = modeler.create_design("Design")
10581067

@@ -1094,8 +1103,12 @@ def test_copy_body(modeler: Modeler, skip_not_on_linux_service):
10941103
assert copy.is_alive
10951104

10961105

1097-
def test_beams(modeler: Modeler, skip_not_on_linux_service):
1106+
def test_beams(modeler: Modeler):
10981107
"""Test beam creation."""
1108+
1109+
# Skip on Linux
1110+
skip_if_linux(modeler, test_beams.__name__, "create_beam")
1111+
10991112
# Create your design on the server side
11001113
design = modeler.create_design("BeamCreation")
11011114

@@ -1388,9 +1401,12 @@ def test_design_points(modeler: Modeler):
13881401
assert isinstance(pd, pv.PolyData)
13891402

13901403

1391-
def test_named_selections_beams(modeler: Modeler, skip_not_on_linux_service):
1404+
def test_named_selections_beams(modeler: Modeler):
13921405
"""Test for verifying the correct creation of ``NamedSelection`` with beams."""
13931406

1407+
# Skip on Linux
1408+
skip_if_linux(modeler, test_named_selections_beams.__name__, "create_beam")
1409+
13941410
# Create your design on the server side
13951411
design = modeler.create_design("NamedSelectionBeams_Test")
13961412

@@ -1502,7 +1518,7 @@ def test_component_instances(modeler: Modeler):
15021518
assert len(car2.components[1].components[1].bodies[0].faces) > 0
15031519

15041520

1505-
def test_boolean_body_operations(modeler: Modeler, skip_not_on_linux_service):
1521+
def test_boolean_body_operations(modeler: Modeler):
15061522
"""
15071523
Test cases:
15081524
@@ -1539,6 +1555,12 @@ def test_boolean_body_operations(modeler: Modeler, skip_not_on_linux_service):
15391555
x) identity
15401556
y) transform
15411557
"""
1558+
# Skip on Linux
1559+
skip_if_linux(
1560+
modeler,
1561+
test_boolean_body_operations.__name__,
1562+
"copy, translate, intersect, subtract, unite",
1563+
)
15421564

15431565
design = modeler.create_design("TestBooleanOperations")
15441566

@@ -1750,9 +1772,16 @@ def test_boolean_body_operations(modeler: Modeler, skip_not_on_linux_service):
17501772
assert Accuracy.length_is_equal(copy1.volume.m, 1)
17511773

17521774

1753-
def test_multiple_bodies_boolean_operations(modeler: Modeler, skip_not_on_linux_service):
1775+
def test_multiple_bodies_boolean_operations(modeler: Modeler):
17541776
"""Test boolean operations with multiple bodies."""
17551777

1778+
# Skip on Linux
1779+
skip_if_linux(
1780+
modeler,
1781+
test_multiple_bodies_boolean_operations.__name__,
1782+
"copy, translate, intersect, subtract, unite",
1783+
)
1784+
17561785
design = modeler.create_design("TestBooleanOperationsMultipleBodies")
17571786

17581787
comp1 = design.add_component("Comp1")

tests/integration/test_material.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,15 @@
2727
from ansys.geometry.core.materials import Material, MaterialProperty, MaterialPropertyType
2828
from ansys.geometry.core.misc import UNITS
2929

30+
from .conftest import skip_if_linux
3031

31-
def test_material_creation(modeler: Modeler, skip_not_on_linux_service):
32+
33+
def test_material_creation(modeler: Modeler):
3234
"""Test the creation of a material on a design."""
35+
36+
# Skip on Linux
37+
skip_if_linux(modeler, test_material_creation.__name__, "material.add_property, add_material")
38+
3339
design = modeler.create_design("my_design")
3440

3541
mat_name = "mat_1"

tests/integration/test_plotter.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@
4545
Triangle,
4646
)
4747

48+
from .conftest import skip_if_linux
49+
4850
skip_no_xserver = pytest.mark.skipif(
4951
not system_supports_plotting(), reason="Requires active X Server"
5052
)
@@ -455,9 +457,12 @@ def test_plot_dummy_gear(verify_image_cache):
455457

456458

457459
@skip_no_xserver
458-
def test_extrude_dummy_gear(modeler: Modeler, verify_image_cache, skip_not_on_linux_service):
460+
def test_extrude_dummy_gear(modeler: Modeler, verify_image_cache):
459461
"""Test plotting and extrusion of a dummy gear."""
460462

463+
# Skip on Linux
464+
skip_if_linux(modeler, test_extrude_dummy_gear.__name__, "unknown")
465+
461466
# Create a sketch instance
462467
sketch = Sketch()
463468

@@ -499,9 +504,12 @@ def test_plot_spur_gear(verify_image_cache):
499504

500505

501506
@skip_no_xserver
502-
def test_extrude_spur_gear(modeler: Modeler, verify_image_cache, skip_not_on_linux_service):
507+
def test_extrude_spur_gear(modeler: Modeler, verify_image_cache):
503508
"""Test plotting and extrusion of a spur gear."""
504509

510+
# Skip on Linux
511+
skip_if_linux(modeler, test_extrude_spur_gear.__name__, "unknown")
512+
505513
# Create a sketch instance
506514
sketch = Sketch()
507515

tests/integration/test_tessellation.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,15 @@
2727
from ansys.geometry.core.misc.units import UNITS, Quantity
2828
from ansys.geometry.core.sketch import Sketch
2929

30+
from .conftest import skip_if_linux
3031

31-
def test_body_tessellate(modeler: Modeler, skip_not_on_linux_service):
32+
33+
def test_body_tessellate(modeler: Modeler):
3234
"""Test the body tessellation."""
35+
36+
# Skip on Linux
37+
skip_if_linux(modeler, test_body_tessellate.__name__, "tessellate")
38+
3339
sketch_1 = Sketch()
3440
sketch_1.box(Point2D([2, 0], UNITS.m), Quantity(4, UNITS.m), Quantity(4, UNITS.m))
3541
design = modeler.create_design("Design")
@@ -96,9 +102,12 @@ def test_body_tessellate(modeler: Modeler, skip_not_on_linux_service):
96102
assert comp_1.bodies[0]._template._tessellation is None
97103

98104

99-
def test_component_tessellate(modeler: Modeler, skip_not_on_linux_service):
105+
def test_component_tessellate(modeler: Modeler):
100106
"""Test the component tessellation."""
101107

108+
# Skip on Linux
109+
skip_if_linux(modeler, test_body_tessellate.__name__, "tessellate")
110+
102111
# Create a sketch
103112
sketch_1 = Sketch()
104113
sketch_1.box(Point2D([10, 10], UNITS.m), Quantity(10, UNITS.m), Quantity(5, UNITS.m))

0 commit comments

Comments
 (0)