quick_junit/
errors.rs

1// Copyright (c) The nextest Contributors
2// SPDX-License-Identifier: MIT OR Apache-2.0
3
4use quick_xml::encoding::EncodingError;
5use std::io;
6use thiserror::Error;
7
8/// An error that occurs while serializing a [`Report`](crate::Report).
9///
10/// Returned by [`Report::serialize`](crate::Report::serialize) and
11/// [`Report::to_string`](crate::Report::to_string).
12#[derive(Debug, Error)]
13#[error("error serializing JUnit report")]
14pub struct SerializeError {
15    #[from]
16    inner: quick_xml::Error,
17}
18
19impl From<EncodingError> for SerializeError {
20    fn from(inner: EncodingError) -> Self {
21        Self {
22            inner: quick_xml::Error::Encoding(inner),
23        }
24    }
25}
26
27impl From<io::Error> for SerializeError {
28    fn from(inner: io::Error) -> Self {
29        Self {
30            inner: quick_xml::Error::from(inner),
31        }
32    }
33}