diff options
| author | AlexandruGG <alex.gidei@goodlord.co> | 2020-05-27 10:03:59 +0100 |
|---|---|---|
| committer | AlexandruGG <alex.gidei@goodlord.co> | 2020-05-27 10:03:59 +0100 |
| commit | df81141d6fb3f43a7a035c4efc1150b6ede0b472 (patch) | |
| tree | 2d40a3a370d6a04a0f13bd3e17e854b5638dc9be /exercises | |
| parent | 7479a4737bdcac347322ad0883ca528c8675e720 (diff) | |
Address PR feedback: add tests
Diffstat (limited to 'exercises')
| -rw-r--r-- | exercises/standard_library_types/box1.rs | 34 |
1 files changed, 26 insertions, 8 deletions
diff --git a/exercises/standard_library_types/box1.rs b/exercises/standard_library_types/box1.rs index 11156ea..2248962 100644 --- a/exercises/standard_library_types/box1.rs +++ b/exercises/standard_library_types/box1.rs @@ -12,24 +12,42 @@ // Step 1: use a `Box` in the enum definition to make the code compile // Step 2: create both empty and non-empty cons lists of by replacing `unimplemented!()` // +// Note: the tests should not be changed +// // Execute `rustlings hint box1` for hints :) // I AM NOT DONE #[derive(PartialEq, Debug)] -enum List { +pub enum List { Cons(i32, List), Nil, } fn main() { - let empty_list = unimplemented!(); - println!("This is an empty cons list: {:?}", empty_list); + println!("This is an empty cons list: {:?}", create_empty_list()); + println!("This is a non-empty cons list: {:?}", create_non_empty_list()); +} + +pub fn create_empty_list() -> List { + unimplemented!() +} + +pub fn create_non_empty_list() -> List { + unimplemented!() +} + +#[cfg(test)] +mod tests { + use super::*; - let non_empty_list = unimplemented!(); - println!("This is a non-empty cons list: {:?}", non_empty_list); + #[test] + fn test_create_empty_list() { + assert_eq!(List::Nil, create_empty_list()) + } - // Do not change these - assert_eq!(List::Nil, empty_list); - assert_ne!(empty_list, non_empty_list); + #[test] + fn test_create_non_empty_list() { + assert_ne!(create_empty_list(), create_non_empty_list()) + } } |
