#![cfg(feature = "lmdb")]
#[macro_use]
mod storage_harness;
use storage_harness::*;
use tempfile::TempDir;
use this::storage::{LmdbDataService, LmdbLinkService};
fn fresh_lmdb_data_service() -> LmdbDataService<TestDataEntity> {
let dir = TempDir::new().expect("Failed to create temp dir");
let path = dir.path().to_path_buf();
std::mem::forget(dir);
LmdbDataService::open(&path).expect("Failed to open LMDB data service")
}
fn fresh_lmdb_link_service() -> LmdbLinkService {
let dir = TempDir::new().expect("Failed to create temp dir");
let path = dir.path().to_path_buf();
std::mem::forget(dir);
LmdbLinkService::open(&path).expect("Failed to open LMDB link service")
}
data_service_tests!(fresh_lmdb_data_service());
link_service_tests!(fresh_lmdb_link_service());
rest_integration_tests!(fresh_lmdb_data_service());