From 98dc58a2584e498b147bda006db029340eec84cf Mon Sep 17 00:00:00 2001 From: cord Date: Mon, 14 Jul 2025 07:58:24 -0600 Subject: [PATCH 1/8] test: adding test coverage for modeler, plotting, logger, and parameters --- tests/integration/conftest.py | 11 ++++ .../files/import/CAT5/Mirrorend_plate.CATPart | Bin 0 -> 69358 bytes .../Top_Down_Assembly_SC_CATv5.CATProduct | Bin 0 -> 18748 bytes .../files/import/CAT5/end_plate.CATPart | Bin 0 -> 69069 bytes .../files/import/CAT5/handle.CATPart | Bin 0 -> 69856 bytes .../files/import/CAT5/inner_pipe.CATPart | Bin 0 -> 51860 bytes .../files/import/CAT5/legs.CATPart | Bin 0 -> 48545 bytes .../files/import/CAT5/outer_pipe.CATPart | Bin 0 -> 108564 bytes .../files/import/CAT5/outlet_pipe.CATPart | Bin 0 -> 51334 bytes .../files/import/CAT5/swing_cover.CATPart | Bin 0 -> 77164 bytes tests/integration/test_design.py | 62 +++++++++++++++++- tests/integration/test_plotter.py | 46 +++++++++++++ tests/test_logging.py | 59 +++++++++++++++++ 13 files changed, 177 insertions(+), 1 deletion(-) create mode 100644 tests/integration/files/import/CAT5/Mirrorend_plate.CATPart create mode 100644 tests/integration/files/import/CAT5/Top_Down_Assembly_SC_CATv5.CATProduct create mode 100644 tests/integration/files/import/CAT5/end_plate.CATPart create mode 100644 tests/integration/files/import/CAT5/handle.CATPart create mode 100644 tests/integration/files/import/CAT5/inner_pipe.CATPart create mode 100644 tests/integration/files/import/CAT5/legs.CATPart create mode 100644 tests/integration/files/import/CAT5/outer_pipe.CATPart create mode 100644 tests/integration/files/import/CAT5/outlet_pipe.CATPart create mode 100644 tests/integration/files/import/CAT5/swing_cover.CATPart diff --git a/tests/integration/conftest.py b/tests/integration/conftest.py index c6cad77fa4..75f8b360b0 100644 --- a/tests/integration/conftest.py +++ b/tests/integration/conftest.py @@ -215,3 +215,14 @@ def use_grpc_client_old_backend(modeler: Modeler): # Code here runs after the test, reverting the state modeler._grpc_client._backend_version = currentbackend + + +@pytest.fixture(scope="function") +def disable_active_design_check_true(): + import ansys.geometry.core as pyansys_geometry + + pyansys_geometry.DISABLE_ACTIVE_DESIGN_CHECK = True + + yield + + pyansys_geometry.DISABLE_ACTIVE_DESIGN_CHECK = False diff --git a/tests/integration/files/import/CAT5/Mirrorend_plate.CATPart b/tests/integration/files/import/CAT5/Mirrorend_plate.CATPart new file mode 100644 index 0000000000000000000000000000000000000000..7e1144fada53ce676bccd0e529327ba595835a08 GIT binary patch literal 69358 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 literal 0 HcmV?d00001 diff --git a/tests/integration/files/import/CAT5/handle.CATPart b/tests/integration/files/import/CAT5/handle.CATPart new file mode 100644 index 0000000000000000000000000000000000000000..4851d8e814ecee4112d1e7563b55ed997e97f38f GIT binary patch literal 69856 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 literal 0 HcmV?d00001 diff --git a/tests/integration/files/import/CAT5/inner_pipe.CATPart b/tests/integration/files/import/CAT5/inner_pipe.CATPart new file mode 100644 index 0000000000000000000000000000000000000000..f83d037681be19c83b231145893bac3c87d3bea8 GIT binary patch literal 51860 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 E1Igq`>i_@% literal 0 HcmV?d00001 diff --git a/tests/integration/files/import/CAT5/legs.CATPart b/tests/integration/files/import/CAT5/legs.CATPart new file mode 100644 index 0000000000000000000000000000000000000000..82b498f5d8e43757e9e2a269c8f25d6160681843 GIT binary patch literal 48545 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 literal 0 HcmV?d00001 diff --git a/tests/integration/files/import/CAT5/outer_pipe.CATPart b/tests/integration/files/import/CAT5/outer_pipe.CATPart new file mode 100644 index 0000000000000000000000000000000000000000..768979a71715448854b6597b467d23824e1f2f19 GIT binary patch literal 108564 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 R3ND5Zd6W%(Q2Z6!{{zmuo$UYs literal 0 HcmV?d00001 diff --git a/tests/integration/files/import/CAT5/swing_cover.CATPart b/tests/integration/files/import/CAT5/swing_cover.CATPart new file mode 100644 index 0000000000000000000000000000000000000000..5ec373612b974abd43ddf95fbe2799b91a0b84c9 GIT binary patch literal 77164 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 Z)J5$;7)qle$zt+wh4(r=BEH4;{{eaGaS8wc literal 0 HcmV?d00001 diff --git a/tests/integration/test_design.py b/tests/integration/test_design.py index 4e9e4229fa..7aac306888 100644 --- a/tests/integration/test_design.py +++ b/tests/integration/test_design.py @@ -31,6 +31,7 @@ from ansys.geometry.core import Modeler from ansys.geometry.core.connection import BackendType +import ansys.geometry.core.connection.defaults as pygeom_defaults from ansys.geometry.core.designer import ( CurveType, DesignFileFormat, @@ -75,7 +76,60 @@ from ansys.geometry.core.sketch import Sketch from ..conftest import are_graphics_available -from .conftest import FILES_DIR +from .conftest import FILES_DIR, IMPORT_FILES_DIR + + +def test_error_opening_file(modeler: Modeler, tmp_path_factory: pytest.TempPathFactory): + """Validating error messages when opening up files""" + fake_file_path = Path("C:\\Users\\FakeUser\\Documents\\FakeProject\\FakeFile.scdocx") + with pytest.raises(ValueError, match="Could not find file:"): + modeler._upload_file(fake_file_path) + file = tmp_path_factory.mktemp("test_design") + with pytest.raises(ValueError, match="File path must lead to a file, not a directory"): + modeler._upload_file(file) + fake_file_path = Path("C:\\Users\\FakeUser\\Documents\\FakeProject\\FakeFile.scdocx") + with pytest.raises(ValueError, match="Could not find file:"): + modeler._upload_file_stream(fake_file_path) + file = tmp_path_factory.mktemp("test_design") + with pytest.raises(ValueError, match="File path must lead to a file, not a directory"): + modeler._upload_file_stream(file) + + +def test_modeler_open_files(modeler: Modeler): + """Test the modeler open files for assembly files and for too small of files.""" + catiafile = Path(IMPORT_FILES_DIR, "CAT5/Top_Down_Assembly_SC_CATv5.CATProduct") + design = modeler.open_file(catiafile) + design.close() + old_value = pygeom_defaults.MAX_MESSAGE_LENGTH + try: + pygeom_defaults.MAX_MESSAGE_LENGTH = 1024 # 0.5 MB + with pytest.raises( + GeometryExitedError, + match="Geometry service connection terminated: Exception iterating requests!", + ): + design = modeler.open_file(catiafile) + pygeom_defaults.MAX_MESSAGE_LENGTH = 10 # 0.5 MB + with pytest.raises( + GeometryExitedError, + match="Geometry service connection terminated: Exception iterating requests!", + ): + design = modeler.open_file(Path(FILES_DIR, "InspectAndRepair01.scdocx")) + finally: + pygeom_defaults.MAX_MESSAGE_LENGTH = old_value + scfile = Path( + "D:\\AnsysDev\\pyansys-geometry\\tests\\integration\\files", "InspectAndRepair01.scdocx" + ) + design = modeler.open_file(scfile, upload_to_server=False) + + +def test_disable_active_design_check(modeler: Modeler, disable_active_design_check_true: None): + """Validating test for disabling active design check.""" + sketch = Sketch() + sketch.box(Point2D([0, 0]), 10, 10) + design = modeler.create_design("Box") + body = design.extrude_sketch("Box", sketch, 2) + design.bodies[0].edges + checks.ensure_design_is_active(design.bodies[0].edges) def test_design_is_close(modeler: Modeler): @@ -3107,6 +3161,12 @@ def test_design_parameters(modeler: Modeler): status = design.set_parameter(test_parameters[0]) assert status == ParameterUpdateStatus.CONSTRAINED_PARAMETERS + test_parameters[0].name = "NewName" + assert test_parameters[0].name == "NewName" + + test_parameters[0].dimension_type = ParameterType.DIMENSIONTYPE_AREA + assert test_parameters[0].dimension_type == ParameterType.DIMENSIONTYPE_AREA + def test_cached_bodies(modeler: Modeler): """Test that bodies are cached correctly. diff --git a/tests/integration/test_plotter.py b/tests/integration/test_plotter.py index 688d2e4841..7f7e7c147f 100644 --- a/tests/integration/test_plotter.py +++ b/tests/integration/test_plotter.py @@ -60,6 +60,7 @@ Trapezoid, Triangle, ) +from ansys.tools.visualization_interface import MeshObjectPlot skip_no_xserver = pytest.mark.skipif( not system_supports_plotting(), reason="Requires active X Server" @@ -68,6 +69,30 @@ IMAGE_RESULTS_DIR = Path(Path(__file__).parent, "image_cache", "results") +@skip_no_xserver +def test_adding_to_plotter(modeler: Modeler, verify_image_cache): + """Testing out adding things to an existing plotter while changing the color and is suppressed""" + plotter = GeometryPlotter(allow_picking=True) + plane = Plane(origin=[0, 0, 0], direction_x=[1, 0, 0], direction_y=[0, 1, 0]) + box_plane = Sketch(plane=plane) + plotting_options = {"clipping_plane": True} + plotter.add_sketch(box_plane, show_plane=True, show_frame=True, **plotting_options) + design = modeler.create_design("Box") + box_plane.box(Point2D([0.0, 0.0]), width=1, height=1) + box = design.extrude_sketch("Box", box_plane, 1) + box_plot = MeshObjectPlot(box, mesh=None) + plotter.add_body_edges(box_plot) + box.set_suppressed(True) + plotter.add_body(box) + box.set_suppressed(False) + plotter.add_body(box) + plotter.add_face(box.faces[0]) + plotter2 = GeometryPlotter(allow_picking=True, use_service_colors=True) + box.faces[0].color = "blue" + plotter2.add_face(box.faces[0]) + plotter.show(plotting_object=box) + + @skip_no_xserver def test_plot_body(modeler: Modeler, verify_image_cache): """Test plotting of the body.""" @@ -934,6 +959,25 @@ def test_plot_design_face_colors(modeler: Modeler, verify_image_cache): ) +"""@skip_no_xserver +def test_export_glb_nofilename(modeler: Modeler, verify_image_cache): + Test exporting a box to glb. + # Create a Sketch + sketch = Sketch() + sketch.box(Point2D([10, 10], UNITS.mm), Quantity(10, UNITS.mm), Quantity(10, UNITS.mm)) + + # Create your design on the server side + design = modeler.create_design("GLBBoxNoName") + + # Extrude the sketch to create a body + box_body = design.extrude_sketch("JustABoxNoName", sketch, Quantity(10, UNITS.mm)) + + pl = GeometryPlotter() + pl.plot(box_body) + + pl.export_glb(filename=None)""" + + @skip_no_xserver def test_export_glb(modeler: Modeler, verify_image_cache): """Test exporting a box to glb.""" @@ -953,6 +997,8 @@ def test_export_glb(modeler: Modeler, verify_image_cache): output_glb_path = Path(IMAGE_RESULTS_DIR, "plot_box_glb") pl.export_glb(filename=output_glb_path) + pl.export_glb(filename=None) + @skip_no_xserver def test_export_glb_with_color(modeler: Modeler, verify_image_cache): diff --git a/tests/test_logging.py b/tests/test_logging.py index 98d1e9a44f..da75bd6584 100644 --- a/tests/test_logging.py +++ b/tests/test_logging.py @@ -22,12 +22,14 @@ """ "Testing of log module.""" import logging as deflogging # Default logging +import os import re from typing import Callable import pytest from ansys.geometry.core import LOG # Global logger +from ansys.geometry.core.connection import GrpcClient import ansys.geometry.core.logger as logger ## Notes @@ -38,6 +40,63 @@ LOG_LEVELS = {"CRITICAL": 50, "ERROR": 40, "WARNING": 30, "INFO": 20, "DEBUG": 10} +def test_add_instance(): + # Testing adding an instance logger while checking if log has certain key + base_name = "root" + instance_logger_1 = LOG.add_instance_logger( + name=base_name, client_instance=GrpcClient(), level=10 + ) + instance_logger_1.info("This is a message from the first instance logger.") + with pytest.raises(KeyError, match="There is no instances with name root_4."): + LOG.__getitem__("root_4") + + +def test_custom_and_child_log(): + # Testing out writing a child log and adding std handler to it + custom_filename = os.path.join(os.getcwd(), "custom_geometry.log") + logger1 = logger.Logger(level="DEBUG", to_file=True, filename=custom_filename) + child_log = logger1._make_child_logger(suffix="ChildLogger", level="INFO") + child_log.info("This is a test to child logger") + child_log1 = logger1._make_child_logger(suffix="ChildLogger1", level=None) + child_log1.info("This is a test to child logger") + logger1.add_child_logger(suffix="ChildLogger", level="INFO") + logger.add_stdout_handler(child_log, level=logger.logging.INFO, write_headers=True) + for handler in logger1.logger.handlers: + if isinstance(handler, logger.logging.FileHandler): + handler.close() + os.remove(custom_filename) + + +def test_stdout_defined(): + # Testing if stdout is defined already and giving a custom format + logger_adapter = logger.PyGeometryCustomAdapter(LOG) + with pytest.raises( + Exception, + match="Stdout logger is already defined.", + ): + logger_adapter.log_to_stdout(level=logger.LOG_LEVEL) + formatter = logger.PyGeometryFormatter(fmt="%(levelname)s - %(instance_name)s - %(message)s") + stream_handler = logger.logging.StreamHandler() + stream_handler.setFormatter(formatter) + logger_adapter.logger.handlers = [stream_handler] + logger_adapter.setLevel("ERROR") + defaults = { + "instance_name": "DefaultInstance", + "module": "DefaultModule", + "funcName": "DefaultFunction", + } + formatter = logger.PyGeometryFormatter( + fmt="%(levelname)s - %(instance_name)s - %(module)s - %(funcName)s - %(message)s", + defaults=defaults, + ) + logger1 = logger.logging.getLogger("CustomLogger") + logger1.setLevel(logger.logging.DEBUG) + stream_handler = logger.logging.StreamHandler() + stream_handler.setFormatter(formatter) + logger1.addHandler(stream_handler) + logger1.info("This is a test message without extra fields.") + + def test_stdout_reading(capfd: pytest.CaptureFixture): """Test for checking simple standard output reading by pytest. From e983d919a3ae54d4187957123e545cc6377dc492 Mon Sep 17 00:00:00 2001 From: pyansys-ci-bot <92810346+pyansys-ci-bot@users.noreply.github.com> Date: Mon, 14 Jul 2025 14:00:59 +0000 Subject: [PATCH 2/8] chore: adding changelog file 2108.test.md [dependabot-skip] --- doc/changelog.d/2108.test.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 doc/changelog.d/2108.test.md diff --git a/doc/changelog.d/2108.test.md b/doc/changelog.d/2108.test.md new file mode 100644 index 0000000000..cbb1f6f243 --- /dev/null +++ b/doc/changelog.d/2108.test.md @@ -0,0 +1 @@ +Adding test coverage for modeler, plotting, logger, and parameters \ No newline at end of file From f7866d573740fea0956badd92f189a7c1837b726 Mon Sep 17 00:00:00 2001 From: cord Date: Mon, 14 Jul 2025 11:26:08 -0600 Subject: [PATCH 3/8] addressing comments and making fixes --- tests/integration/test_plotter.py | 39 ++++++++++++++----------------- tests/test_logging.py | 12 ++++------ 2 files changed, 22 insertions(+), 29 deletions(-) diff --git a/tests/integration/test_plotter.py b/tests/integration/test_plotter.py index 7f7e7c147f..dfb490a102 100644 --- a/tests/integration/test_plotter.py +++ b/tests/integration/test_plotter.py @@ -71,7 +71,7 @@ @skip_no_xserver def test_adding_to_plotter(modeler: Modeler, verify_image_cache): - """Testing out adding things to an existing plotter while changing the color and is suppressed""" + """Testing out clipping plane, adding body edges and face, and if body is suppressed to an existing plotter""" plotter = GeometryPlotter(allow_picking=True) plane = Plane(origin=[0, 0, 0], direction_x=[1, 0, 0], direction_y=[0, 1, 0]) box_plane = Sketch(plane=plane) @@ -87,10 +87,23 @@ def test_adding_to_plotter(modeler: Modeler, verify_image_cache): box.set_suppressed(False) plotter.add_body(box) plotter.add_face(box.faces[0]) + plotter.show(screenshot=Path(IMAGE_RESULTS_DIR, "adding_to_plotter.png")) + + +@skip_no_xserver +def test_different_color_than_default(modeler: Modeler, verify_image_cache): + """Testing out adding a face to the plotter with a different color than the default.""" + design = modeler.create_design("Box") + plane = Plane(origin=[0, 0, 0], direction_x=[1, 0, 0], direction_y=[0, 1, 0]) + box_plane = Sketch(plane=plane) + box_plane.box(Point2D([0.0, 0.0]), width=1, height=1) + box = design.extrude_sketch("Box", box_plane, 1) plotter2 = GeometryPlotter(allow_picking=True, use_service_colors=True) box.faces[0].color = "blue" plotter2.add_face(box.faces[0]) - plotter.show(plotting_object=box) + plotter2.show( + plotting_object=box, screenshot=Path(IMAGE_RESULTS_DIR, "different_color_than_default.png") + ) @skip_no_xserver @@ -959,25 +972,6 @@ def test_plot_design_face_colors(modeler: Modeler, verify_image_cache): ) -"""@skip_no_xserver -def test_export_glb_nofilename(modeler: Modeler, verify_image_cache): - Test exporting a box to glb. - # Create a Sketch - sketch = Sketch() - sketch.box(Point2D([10, 10], UNITS.mm), Quantity(10, UNITS.mm), Quantity(10, UNITS.mm)) - - # Create your design on the server side - design = modeler.create_design("GLBBoxNoName") - - # Extrude the sketch to create a body - box_body = design.extrude_sketch("JustABoxNoName", sketch, Quantity(10, UNITS.mm)) - - pl = GeometryPlotter() - pl.plot(box_body) - - pl.export_glb(filename=None)""" - - @skip_no_xserver def test_export_glb(modeler: Modeler, verify_image_cache): """Test exporting a box to glb.""" @@ -997,7 +991,8 @@ def test_export_glb(modeler: Modeler, verify_image_cache): output_glb_path = Path(IMAGE_RESULTS_DIR, "plot_box_glb") pl.export_glb(filename=output_glb_path) - pl.export_glb(filename=None) + tempglb = pl.export_glb(filename=None) + assert tempglb.exists() @skip_no_xserver diff --git a/tests/test_logging.py b/tests/test_logging.py index da75bd6584..31020a11c8 100644 --- a/tests/test_logging.py +++ b/tests/test_logging.py @@ -22,7 +22,6 @@ """ "Testing of log module.""" import logging as deflogging # Default logging -import os import re from typing import Callable @@ -41,7 +40,7 @@ def test_add_instance(): - # Testing adding an instance logger while checking if log has certain key + """Testing adding an instance logger while checking if log has certain key""" base_name = "root" instance_logger_1 = LOG.add_instance_logger( name=base_name, client_instance=GrpcClient(), level=10 @@ -51,9 +50,9 @@ def test_add_instance(): LOG.__getitem__("root_4") -def test_custom_and_child_log(): - # Testing out writing a child log and adding std handler to it - custom_filename = os.path.join(os.getcwd(), "custom_geometry.log") +def test_custom_and_child_log(tmp_path_factory: pytest.TempPathFactory): + """Testing out writing a child log and adding std handler to it""" + custom_filename = tmp_path_factory.mktemp("custom_geometry") / "custom_geometry.log" logger1 = logger.Logger(level="DEBUG", to_file=True, filename=custom_filename) child_log = logger1._make_child_logger(suffix="ChildLogger", level="INFO") child_log.info("This is a test to child logger") @@ -64,11 +63,10 @@ def test_custom_and_child_log(): for handler in logger1.logger.handlers: if isinstance(handler, logger.logging.FileHandler): handler.close() - os.remove(custom_filename) def test_stdout_defined(): - # Testing if stdout is defined already and giving a custom format + """Testing if stdout is defined already and giving a custom format""" logger_adapter = logger.PyGeometryCustomAdapter(LOG) with pytest.raises( Exception, From 98330f935d9c4bb0839a77b95c0402a25948f536 Mon Sep 17 00:00:00 2001 From: cord Date: Mon, 14 Jul 2025 11:31:35 -0600 Subject: [PATCH 4/8] fixing pre-commit issues --- tests/integration/test_design.py | 2 +- tests/integration/test_plotter.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/integration/test_design.py b/tests/integration/test_design.py index 7aac306888..5289d89d4d 100644 --- a/tests/integration/test_design.py +++ b/tests/integration/test_design.py @@ -127,7 +127,7 @@ def test_disable_active_design_check(modeler: Modeler, disable_active_design_che sketch = Sketch() sketch.box(Point2D([0, 0]), 10, 10) design = modeler.create_design("Box") - body = design.extrude_sketch("Box", sketch, 2) + design.extrude_sketch("Box", sketch, 2) design.bodies[0].edges checks.ensure_design_is_active(design.bodies[0].edges) diff --git a/tests/integration/test_plotter.py b/tests/integration/test_plotter.py index dfb490a102..b1bb96bbb6 100644 --- a/tests/integration/test_plotter.py +++ b/tests/integration/test_plotter.py @@ -71,7 +71,8 @@ @skip_no_xserver def test_adding_to_plotter(modeler: Modeler, verify_image_cache): - """Testing out clipping plane, adding body edges and face, and if body is suppressed to an existing plotter""" + """Testing out clipping plane, adding body edges and face, + and if body is suppressed to an existing plotter""" plotter = GeometryPlotter(allow_picking=True) plane = Plane(origin=[0, 0, 0], direction_x=[1, 0, 0], direction_y=[0, 1, 0]) box_plane = Sketch(plane=plane) From 3e40be5b706874d7ac6da82e6eb5ea229e31221c Mon Sep 17 00:00:00 2001 From: cord Date: Mon, 14 Jul 2025 11:56:12 -0600 Subject: [PATCH 5/8] fixing file path --- tests/integration/test_design.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/tests/integration/test_design.py b/tests/integration/test_design.py index 5289d89d4d..82c9f00c38 100644 --- a/tests/integration/test_design.py +++ b/tests/integration/test_design.py @@ -116,9 +116,7 @@ def test_modeler_open_files(modeler: Modeler): design = modeler.open_file(Path(FILES_DIR, "InspectAndRepair01.scdocx")) finally: pygeom_defaults.MAX_MESSAGE_LENGTH = old_value - scfile = Path( - "D:\\AnsysDev\\pyansys-geometry\\tests\\integration\\files", "InspectAndRepair01.scdocx" - ) + scfile = Path(FILES_DIR, "InspectAndRepair01.scdocx") design = modeler.open_file(scfile, upload_to_server=False) From 522ee36dc63de923567dddecb4906934e0ecceae Mon Sep 17 00:00:00 2001 From: cord Date: Tue, 15 Jul 2025 09:13:42 -0600 Subject: [PATCH 6/8] removing code that relies not on being on a remote machine --- tests/integration/test_design.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/integration/test_design.py b/tests/integration/test_design.py index 82c9f00c38..2e39404754 100644 --- a/tests/integration/test_design.py +++ b/tests/integration/test_design.py @@ -116,8 +116,6 @@ def test_modeler_open_files(modeler: Modeler): design = modeler.open_file(Path(FILES_DIR, "InspectAndRepair01.scdocx")) finally: pygeom_defaults.MAX_MESSAGE_LENGTH = old_value - scfile = Path(FILES_DIR, "InspectAndRepair01.scdocx") - design = modeler.open_file(scfile, upload_to_server=False) def test_disable_active_design_check(modeler: Modeler, disable_active_design_check_true: None): From 96c8f7eba40530cc24976318b8e8312a1769a524 Mon Sep 17 00:00:00 2001 From: cord Date: Tue, 15 Jul 2025 09:17:03 -0600 Subject: [PATCH 7/8] adding lines that are in main repo --- tests/integration/test_plotter.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/integration/test_plotter.py b/tests/integration/test_plotter.py index b1bb96bbb6..a4e9284a4c 100644 --- a/tests/integration/test_plotter.py +++ b/tests/integration/test_plotter.py @@ -995,6 +995,10 @@ def test_export_glb(modeler: Modeler, verify_image_cache): tempglb = pl.export_glb(filename=None) assert tempglb.exists() + # Add suffix to the output path + output_glb_path = output_glb_path.with_suffix(".glb") + assert output_glb_path.exists(), "GLB file was not created successfully." + @skip_no_xserver def test_export_glb_with_color(modeler: Modeler, verify_image_cache): From b78dc4cdf8942d2e65ece554a1e770e62a3ded7c Mon Sep 17 00:00:00 2001 From: cord Date: Wed, 16 Jul 2025 05:52:07 -0600 Subject: [PATCH 8/8] removing unneeded line --- tests/integration/test_design.py | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/integration/test_design.py b/tests/integration/test_design.py index 2e39404754..d8787815ee 100644 --- a/tests/integration/test_design.py +++ b/tests/integration/test_design.py @@ -124,7 +124,6 @@ def test_disable_active_design_check(modeler: Modeler, disable_active_design_che sketch.box(Point2D([0, 0]), 10, 10) design = modeler.create_design("Box") design.extrude_sketch("Box", sketch, 2) - design.bodies[0].edges checks.ensure_design_is_active(design.bodies[0].edges)