Adds mapping tests to day 5

day_5_part_2_broken
Joey Pollack 2 years ago
parent 80280f6765
commit 8542b88792

@ -56,12 +56,22 @@ impl Map
}
}
/////////////////////////////////////////////////////////////////////
// MAIN MAIN MAIN MAIN MAIN
/////////////////////////////////////////////////////////////////////
fn main()
{
let input = load_data("data/test_input");
let (seeds, maps) = parse_input(&input);
println!("SEEDS: {:#?}, MAPS: {:#?}", seeds, maps);
let test_1 = maps["seed-to-soil"].map_input(99);
let test_2 = maps["seed-to-soil"].map_input(53);
let test_3 = maps["seed-to-soil"].map_input(47);
println!("=========TESTS:\n\tseed-to-soil {} maps to {}\n\n\tseed-to-soil {} maps to {}\n\n\tseed-to-soil {} maps to {}\n",
99, test_1, 53, test_2, 47, test_3);
}
fn parse_input(input: &str) -> (Vec<i32>, HashMap<String, Map>) // String is the map name
@ -94,8 +104,7 @@ fn parse_input(input: &str) -> (Vec<i32>, HashMap<String, Map>) // String is the
// NEW MAP
if line.contains("map:")
{
let name = line.trim_end_matches("map:");
current_map = name.clone();
current_map = line.trim().trim_end_matches("map:").trim();
let map = Map::new(&current_map);
maps.insert(current_map.to_string(), map.clone());
continue;

Loading…
Cancel
Save