debugging wrong id in docs test

This commit is contained in:
Anton-4 2021-10-18 19:58:03 +02:00
parent a272765fc7
commit 0a77b3f334
17 changed files with 164 additions and 191 deletions

View file

@ -1,18 +1,21 @@
use roc_ast::ast_error::ASTError;
use roc_module::module_err::ModuleError;
use roc_parse::parser::SyntaxError;
use snafu::{Backtrace, NoneError, ResultExt, Snafu};
use snafu::{NoneError, ResultExt, Snafu};
#[derive(Debug, Snafu)]
#[snafu(visibility(pub))]
#[allow(clippy::enum_variant_names)]
pub enum DocsError {
#[snafu(display("ASTError: {}", msg))]
ASTErrorBacktrace { msg: String, backtrace: Backtrace },
#[snafu(display("ModuleError: {}", msg))]
ModuleErrorBacktrace { msg: String, backtrace: Backtrace },
#[snafu(display("SyntaxError: {}", msg))]
SyntaxErrorBacktrace { msg: String, backtrace: Backtrace },
WrapASTError {
#[snafu(backtrace)]
source: ASTError
},
WrapModuleError {
#[snafu(backtrace)]
source: ModuleError
},
WrapSyntaxError { msg: String },
}
pub type DocsResult<T, E = DocsError> = std::result::Result<T, E>;
@ -23,26 +26,22 @@ impl<'a> From<SyntaxError<'a>> for DocsError {
// hack to handle MarkError derive
let dummy_res: Result<(), NoneError> = Err(NoneError {});
dummy_res.context(SyntaxErrorBacktrace { msg }).unwrap_err()
dummy_res.context(WrapSyntaxError { msg }).unwrap_err()
}
}
impl From<ASTError> for DocsError {
fn from(ast_err: ASTError) -> Self {
let msg = format!("{}", ast_err);
// hack to handle MarkError derive
let dummy_res: Result<(), NoneError> = Err(NoneError {});
dummy_res.context(ASTErrorBacktrace { msg }).unwrap_err()
Self::WrapASTError {
source: ast_err,
}
}
}
impl From<ModuleError> for DocsError {
fn from(ast_err: ModuleError) -> Self {
let msg = format!("{}", ast_err);
// hack to handle MarkError derive
let dummy_res: Result<(), NoneError> = Err(NoneError {});
dummy_res.context(ModuleErrorBacktrace { msg }).unwrap_err()
fn from(module_err: ModuleError) -> Self {
Self::WrapModuleError {
source: module_err,
}
}
}