From 34dfdf013165a8f44eced31be47527e5a989395f Mon Sep 17 00:00:00 2001 From: Alpha Chen Date: Tue, 19 Jan 2016 08:28:01 -0800 Subject: [PATCH] [rust][8.0] Split out tests --- rust/src/day_08.rs | 33 ++++++++++++++------------------- 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/rust/src/day_08.rs b/rust/src/day_08.rs index 741d026..1187536 100644 --- a/rust/src/day_08.rs +++ b/rust/src/day_08.rs @@ -1,30 +1,25 @@ #[test] fn test_day_08() { - let mut input = r#""""#; - assert_eq!("", decode(input)); - assert_eq!(2, solve(input)); - - input = r#""abc""#; - assert_eq!("abc", decode(input)); - assert_eq!(2, solve(input)); - - input = r#""aaa\"aaa""#; - assert_eq!("aaa\"aaa", decode(input)); - assert_eq!(3, solve(input)); - - input = r#""\x27""#; - assert_eq!("'", decode(input)); - assert_eq!(5, solve(input)); - - input = r#""\xfa""#; - assert_eq!(1, decode(input).chars().count()); - assert_eq!(5, solve(input)); + assert_eq!(2, solve(r#""""#)); + assert_eq!(2, solve(r#""abc""#)); + assert_eq!(3, solve(r#""aaa\"aaa""#)); + assert_eq!(5, solve(r#""\x27""#)); + assert_eq!(5, solve(r#""\xfa""#)); } pub fn solve(input: &str) -> usize { input.lines().fold(0, |sum, s| sum + s.len() - decode(s).chars().count()) } +#[test] +fn test_decode() { + assert_eq!("", decode(r#""""#)); + assert_eq!("abc", decode(r#""abc""#)); + assert_eq!("aaa\"aaa", decode(r#""aaa\"aaa""#)); + assert_eq!("'", decode(r#""\x27""#)); + assert_eq!(1, decode(r#""\xfa""#).chars().count()); +} + fn decode(string: &str) -> String { let mut out = "".to_owned();