@@ -231,7 +231,7 @@ std::function<void(int, const std::string&, const HighsCallbackDataOut*,
231231 data_out->objective_function_value , message.c_str ());
232232 };
233233
234- TEST_CASE (" my-callback-logging" , " [highs-callback ]" ) {
234+ TEST_CASE (" my-callback-logging" , " [highs_callback ]" ) {
235235 bool output_flag = true ; // Still runs quietly
236236 bool log_to_console = false ;
237237 HighsInt log_dev_level = kHighsLogDevLevelInfo ;
@@ -281,7 +281,7 @@ TEST_CASE("my-callback-logging", "[highs-callback]") {
281281 }
282282}
283283
284- TEST_CASE (" highs-callback-logging" , " [highs-callback ]" ) {
284+ TEST_CASE (" highs-callback-logging" , " [highs_callback ]" ) {
285285 // Uses userInterruptCallback to start logging lines with
286286 // "userInterruptCallback(kUserCallbackData): " since
287287 // Highs::setCallback has second argument p_user_callback_data
@@ -295,9 +295,11 @@ TEST_CASE("highs-callback-logging", "[highs-callback]") {
295295 highs.startCallback (kCallbackLogging );
296296 highs.readModel (filename);
297297 highs.run ();
298+
299+ highs.resetGlobalScheduler (true );
298300}
299301
300- TEST_CASE (" highs-callback-solution-basis-logging" , " [highs-callback ]" ) {
302+ TEST_CASE (" highs-callback-solution-basis-logging" , " [highs_callback ]" ) {
301303 std::string filename = std::string (HIGHS_DIR) + " /check/instances/avgas.mps" ;
302304 int user_callback_data = kUserCallbackData ;
303305 void * p_user_callback_data =
@@ -310,9 +312,11 @@ TEST_CASE("highs-callback-solution-basis-logging", "[highs-callback]") {
310312 highs.startCallback (kCallbackLogging );
311313 if (dev_run) highs.writeSolution (" " , kSolutionStylePretty );
312314 if (dev_run) highs.writeBasis (" " );
315+
316+ highs.resetGlobalScheduler (true );
313317}
314318
315- TEST_CASE (" highs-callback-simplex-interrupt" , " [highs-callback ]" ) {
319+ TEST_CASE (" highs-callback-simplex-interrupt" , " [highs_callback ]" ) {
316320 std::string filename =
317321 std::string (HIGHS_DIR) + " /check/instances/adlittle.mps" ;
318322 Highs highs;
@@ -325,9 +329,11 @@ TEST_CASE("highs-callback-simplex-interrupt", "[highs-callback]") {
325329 REQUIRE (highs.getModelStatus () == HighsModelStatus::kInterrupt );
326330 REQUIRE (highs.getInfo ().simplex_iteration_count >
327331 adlittle_simplex_iteration_limit);
332+
333+ highs.resetGlobalScheduler (true );
328334}
329335
330- TEST_CASE (" highs-callback-ipm-interrupt" , " [highs-callback ]" ) {
336+ TEST_CASE (" highs-callback-ipm-interrupt" , " [highs_callback ]" ) {
331337 std::string filename =
332338 std::string (HIGHS_DIR) + " /check/instances/adlittle.mps" ;
333339 Highs highs;
@@ -340,9 +346,11 @@ TEST_CASE("highs-callback-ipm-interrupt", "[highs-callback]") {
340346 REQUIRE (status == HighsStatus::kWarning );
341347 REQUIRE (highs.getModelStatus () == HighsModelStatus::kInterrupt );
342348 REQUIRE (highs.getInfo ().ipm_iteration_count > adlittle_ipm_iteration_limit);
349+
350+ highs.resetGlobalScheduler (true );
343351}
344352
345- TEST_CASE (" highs-callback-mip-interrupt" , " [highs-callback ]" ) {
353+ TEST_CASE (" highs-callback-mip-interrupt" , " [highs_callback ]" ) {
346354 std::string filename = std::string (HIGHS_DIR) + " /check/instances/egout.mps" ;
347355 Highs highs;
348356 highs.setOptionValue (" output_flag" , dev_run);
@@ -354,9 +362,11 @@ TEST_CASE("highs-callback-mip-interrupt", "[highs-callback]") {
354362 REQUIRE (status == HighsStatus::kWarning );
355363 REQUIRE (highs.getModelStatus () == HighsModelStatus::kInterrupt );
356364 REQUIRE (highs.getInfo ().objective_function_value > egout_optimal_objective);
365+
366+ highs.resetGlobalScheduler (true );
357367}
358368
359- TEST_CASE (" highs-callback-mip-improving" , " [highs-callback ]" ) {
369+ TEST_CASE (" highs-callback-mip-improving" , " [highs_callback ]" ) {
360370 std::string filename = std::string (HIGHS_DIR) + " /check/instances/egout.mps" ;
361371 Highs highs;
362372 highs.setOptionValue (" output_flag" , dev_run);
@@ -367,9 +377,11 @@ TEST_CASE("highs-callback-mip-improving", "[highs-callback]") {
367377 highs.startCallback (kCallbackMipImprovingSolution );
368378 highs.readModel (filename);
369379 highs.run ();
380+
381+ highs.resetGlobalScheduler (true );
370382}
371383
372- TEST_CASE (" highs-callback-mip-data" , " [highs-callback ]" ) {
384+ TEST_CASE (" highs-callback-mip-data" , " [highs_callback ]" ) {
373385 std::string filename = std::string (HIGHS_DIR) + " /check/instances/egout.mps" ;
374386 Highs highs;
375387 highs.setOptionValue (" output_flag" , dev_run);
@@ -379,9 +391,11 @@ TEST_CASE("highs-callback-mip-data", "[highs-callback]") {
379391 highs.startCallback (kCallbackMipLogging );
380392 highs.readModel (filename);
381393 highs.run ();
394+
395+ highs.resetGlobalScheduler (true );
382396}
383397
384- TEST_CASE (" highs-callback-mip-solution" , " [highs-callback ]" ) {
398+ TEST_CASE (" highs-callback-mip-solution" , " [highs_callback ]" ) {
385399 std::string filename = std::string (HIGHS_DIR) + " /check/instances/egout.mps" ;
386400 Highs highs;
387401 highs.setOptionValue (" output_flag" , dev_run);
@@ -399,19 +413,23 @@ TEST_CASE("highs-callback-mip-solution", "[highs-callback]") {
399413 highs.setCallback (userMipSolutionCallback, p_user_callback_data);
400414 highs.startCallback (kCallbackMipSolution );
401415 highs.run ();
416+
417+ highs.resetGlobalScheduler (true );
402418}
403419
404- TEST_CASE (" highs-callback-mip-cut-pool" , " [highs-callback ]" ) {
420+ TEST_CASE (" highs-callback-mip-cut-pool" , " [highs_callback ]" ) {
405421 std::string filename = std::string (HIGHS_DIR) + " /check/instances/flugpl.mps" ;
406422 Highs highs;
407423 highs.setOptionValue (" output_flag" , dev_run);
408424 highs.readModel (filename);
409425 highs.setCallback (userMipCutPoolCallback);
410426 highs.startCallback (kCallbackMipGetCutPool );
411427 highs.run ();
428+
429+ highs.resetGlobalScheduler (true );
412430}
413431
414- TEST_CASE (" highs-callback-mip-user-solution" , " [highs-callback ]" ) {
432+ TEST_CASE (" highs-callback-mip-user-solution" , " [highs_callback ]" ) {
415433 // const std::vector<std::string> model = {"rgn", "flugpl", "gt2", "egout",
416434 // "bell5", "lseu", "sp150x300d"};//, "p0548", "dcmulti"}; const
417435 // std::vector<HighsInt> require_origin = {0, 1, 2, 3, 4, 5, 6};
@@ -451,4 +469,6 @@ TEST_CASE("highs-callback-mip-user-solution", "[highs-callback]") {
451469 std::max (1.0 , std::fabs (objective_function_value0));
452470 REQUIRE (objective_diff < 1e-12 );
453471 }
472+
473+ highs.resetGlobalScheduler (true );
454474}
0 commit comments