pub mod common; use actualbudget_queries::actualbudget_payees::get_all_actualbudget_payees; use common::{db_url::DB_URL, get_reference_data::get_accounts, payee_matchers::get_payee_matchers}; use diesel::{Connection, SqliteConnection}; #[test] fn given_test_database_when_get_all_payees_then_return_payees() { let connection = &mut SqliteConnection::establish(DB_URL).unwrap(); let accounts = get_accounts(connection); let payees = get_all_actualbudget_payees(connection); assert!(payees.is_ok()); let payees = payees.unwrap(); let payee_matchers = get_payee_matchers(); assert_eq!(payee_matchers.len(), payees.len()); for payee in payees { assert!( payee_matchers.iter().any(|payee_matcher| payee_matcher(&payee, &accounts)), "no match found for payee {:?}", payee, ); } }