diff options
| author | Joe Carstairs <me@joeac.net> | 2024-11-26 08:31:49 +0000 |
|---|---|---|
| committer | Joe Carstairs <me@joeac.net> | 2024-11-26 08:33:53 +0000 |
| commit | e07270da9f190171e6fdde556073d5af8691ca8e (patch) | |
| tree | ce30d8f1b518fe6b26dcc04b80f65792ca658e90 /rust/actualbudget_to_schist_transformer/src | |
| parent | 933a213bac5c03faccab1d9e007d60ba16f448fe (diff) | |
Adds error context to state transformation
Diffstat (limited to 'rust/actualbudget_to_schist_transformer/src')
| -rw-r--r-- | rust/actualbudget_to_schist_transformer/src/transform_state/transform_state.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/rust/actualbudget_to_schist_transformer/src/transform_state/transform_state.rs b/rust/actualbudget_to_schist_transformer/src/transform_state/transform_state.rs index 9fae7a1..3bcbe5d 100644 --- a/rust/actualbudget_to_schist_transformer/src/transform_state/transform_state.rs +++ b/rust/actualbudget_to_schist_transformer/src/transform_state/transform_state.rs @@ -1,4 +1,4 @@ -use anyhow::{bail, Result}; +use anyhow::{bail, Context, Result}; use schist_models::{account::Account, category::Category, category_transfer::CategoryTransfer, date_utc::DateUtc, datetime_utc::DatetimeUtc, transaction::Transaction, transaction_categorisation::TransactionCategorisation}; use crate::{actualbudget_state::ActualbudgetState, schist_state::SchistState}; @@ -6,6 +6,11 @@ use crate::{actualbudget_state::ActualbudgetState, schist_state::SchistState}; use super::{transform_accounts, transform_budget_drips::transform_budget_drips, transform_categories, transform_category_transfers, transform_date, transform_transactions}; pub fn transform_state(actualbudget_state: ActualbudgetState) -> Result<SchistState> { + transform_state_without_context(actualbudget_state) + .with_context(|| "failed to transform actualbudget state to schist state") +} + +fn transform_state_without_context(actualbudget_state: ActualbudgetState) -> Result<SchistState> { let first_transaction_date = transform_date(&actualbudget_state.actualbudget_first_transaction_date)?; let before_first_transaction_date = find_date_before(&first_transaction_date)?; |
