From a0ac1cef70f43595d61f99bee97f7d67ae4aff73 Mon Sep 17 00:00:00 2001 From: Andrew Wu Date: Mon, 12 Aug 2024 16:48:58 -0400 Subject: [PATCH] fix unit test --- src/engine/SumOfInfeasibilitiesManager.cpp | 6 ++++++ src/engine/SumOfInfeasibilitiesManager.h | 2 ++ src/engine/tests/Test_SumOfInfeasibilitiesManager.h | 3 +++ 3 files changed, 11 insertions(+) diff --git a/src/engine/SumOfInfeasibilitiesManager.cpp b/src/engine/SumOfInfeasibilitiesManager.cpp index 606a059bb..1ed7b4d2b 100644 --- a/src/engine/SumOfInfeasibilitiesManager.cpp +++ b/src/engine/SumOfInfeasibilitiesManager.cpp @@ -351,6 +351,12 @@ void SumOfInfeasibilitiesManager::setPhaseStatusInCurrentPhasePattern( _currentPhasePattern[constraint] = phase; } +void SumOfInfeasibilitiesManager::setPLConstraintsInCurrentPhasePattern( + const Vector &constraints ) +{ + _plConstraintsInCurrentPhasePattern = constraints; +} + void SumOfInfeasibilitiesManager::getCostReduction( PiecewiseLinearConstraint *plConstraint, double &reducedCost, PhaseStatus &phaseOfReducedCost ) const diff --git a/src/engine/SumOfInfeasibilitiesManager.h b/src/engine/SumOfInfeasibilitiesManager.h index ccc67e9e1..aac9ab563 100644 --- a/src/engine/SumOfInfeasibilitiesManager.h +++ b/src/engine/SumOfInfeasibilitiesManager.h @@ -111,6 +111,8 @@ class SumOfInfeasibilitiesManager void setPhaseStatusInCurrentPhasePattern( PiecewiseLinearConstraint *constraint, PhaseStatus phase ); + void + setPLConstraintsInCurrentPhasePattern( const Vector &constraints ); private: const List &_plConstraints; diff --git a/src/engine/tests/Test_SumOfInfeasibilitiesManager.h b/src/engine/tests/Test_SumOfInfeasibilitiesManager.h index 15a696dd1..9d8049852 100644 --- a/src/engine/tests/Test_SumOfInfeasibilitiesManager.h +++ b/src/engine/tests/Test_SumOfInfeasibilitiesManager.h @@ -290,6 +290,8 @@ class SumOfInfeasibilitiesManagerTestSuite : public CxxTest::TestSuite new SumOfInfeasibilitiesManager( ipq, tableau ) ) ); TS_ASSERT_THROWS_NOTHING( soiManager->initializePhasePattern() ); + TS_ASSERT_THROWS_NOTHING( + soiManager->setPLConstraintsInCurrentPhasePattern( plConstraints ) ); for ( const auto &plConstraint : plConstraints ) { @@ -313,6 +315,7 @@ class SumOfInfeasibilitiesManagerTestSuite : public CxxTest::TestSuite TS_ASSERT_THROWS_NOTHING( plConstraints[3]->getCostFunctionComponent( cost1, *( plConstraints[3]->getAllCases().begin() ) ) ); + TS_ASSERT_EQUALS( soiManager->getConstraintsUpdatedInLastProposal().size(), 1u ); TS_ASSERT_EQUALS( *soiManager->getConstraintsUpdatedInLastProposal().begin(), plConstraints[1] );