use smos_domain::{NliResult, entities::Fact, enums::MergeReason};
#[derive(Debug, Clone)]
pub struct MergeResult {
pub merged: bool,
pub reason: MergeReason,
pub merged_fact: Option<Fact>,
pub nli_result: Option<NliResult>,
}
#[cfg(test)]
mod tests {
use super::*;
use smos_domain::enums::MergeReason;
#[test]
fn no_candidate_result_carries_reason_and_no_fact() {
let r = MergeResult {
merged: false,
reason: MergeReason::NoCandidate,
merged_fact: None,
nli_result: None,
};
assert!(!r.merged);
assert_eq!(r.reason, MergeReason::NoCandidate);
assert!(r.merged_fact.is_none());
}
}