@@ -19,6 +19,8 @@ TEST_CASE("qp-unbounded", "[qpsolver]") {
1919 REQUIRE (highs.readModel (filename) == HighsStatus::kOk );
2020 REQUIRE (highs.run () == HighsStatus::kOk );
2121 REQUIRE (highs.getModelStatus () == HighsModelStatus::kUnbounded );
22+
23+ highs.resetGlobalScheduler (true );
2224}
2325
2426TEST_CASE (" qp-infeasible" , " [qpsolver]" ) {
@@ -30,6 +32,8 @@ TEST_CASE("qp-infeasible", "[qpsolver]") {
3032 REQUIRE (highs.readModel (filename) == HighsStatus::kOk );
3133 REQUIRE (highs.run () == HighsStatus::kOk );
3234 REQUIRE (highs.getModelStatus () == HighsModelStatus::kInfeasible );
35+
36+ highs.resetGlobalScheduler (true );
3337}
3438
3539TEST_CASE (" qpsolver" , " [qpsolver]" ) {
@@ -153,6 +157,8 @@ TEST_CASE("qpsolver", "[qpsolver]") {
153157 highs.setOptionValue (" solve_relaxation" , true );
154158 return_status = highs.run ();
155159 REQUIRE (return_status == HighsStatus::kOk );
160+
161+ highs.resetGlobalScheduler (true );
156162}
157163
158164TEST_CASE (" test-qod" , " [qpsolver]" ) {
@@ -296,6 +302,8 @@ TEST_CASE("test-qod", "[qpsolver]") {
296302 double_equal_tolerance);
297303 REQUIRE (fabs (solution.col_value [0 ] - required_x0) < double_equal_tolerance);
298304 REQUIRE (fabs (solution.col_value [1 ] - required_x1) < double_equal_tolerance);
305+
306+ highs.resetGlobalScheduler (true );
299307}
300308
301309TEST_CASE (" test-qjh" , " [qpsolver]" ) {
@@ -404,6 +412,8 @@ TEST_CASE("test-qjh", "[qpsolver]") {
404412 double_equal_tolerance);
405413 return_status = highs.clearModel ();
406414 }
415+
416+ highs.resetGlobalScheduler (true );
407417}
408418
409419TEST_CASE (" test-min-negative-definite" , " [qpsolver]" ) {
@@ -425,6 +435,8 @@ TEST_CASE("test-min-negative-definite", "[qpsolver]") {
425435 REQUIRE (highs.passModel (model) == HighsStatus::kOk );
426436 // Run should fail since objective is non-convex
427437 REQUIRE (highs.run () == HighsStatus::kError );
438+
439+ highs.resetGlobalScheduler (true );
428440}
429441
430442TEST_CASE (" test-max-negative-definite" , " [qpsolver]" ) {
@@ -475,6 +487,8 @@ TEST_CASE("test-max-negative-definite", "[qpsolver]") {
475487 REQUIRE (fabs (solution.col_value [2 ] - 2.5 ) < double_equal_tolerance);
476488 REQUIRE (fabs (solution.col_dual [0 ] + 1.0 ) < double_equal_tolerance);
477489 REQUIRE (fabs (solution.row_dual [0 ] + 0.5 ) < double_equal_tolerance);
490+
491+ highs.resetGlobalScheduler (true );
478492}
479493
480494TEST_CASE (" test-semi-definite0" , " [qpsolver]" ) {
@@ -514,6 +528,8 @@ TEST_CASE("test-semi-definite0", "[qpsolver]") {
514528 return_status = highs.run ();
515529 REQUIRE (return_status == HighsStatus::kOk );
516530 if (dev_run) highs.writeSolution (" " , kSolutionStylePretty );
531+
532+ highs.resetGlobalScheduler (true );
517533}
518534
519535TEST_CASE (" test-semi-definite1" , " [qpsolver]" ) {
@@ -552,6 +568,8 @@ TEST_CASE("test-semi-definite1", "[qpsolver]") {
552568 REQUIRE (fabs (objective_function_value + 1.5 ) < double_equal_tolerance);
553569 REQUIRE (fabs (solution.col_value [0 ] - 1 ) < double_equal_tolerance);
554570 REQUIRE (fabs (solution.col_value [1 ]) < double_equal_tolerance);
571+
572+ highs.resetGlobalScheduler (true );
555573}
556574
557575TEST_CASE (" test-semi-definite2" , " [qpsolver]" ) {
@@ -590,6 +608,8 @@ TEST_CASE("test-semi-definite2", "[qpsolver]") {
590608 REQUIRE (fabs (objective_function_value + 1.5 ) < double_equal_tolerance);
591609 REQUIRE (fabs (solution.col_value [0 ] + 1 ) < double_equal_tolerance);
592610 REQUIRE (fabs (solution.col_value [1 ] - 2 ) < double_equal_tolerance);
611+
612+ highs.resetGlobalScheduler (true );
593613}
594614
595615void hessianProduct (const HighsHessian& hessian, const std::vector<double >& arg,
@@ -711,6 +731,8 @@ TEST_CASE("test-qp-modification", "[qpsolver]") {
711731 }
712732 highs.run ();
713733 if (dev_run) highs.writeSolution (" " , kSolutionStylePretty );
734+
735+ highs.resetGlobalScheduler (true );
714736}
715737
716738TEST_CASE (" test-qp-delete-col" , " [qpsolver]" ) {
@@ -984,6 +1006,8 @@ TEST_CASE("test-qp-hot-start", "[qpsolver]") {
9841006 REQUIRE (info.qp_iteration_count == 1 );
9851007 }
9861008 }
1009+
1010+ highs.resetGlobalScheduler (true );
9871011}
9881012
9891013TEST_CASE (" test-qp-terminations" , " [qpsolver]" ) {
@@ -1011,6 +1035,8 @@ TEST_CASE("test-qp-terminations", "[qpsolver]") {
10111035 REQUIRE (highs.run () == HighsStatus::kError );
10121036 REQUIRE (highs.getModelStatus () == HighsModelStatus::kSolveError );
10131037 highs.setOptionValue (" qp_nullspace_limit" , 4000 );
1038+
1039+ highs.resetGlobalScheduler (true );
10141040}
10151041
10161042TEST_CASE (" rowless-qp" , " [qpsolver]" ) {
@@ -1050,4 +1076,6 @@ TEST_CASE("rowless-qp", "[qpsolver]") {
10501076 REQUIRE (dl_solution < 1e-6 );
10511077 dl_solution = std::fabs (col_value[1 ] - 1.5 );
10521078 REQUIRE (dl_solution < 1e-6 );
1079+
1080+ highs.resetGlobalScheduler (true );
10531081}
0 commit comments