From cc2f78184bf3e298e2efd70175e67bff66f7b7c7 Mon Sep 17 00:00:00 2001 From: Paul Masurel Date: Tue, 28 Feb 2017 20:43:16 +0900 Subject: Added unit test for #96 --- src/indexer/merge_policy.rs | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'src/indexer/merge_policy.rs') diff --git a/src/indexer/merge_policy.rs b/src/indexer/merge_policy.rs index ae10643..5e3adcf 100644 --- a/src/indexer/merge_policy.rs +++ b/src/indexer/merge_policy.rs @@ -43,3 +43,28 @@ impl MergePolicy for NoMergePolicy { } } + +#[cfg(test)] +pub mod tests { + + use super::*; + use core::SegmentId; + use core::SegmentMeta; + + #[derive(Debug)] + pub struct MergeWheneverPossible; + + impl MergePolicy for MergeWheneverPossible { + fn compute_merge_candidates(&self, segment_metas: &[SegmentMeta]) -> Vec { + let segment_ids = segment_metas + .iter() + .map(|segment_meta| segment_meta.id()) + .collect::>(); + vec!(MergeCandidate(segment_ids)) + } + + fn box_clone(&self) -> Box { + box MergeWheneverPossible + } + } +} \ No newline at end of file -- cgit v1.2.3