chore: fix test

Signed-off-by: shuiyisong <xixing.sys@gmail.com>
This commit is contained in:
shuiyisong
2026-04-20 20:14:56 +08:00
parent 77004a65a8
commit 5854809bbf
3 changed files with 24 additions and 2 deletions

View File

@@ -151,6 +151,8 @@ ManifestSstEntry { table_dir: "test_metric_region/", region_id: 94506057770(22,
.map(|mut e| {
let i = e.file_path.rfind('/').unwrap();
e.file_path.replace_range(i..(i + 37), "/<file_id>");
e.file_size = None;
e.last_modified_ms = None;
format!("\n{:?}", e)
})
.sorted()

View File

@@ -970,6 +970,8 @@ async fn test_list_ssts_with_format(
.map(|mut e| {
let i = e.file_path.rfind('/').unwrap();
e.file_path.replace_range(i..(i + 37), "/<file_id>");
e.file_size = None;
e.last_modified_ms = None;
format!("\n{:?}", e)
})
.sorted()

View File

@@ -26,8 +26,8 @@ use common_recordbatch::RecordBatches;
use datatypes::value::Value;
use object_store::Buffer;
use object_store::layers::mock::{
Entry, Error as MockError, ErrorKind, List, Lister, Metadata, MockLayerBuilder,
Result as MockResult, Write, Writer,
Delete, Deleter, Entry, Error as MockError, ErrorKind, List, Lister, Metadata,
MockLayerBuilder, OpDelete, Result as MockResult, Write, Writer,
};
use partition::expr::{PartitionExpr, col};
use store_api::region_engine::{
@@ -1152,6 +1152,23 @@ impl Write for MockWriter {
}
}
struct MockDeleter {
inner: Deleter,
}
impl Delete for MockDeleter {
async fn delete(&mut self, path: &str, args: OpDelete) -> MockResult<()> {
if path.contains("staging") {
return Err(MockError::new(ErrorKind::Unexpected, "mock error"));
}
self.inner.delete(path, args).await
}
async fn close(&mut self) -> MockResult<()> {
self.inner.close().await
}
}
async fn test_enter_staging_error(env: &mut TestEnv, flat_format: bool) {
let partition_expr = default_partition_expr();
let engine = env
@@ -1201,6 +1218,7 @@ async fn test_enter_staging_clean_staging_manifest_error_with_format(flat_format
inner: lister,
})
}))
.deleter_factory(Arc::new(|deleter| Box::new(MockDeleter { inner: deleter })))
.build()
.unwrap();
let mut env = TestEnv::new().await.with_mock_layer(mock_layer);