diff options
| author | Gustav Sörnäs <gustav@sornas.net> | 2021-08-03 15:35:51 +0200 |
|---|---|---|
| committer | Gustav Sörnäs <gustav@sornas.net> | 2021-08-03 15:35:51 +0200 |
| commit | 6cbb5ebcf1d6fcb724e06a26bf2477f6db2010e5 (patch) | |
| tree | 370c47c86e4ba13607c6465c2b3ae2b827a985e4 | |
| parent | ff4a41882fe553d8495f122de59ca7482e567e02 (diff) | |
| download | money-search-parenthesis.tar.gz | |
refactor tests a bitsearch-parenthesis
| -rw-r--r-- | cli/src/search.rs | 74 |
1 files changed, 19 insertions, 55 deletions
diff --git a/cli/src/search.rs b/cli/src/search.rs index 99a18bd..33399dc 100644 --- a/cli/src/search.rs +++ b/cli/src/search.rs @@ -263,6 +263,14 @@ mod test { transaction.description.parse().unwrap() } + fn ids(search: &Search) -> Vec<u32> { + search + .get() + .iter() + .map(|t| transaction_id(t)) + .collect() + } + #[test] fn category() { let transactions = vec![ @@ -286,11 +294,7 @@ mod test { search = search.apply(category_filter); assert_eq!(search.get().len(), 2); assert_eq!( - search - .get() - .iter() - .map(|t| transaction_id(t)) - .collect::<Vec<_>>(), + ids(&search), vec![0, 1], ); } @@ -325,11 +329,7 @@ mod test { search_before = search_before.apply(before_filter); assert_eq!(search_before.get().len(), 1); assert_eq!( - search_before - .get() - .iter() - .map(|t| transaction_id(t)) - .collect::<Vec<_>>(), + ids(&search_before), vec![0], ); @@ -338,11 +338,7 @@ mod test { search_after = search_after.apply(after_filter); assert_eq!(search_after.get().len(), 3); assert_eq!( - search_after - .get() - .iter() - .map(|t| transaction_id(t)) - .collect::<Vec<_>>(), + ids(&search_after), vec![1, 2, 3], ); @@ -351,11 +347,7 @@ mod test { search_on = search_on.apply(on_filter); assert_eq!(search_on.get().len(), 1); assert_eq!( - search_on - .get() - .iter() - .map(|t| transaction_id(t)) - .collect::<Vec<_>>(), + ids(&search_on), vec![1], ); } @@ -389,11 +381,7 @@ mod test { search_less = search_less.apply(less_filter); assert_eq!(search_less.get().len(), 1); assert_eq!( - search_less - .get() - .iter() - .map(|t| transaction_id(t)) - .collect::<Vec<_>>(), + ids(&search_less), vec![0], ); @@ -405,11 +393,7 @@ mod test { search_less_eq = search_less_eq.apply(less_eq_filter); assert_eq!(search_less_eq.get().len(), 2); assert_eq!( - search_less_eq - .get() - .iter() - .map(|t| transaction_id(t)) - .collect::<Vec<_>>(), + ids(&search_less_eq), vec![0, 1], ); @@ -418,11 +402,7 @@ mod test { search_eq = search_eq.apply(eq_filter); assert_eq!(search_eq.get().len(), 1); assert_eq!( - search_eq - .get() - .iter() - .map(|t| transaction_id(t)) - .collect::<Vec<_>>(), + ids(&search_eq), vec![1], ); @@ -432,11 +412,7 @@ mod test { search_greater = search_greater.apply(greater_filter); assert_eq!(search_greater.get().len(), 2); assert_eq!( - search_greater - .get() - .iter() - .map(|t| transaction_id(t)) - .collect::<Vec<_>>(), + ids(&search_greater), vec![2, 3], ); @@ -448,11 +424,7 @@ mod test { search_greater_eq = search_greater_eq.apply(greater_eq_filter); assert_eq!(search_greater_eq.get().len(), 3); assert_eq!( - search_greater_eq - .get() - .iter() - .map(|t| transaction_id(t)) - .collect::<Vec<_>>(), + ids(&search_greater_eq), vec![1, 2, 3], ); } @@ -491,11 +463,7 @@ mod test { search_filters_1 = search_filters_1.apply(Filter::Union(amount_150.clone())); assert_eq!(search_filters_1.get().len(), 3); assert_eq!( - search_filters_1 - .get() - .iter() - .map(|t| transaction_id(t)) - .collect::<Vec<_>>(), + ids(&search_filters_1), vec![0, 1, 2], ); @@ -506,11 +474,7 @@ mod test { search_filters_2 = search_filters_2.apply(Filter::Union(inner_filters)); assert_eq!(search_filters_2.get().len(), 3); assert_eq!( - search_filters_2 - .get() - .iter() - .map(|t| transaction_id(t)) - .collect::<Vec<_>>(), + ids(&search_filters_2), vec![0, 1, 2], ); } |
