From fcc56f5de6a076cee836b42999afe39f1db27bd5 Mon Sep 17 00:00:00 2001 From: Varun Agrawal Date: Wed, 1 Jan 2025 22:06:06 -0500 Subject: [PATCH] fix pruning test in testHybridBayesNet --- gtsam/hybrid/tests/testHybridBayesNet.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gtsam/hybrid/tests/testHybridBayesNet.cpp b/gtsam/hybrid/tests/testHybridBayesNet.cpp index b9bc29e47..88949f655 100644 --- a/gtsam/hybrid/tests/testHybridBayesNet.cpp +++ b/gtsam/hybrid/tests/testHybridBayesNet.cpp @@ -450,7 +450,15 @@ TEST(HybridBayesNet, UpdateDiscreteConditionals) { DiscreteConditional joint; for (auto&& conditional : posterior->discreteMarginal()) { - joint = joint * (*conditional); + // The last discrete conditional may be a DiscreteTableConditional + if (auto dtc = + std::dynamic_pointer_cast(conditional)) { + DiscreteConditional dc(dtc->nrFrontals(), + dtc->table().toDecisionTreeFactor()); + joint = joint * dc; + } else { + joint = joint * (*conditional); + } } size_t maxNrLeaves = 3;