mirror of
https://gitlab.com/Anson-Projects/zine.git
synced 2025-06-16 13:36:40 +00:00
32 lines
814 B
Rust
32 lines
814 B
Rust
use std::collections::HashSet;
|
|
use std::fs;
|
|
|
|
// Function to read URLs from a file
|
|
fn read_feed(path: &str) -> Vec<String> {
|
|
let binding = fs::read_to_string(path).unwrap();
|
|
binding.lines().map(|s| s.to_owned()).collect()
|
|
}
|
|
|
|
#[test]
|
|
fn test_if_feeds_are_in_alphabetical_order() {
|
|
let mut urls = read_feed("feeds.txt");
|
|
|
|
if !urls.windows(2).all(|w| w[0] < w[1]) {
|
|
println!("Sorted feeds.txt:");
|
|
|
|
urls.sort();
|
|
|
|
for url in urls {
|
|
println!("{}", url);
|
|
}
|
|
panic!("feeds.txt was not sorted!")
|
|
}
|
|
}
|
|
|
|
#[test]
|
|
fn test_if_feeds_lists_have_overlapping_feed() {
|
|
let set1: HashSet<_> = read_feed("feeds.txt").into_iter().collect();
|
|
let set2: HashSet<_> = read_feed("featured_feeds.txt").into_iter().collect();
|
|
assert!(set1.is_disjoint(&set2));
|
|
}
|