advent_of_code_2023/day_01/test_program.py
2023-12-01 21:36:24 +01:00

40 lines
1.5 KiB
Python
Executable file

#!/usr/bin/env python3
import program
import unittest
class TestThing(unittest.TestCase):
def setUp(self):
pass
def testGetCalVal(self):
self.assertEqual(program.get_cal_val("a2c3"), 23)
self.assertEqual(program.get_cal_val("1c3d"), 13)
self.assertEqual(program.get_cal_val("3a2c3er"), 33)
self.assertEqual(program.get_cal_val("1234567"), 17)
self.assertEqual(program.get_cal_val("asdw3wemr"), 33)
self.assertEqual(program.get_cal_val("th95"), 95)
self.assertEqual(program.get_cal_val("g2"), 22)
self.assertEqual(program.get_cal_val("2"), 22)
def testReplaceDigitStrings(self):
self.assertEqual(program.replace_digit_strings("one"), "on1e")
self.assertEqual(program.replace_digit_strings("twosdftwo"), "tw2osdftw2o")
self.assertEqual(program.replace_digit_strings("zeightwosixa"), "zei8ghtw2osi6xa")
self.assertEqual(program.replace_digit_strings("4three2ffivee"), "4thr3ee2ffi5vee")
self.assertEqual(program.replace_digit_strings("onetwo"), "on1etw2o")
def testSumCalValPart1(self):
lines = program.get_lines("test-input1.txt")
sum_cal_val = program.get_sum_cal_val(lines, False)
self.assertEqual(sum_cal_val, 142)
def testSumCalValPart2(self):
lines = program.get_lines("test-input2.txt")
sum_cal_val = program.get_sum_cal_val(lines, True)
self.assertEqual(sum_cal_val, 281)
if __name__ == '__main__':
unittest.main()