1use reth_rpc_server_types::result::internal_rpc_err;
2
3#[derive(Debug, thiserror::Error)]
4
5pub enum SeismicApiError {
7 #[error("enclave error: {0}")]
9 EnclaveError(String),
10}
11
12impl From<SeismicApiError> for jsonrpsee::types::error::ErrorObject<'static> {
13 fn from(error: SeismicApiError) -> Self {
14 match error {
15 SeismicApiError::EnclaveError(e) => internal_rpc_err(format!("enclave error: {e}")),
16 }
17 }
18}
19
20#[cfg(test)]
21mod tests {
22 use crate::error::SeismicApiError;
23
24 #[test]
25 fn enclave_error_message() {
26 let err: jsonrpsee::types::error::ErrorObject<'static> =
27 SeismicApiError::EnclaveError("test".to_string()).into();
28 assert_eq!(err.message(), "enclave error: test");
29 }
30}