init
Some checks failed
CI / ci (push) Failing after 1m48s

This commit is contained in:
2026-08-25 23:24:36 +02:00
commit 95739892de
466 changed files with 33918 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
use chrono::{FixedOffset, TimeZone};
use domain::entry::DateRange;
use domain::errors::DomainError;
fn utc_dt(year: i32, month: u32, day: u32) -> chrono::DateTime<FixedOffset> {
FixedOffset::east_opt(0)
.unwrap()
.with_ymd_and_hms(year, month, day, 0, 0, 0)
.unwrap()
}
#[test]
fn valid_range_is_created() {
let start = utc_dt(2025, 1, 1);
let end = utc_dt(2025, 1, 31);
let range = DateRange::new(start, end).unwrap();
assert_eq!(*range.start(), start);
assert_eq!(*range.end(), end);
}
#[test]
fn start_equal_to_end_is_valid() {
let dt = utc_dt(2025, 6, 15);
let range = DateRange::new(dt, dt);
assert!(range.is_ok());
}
#[test]
fn start_after_end_is_rejected() {
let start = utc_dt(2025, 3, 15);
let end = utc_dt(2025, 3, 1);
let result = DateRange::new(start, end);
assert!(matches!(result, Err(DomainError::InvalidInput(_))));
}