class CheckForCheatingTest(unittest.TestCase): """Tests if cheat will re-roll for you if you try to hold a six""" def setUp(self): self.angry_game = Angry_dice() def tearDown(self): del self.angry_game def test_check_cheating_six_and_six(self): self.angry_game.die_a.currentValue = "6" self.angry_game.die_b.currentValue = "6" self.angry_game.roll = '' self.angry_game.current_stage = 3 self.angry_game.is_cheat(self.angry_game.roll) self.assertTrue(self.angry_game.is_cheat, True) def test_check_cheating_two_and_six(self): self.angry_game.die_a.currentValue = "2" self.angry_game.die_b.currentValue = "6" self.angry_game.roll = '' self.angry_game.current_stage = 3 self.angry_game.is_cheat(self.angry_game.roll) self.assertTrue(self.angry_game.is_cheat, True) def test_check_cheating_two_and_five(self): self.angry_game.die_a.currentValue = "2" self.angry_game.die_b.currentValue = "5" self.angry_game.roll = '' self.angry_game.current_stage = 3 self.angry_game.is_cheat(self.angry_game.roll) self.assertTrue(self.angry_game.is_cheat, False)
class CheckAngryTest(unittest.TestCase): """Test if current stage changes if both die values are 'ANGRY' """ def setUp(self): self.angry_game = Angry_dice() def tearDown(self): del self.angry_game @patch('sys.stdout', new_callable=StringIO) def test_check_stage_one_angry_angry(self, mock_stdout): self.angry_game.die_a.currentValue = 'ANGRY' self.angry_game.die_b.currentValue = 'ANGRY' self.angry_game.current_stage = 1 angry_text = "You're very angry, you need to calm down\n" self.angry_game.check_angry() self.assertEqual(mock_stdout.getvalue(), angry_text) self.assertEqual(self.angry_game.current_stage, 1) def test_check_stage_one_angry_two(self): self.angry_game.die_a.currentValue = 'ANGRY' self.angry_game.die_b.currentValue = '2' self.angry_game.current_stage = 1 self.angry_game.check_angry() self.assertEqual(self.angry_game.current_stage, 1) def test_check_stage_one_angry_five_two(self): self.angry_game.die_a.currentValue = '5' self.angry_game.die_b.currentValue = '2' self.angry_game.current_stage = 1 self.angry_game.check_angry() self.assertEqual(self.angry_game.current_stage, 1) # Part two def test_check_stage_two_angry_angry(self): self.angry_game.die_a.currentValue = 'ANGRY' self.angry_game.die_b.currentValue = 'ANGRY' self.angry_game.current_stage = 2 self.angry_game.check_angry() self.assertEqual(self.angry_game.current_stage, 1) def test_check_stage_two_angry_two(self): self.angry_game.die_a.currentValue = 'ANGRY' self.angry_game.die_b.currentValue = '2' self.angry_game.current_stage = 2 self.angry_game.check_angry() self.assertEqual(self.angry_game.current_stage, 2) def test_check_stage_two_angry_five_two(self): self.angry_game.die_a.currentValue = '5' self.angry_game.die_b.currentValue = '2' self.angry_game.current_stage = 2 self.angry_game.check_angry() self.assertEqual(self.angry_game.current_stage, 2) # Part three def test_check_stage_three_angry_angry(self): self.angry_game.die_a.currentValue = 'ANGRY' self.angry_game.die_b.currentValue = 'ANGRY' self.angry_game.current_stage = 3 self.angry_game.check_angry() self.assertEqual(self.angry_game.current_stage, 1) def test_check_stage_three_angry_two(self): self.angry_game.die_a.currentValue = 'ANGRY' self.angry_game.die_b.currentValue = '2' self.angry_game.current_stage = 3 self.angry_game.check_angry() self.assertEqual(self.angry_game.current_stage, 3) def test_check_stage_three_angry_five_two(self): self.angry_game.die_a.currentValue = '5' self.angry_game.die_b.currentValue = '2' self.angry_game.current_stage = 3 self.angry_game.check_angry() self.assertEqual(self.angry_game.current_stage, 3)
def setUp(self): self.angry_game = Angry_dice()
class CheckStageTest(unittest.TestCase): """Tests if current stage changes if given different die values""" def setUp(self): self.angry_game = Angry_dice() def tearDown(self): del self.angry_game #Both dies are equal and both are in stage one goals def test_stage_one_both_dice_equal(self): self.angry_game.die_a.currentValue = '1' self.angry_game.die_b.currentValue = '1' self.angry_game.check_stage() self.assertEqual(self.angry_game.current_stage, 1) #One is in stage one goals and one is not def test_stage_one_with_one_and_three(self): self.angry_game.die_a.currentValue = '1' self.angry_game.die_b.currentValue = '3' self.angry_game.check_stage() self.assertEqual(self.angry_game.current_stage, 1) #Both are in stage goals and they are not equal def test_stage_one_with_two_and_one(self): self.angry_game.die_a.currentValue = '2' self.angry_game.die_b.currentValue = '1' self.angry_game.check_stage() self.assertEqual(self.angry_game.current_stage, 2) #Both are in stage goals and they are not equal but reverse def test_stage_one_with_one_and_two(self): self.angry_game.die_a.currentValue = '1' self.angry_game.die_b.currentValue = '2' self.angry_game.check_stage() self.assertEqual(self.angry_game.current_stage, 2) #Part two #Both dies are equal and both are in stage goals def test_stage_two_both_dice_four_ANGRY(self): self.angry_game.current_stage = 2 self.angry_game.die_a.currentValue = '4' self.angry_game.die_b.currentValue = '4' self.angry_game.check_stage() self.assertEqual(self.angry_game.current_stage, 2) #One is in stage goals and one is not def test_stage_two_with_one_and_three(self): self.angry_game.current_stage = 2 self.angry_game.die_a.currentValue = '1' self.angry_game.die_b.currentValue = 'ANGRY' self.angry_game.check_stage() self.assertEqual(self.angry_game.current_stage, 2) #Both are in stage goals and they are not equal def test_stage_two_with_four_and_one(self): self.angry_game.current_stage = 2 self.angry_game.die_a.currentValue = '4' self.angry_game.die_b.currentValue = 'ANGRY' self.angry_game.check_stage() self.assertEqual(self.angry_game.current_stage, 3) #Both are in stage goals and they are not equal but reverse def test_stage_two_with_one_and_four(self): self.angry_game.current_stage = 2 self.angry_game.die_a.currentValue = '4' self.angry_game.die_b.currentValue = 'ANGRY' self.angry_game.check_stage() self.assertEqual(self.angry_game.current_stage, 3) #Part three #Both dies are equal and both are in stage goals def test_stage_three_die_six_six(self): self.angry_game.current_stage = 3 self.angry_game.die_a.currentValue = '6' self.angry_game.die_b.currentValue = '6' self.angry_game.check_stage() self.assertEqual(self.angry_game.current_stage, 3) #One is in stage goals and one is not def test_stage_three_with_five_and_one(self): self.angry_game.current_stage = 3 self.angry_game.die_a.currentValue = '5' self.angry_game.die_b.currentValue = '1' self.angry_game.check_stage() self.assertEqual(self.angry_game.current_stage, 3) #Both are in stage goals and they are not equal def test_stage_three_with_five_and_six(self): self.angry_game.current_stage = 3 self.angry_game.die_a.currentValue = '5' self.angry_game.die_b.currentValue = '6' self.angry_game.check_stage() self.assertEqual(self.angry_game.current_stage, 4) #Both are in stage goals and they are not equal but reverse def test_stage_three_with_fix_and_five(self): self.angry_game.current_stage = 3 self.angry_game.die_a.currentValue = '6' self.angry_game.die_b.currentValue = '5' self.angry_game.check_stage() self.assertEqual(self.angry_game.current_stage, 4)