AdventOfCode2018
Advent of Code solutions for 2018
Requirements
Crystal-lang, at least 0.27.0
Running tests
Most (but not all) solutions have tests, in a spec/
subdirectory in the day's directory. To run the test, cd into the day's dir and run crystal spec
.
What's the deal with that weird unless PROGRAM_NAME
thing?
Normally, you write your "library" logic in one Crystal file and your executable "wrapper" in another file, and your specs import the library file and test it.
However, that's a lot of overhead for these problems, but I like the idea of being able to TDD my way to solutions given the sample input/outputs, so each of my solutions checks to see if the file is being imported as part of running specs (by looking at the current executable name and matching against a special name Crystal uses for the crystal spec
command) and if so, doesn't execute the "main"/"executable" logic.
AdventOfCode2018
- 2
- 0
- 0
- 0
- 0
- almost 6 years ago
- December 1, 2018
MIT License
Wed, 06 Nov 2024 11:22:47 GMT