use super::*;
use chrono::{DateTime, Utc};
use rust_decimal_macros::dec;
fn make_ts(secs: i64) -> DateTime<Utc> {
DateTime::from_timestamp(secs, 0).expect("valid timestamp")
}
#[test]
fn series_basics() {
let values = vec![
(make_ts(1000), dec!(100)),
(make_ts(2000), dec!(101)),
(make_ts(3000), dec!(102)),
];
let series = Series::new(values);
assert_eq!(series.len(), 3);
assert!(!series.is_empty());
assert_eq!(series.first().expect("non-empty series").1, dec!(100));
assert_eq!(series.last().expect("non-empty series").1, dec!(102));
}
#[test]
fn series_decimal_values() {
let values = vec![(make_ts(1000), dec!(10)), (make_ts(2000), dec!(20))];
let series = Series::new(values);
assert_eq!(series.decimal_values(), vec![dec!(10), dec!(20)]);
}
#[test]
fn series_empty() {
let series = Series::empty();
assert!(series.is_empty());
assert_eq!(series.len(), 0);
assert!(series.first().is_none());
}