diff options
author | Matthias Beyer <mail@beyermatthias.de> | 2017-09-02 15:59:28 +0200 |
---|---|---|
committer | Matthias Beyer <mail@beyermatthias.de> | 2017-09-02 16:04:40 +0200 |
commit | ddc80f3776e2811cd31043f680d90bbde0eafe4b (patch) | |
tree | f47de6b84e2cdd5e37951e448e7883374c4954ea | |
parent | 673aafaae2e063c7e3bc93f48407ab02d2a75a7d (diff) |
Add tests for calculating with parantheses
-rw-r--r-- | src/timetype.rs | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/timetype.rs b/src/timetype.rs index 6cf5224..7dda5b5 100644 --- a/src/timetype.rs +++ b/src/timetype.rs @@ -969,6 +969,59 @@ mod tests { _ => assert!(false, "Subtraction failed"), } } + + #[test] + fn test_addition_of_years_multiple_calculate_reverse_order() { + let a = TT::Years(0); + let b = TT::Years(1); + let c = TT::Years(2); + + let d = (a + (b + c)).calculate(); + + assert!(d.is_ok()); + let d = d.unwrap(); + + match d { + TT::Years(3) => assert!(true), + _ => assert!(false, "Addition failed"), + } + } + + #[test] + fn test_subtraction_of_years_multiple_calculate_reverse_order() { + let a = TT::Years(3); + let b = TT::Years(2); + let c = TT::Years(1); + + let d = (a - (b - c)).calculate(); + + assert!(d.is_ok()); + let d = d.unwrap(); + + match d { + TT::Years(2) => assert!(true), + _ => assert!(false, "Subtraction failed"), + } + } + + #[test] + fn test_subtraction_of_years_multiple_calculate_reverse_order_2() { + let a = TT::Years(3); + let b = TT::Years(2); + let c = TT::Years(1); + let d = TT::Years(10); + + let e = ((d - c) - (a - b)).calculate(); + + assert!(e.is_ok()); + let e = e.unwrap(); + + match e { + TT::Years(8) => assert!(true), + _ => assert!(false, "Subtraction failed"), + } + } + } |