-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDay13Test.groovy
61 lines (53 loc) · 1.78 KB
/
Day13Test.groovy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
package be.vreijsenj.aoc.days
import be.vreijsenj.aoc.utils.PuzzleUtils
import spock.lang.Specification
class Day13Test extends Specification {
def "returns the sum of left and upper reflections"() {
given: "the input patterns"
def input = [
"#.##..##.",
"..#.##.#.",
"##......#",
"##......#",
"..#.##.#.",
"..##..##.",
"#.#.##.#.",
"",
"#...##..#",
"#....#..#",
"..##..###",
"#####.##.",
"#####.##.",
"..##..###",
"#....#..#"
].join("\n")
when: "the reflections are calculated"
def result = new Day13().runPartOne(input)
then: "the result matches the example answer"
result == 405
}
def "returns the sum of left and upper reflections fixing potential smudges"() {
given: "the input patterns"
def input = [
"#.##..##.",
"..#.##.#.",
"##......#",
"##......#",
"..#.##.#.",
"..##..##.",
"#.#.##.#.",
"",
"#...##..#",
"#....#..#",
"..##..###",
"#####.##.",
"#####.##.",
"..##..###",
"#....#..#"
].join("\n")
when: "the reflections are calculated"
def result = new Day13().runPartTwo(input)
then: "the result matches the example answer"
result == 400
}
}