22from unittest .mock import MagicMock
33
44import numpy as np
5+ from micro_manager .simulation_container import SimulationContainer
56from mpi4py import MPI
67
78from micro_manager .tools .p2p import get_ranks_of_sims
@@ -60,17 +61,20 @@ def test_update_inactive_sims_global_adaptivity(self):
6061 self ._configurator .adaptivity_similarity_measure = MagicMock (return_value = "L1" )
6162
6263 sim_cls = create_simulation_class (
63- MagicMock (),
64- MicroSimulation ,
65- __file__ ,
66- 1 ,
67- None ,
64+ MagicMock (), MicroSimulation , __file__ , 1 , None , "test_micro_manager"
6865 )
6966
70- adaptivity_controller = GlobalAdaptivityCalculator (
71- self . _configurator ,
67+ container = SimulationContainer ()
68+ container . initialize (
7269 5 ,
70+ len (global_ids ),
7371 global_ids ,
72+ [np .zeros (3 ) for _ in range (len (global_ids ))],
73+ )
74+
75+ adaptivity_controller = GlobalAdaptivityCalculator (
76+ self ._configurator ,
77+ sim_container = container ,
7478 participant = MagicMock (),
7579 base_logger = MagicMock (),
7680 rank = self ._rank ,
@@ -93,11 +97,10 @@ def check_for_activation(i, active):
9397
9498 adaptivity_controller ._check_for_activation = check_for_activation
9599
96- dummy_micro_sims = []
97- for i in global_ids :
98- dummy_micro_sims .append (sim_cls (i ))
100+ for lid , gid in enumerate (container .local_gids ):
101+ container [lid ] = sim_cls (gid )
99102
100- adaptivity_controller ._update_inactive_sims (dummy_micro_sims )
103+ adaptivity_controller ._update_inactive_sims ()
101104
102105 self .assertTrue (
103106 np .array_equal (expected_is_sim_active , adaptivity_controller ._is_sim_active )
@@ -110,9 +113,9 @@ def check_for_activation(i, active):
110113 )
111114
112115 if self ._rank == 0 :
113- self .assertTrue (np .array_equal ([3 , 3 , 3 ], dummy_micro_sims [0 ].get_state ()))
116+ self .assertTrue (np .array_equal ([3 , 3 , 3 ], container [0 ].get_state ()))
114117 elif self ._rank == 1 :
115- self .assertTrue (np .array_equal ([2 , 2 , 2 ], dummy_micro_sims [1 ].get_state ()))
118+ self .assertTrue (np .array_equal ([2 , 2 , 2 ], container [1 ].get_state ()))
116119
117120 def test_update_all_active_sims_global_adaptivity (self ):
118121 """
@@ -150,10 +153,17 @@ def test_update_all_active_sims_global_adaptivity(self):
150153 None ,
151154 )
152155
153- adaptivity_controller = GlobalAdaptivityCalculator (
154- self . _configurator ,
156+ container = SimulationContainer ()
157+ container . initialize (
155158 5 ,
159+ len (global_ids ),
156160 global_ids ,
161+ [np .zeros (3 ) for _ in range (len (global_ids ))],
162+ )
163+
164+ adaptivity_controller = GlobalAdaptivityCalculator (
165+ self ._configurator ,
166+ sim_container = container ,
157167 participant = MagicMock (),
158168 base_logger = MagicMock (),
159169 rank = self ._rank ,
@@ -164,13 +174,11 @@ def test_update_all_active_sims_global_adaptivity(self):
164174
165175 adaptivity_controller ._adaptivity_data_names = ["data1" , "data2" ]
166176
167- dummy_micro_sims = []
168- for i in global_ids :
169- dummy_micro_sims .append (sim_cls (i ))
177+ for lid , gid in enumerate (container .local_gids ):
178+ container [lid ] = sim_cls (gid )
170179
171180 adaptivity_controller .compute_adaptivity (
172181 0.1 ,
173- dummy_micro_sims ,
174182 data_for_adaptivity ,
175183 )
176184
@@ -212,10 +220,17 @@ def test_communicate_micro_output(self):
212220 None ,
213221 )
214222
215- adaptivity_controller = GlobalAdaptivityCalculator (
216- self . _configurator ,
223+ container = SimulationContainer ()
224+ container . initialize (
217225 5 ,
226+ len (global_ids ),
218227 global_ids ,
228+ [np .zeros (3 ) for _ in range (len (global_ids ))],
229+ )
230+
231+ adaptivity_controller = GlobalAdaptivityCalculator (
232+ self ._configurator ,
233+ sim_container = container ,
219234 participant = MagicMock (),
220235 base_logger = MagicMock (),
221236 rank = self ._rank ,
@@ -250,26 +265,6 @@ def test_get_ranks_of_sims(self):
250265 global_ids = [3 , 4 ]
251266 expected_ranks_of_sims = [0 , 0 , 0 , 1 , 1 ]
252267
253- sim_cls = create_simulation_class (
254- MagicMock (),
255- MicroSimulation ,
256- __file__ ,
257- 1 ,
258- None ,
259- )
260-
261- adaptivity_controller = GlobalAdaptivityCalculator (
262- self ._configurator ,
263- 5 ,
264- global_ids ,
265- participant = MagicMock (),
266- base_logger = MagicMock (),
267- rank = self ._rank ,
268- comm = self ._comm ,
269- micro_problem_cls = sim_cls ,
270- model_manager = ModelManager (),
271- )
272-
273268 actual_ranks_of_sims = get_ranks_of_sims (global_ids , self ._rank , self ._comm , 5 )
274269
275270 self .assertTrue (np .array_equal (expected_ranks_of_sims , actual_ranks_of_sims ))
0 commit comments