summaryrefslogtreecommitdiff
path: root/schist_core/schist_queries/src/clear.rs
blob: 6d2894d6e5aa379327d58c360e1dadfe6873e6ec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use anyhow::Result;
use diesel::SqliteConnection;

use crate::{
    accounts::delete_all_accounts, budget_drips::delete_all_budget_drips, buckets::delete_all_buckets, bucket_transfers::delete_all_bucket_transfers, transaction_categorisations::delete_all_transaction_categorisations, transactions::delete_all_transactions
};

pub fn clear(connection: &mut SqliteConnection) -> Result<()> {
    delete_all_accounts(connection)?;
    delete_all_budget_drips(connection)?;
    delete_all_buckets(connection)?;
    delete_all_bucket_transfers(connection)?;
    delete_all_transactions(connection)?;
    delete_all_transaction_categorisations(connection)?;
    Ok(())
}