use super::NotImplemented;
use crate::common::Result;
pub async fn compact_cluster(_coordinator_url: &str, _shard: Option<u64>) -> Result<CompactReport> {
Err(NotImplemented::COMPACT.into())
}
pub async fn stream_large_blob(_volume_id: &str, _key: &str) -> Result<()> {
Err(NotImplemented::STREAM.into())
}
#[derive(Debug, serde::Serialize)]
pub struct CompactReport {
pub volumes_compacted: usize,
pub bytes_freed: u64,
}
#[cfg(test)]
mod tests {
use super::*;
#[tokio::test]
async fn compact_and_stream_fail_instead_of_reporting() {
let compact = compact_cluster("http://127.0.0.1:1", Some(0)).await;
assert_eq!(
compact.unwrap_err().to_string(),
"compact is not implemented (roadmap: 2.2.0)"
);
let stream = stream_large_blob("vol-1", "key").await;
assert_eq!(
stream.unwrap_err().to_string(),
"stream is not implemented (roadmap: unscheduled)"
);
}
}