Print [uuid] instead of the Uuid index name for MeilisearchHttpError::Milli errors

This way the tests' assertions/snapshots for unique indices would be stable

Signed-off-by: Martin Tzvetanov Grigorov <mgrigorov@apache.org>
This commit is contained in:
Martin Tzvetanov Grigorov 2025-05-25 15:48:55 +03:00
parent 8c8d98eeaa
commit 34d58f35c8
No known key found for this signature in database
GPG key ID: 3194FD8C1AE300EF
3 changed files with 14 additions and 15 deletions

View file

@ -64,7 +64,7 @@ pub enum MeilisearchHttpError {
#[error(transparent)]
IndexScheduler(#[from] index_scheduler::Error),
#[error("{}", match .index_name {
Some(name) if !name.is_empty() => format!("Index `{}`: {error}", name),
Some(name) if !name.is_empty() => format!("Index `{}`: {error}", MeilisearchHttpError::index_name(name)),
_ => format!("{error}")
})]
Milli { error: milli::Error, index_name: Option<String> },
@ -84,6 +84,14 @@ impl MeilisearchHttpError {
pub(crate) fn from_milli(error: milli::Error, index_name: Option<String>) -> Self {
Self::Milli { error, index_name }
}
fn index_name(index_name: &str) -> &str {
if let Ok(_) = uuid::Uuid::parse_str(index_name) {
"[uuid]"
} else {
index_name
}
}
}
impl ErrorCode for MeilisearchHttpError {