use crate::document_text_entry::DocumentTextEntry;
use crate::error::ShardexError;
use crate::identifiers::DocumentId;
#[allow(dead_code)]
pub trait OptimizedDocumentTextStorage {
fn find_latest_entry_optimized(&self, document_id: DocumentId) -> Result<Option<DocumentTextEntry>, ShardexError>;
}
#[allow(dead_code)]
pub struct BasicOptimizedStorage {
_document_id: DocumentId,
}
impl BasicOptimizedStorage {
#[allow(dead_code)]
pub fn new(document_id: DocumentId) -> Self {
Self {
_document_id: document_id,
}
}
}
impl OptimizedDocumentTextStorage for BasicOptimizedStorage {
fn find_latest_entry_optimized(&self, _document_id: DocumentId) -> Result<Option<DocumentTextEntry>, ShardexError> {
Ok(None)
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_basic_optimized_storage() {
let storage = BasicOptimizedStorage::new(DocumentId::new());
let result = storage.find_latest_entry_optimized(DocumentId::new());
assert!(result.is_ok());
assert!(result.unwrap().is_none());
}
}