Skip to content
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ test-import:
unittest:
@echo "Running unittest"
@pip install -r requirements/requirements_tests.txt
@pytest -v --cov=ansys.fluent --cov-report html:cov_html --cov-config=.coveragerc
@pytest -v -m "unmarked or integration" --cov=ansys.fluent --cov-report html:cov_html --cov-config=.coveragerc

api-codegen:
@echo "Running API codegen"
Expand Down
11 changes: 6 additions & 5 deletions pytest.ini
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
[pytest]
markers =
integration:Run integration tests
integration:Short-running tests which read a simple input file and check the exposure and values of various setting objects
quick:Run the quick tests
setup:Tests checking general features after import
solve:Test running end to end
mesh:Test meshing
optislang:Test optislang integration scenarios
setup:Read different input files, setup the simulation, initialize, and run for a few iterations and check the results
solve:Long-running tests that continue until convergence
mesh:Tests covering meshing scenarios
optislang:Test Optislang integration scenarios
unmarked:All unmarked tests, marked automatically
6 changes: 6 additions & 0 deletions tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@
]


def pytest_collection_modifyitems(items, config):
for item in items:
if not any(item.iter_markers()):
item.add_marker("unmarked")


@pytest.fixture
def with_launching_container(monkeypatch: pytest.MonkeyPatch) -> None:
monkeypatch.setenv("PYFLUENT_LAUNCH_CONTAINER", "1")
26 changes: 14 additions & 12 deletions tests/test_solvermode/test_boundaries.py
Original file line number Diff line number Diff line change
Expand Up @@ -81,27 +81,28 @@ def test_boundaries_elbow(load_mixing_elbow_mesh):

@pytest.mark.integration
@pytest.mark.setup
@pytest.mark.skip(reason="skip to run using 22.2")
@pytest.mark.skipif(os.getenv("FLUENT_IMAGE_TAG") == "v22.2.0", reason="Skip on 22.2")
def test_boundaries_periodic(load_periodic_rot_cas):
session = load_periodic_rot_cas
solver_session = load_periodic_rot_cas
print(__file__)
_THIS_DIR = os.path.dirname(__file__)
_DATA_FILE = os.path.join(_THIS_DIR, "boundaries_periodic_expDict")
pysession = session.solver
boundary_exp = json.load(open(_DATA_FILE))
boundary_test = dict()
boundary_tested = dict()
for name, boundary in pysession.setup.boundary_conditions.items():
for name, boundary in solver_session.setup.boundary_conditions.items():
boundary_test[name] = boundary()
boundary_tested["val_1"] = boundary_test
TestCase().assertDictEqual(boundary_tested["val_1"], boundary_exp["val_1"])

boundary_test = dict()
for boundary_type in pysession.setup.boundary_conditions.get_active_child_names():
for (
boundary_type
) in solver_session.setup.boundary_conditions.get_active_child_names():
if boundary_type == "matching_tolerance":
continue
for name, boundary in getattr(
pysession.setup.boundary_conditions, boundary_type
solver_session.setup.boundary_conditions, boundary_type
).items():
boundary_test[name] = boundary()
boundary_tested["val_2"] = boundary_test
Expand All @@ -111,14 +112,15 @@ def test_boundaries_periodic(load_periodic_rot_cas):
selected_bou_test = get_name_info(boundary_tested["val_1"], boundaries_check)
selected_bou_exp = get_name_info(boundary_exp["val_1"], boundaries_check)
TestCase().assertDictEqual(selected_bou_test, selected_bou_exp)

pysession.setup.boundary_conditions.wall["pipe_2_wall"].rename("pipe2_wall")
pysession.setup.boundary_conditions.wall.rename("out", "outlet")
pysession.setup.boundary_conditions.velocity_inlet["inlet"].vmag = 5.0
pysession.setup.boundary_conditions["inlet"].vmag = 10.0
# commented new method due to bug 753
# solver_session.setup.boundary_conditions.wall["pipe_2_wall"].rename("pipe2_wall")
solver_session.setup.boundary_conditions.wall.rename("pipe2_wall", "pipe_2_wall")
solver_session.setup.boundary_conditions.wall.rename("out", "outlet")
solver_session.setup.boundary_conditions.velocity_inlet["inlet"].vmag = 5.0
solver_session.setup.boundary_conditions["inlet"].vmag = 10.0
boundaries_check = ["inlet", "out", "pipe2_wall"]
boundary_test = dict()
for name, boundary in pysession.setup.boundary_conditions.items():
for name, boundary in solver_session.setup.boundary_conditions.items():
boundary_test[name] = boundary()
boundary_tested["val_3"] = boundary_test
TestCase().assertDictEqual(boundary_tested["val_3"], boundary_exp["val_3"])
Expand Down
18 changes: 18 additions & 0 deletions tests/util/fixture_fluent.py
Original file line number Diff line number Diff line change
Expand Up @@ -159,3 +159,21 @@ def sample_solver_session(with_launching_container):
solver_session = pyfluent.launch_fluent(mode="solver")
yield solver_session
solver_session.exit()


_disk_mesh_filename = None


@pytest.fixture
def load_disk_mesh(with_launching_container):
session = pyfluent.launch_fluent(
precision="double", processor_count=2, version="2d"
)
global _disk_mesh_filename
if not _disk_mesh_filename:
_disk_mesh_filename = download_file(
filename="disk.msh", directory="pyfluent/rotating_disk"
)
session.solver.root.file.read(file_type="case", file_name=_disk_mesh_filename)
yield session
session.exit()