summaryrefslogtreecommitdiff
path: root/rust/actualbudget_to_schist_transformer/src
diff options
context:
space:
mode:
authorJoe Carstairs <me@joeac.net>2024-12-06 14:02:51 +0000
committerJoe Carstairs <me@joeac.net>2024-12-06 14:41:50 +0000
commit69a6c9d9f7eaed9e1ddfd8819bf52e64d1368854 (patch)
treeb07b0f0500eeaa6d31c4e475c2dc341720119e60 /rust/actualbudget_to_schist_transformer/src
parent4dbbe1927c62426cca0da1f9645c24e4db52d997 (diff)
Fix category transfer transform: swaps from/to
Diffstat (limited to 'rust/actualbudget_to_schist_transformer/src')
-rw-r--r--rust/actualbudget_to_schist_transformer/src/transform_state/transform_category_transfers.rs52
1 files changed, 26 insertions, 26 deletions
diff --git a/rust/actualbudget_to_schist_transformer/src/transform_state/transform_category_transfers.rs b/rust/actualbudget_to_schist_transformer/src/transform_state/transform_category_transfers.rs
index 2bcd0e0..318e88c 100644
--- a/rust/actualbudget_to_schist_transformer/src/transform_state/transform_category_transfers.rs
+++ b/rust/actualbudget_to_schist_transformer/src/transform_state/transform_category_transfers.rs
@@ -61,7 +61,7 @@ fn transform_category_transfer_without_context(
let from_transfers: Vec<ActualbudgetTransaction> = actualbudget_child_category_transfers
.clone()
- .filter(|t| t.amount >= 0)
+ .filter(|t| t.amount < 0)
.collect();
if from_transfers.len() != 1 {
bail!(
@@ -79,7 +79,7 @@ fn transform_category_transfer_without_context(
let to_transfers: Vec<ActualbudgetTransaction> = actualbudget_child_category_transfers
.clone()
- .filter(|t| t.amount < 0)
+ .filter(|t| t.amount > 0)
.collect();
if to_transfers.len() != 1 {
bail!(
@@ -106,7 +106,7 @@ fn transform_category_transfer_without_context(
.notes
.clone()
.unwrap_or_else(String::new),
- quantity: from_transfer.amount.try_into().unwrap(),
+ quantity: to_transfer.amount.try_into().unwrap(),
from_category_id,
to_category_id,
}))
@@ -151,13 +151,13 @@ mod test {
let actualbudget_category_transfers_account = make_fake_actualbudget_account("0");
let actualbudget_transactions = [
make_fake_parent_transaction("0"),
- make_fake_from_child_transaction_builder("1", "0").amount(100).category_id(Some(String::from("0"))).build().unwrap(),
- make_fake_to_child_transaction_builder("2", "0").amount(-100).category_id(Some(String::from("1"))).build().unwrap(),
+ make_fake_from_child_transaction_builder("1", 100, "0").category_id(Some(String::from("0"))).build().unwrap(),
+ make_fake_to_child_transaction_builder("2", 100, "0").category_id(Some(String::from("1"))).build().unwrap(),
make_fake_parent_transaction("3"),
- make_fake_from_child_transaction_builder("4", "3").amount(200).category_id(Some(String::from("1"))).build().unwrap(),
- make_fake_to_child_transaction_builder("5", "3").amount(-200).category_id(Some(String::from("0"))).build().unwrap(),
+ make_fake_from_child_transaction_builder("4", 200, "3").category_id(Some(String::from("1"))).build().unwrap(),
+ make_fake_to_child_transaction_builder("5", 200, "3").category_id(Some(String::from("0"))).build().unwrap(),
make_fake_actualbudget_transaction_builder("6").amount(300).build().unwrap(),
- make_fake_actualbudget_transaction_builder("7").amount(400).build().unwrap(),
+ make_fake_actualbudget_transaction_builder("7").amount(-400).build().unwrap(),
];
let result = transform_category_transfers(
@@ -193,9 +193,9 @@ mod test {
let actualbudget_category_transfers_account = make_fake_actualbudget_account("0");
let actualbudget_transactions = [
make_fake_parent_transaction("0"),
- make_fake_from_child_transaction_builder("1", "0").amount(50).build().unwrap(),
- make_fake_from_child_transaction_builder("2", "0").amount(50).build().unwrap(),
- make_fake_to_child_transaction_builder("3", "0").amount(-100).build().unwrap(),
+ make_fake_from_child_transaction_builder("1", 50, "0").build().unwrap(),
+ make_fake_from_child_transaction_builder("2", 50, "0").build().unwrap(),
+ make_fake_to_child_transaction_builder("3", 100, "0").build().unwrap(),
];
let result = transform_category_transfers(
@@ -211,9 +211,9 @@ mod test {
let actualbudget_category_transfers_account = make_fake_actualbudget_account("0");
let actualbudget_transactions = [
make_fake_parent_transaction("0"),
- make_fake_from_child_transaction_builder("1", "0").amount(100).build().unwrap(),
- make_fake_to_child_transaction_builder("2", "0").amount(-50).build().unwrap(),
- make_fake_to_child_transaction_builder("3", "0").amount(-50).build().unwrap(),
+ make_fake_from_child_transaction_builder("1", 100, "0").build().unwrap(),
+ make_fake_to_child_transaction_builder("2", 50, "0").build().unwrap(),
+ make_fake_to_child_transaction_builder("3", 50, "0").build().unwrap(),
];
let result = transform_category_transfers(
@@ -261,8 +261,8 @@ mod test {
let actualbudget_category_transfers_account = make_fake_actualbudget_account("0");
let actualbudget_transactions = [
make_fake_parent_transaction("0"),
- make_fake_from_child_transaction_builder("1", "0").amount(50).build().unwrap(),
- make_fake_to_child_transaction_builder("2", "0").amount(-100).build().unwrap(),
+ make_fake_from_child_transaction_builder("1", 50, "0").build().unwrap(),
+ make_fake_to_child_transaction_builder("2", 100, "0").build().unwrap(),
];
let result = transform_category_transfers(
@@ -278,13 +278,13 @@ mod test {
let actualbudget_category_transfers_account = make_fake_actualbudget_account("0");
let actualbudget_transactions_0 = [
make_fake_parent_transaction("0"),
- make_fake_from_child_transaction_builder("1", "0").category_id(None).build().unwrap(),
- make_fake_to_child_transaction_builder("2", "0").build().unwrap(),
+ make_fake_from_child_transaction_builder("1", 100, "0").category_id(None).build().unwrap(),
+ make_fake_to_child_transaction_builder("2", 100, "0").build().unwrap(),
];
let actualbudget_transactions_1 = [
make_fake_parent_transaction("0"),
- make_fake_from_child_transaction_builder("1", "0").build().unwrap(),
- make_fake_to_child_transaction_builder("2", "0").category_id(None).build().unwrap(),
+ make_fake_from_child_transaction_builder("1", 100, "0").build().unwrap(),
+ make_fake_to_child_transaction_builder("2", 100, "0").category_id(None).build().unwrap(),
];
let result_0 = transform_category_transfers(
@@ -314,14 +314,14 @@ mod test {
}
fn make_fake_from_child_transaction(id: &str, parent_id: &str) -> ActualbudgetTransaction {
- make_fake_from_child_transaction_builder(id, parent_id).build().unwrap()
+ make_fake_from_child_transaction_builder(id, 100, parent_id).build().unwrap()
}
- fn make_fake_from_child_transaction_builder(id: &str, parent_id: &str) -> ActualbudgetTransactionBuilder {
+ fn make_fake_from_child_transaction_builder(id: &str, amount: i32, parent_id: &str) -> ActualbudgetTransactionBuilder {
let mut builder = make_fake_actualbudget_transaction_builder(id);
builder
.account_id(String::from("0"))
.category_id(Some(String::from("0")))
- .amount(100)
+ .amount(-amount)
.is_child(true)
.notes(Some(String::from("I was a from child transaction")))
.parent_id(Some(String::from(parent_id)));
@@ -329,15 +329,15 @@ mod test {
}
fn make_fake_to_child_transaction(id: &str, parent_id: &str) -> ActualbudgetTransaction {
- make_fake_to_child_transaction_builder(id, parent_id).build().unwrap()
+ make_fake_to_child_transaction_builder(id, 100, parent_id).build().unwrap()
}
- fn make_fake_to_child_transaction_builder(id: &str, parent_id: &str) -> ActualbudgetTransactionBuilder {
+ fn make_fake_to_child_transaction_builder(id: &str, amount: i32, parent_id: &str) -> ActualbudgetTransactionBuilder {
let mut builder = make_fake_actualbudget_transaction_builder(id);
builder
.account_id(String::from("0"))
.category_id(Some(String::from("1")))
- .amount(-100)
+ .amount(amount)
.is_child(true)
.notes(Some(String::from("I was a to child transaction")))
.parent_id(Some(String::from(parent_id)));