diff --git a/pyproject.toml b/pyproject.toml index ea025ab3..e52e0775 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -25,7 +25,7 @@ packages = [ [tool.poetry.dependencies] python = ">=3.9,<4.0" importlib-metadata = {version = "^4.0", python = "<3.9"} -ansys-fluent-core = "~=0.14.dev0" +ansys-fluent-core = "~=0.20.dev7" vtk = ">=9.3.0.rc0" pyvista = ">=0.39.0" pyvistaqt = ">=0.7.0" diff --git a/src/ansys/fluent/visualization/_config.py b/src/ansys/fluent/visualization/_config.py index 927c72a8..73f9a7fa 100644 --- a/src/ansys/fluent/visualization/_config.py +++ b/src/ansys/fluent/visualization/_config.py @@ -25,6 +25,14 @@ def set_config(blocking: bool = False, set_view_on_display: str = None): If specified, then graphics will always be displayed in the specified view. Valid values are xy, xz, yx, yz, zx, zy and isometric. """ + if set_view_on_display not in set_config.allowed_views: + raise ValueError( + f"'{set_view_on_display}' is not an allowed view.\n" + f"Allowed views are: {set_config.allowed_views}" + ) _global_config["blocking"] = blocking _global_config["set_view_on_display"] = set_view_on_display + + +set_config.allowed_views = ["xy", "xz", "yx", "yz", "zx", "zy", "isometric"] diff --git a/tests/test_post.py b/tests/test_post.py index c7193766..28d32575 100644 --- a/tests/test_post.py +++ b/tests/test_post.py @@ -6,6 +6,7 @@ import numpy as np import pytest +from ansys.fluent.visualization import get_config, set_config from ansys.fluent.visualization.matplotlib import Plots from ansys.fluent.visualization.pyvista import Graphics @@ -489,3 +490,26 @@ def test_xyplot_object(): with pytest.raises(ValueError) as value_error: p1.y_axis_function = "field_does_not_exist" + + +def test_get_set_config(): + assert not get_config()["blocking"] + assert not get_config()["set_view_on_display"] + + set_config(blocking=True, set_view_on_display="isometric") + + assert get_config()["blocking"] + assert get_config()["set_view_on_display"] == "isometric" + + with pytest.raises(ValueError): + set_config(blocking=True, set_view_on_display="front") + + assert set(set_config.allowed_views) == { + "xy", + "xz", + "yx", + "yz", + "zx", + "zy", + "isometric", + }