From 4c0b4fb32d0001cf76971ded30301004a3ab5109 Mon Sep 17 00:00:00 2001 From: uku Date: Sun, 1 Dec 2024 14:07:50 +0100 Subject: [PATCH] feat: add template --- Cargo.lock | 7 +++++++ Cargo.toml | 1 + src/solutions/template.rs | 43 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 51 insertions(+) create mode 100644 src/solutions/template.rs diff --git a/Cargo.lock b/Cargo.lock index 587fbf1..7a29374 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -13,6 +13,7 @@ name = "advent-of-code-2024" version = "0.1.0" dependencies = [ "dotenvy", + "indoc", "ureq", ] @@ -232,6 +233,12 @@ dependencies = [ "icu_properties", ] +[[package]] +name = "indoc" +version = "2.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5" + [[package]] name = "libc" version = "0.2.167" diff --git a/Cargo.toml b/Cargo.toml index 7c23939..68c6878 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,4 +5,5 @@ edition = "2021" [dependencies] dotenvy = "0.15.7" +indoc = "2.0.5" ureq = "2.11.0" diff --git a/src/solutions/template.rs b/src/solutions/template.rs new file mode 100644 index 0000000..327d065 --- /dev/null +++ b/src/solutions/template.rs @@ -0,0 +1,43 @@ +use crate::common::{Answer, Solution}; + +pub struct DayXX; + +impl Solution for DayXX { + fn name(&self) -> &'static str { + "" + } + + fn part_a(&self, input: &str) -> Answer { + Answer::Unimplemented + } + + fn part_b(&self, input: &str) -> Answer { + Answer::Unimplemented + } +} + +#[cfg(test)] +mod test { + use super::DayXX; + use crate::common::Solution; + + use indoc::indoc; + + const INPUT_A: &str = indoc! {" + + "}; + + const INPUT_B: &str = indoc! {" + + "}; + + #[test] + fn part_a() { + assert_eq!(DayXX.part_a(INPUT_A), crate::common::Answer::Unimplemented); + } + + #[test] + fn part_b() { + assert_eq!(DayXX.part_b(INPUT_B), crate::common::Answer::Unimplemented); + } +}