Skip to content
This repository has been archived by the owner on Feb 19, 2023. It is now read-only.

Commit

Permalink
Add test for no days between
Browse files Browse the repository at this point in the history
  • Loading branch information
samueldple committed Oct 18, 2019
1 parent 07af9b6 commit ef44a42
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 5 deletions.
10 changes: 5 additions & 5 deletions src/time_tuple.rs
Original file line number Diff line number Diff line change
Expand Up @@ -265,13 +265,13 @@ impl Duration {
let smaller = if dt1 < dt2 { dt1 } else { dt2 };
let greater = if dt1 < dt2 { dt2 } else { dt1 };
let days_between = greater.get_date().to_days() - smaller.get_date().to_days();
let time_between = if days_between == 0 {
if days_between == 0 {
Duration::from(greater.get_time()) - Duration::from(smaller.get_time())
} else {
Duration::from(greater.get_time()) + Duration::new(24, 0, 0)
- Duration::from(smaller.get_time())
};
time_between + Duration::new(24 * (days_between - 1), 0, 0)
let time_between = Duration::from(greater.get_time()) + Duration::new(24, 0, 0)
- Duration::from(smaller.get_time());
time_between + Duration::new(24 * (days_between - 1), 0, 0)
}
}

pub fn get_hours(self) -> u32 {
Expand Down
11 changes: 11 additions & 0 deletions tests/date_time_tuple_tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,17 @@ fn test_between_max_cant_overflow() {
.to_seconds();
}

#[test]
fn test_no_days_between() {
assert_eq!(
Duration::new(1, 0, 0),
Duration::between(
DateTimeTuple::new(DateTuple::new(0, 1, 1).unwrap(), TimeTuple::new(0, 0, 0)),
DateTimeTuple::new(DateTuple::new(0, 1, 1).unwrap(), TimeTuple::new(1, 0, 0),),
)
);
}

#[test]
fn test_days_between() {
assert_eq!(
Expand Down

0 comments on commit ef44a42

Please sign in to comment.