start adding tests
This commit is contained in:
parent
d367825849
commit
7b939cfd8f
28
src/feeds.rs
28
src/feeds.rs
@ -293,3 +293,31 @@ pub async fn get_feed(
|
|||||||
categorization,
|
categorization,
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(test)]
|
||||||
|
mod tests {
|
||||||
|
use super::*;
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_feed_new() {
|
||||||
|
let name = "Test Feed".to_string();
|
||||||
|
let url = Url::parse("https://example.com/feed.xml").unwrap();
|
||||||
|
let user_id = Uuid::new_v4();
|
||||||
|
|
||||||
|
let feed = Feed::new(name.clone(), url.clone(), user_id);
|
||||||
|
|
||||||
|
assert_eq!(feed.name, name);
|
||||||
|
assert_eq!(feed.url, url);
|
||||||
|
assert_eq!(feed.user_id, user_id);
|
||||||
|
assert_eq!(feed.categorization, Vec::<String>::new());
|
||||||
|
assert_eq!(feed.last_checked_time, chrono::DateTime::UNIX_EPOCH);
|
||||||
|
|
||||||
|
// Feed ID should be a valid UUID
|
||||||
|
assert!(feed.feed_id.to_string().len() == 36); // UUID string length
|
||||||
|
|
||||||
|
// Added time should be recent (within last few seconds)
|
||||||
|
let now = chrono::Utc::now();
|
||||||
|
let time_diff = now - feed.added_time;
|
||||||
|
assert!(time_diff.num_seconds().abs() < 5); // Allow 5 second difference
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user