day02 solutions

This commit is contained in:
RussellChamp committed 2022-12-05 10:51:59 -05:00
1 parent 17831e00f1
commit 24fae37154
7 files changed
+152

No files matched your search

+43
View File
@@ -0,0 +1,43 @@
import unittest
import solve
class Day02TestMethods(unittest.TestCase):
def setUp(self):
pass
def test_get_score(self):
get_score_input = [
[ solve.ROCK_INPUT, solve.ROCK_OUTPUT, solve.TIE_SCORE + solve.ROCK_SCORE ],
[ solve.ROCK_INPUT, solve.PAPER_OUTPUT, solve.WIN_SCORE + solve.PAPER_SCORE ],
[ solve.ROCK_INPUT, solve.SCISSORS_OUTPUT, solve.LOSS_SCORE + solve.SCISSORS_SCORE ],
[ solve.PAPER_INPUT, solve.ROCK_OUTPUT, solve.LOSS_SCORE + solve.ROCK_SCORE ],
[ solve.PAPER_INPUT, solve.PAPER_OUTPUT, solve.TIE_SCORE + solve.PAPER_SCORE],
[ solve.PAPER_INPUT, solve.SCISSORS_OUTPUT, solve.WIN_SCORE + solve.SCISSORS_SCORE ],
[ solve.SCISSORS_INPUT, solve.ROCK_OUTPUT, solve.WIN_SCORE + solve.ROCK_SCORE],
[ solve.SCISSORS_INPUT, solve.PAPER_OUTPUT, solve.LOSS_SCORE + solve.PAPER_SCORE ],
[ solve.SCISSORS_INPUT, solve.SCISSORS_OUTPUT, solve.TIE_SCORE + solve.SCISSORS_SCORE],
];
for case in get_score_input:
[theirs, mine, expectedScore] = case
self.assertEqual(solve.get_score(theirs, mine), expectedScore, '%s vs %s should get %d points' % (theirs, mine, expectedScore))
def test_get_score_beta(self):
get_score_input = [
[ solve.ROCK_INPUT, solve.TIE_OUTCOME, solve.TIE_SCORE + solve.ROCK_SCORE ],
[ solve.ROCK_INPUT, solve.LOSS_OUTCOME, solve.LOSS_SCORE + solve.SCISSORS_SCORE ],
[ solve.ROCK_INPUT, solve.WIN_OUTCOME, solve.WIN_SCORE + solve.PAPER_SCORE ],
[ solve.PAPER_INPUT, solve.TIE_OUTCOME, solve.TIE_SCORE + solve.PAPER_SCORE],
[ solve.PAPER_INPUT, solve.LOSS_OUTCOME, solve.LOSS_SCORE + solve.ROCK_SCORE ],
[ solve.PAPER_INPUT, solve.WIN_OUTCOME, solve.WIN_SCORE + solve.SCISSORS_SCORE ],
[ solve.SCISSORS_INPUT, solve.TIE_OUTCOME, solve.TIE_SCORE + solve.SCISSORS_SCORE ],
[ solve.SCISSORS_INPUT, solve.LOSS_OUTCOME, solve.LOSS_SCORE + solve.PAPER_SCORE],
[ solve.SCISSORS_INPUT, solve.WIN_OUTCOME, solve.WIN_SCORE + solve.ROCK_SCORE],
];
for case in get_score_input:
[theirs, outcome, expectedScore] = case
self.assertEqual(solve.get_score_beta(theirs, outcome), expectedScore, '%s and %s should get %d points' % (theirs, outcome, expectedScore))
if __name__ == '__main__':
unittest.main()