summaryrefslogtreecommitdiff
path: root/rust/actualbudget_queries/tests/common/payee_matchers.rs
diff options
context:
space:
mode:
authorJoe Carstairs <me@joeac.net>2024-12-12 08:28:04 +0000
committerJoe Carstairs <me@joeac.net>2024-12-12 08:28:04 +0000
commit54894f9de9bad4fecb2a116d59a03cdd003f84c0 (patch)
tree6ce5517cecf23d4e93d7a381a374e1fa6c810cee /rust/actualbudget_queries/tests/common/payee_matchers.rs
parent8a30bcbdf9264d235bf93da3df8e170cfde53d02 (diff)
Moves rust workspace to root
Diffstat (limited to 'rust/actualbudget_queries/tests/common/payee_matchers.rs')
-rw-r--r--rust/actualbudget_queries/tests/common/payee_matchers.rs124
1 files changed, 0 insertions, 124 deletions
diff --git a/rust/actualbudget_queries/tests/common/payee_matchers.rs b/rust/actualbudget_queries/tests/common/payee_matchers.rs
deleted file mode 100644
index ccba204..0000000
--- a/rust/actualbudget_queries/tests/common/payee_matchers.rs
+++ /dev/null
@@ -1,124 +0,0 @@
-use std::collections::HashMap;
-
-use actualbudget_models::{ActualbudgetAccount, ActualbudgetPayee};
-use anyhow::Context;
-
-use super::{account_names::ACCOUNT_NAMES_DICT, payee_names::PAYEE_NAMES_DICT};
-
-pub fn get_payee_matchers(
-) -> Vec<Box<dyn Fn(&ActualbudgetPayee, &HashMap<String, ActualbudgetAccount>) -> bool>> {
- vec![
- Box::new(|p, a| matches_bank_account_transfer_account(p, a)),
- Box::new(|p, a| matches_cash_account_transfer_account(p, a)),
- Box::new(|p, a| matches_category_transfers_transfer_account(p, a)),
- Box::new(|p, a| matches_starting_balances(p, a)),
- Box::new(|p, a| matches_employer(p, a)),
- Box::new(|p, a| matches_tesco(p, a)),
- ]
-}
-
-fn matches_bank_account_transfer_account(
- payee: &ActualbudgetPayee,
- accounts: &HashMap<String, ActualbudgetAccount>,
-) -> bool {
- let bank_account = accounts
- .get(ACCOUNT_NAMES_DICT.bank_account)
- .with_context(|| "failed to get bank account")
- .unwrap();
-
- match payee {
- ActualbudgetPayee {
- name,
- transfer_account_id,
- ..
- } => name == ""
- && transfer_account_id.clone().is_some_and(
- |account_id| account_id == bank_account.id,
- ),
- }
-}
-
-fn matches_cash_account_transfer_account(
- payee: &ActualbudgetPayee,
- accounts: &HashMap<String, ActualbudgetAccount>,
-) -> bool {
- let cash_account = accounts
- .get(ACCOUNT_NAMES_DICT.cash_account)
- .with_context(|| "failed to find cash account")
- .unwrap();
-
- match payee {
- ActualbudgetPayee {
- name,
- transfer_account_id,
- ..
- } => name == ""
- && transfer_account_id.clone().is_some_and(
- |account_id| account_id == cash_account.id,
- ),
- }
-}
-
-fn matches_category_transfers_transfer_account(
- payee: &ActualbudgetPayee,
- accounts: &HashMap<String, ActualbudgetAccount>,
-) -> bool {
- let category_transfers_account = accounts
- .get(ACCOUNT_NAMES_DICT.transfers_account)
- .with_context(|| "failed to find category transfers account")
- .unwrap();
-
- match payee {
- ActualbudgetPayee {
- name,
- transfer_account_id,
- ..
- } => name == ""
- && transfer_account_id.clone().is_some_and(
- |account_id| account_id == category_transfers_account.id,
- ),
- }
-}
-
-fn matches_starting_balances(
- payee: &ActualbudgetPayee,
- _accounts: &HashMap<String, ActualbudgetAccount>,
-) -> bool {
- match payee {
- ActualbudgetPayee {
- name,
- transfer_account_id,
- ..
- } => transfer_account_id.is_none()
- && name.clone() == PAYEE_NAMES_DICT.starting_balances,
- }
-}
-
-fn matches_employer(
- payee: &ActualbudgetPayee,
- _accounts: &HashMap<String, ActualbudgetAccount>,
-) -> bool {
- match payee {
- ActualbudgetPayee {
- name,
- transfer_account_id,
- ..
- } => transfer_account_id.is_none()
- && name == PAYEE_NAMES_DICT.employer,
- }
-}
-
-
-fn matches_tesco(
- payee: &ActualbudgetPayee,
- _accounts: &HashMap<String, ActualbudgetAccount>,
-) -> bool {
- match payee {
- ActualbudgetPayee {
- name,
- transfer_account_id,
- ..
- } => transfer_account_id.is_none()
- && name == PAYEE_NAMES_DICT.tesco,
- }
-}