diff --git a/src/lib.rs b/src/lib.rs index f0e020b..2e5ee8f 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -245,59 +245,4 @@ mod tests { } */ #[cfg(test)] - mod tests { - mod example_data; - use crate::{itemize_content, process_content, tests::example_data::FEEDS,Content,Item}; - - - fn get_feed(u: &str) -> rss::Channel { - rss::Channel::read_from(u.as_bytes()).unwrap() - } - - #[test] - fn content_test(){ - let example_text = Item::Text("Example.com".to_owned()); - let example_link = Item::Link("https://example.com".to_owned(),[example_text].to_vec()); - let result = process_content([example_link].to_vec()); - println!("Items to content parse result:\n{:#?}",result); - - - - } - - #[test] - fn content_display() { - let feed = get_feed(example_data::GABE_ROCKS); - let content: Vec<_> = process_content( - itemize_content(feed.items.first().unwrap().content().unwrap()) - ); - println!("Content: {:#?}",content) - } - - #[test] - fn itemize_feeds(){ - let _ = FEEDS.map(|u|{ - let feed = get_feed(u); - let results: Vec<_> = feed.items.into_iter().map(|item| { - itemize_content(&item.content.unwrap()); - }).collect(); - //let results: Vec<_> = itemize_content(u); - println!("Evaluated feed\nScanned {} items without errors",results.len()) - }); - } - #[test] - fn markdownify_feeds(){ - let _ = FEEDS.map(|u|{ - let feed = get_feed(u); - let results: Vec<_> = feed.items.into_iter().map(|item|{ - process_content( - itemize_content(&item.content.unwrap()) - ); - }).collect(); - println!("Processed {} items without errors",results.len()) - }); - } - - - -} \ No newline at end of file + mod tests; \ No newline at end of file diff --git a/src/tests.rs b/src/tests.rs new file mode 100644 index 0000000..94d135d --- /dev/null +++ b/src/tests.rs @@ -0,0 +1,67 @@ +mod example_data; +use super::*; +use example_data::*; + +fn get_feed(u: &str) -> rss::Channel { + rss::Channel::read_from(u.as_bytes()).unwrap() +} + +#[test] +fn fragments() { + for f in FRAGMENTS { + println!("Processing Fragment:{}",f); + let items = itemize_content(f); + let content = process_content(items); + println!("Content:\n{:#?}",content); + } +} + +#[test] +fn content_test() { + let example_text = Item::Text("Example.com".to_owned()); + let example_link = Item::Link("https://example.com".to_owned(), [example_text].to_vec()); + let result = process_content([example_link].to_vec()); + println!("Items to content parse result:\n{:#?}", result); +} + +#[test] +fn content_display() { + let feed = get_feed(example_data::GABE_ROCKS); + let content: Vec<_> = process_content(itemize_content( + feed.items.first().unwrap().content().unwrap(), + )); + println!("Content: {:#?}", content) +} + +#[test] +fn itemize_feeds() { + let _ = FEEDS.map(|u| { + let feed = get_feed(u); + let results: Vec<_> = feed + .items + .into_iter() + .map(|item| { + itemize_content(&item.content.unwrap()); + }) + .collect(); + //let results: Vec<_> = itemize_content(u); + println!( + "Evaluated feed\nScanned {} items without errors", + results.len() + ) + }); +} +#[test] +fn markdownify_feeds() { + let _ = FEEDS.map(|u| { + let feed = get_feed(u); + let results: Vec<_> = feed + .items + .into_iter() + .map(|item| { + process_content(itemize_content(&item.content.unwrap())); + }) + .collect(); + println!("Processed {} items without errors", results.len()) + }); +} diff --git a/src/tests/example_data.rs b/src/tests/example_data.rs index 50ef0dd..cc53957 100644 --- a/src/tests/example_data.rs +++ b/src/tests/example_data.rs @@ -3,7 +3,65 @@ pub const FEEDS: [&str; 2] = [ GABE_ROCKS ]; +pub const FRAGMENTS: [&str; 2] = [ + SIMPLE_ARTICLE, + TABLE +]; +pub const TABLE: &str = r#" + + + +

Weight Tracker

+ + + + Starting Weight + Current Weight + Weight Lost + Goal Weight + + + 576 + 373 + 203 + 15% BF + + + +

2025 Goal: 200lbs in 2025 challenge

+
+
53% +
+
+

This year's goal is to lose 200lbs in 2025!
Current progress: 106lbs out of 200! +
I'm catching up 🏃

+ + + + Last updated: 2025-07-19 + + + +"#; + +pub const SIMPLE_ARTICLE: &str = r#" +

Just some text here and a link
+with a simple list for funzies: +

+ +
+

Some other stuff here

+
+ +"#; pub const LSN: &str = r#"