@@ -26,6 +26,13 @@ class CroAlgorithmTest {
2626
2727 private lateinit var injector: Injector
2828
29+ private fun defaultSetup (config : EMConfig ) {
30+ config.algorithm = EMConfig .Algorithm .CRO
31+ config.stoppingCriterion = EMConfig .StoppingCriterion .ACTION_EVALUATIONS
32+ config.maxEvaluations = 1
33+ config.croInitialKineticEnergy = 0.0
34+ }
35+
2936 @BeforeEach
3037 fun setUp () {
3138 injector = LifecycleInjector .builder()
@@ -71,10 +78,7 @@ class CroAlgorithmTest {
7178
7279 // Single molecule guarantees uni-molecular branch regardless of collision rate
7380 config.populationSize = 1
74- config.algorithm = EMConfig .Algorithm .CRO
75- config.stoppingCriterion = EMConfig .StoppingCriterion .ACTION_EVALUATIONS
76- config.maxEvaluations = 1
77- config.croInitialKineticEnergy = 0.0
81+ defaultSetup(config)
7882 // Force decomposition check to true without touching internal state (0 > -1)
7983 config.croDecompositionThreshold = - 1
8084
@@ -113,10 +117,7 @@ class CroAlgorithmTest {
113117
114118 // Uni-molecular branch
115119 config.populationSize = 1
116- config.algorithm = EMConfig .Algorithm .CRO
117- config.stoppingCriterion = EMConfig .StoppingCriterion .ACTION_EVALUATIONS
118- config.maxEvaluations = 1
119- config.croInitialKineticEnergy = 0.0
120+ defaultSetup(config)
120121 // Force decomposition check true
121122 config.croDecompositionThreshold = - 1
122123
@@ -154,10 +155,7 @@ class CroAlgorithmTest {
154155 randomness.updateSeed(456L )
155156
156157 config.populationSize = 1
157- config.algorithm = EMConfig .Algorithm .CRO
158- config.stoppingCriterion = EMConfig .StoppingCriterion .ACTION_EVALUATIONS
159- config.maxEvaluations = 1
160- config.croInitialKineticEnergy = 0.0
158+ defaultSetup(config)
161159
162160 cro.setupBeforeSearch()
163161
@@ -193,10 +191,7 @@ class CroAlgorithmTest {
193191 randomness.updateSeed(321L )
194192
195193 config.populationSize = 1
196- config.algorithm = EMConfig .Algorithm .CRO
197- config.stoppingCriterion = EMConfig .StoppingCriterion .ACTION_EVALUATIONS
198- config.maxEvaluations = 1
199- config.croInitialKineticEnergy = 0.0
194+ defaultSetup(config)
200195
201196 // Force on-wall branch (decomposition false)
202197 config.croDecompositionThreshold = Int .MAX_VALUE
@@ -233,10 +228,7 @@ class CroAlgorithmTest {
233228
234229 // Force inter-molecular branch and synthesis check true (KE=0 <= threshold)
235230 config.populationSize = 2
236- config.algorithm = EMConfig .Algorithm .CRO
237- config.stoppingCriterion = EMConfig .StoppingCriterion .ACTION_EVALUATIONS
238- config.maxEvaluations = 1
239- config.croInitialKineticEnergy = 0.0
231+ defaultSetup(config)
240232 config.croMolecularCollisionRate = 1.0
241233 config.croSynthesisThreshold = 0.0
242234
@@ -270,10 +262,7 @@ class CroAlgorithmTest {
270262 randomness.updateSeed(112L )
271263
272264 config.populationSize = 2
273- config.algorithm = EMConfig .Algorithm .CRO
274- config.stoppingCriterion = EMConfig .StoppingCriterion .ACTION_EVALUATIONS
275- config.maxEvaluations = 1
276- config.croInitialKineticEnergy = 0.0
265+ defaultSetup(config)
277266 config.croMolecularCollisionRate = 1.0
278267 config.croSynthesisThreshold = 0.0 // synthesisCheck true
279268
@@ -310,10 +299,7 @@ class CroAlgorithmTest {
310299 randomness.updateSeed(113L )
311300
312301 config.populationSize = 2
313- config.algorithm = EMConfig .Algorithm .CRO
314- config.stoppingCriterion = EMConfig .StoppingCriterion .ACTION_EVALUATIONS
315- config.maxEvaluations = 1
316- config.croInitialKineticEnergy = 0.0
302+ defaultSetup(config)
317303 config.croMolecularCollisionRate = 1.0
318304 config.croSynthesisThreshold = - 1.0 // synthesisCheck false
319305
@@ -352,10 +338,7 @@ class CroAlgorithmTest {
352338 randomness.updateSeed(114L )
353339
354340 config.populationSize = 2
355- config.algorithm = EMConfig .Algorithm .CRO
356- config.stoppingCriterion = EMConfig .StoppingCriterion .ACTION_EVALUATIONS
357- config.maxEvaluations = 1
358- config.croInitialKineticEnergy = 0.0
341+ defaultSetup(config)
359342 config.croMolecularCollisionRate = 1.0
360343 config.croSynthesisThreshold = - 1.0 // synthesisCheck false
361344
0 commit comments