From 56322b9b3f57c5eeebfd967dff8dea44834b2dad Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Tue, 3 Sep 2019 21:50:16 -0500 Subject: [PATCH] Make sure capi.init is called with intracomm in tests when MPI is enabled --- tests/unit_tests/conftest.py | 11 +++++++++++ tests/unit_tests/test_capi.py | 8 ++++---- tests/unit_tests/test_complex_cell_capi.py | 4 ++-- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/tests/unit_tests/conftest.py b/tests/unit_tests/conftest.py index aa28be9c3b..b69ef0b138 100644 --- a/tests/unit_tests/conftest.py +++ b/tests/unit_tests/conftest.py @@ -1,6 +1,17 @@ import openmc import pytest +from tests.regression_tests import config + + +@pytest.fixture(scope='module') +def mpi_intracomm(): + if config['mpi']: + from mpi4py import MPI + return MPI.COMM_WORLD + else: + return None + @pytest.fixture(scope='module') def uo2(): diff --git a/tests/unit_tests/test_capi.py b/tests/unit_tests/test_capi.py index ed0bfd441d..c8ad0907c5 100644 --- a/tests/unit_tests/test_capi.py +++ b/tests/unit_tests/test_capi.py @@ -50,8 +50,8 @@ def pincell_model(): @pytest.fixture(scope='module') -def capi_init(pincell_model): - openmc.capi.init() +def capi_init(pincell_model, mpi_intracomm): + openmc.capi.init(intracomm=mpi_intracomm) yield openmc.capi.finalize() @@ -408,11 +408,11 @@ def test_mesh(capi_init): assert msf.mesh == mesh -def test_restart(capi_init): +def test_restart(capi_init, mpi_intracomm): # Finalize and re-init to make internal state consistent with XML. openmc.capi.hard_reset() openmc.capi.finalize() - openmc.capi.init() + openmc.capi.init(intracomm=mpi_intracomm) openmc.capi.simulation_init() # Run for 7 batches then write a statepoint. diff --git a/tests/unit_tests/test_complex_cell_capi.py b/tests/unit_tests/test_complex_cell_capi.py index 365ce48081..a76fa63076 100644 --- a/tests/unit_tests/test_complex_cell_capi.py +++ b/tests/unit_tests/test_complex_cell_capi.py @@ -3,7 +3,7 @@ import openmc.capi import pytest @pytest.fixture(autouse=True) -def complex_cell(run_in_tmpdir): +def complex_cell(run_in_tmpdir, mpi_intracomm): openmc.reset_auto_ids() @@ -74,7 +74,7 @@ def complex_cell(run_in_tmpdir): model.export_to_xml() openmc.capi.finalize() - openmc.capi.init() + openmc.capi.init(intracomm=mpi_intracomm) yield