Skip to content

Commit e639253

Browse files
run fmt command
1 parent 8e9dbdb commit e639253

File tree

2 files changed

+32
-16
lines changed

2 files changed

+32
-16
lines changed

src/financial/mod.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
mod price_plus_tax;
21
mod present_value;
3-
pub use price_plus_tax::price_plus_tax;
2+
mod price_plus_tax;
43
pub use present_value::present_value;
5-
4+
pub use price_plus_tax::price_plus_tax;

src/financial/present_value.rs

Lines changed: 30 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
#[derive(PartialEq, Eq,Debug)]
2-
pub enum PresentValueError{
1+
#[derive(PartialEq, Eq, Debug)]
2+
pub enum PresentValueError {
33
NegetiveDiscount,
4-
EmptyCashFlow
4+
EmptyCashFlow,
55
}
66

7-
87
pub fn present_value(discount_rate: f64, cash_flows: Vec<f64>) -> Result<f64, PresentValueError> {
98
if discount_rate < 0.0 {
109
return Err(PresentValueError::NegetiveDiscount);
@@ -13,7 +12,9 @@ pub fn present_value(discount_rate: f64, cash_flows: Vec<f64>) -> Result<f64, Pr
1312
return Err(PresentValueError::EmptyCashFlow);
1413
}
1514

16-
let present_value = cash_flows.iter().enumerate()
15+
let present_value = cash_flows
16+
.iter()
17+
.enumerate()
1718
.map(|(i, &cash_flow)| cash_flow / (1.0 + discount_rate).powi(i as i32))
1819
.sum::<f64>();
1920

@@ -26,27 +27,43 @@ mod tests {
2627

2728
#[test]
2829
fn test_present_value() {
30+
assert_eq!(
31+
4.69,
32+
present_value(0.13, vec![10.0, 20.70, -293.0, 297.0]).unwrap()
33+
);
2934

30-
assert_eq!(4.69,present_value(0.13, vec![10.0, 20.70, -293.0, 297.0]).unwrap());
31-
32-
assert_eq!( -42739.63,present_value(0.07, vec![-109129.39, 30923.23, 15098.93, 29734.0,39.0]).unwrap());
35+
assert_eq!(
36+
-42739.63,
37+
present_value(0.07, vec![-109129.39, 30923.23, 15098.93, 29734.0, 39.0]).unwrap()
38+
);
3339

34-
assert_eq!(175519.15,present_value(0.07, vec![109129.39, 30923.23, 15098.93, 29734.0,39.0]).unwrap());
40+
assert_eq!(
41+
175519.15,
42+
present_value(0.07, vec![109129.39, 30923.23, 15098.93, 29734.0, 39.0]).unwrap()
43+
);
3544
}
3645

3746
#[test]
3847
fn test_present_value_negative_discount_rate() {
39-
assert_eq!(PresentValueError::NegetiveDiscount,present_value(-1.0, vec![10.0, 20.70, -293.0, 297.0]).unwrap_err());
40-
48+
assert_eq!(
49+
PresentValueError::NegetiveDiscount,
50+
present_value(-1.0, vec![10.0, 20.70, -293.0, 297.0]).unwrap_err()
51+
);
4152
}
4253

4354
#[test]
4455
fn test_present_value_empty_cash_flow() {
45-
assert_eq!(PresentValueError::EmptyCashFlow,present_value(1.0, vec![]).unwrap_err());
56+
assert_eq!(
57+
PresentValueError::EmptyCashFlow,
58+
present_value(1.0, vec![]).unwrap_err()
59+
);
4660
}
4761

4862
#[test]
4963
fn test_present_value_zero_discount_rate() {
50-
assert_eq!(184924.55,present_value(0.0, vec![109129.39, 30923.23, 15098.93, 29734.0,39.0]).unwrap());
64+
assert_eq!(
65+
184924.55,
66+
present_value(0.0, vec![109129.39, 30923.23, 15098.93, 29734.0, 39.0]).unwrap()
67+
);
5168
}
5269
}

0 commit comments

Comments
 (0)